Inclinaison d'un plan dans l'espace

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
julienbarrat
Messages: 4
Enregistré le: 04 Oct 2012, 13:36

Inclinaison d'un plan dans l'espace

par julienbarrat » 04 Oct 2012, 14:00

Bonjour,

en vu d'un petit projet en 3D, j'ai créé un polyèdre totalement irrégulier à 6 faces, chacune triangulaire (irrégulièrement). Le problème est que je dois créer chaque face indépendamment puis les placer dans l'espace séparément, selon les axes x, y et z, donc effectuer une (ou plusieurs) rotation(s).

Le centre O de mon polyèdre a pour coordonnées (0, 0, 0). Chaque face est orientable en fonction de son centre. La face de base ABC est "plate", bien que située sur aucun axe, donc Az = Bz = Cz. Le segment |AC| est perpendiculaire à l'axe x, donc Ax = Cx. Je connais les angles du triangle, tous quelconques.

Maintenant j'essaye de placer la face ABD par rapport à ABC. Je connais l'angle BCD (ainsi que tous les autres angles), la longueur de chaque segment et les coordonnées de chaque point si nécessaire. (Malheureusement je ne peux pas placer mes faces en utilisant ces coordonnées dans le contexte du logiciel)


Mon but est donc de trouver les inclinaisons sur chaque axe de BCD par rapport à son centre pour l'orienter correctement. Ensuite le placement ne devrait pas être un problème, vu que je connais également la position du centre de chaque face.

Le problème est que je n'arrive pas à trouver, ni sur internet ni par raisonnement, une formule qui pourrait me donner l'angle que je recherche pour chacune des faces. J'aimerais déjà réussir à obtenir ça pour placer chaque face ayant un côté commun avec ABC, puis ensuite les faces qui n'ont qu'un point en commun.

Est-ce que quelqu'un a une idée?


Merci d'avance de vos réponses.


julien.



DamX
Membre Rationnel
Messages: 630
Enregistré le: 02 Oct 2012, 13:12

par DamX » 04 Oct 2012, 14:28

Mon but est donc de trouver les inclinaisons sur chaque axe de BCD par rapport à son centre pour l'orienter correctement. Ensuite le placement ne devrait pas être un problème, vu que je connais également la position du centre de chaque face.


Je ne comprends pas ce que tu veux exactement. Qu'entends-tu par " inclinaisons sur chaque axe de BCD par rapport à son centre " ? Tu recherches combien d'angles ? Entre quel vecteurs ? Parce l'angle par rapport au centre je ne vois pas bien ce que tu veux dire .. Si tu notes G le centre de ta face bcd, quels sont les Angles que tu recherches ? (Ox,OG) ? (OB,OG) ? Autre ?

Damien

julienbarrat
Messages: 4
Enregistré le: 04 Oct 2012, 13:36

par julienbarrat » 04 Oct 2012, 14:39

DamX a écrit:Je ne comprends pas ce que tu veux exactement. Qu'entends-tu par " inclinaisons sur chaque axe de BCD par rapport à son centre " ? Tu recherches combien d'angles ? Entre quel vecteurs ? Parce l'angle par rapport au centre je ne vois pas bien ce que tu veux dire .. Si tu notes G le centre de ta face bcd, quels sont les Angles que tu recherches ? (Ox,OG) ? (OB,OG) ? Autre ?


Désolé pour le manque de clarté, j'ai toujours trouvé difficile la description de problèmes dans l'espace...

