Sphère

Résolu/Fermé
RedSkidy Messages postés 196 Date d'inscription jeudi 30 janvier 2014 Statut Membre Dernière intervention 22 octobre 2015 - Modifié par RedSkidy le 28/03/2014 à 18:57
RedSkidy Messages postés 196 Date d'inscription jeudi 30 janvier 2014 Statut Membre Dernière intervention 22 octobre 2015 - 5 avril 2014 à 12:51
bonjour,

je voudrais coder en c++ un algorithme qui fait des sphères comme celle-ci: http://www.plotz.co.uk/_gfx/voxel_sphere_1.png avec rayon variable
mais sans affichage a l'écran juste en stockant les cubes dans un tableau tridimensionnels
j'ai un peu cherché sur internet mais j'ai trouvé que des trucs en anglais et puis j'aimerais bien comprendre le code que j'utilise.
quelqu'un peut m'aider ?
merci

7 réponses

Viking57 Messages postés 68 Date d'inscription jeudi 21 février 2013 Statut Membre Dernière intervention 28 juillet 2014 5
31 mars 2014 à 13:44
Bonjour, ça sent le développement de sphère avec des Octree ^^

recherche un peu du coté des Octree (arbre avec 8 fils) j'ai déjà fait ça comme développement
1
RedSkidy Messages postés 196 Date d'inscription jeudi 30 janvier 2014 Statut Membre Dernière intervention 22 octobre 2015 6
1 avril 2014 à 07:26
ok merci je vais voir sa
1
RedSkidy Messages postés 196 Date d'inscription jeudi 30 janvier 2014 Statut Membre Dernière intervention 22 octobre 2015 6
1 avril 2014 à 07:37
j'ai regardé mais je pense pas que se soit ce qu'il me faut je voudrais un algorithme qui fait des spheres avec des cubes de meme taille et place leurs coordonnées dans un tableau le probleme ce n'est pas les cubes mais plutot comment les organiser pour qu'ils forment une sphere
1
Viking57 Messages postés 68 Date d'inscription jeudi 21 février 2013 Statut Membre Dernière intervention 28 juillet 2014 5
1 avril 2014 à 16:24
justement ^^ c'est la le problème comment agencer ??

Avec les octrees tu définit un cube de travail ou tu va modéliser chaque petit cube de 1*1*1 si il sont plein ou non le cube de travail se modélise en 8 parties : tu coupe le cube en 2 puis en 2 et ainsi de suite. J'ai eu un projet ou je devais utiliser cela afin de modéliser une sphère, cylindre et parallélépipède rectangle
1
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 49
1 avril 2014 à 23:48
Bonsoir,
tu le dis toi-même tu as utilisé l'algorithme d'octrees pour un travail et je pense que ce travail était de modéliser une sphère ou une autres forme, en faisant une subdivision de façon récursive dans un espace 3D serte tu peux passer par cet algorithme pour faire ce qui est sur son image, ou modéliser un tesseract, bref ce qu'il demande je pense c'est juste une sphère
à bientôt
0
Viking57 Messages postés 68 Date d'inscription jeudi 21 février 2013 Statut Membre Dernière intervention 28 juillet 2014 5
2 avril 2014 à 10:18
ben pour modéliser une sphère en vue isométrique en cube de 1*1*1 les octrees sont la meilleure structure et aussi la moins couteuse en mémoire. Car aussi il faut résonner en 3D sur un espace de travail. En passant par du tri-dimensionnelle c'est tout a fait possible mais la pour programmer cela, ça risque de prendre du temps afin de trouver comment commencer cela.
à bientot
0
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 49
3 avril 2014 à 17:38
Bonjour
@viking57 pour modéliser une sphère en vue isométrique en cube, oui mais il n'a pas les connaissances nécessaires pour comprendre ce genre d'algorithmes ou l'implementé, le mieux est de commencer par de simples algorithmes lui permettant de faire un cube une sphère, un rectangle toute bête avant de taper dans du lourd, ou pire courbe de bésier :) bref faisant simple
à bientôt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
RedSkidy Messages postés 196 Date d'inscription jeudi 30 janvier 2014 Statut Membre Dernière intervention 22 octobre 2015 6
Modifié par RedSkidy le 1/04/2014 à 18:15
je pensait plutot que se serait une fonction du type avec des sinus cosinus tangeantes pi des angles...
il faudrais deja savoir faire un cercle et apres avec plusieurs a cotés sa fait une sphere
enfaite je voudrais tester si un objet est situé dans un certain rayon au tour d'un autre

edit : j'ai fait une classe distance qui additione la différence entre les coordonnées x y z sa peut marcher ou sa va faire un truc tout moche comme sa http://hydra-media.cursecdn.com/minecraft.gamepedia.com/thumb/e/e2/2011-10-14_01.01.39.png/120px-2011-10-14_01.01.39.png?version=1f627e08f2ba2cc2297e5770fa3dbf5e ?
1
enfaite je veut pas vraiment créer une sphere mais tester si un cube fait partie de cette sphere mais je pense que pour ca il faut faire une sphere
1
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
4 avril 2014 à 22:59
'lut, pour ce genre de test, le bon vieux théorème de Pythagore s'avère très pratique. Et oui, ça marche en 3D aussi ;)
int dx = point.x-sphere.x, dy = point.y-sphere.y, dz = point.z-sphere.z;
if (dx*dx+dy*dy+dz*dz <= sphere.rayon*sphere.rayon) {
    // Dedans
} else {
    // Dehors
}
0
RedSkidy Messages postés 196 Date d'inscription jeudi 30 janvier 2014 Statut Membre Dernière intervention 22 octobre 2015 6
5 avril 2014 à 12:51
ok merci j'avais pensé a utiliser pythagore mais je savais pas comment
0