Aller à la page... |
[Résolu] Géométrie 3D: tangente d'un cercle
Suivre Fil fermé |
|
Partager | Rechercher |
Légende
|
Merci, ca fait que 3 ans que j'ai arrêté les maths
|
30/05/2013, 06h00 |
|
Alpha & Oméga
|
http://fr.wikipedia.org/wiki/Angles_d%27Euler
En fait, la géométrie 3D (pour le développement 3D) est légèrement différent de la géométrie dans l'espace, car comme dit plus haut: -Il y a un "sens" aux objets -Les rotations sur axes X (YZ) Y (XZ) Z (XY) sont par rapport au parent (ce que j'appelle node, ou noeud en français). La même pour les positions. -La terminologie employée est une hérésie mathématique apparemment Mon B actuellement, c'est la position absolue (donc par rapport à 0,0,0) de la caméra, du coup je normalise et je multiplie par rayon+10 unités (parce que y'a pas d'unité de valeur tel que le centimètre dans le dev 3D) pour éviter la collision des mesh, ca donne un résultat moche visuellement. Le truc c'est qu'on s'en fiche du rayon du cercle rouge, tout ce qu'on a, c'est la position de la sphere (la terre) et la position de la caméra (B) qui forme un vecteur. A partir de ces données il faut positionner le cercle (le mesh rouge) puis le faire effectuer une rotation (par rapport aux axes 1,0,0 & 0,1,0 - pas la peine de faire de rotation en Z comme ça a été dit précédemment); pour ca j'utilise les coordonnées sphériques - donc les angles d'euler. On ne cherche pas à obtenir l'équation du cercle rouge ni sa taille, on cherche à positionner (ca c'est facile) et rotationner (ca c'est pas facile) quelque chose de déjà existant selon le plan tangent à la sphère qui passe par B. Pour info, la sphère a un rayon de 6371, le cercle de 1000 (j'insiste sur le mot rayon, histoire qu'on me dise pas "OLOL MAUVAISE ECHELLE") |
30/05/2013, 14h18 |
|
|
Sergul et MoaYs je pige RIEN à ce que vous racontez, c'est un truc de ouf... y'a pas besoin de se prendre la tête là, c'est juste un problème de référentiel
Pour Neirdan : ton truc à l'air de fonctionner, ce que je disais plus haut revient à prendre comme "node parent" le centre de ta sphère. Normallement tu places juste ton cercle rouge au "pole nord", et tu fais une rotation par rapport à son node parent selon les coordonnées sphériques de ton point B. Ca te déplace donc naturellement le centre de ton cercle au point B et ça te met dans le bon angle. Pas besoin de faire une translation "manuelle" du cercle rouge pour le mettre au niveau des coordonnées du point B, ça va se faire tout seul lors de la rotation cf cette applet , ton cercle rouge est placé sur le plan formé par le vecteur rouge et bleu. Tu l'initialise au niveau "pôle nord" (que tu vois quand tu prend les angles égaux à 0) et après tu fais faire par rapport au centre de la sphère la même rotation que celle du point B. Ca te place ton cercle à l'endroit voulu, pas besoin de translation Dernière modification par lezebulon ; 30/05/2013 à 21h27. |
30/05/2013, 21h19 |
|
Suivre Fil fermé |
Fil d'ariane
Connectés sur ce fil1 connecté (0 membre et 1 invité)
Afficher la liste détaillée des connectés
|