En fait je ne peux faire pivoter mes faces que par leur centre, et ensuite déplacer le centre (ce qui n'est pas important dans le contexte car facile à effectuer). J'ai modélisé un polyèdre dans un programme et dois le reconstruire dans un autre, donc pour commencer réussir à placer ABD en fonction de ABC.
AB est la face conjointe entre les deux triangles (ABC et ABD), et l'angle que je recherche est la rotation de ABD par rapport à son propre centre pour que l'angle CBD soit égal à mes données (93,5° pour info).

Merci de ta réponse, j'espère que cette clarification aidera.


julien.

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 04 Oct 2012, 15:25

J'ai aussi un peu de mal à comprendre.
J'ai cru comprendre que le polyèdre est bien connu, et que vous cherchez à le placer dans un autre système, c'est à dire un autre repère. Donc tout se passe comme si vous aviez un objet dans une bibliothèque et que vous cherchiez à le placer ici et là dans un autre environnement.
Là où je comprends moins, c'est que vous vouliez déplacer les faces "indépendamment". Vous parlez de "centre", je ne vois pas très bien ce que ça vient faire.
Il est vrai que les rotations dans l'espace sont assez difficiles à imaginer.
Il me semble que dans tous les cas, votre objet, le polyèdre est défini par une liste de points et par les liaisons entre ces points. Cette définition est formalisée ou pas, ça revient au même.
La formule générale d'un déplacement dans l'espace 3D est la suivante :
X = TX + XX.x + XY.y + XZ.z
Y = TY + YX.x + YY.y + YZ.z
Z = TZ + ZX.x + ZY.y + ZZ.z
où x,y,z sont les coordonnées dans le repère R1, X, Y, Z les coordonnées dans le repère R2
Il y a 12 paramètres, ce qui nécessite la connaissance de 4 points homologues dans les deux repères. C'est la formule générale de la transformation affine (translation - homothétie - rotation - affinité). Cette formule peut se simplifier dans le cas où le rapport d'homothétie est 1, ainsi que le rapport d'affinité. En ce cas (sauf erreur) il ne reste plus que 6 paramètres différents, c'est à dire un vecteur.
RECTIFICATION : il faut au poins 3 points. Voir détail plus loin.

julienbarrat
Messages: 4
Enregistré le: 04 Oct 2012, 13:36

par julienbarrat » 04 Oct 2012, 15:35

Bonjour,

merci pour votre réponse. Je pense que la confusion vient du fait que je ne déplace pas l'objet, mais que en effet je le recrée dans un autre repère/système. Car cette recréation m'amène une contrainte majeure : dans le nouveau système, je n'ai plus que des triangles séparés et "posés" sur l'axe Z, et les replacer correctement devient problématique car je n'ai pas accès au placement des points de chaque triangle mais seulement au centre (de chaque triangle) et ensuite effectuer des rotations par rapport à ce centre dans n'importe quelle direction.

Si je pouvais, il n'y aurait pas d'histoire de centre :)

Est-ce cela plus clair? Je vais essayer de faire des schémas pour clarifier le problème.


Merci encore de votre réponse.


julien.

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

par chan79 » 04 Oct 2012, 16:35

julienbarrat a écrit:Bonjour,

merci pour votre réponse. Je pense que la confusion vient du fait que je ne déplace pas l'objet, mais que en effet je le recrée dans un autre repère/système. Car cette recréation m'amène une contrainte majeure : dans le nouveau système, je n'ai plus que des triangles séparés et "posés" sur l'axe Z, et les replacer correctement devient problématique car je n'ai pas accès au placement des points de chaque triangle mais seulement au centre (de chaque triangle) et ensuite effectuer des rotations par rapport à ce centre dans n'importe quelle direction.

Si je pouvais, il n'y aurait pas d'histoire de centre :)

Est-ce cela plus clair? Je vais essayer de faire des schémas pour clarifier le problème.


Merci encore de votre réponse.


julien.

Bonjour
Un schéma serait bien en effet, voire plusieurs
Quand tu parles de centre d'un triangle (quelconque) c'est le centre de gravité ?
Et le centre du polyèdre ?

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 04 Oct 2012, 17:39

Bon, je me suis trompé dans une réponse précédente : il faut au moins 3 points homologues.
En fait, il en faut 4. Si les 2 séries de 3 points forment 2 triangles strictement égaux, alors on calcule un quatrième point qui n'appartient pas au plan défini par les 3 points. Comme il parait impossible d'avoir 2 triangles strictement égaux, dans la pratique on dira qu'il faut 4 points non coplanaires.
Si on a plus de 4 points homologues, on détermine les 12 paramètres en utilisant la méthode des moindres carrés. Ces paramètres seront calculés de façon à minimiser la somme des carrés des écarts.
Dans le cas présent, on peut calculer ces 4 points homologues à partir des données fournies.

DamX
Membre Rationnel
Messages: 630
Enregistré le: 02 Oct 2012, 13:12

par DamX » 05 Oct 2012, 13:57

Hello,

J'ai une formule obtenue après un petit dessin. Dis-moi si c'est bien ça que tu cherches.

Quelques notations d'abord :

ABC est dans le plan z=cste.

Alpha est l'angle ABD. (qui est connu).
Beta est l'angle ABC (connu aussi)
Theta est l'angle CBD (que tu cherches à obtenir)
Gamma est l'angle de rotation de ton triangle ABD autour de l'axe (AB) (l'angle qui va te servir a orienter ta face donc). Si gamma = 0, le triangle est dans le Meme plan que ABC et D se trouve du Meme coté que C par rapport a (AB) (convention).

Une fois qu'on a dit ça, on a sauf erreur :



Désolé de ne pouvoir faire un dessin ici pour m'expliquer d'où je sors ça.
C'etait ce genre de formule que tu cherchais ?

Damien

DamX
Membre Rationnel
Messages: 630
Enregistré le: 02 Oct 2012, 13:12

par DamX » 11 Oct 2012, 12:48

DamX a écrit:Hello,

J'ai une formule obtenue après un petit dessin. Dis-moi si c'est bien ça que tu cherches.

Quelques notations d'abord :

ABC est dans le plan z=cste.

Alpha est l'angle ABD. (qui est connu).
Beta est l'angle ABC (connu aussi)
Theta est l'angle CBD (que tu cherches à obtenir)
Gamma est l'angle de rotation de ton triangle ABD autour de l'axe (AB) (l'angle qui va te servir a orienter ta face donc). Si gamma = 0, le triangle est dans le Meme plan que ABC et D se trouve du Meme coté que C par rapport a (AB) (convention).

Une fois qu'on a dit ça, on a sauf erreur :



Désolé de ne pouvoir faire un dessin ici pour m'expliquer d'où je sors ça.
C'etait ce genre de formule que tu cherchais ?

Damien

Hello,

Ça pourrait être sympa d'avoir un retour à nos suggestions...

Damien

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 11 Oct 2012, 15:00

Message supprimé,
mais +1 pour la relance.

DamX
Membre Rationnel
Messages: 630
Enregistré le: 02 Oct 2012, 13:12

par DamX » 11 Oct 2012, 15:17

Dlzlogic a écrit:Bonjour Damien,
J'essaye d'être très prudent avec ce sujet.
Sur un autre forum, il y avait la question "calculer la distance entre 2 points connus par leurs coordonnées géographiques". Comme je suis censé savoir faire cela, j'ai repris mes bouquins, j'ai fait des recherches, et finalement j'en suis arrivé à demander conseil à l'IGN.
J'ai reçu une réponse très détaillée qui commençait par quelque-chose du genre "Excusez du délai pour la réponse [un mois], mais c'est suffisamment compliqué pour le justifier".

La question posée est plus difficile que la simple question de la distance, il y a aussi l'angle.
Donc, à moins d'avoir tous les détails concernant le but de la question, j'évite de donner des formules.

Si la question t'intéresse, j'ai écrit un petit module qui permet de faire de type de calcul.


Hello,

Je ne dis pas que ce n'est pas compliqué, je disais juste ça pour julienbarrat qui a lancé le topic et n'a pas réagi à nos suggestions. Ce n'était nullement envers toi ou les autres contributeurs. Je suis désolé que ça ait pu être perçu autrement.

Par contre je ne comprends pas ton propos sur les distances, il n'y a qu'une question d'angles dans ce problème si je ne me trompe pas.

Damien

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 11 Oct 2012, 15:33

Oh, pardon, à la relecture, je me rends compte que j'ai fait une confusion avec un autre sujet. J'efface tout ça dans 15 minutes. :hum:

julienbarrat
Messages: 4
Enregistré le: 04 Oct 2012, 13:36

par julienbarrat » 11 Oct 2012, 23:02

Bonjour,

désolé de ne pas avoir répondu plus tôt. Je vais regarder tout ça et vous dirai ce que ça a donné.

Merci beaucoup de toutes vos réponses!


julien.

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 44 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite