Bonjour,
j'ai la position des 3 points d'un cube (sommet) dans le repère global(O,X,Y,Z) je voudrais trouvé en utilisant ces points le repère local de ce cube
est ce qu'il est possible ?
Bonjour,
j'ai la position des 3 points d'un cube (sommet) dans le repère global(O,X,Y,Z) je voudrais trouvé en utilisant ces points le repère local de ce cube
est ce qu'il est possible ?
Bonjour,
si tes 3 points n'appartiennent pas à la même face, alors oui, ça doit être possible.
Quels sont les sommets que tu connais :
?
merci pour votre réponse
en effet j'ai la position de tout les sommets du cube mais dans le repère monde
je voudrais pas les utiliser tous parce qu' il est possible d'atteindre mon objectif (qui est de trouver la position de mon cube et leur repère local)si j'ai seulement 3 sommets
Dans l'exemple que je montre, les vecteurs (DC,DH,DA) constitue un repère orthogonal par exemple. Il faut donc 4 points (qui ne sont pas dans le même plan).
Si tu n'as que 3 sommets, par exemple A, D et F, tu peux en déduire les autres sommets. Si ces 3 sommets appartiennent à une même face ce n'est pas possible.
et par conséquent je trouve la position de mon cube et leur repère local ?Si tu n'as que 3 sommets, par exemple A, D et F, tu peux en déduire les autres sommets.
si c'est le cas
comment je peux déduire ça ? est ce qu'il y a une formule ?
Salut
Si si, c'est peut-être possible... étant donné que l'on a l'hypothèse que l'on est sur un cube! On connait donc la longueur des côtés, on sait donc "peut-être" placer la face opposée... si on a une hypothèse supplémentaire pour savoir de quel côté la mettre de la face définie par ces 3 sommets.
Par exemple si on considère qu'on est avec la terminologie de la figure donnée dans le premier post, et que l'on a les points ABD, qui sont coplanaires, on sait que AE=1/a*AB^AD, avec a=longueur du côté du cube
avec un peu de géométrie, tu devrais y arriver. Une formule et une seule pour gérer toutes les combinaisons possibles de 3 sommets, ça serait un peu magique!
Le plus simple serait peut-être de jouer avec les vecteurs, et quelques produits vectoriels pour avoir ceux qui manquent. Par exemple si tu as les points ADF, tu as BE=1/a*AF^AD, et ainsi B=A+0.5*AF+0.5*BE (avec ^ produit vectoriel)
un peu d'aide SVP ? qu'est ce que je dois prendre en compte pseudo algorithme? parce que j'avais ce problème pendant presque un mois (avec un peu de géométrie, tu devrais y arriver. Une formule et une seule pour gérer toutes les combinaisons possibles de 3 sommets, ça serait un peu magique!)
ok , merci je vais essayer d'écrire toute l'algorithme
mais est ce que tous ça est juste pour trouvé le repère local de cube!!
On aurait peut-être du commencer par cette question : qu'est-ce que tu entends par trouver le repère local? n'hésite pas à décrire le contexte de ce que tu faits, pourquoi tu cherches ce repère local et à quoi il va te servir.
Si tu as les coordonnées des points, trouver le repère local est trivial, donc autant s'assurer que l'on parle bien de la même chose.
Oui, c'est vrais peut être si je vous explique le contexte vous me donner des idées
j'ai lus un fichier qui contient les positions des points (ces coordonnées sont dans le repère scène)
je voudrais en utilisant 3 sommets (3 points) calculer la position du repère cube dans le repère global qui nous donne une matrice de changement de repère
2-j'applique ensuite cette matrice au autre coordonnées (les autres points) pour trouver leur position dans le repère cube
vous avez compris maintenant mon objectif?
Ben à défaut d'avoir un cahier des charges précis...
vivi, ça on avait déjà compris, mais ce que te demande magelan c'est ce que tu appelles "le repère local". Un repère, c'est une origine et trois vecteurs. Ca, tu as tout ce qu'il faut sur ton cube. Maintenant, comment est-ce que tu veux le définir sur ton cube? C'est quel point l'origine? Le vecteur Xlocal? Le Ylocal?
oui je veux le définir et ça ma donne (d’après ce que j'ai lu) un matrice 4*4 de changement de repère qui je vais l'utilisé après pour transformer les coordonnées des sommets qui sont dans le repère global au repère cube
Code : Sélectionner tout - Visualiser dans une fenêtre à part comment est-ce que tu veux le définir sur ton cube?
maintenant j'ai des autres information sur mon cube
dc=30m
da=40m
cg=26m
(j'ai les position des d,c,a,g dans le repère global et j'ai les dimension du cube)
mais comment je peux utiliser les coordonnée de d,c,a, et même peut être g qui sont dans le repère global pour trouvé le repère local de cube
c'est pas possible non ?
Et le cube s'est transformé en parallélépipède rectangle!
Un cube a tous ces côtés égaux, ce n'est pas le cas ici...
Peux-tu nous donner un exemple de données, que l'on soit sûr que l'on parle de la même chose?
Il existe plusieurs repère sur ce parallélépipède, si tu as les coordonnées des points, tu as ces repères. Par exemples, l'origine D et la base de vecteur (DC,DH,DA) constitue un repère. Après c'est à toi de nous dire si c'est celui-là que tu cherches ou un autre?
Donc même question que Plegat :
Maintenant, comment est-ce que tu veux le définir sur ton cube? C'est quel point l'origine? Le vecteur Xlocal? Le Ylocal?
j'ai attaché un fichier text contient les information qui j'ai trouvé
comme vous pouvez voir ce sont seulement des chiffre!c'est pour ça j'ai trouvé des problème de compréhension .
c'est la première fois que je travail avec des déférents repères c'est pour ça peut être j'ai pas bien compris ce que vous voulez dire par
et par conséquent j'ai pas donnée une réponse préciseMaintenant, comment est-ce que tu veux le définir sur ton cube? C'est quel point l'origine? Le vecteur Xlocal? Le Ylocal?
la chose qui je connus c'est :
1-je dois définier le repère local de mon cube(origine et base)
2-je dois choisir 3 sommets pour calculer la position de ce repère local (je crois içi l'origine) dans le repère global, et ça nous donne aussi une matrice de changement de repère (matrice 4*4, matrice homogène) permettant de passer du repère laboratoire au repère cube.
3-on applique la matrice de changement de repère aux autres sommets de la (son « inverse »), on obtient les coordonnées locales de tous les sommets dans le cube.( et içi je pose un grand question commet j'utilise des coordonné global des 3 sommets pour trouver la position de repère local ensuite j'applique la matrice de changement aux autre sommets pour trouver leur position dans le repère cube mais mais les 3 sommets qui j'ai l'utilisé j'ai pas leur coordonnées dans le repère cube ?? est ce que j'obtient leur coordonnées local automatiquement lorsque je calcul la position de repère local? ou quoi?)
Si tu ne comprends pas les données que tu nous passes, je sens qu'on ne va pas y arriver nous...
C'est toujours la même séquence de points ou il y a des permutations parfois? Plus précisément, est-ce une description ABCDEFGH de ton "cube", ou est-ce que parfois on a un ABHDEFGC ou autre?
Oui, enfin, tu as déjà travaillé avec un repère unique et tout seul... donc tu sais qu'un repère, ça a une origine et trois axes directeur... donc tu devrais y arriver pour nous expliquer sur ton "cube" où tu places tous ces points... Tu la mets où l'origine? en A? en B? en C? en D? en E? en F? en G? ou en H? (le post d'après, je poserai la question pour savoir quel côté porte Ox...)
Tout à fait... c'est d'ailleurs ce qu'on te demande depuis quelques posts... mais on est patient...
Non. Position=un point. Après, les trois sommets serviront à définir l'orientation de ton repère (les positions des axes Ox, Oy et Oz locaux)
Si tu dis que D c'est l'origine et que C donne l'axe Ox local, le point C aura automatiquement pour coordonnées (dc, 0, 0) dans ton repère cube...
Donc tu exprimes tes vecteur Ox/Oy/Oz locaux dans le repère laboratoire, tu les normalises, tu les mets en colonne dans une matrice, tu l'inverses et tu as ta matrice de changement de repère M. Tu rajoutes une petite translation en prenant les coordonnées de ton origine, ce qui te donne un vecteur V. Et au final, pour avoir tes coordonnées dans le repère cube, tu fais:
Plocal=M*(Plabo-V)
avec Plocal coordonnées du point dans le repère local, et Plabo coordonnées du point dans le repère laboratoire.
c'est ce que j'ai récupéré il n y a pas la notions de A,B,H,D,E,F,G,C je sais pas quel est le sommet en haut ou en bas , j'ai aucune idée c'est pour ça j'aiC'est toujours la même séquence de points ou il y a des permutations parfois? Plus précisément, est-ce une description ABCDEFGH de ton "cube", ou est-ce que parfois on a un ABHDEFGC ou autre?
dessiné le cube et je vais choisir les trois points selon l'affichage (selon l'affichage je vais attribué les nom au sommets ) c'est ce que je peux faire .
l'origine de cube je vais le met au centre de cube , c'est la meilleure cas non ?Tu la mets où l'origine? en A? en B? en C? en D? en E? en F? en G? ou en H? (le post d'après, je poserai la question pour savoir quel côté porte Ox...)
ah ok, j'ai compris l'utilité des trois sommets maintenantles trois sommets serviront à définir l'orientation de ton repère (les positions des axes Ox, Oy et Oz locaux)
ah , j'au compris aussi cette points , mais si j'ai fait le centre comme origine les chose ça va compliqué non (alors il est de préférable que je met d comme origine c =ox,A=oy,H=oz pour facilité les calcule des coordonné?)?Si tu dis que D c'est l'origine et que C donne l'axe Ox local, le point C aura automatiquement pour coordonnées (dc, 0, 0) dans ton repère cube.
si j'ai choisis "c =ox,A=oy,H=oz"Donc tu exprimes tes vecteur Ox/Oy/Oz locaux dans le repère laboratoire
ox=les coordonnée de c?
le vecteur oy= les coordonné de A ou le vecteur CA(xc-xa,yc-ya,zc-za)?
pourquoi j'inverse la matrice ?
j'ai pas bien compris ça ? est ce que j'ajoute juste les coordonnées de c(bien sûr si elle est l'origine)?Tu rajoutes une petite translation en prenant les coordonnées de ton origine,
j'ai démarré de comprendre les choses merci infiniment "plegat" tu m'as donnée un bon cour
Eh bé t'as pas le cul sorti des ronces...
Si tu ne sais pas qui est qui, tu prends un point (au hasard, le premier!), et tu dis que c'est le point A.
A partir de là, tu calcules toutes les distances des autres points par rapport au point A.
Le plus éloigné, c'est le point G
Celui qui vient après, c'est F (certains diront que ça peut être C ou H, mais on s'en fout, ça revient au même à une permutation près!).
Là, tu calcules la distance des points restants au plan AFG. Celui qui est à 0, c'est D.
Tu as ensuite deux couples de points, ceux qui sont à distance positive du plan, et ceux qui sont à distance négative. Pour les différencier, tu prends un des points, que l'on va nommer P (qui sera donc soit B ou C, soit E ou H) , tu calcules le produit scalaire AP*(AG^AF). Si c'est positif, c'est un point du couple (B,C), tu regardes avec la distance à A pour les différencier (le plus près étant B). Pareil pour les deux autres, le plus près, c'est E.
Voilà, maintenant tu as nommé tous tes points...
C'est super logique... on te donne les huit sommets, et tu vas mettre l'origine au centre???
Tu mets quoi comme origine??? Là tu as donné les axes...
Tu as de grosses lacunes en mathématiques ou c'est un problème linguistique?
L'origine c'est un point (ça doit faire deux ou trois fois que je l'écris...). D'après ce que tu écris, dans ta tête il semblerait que ce soit le point D. Tu peux prendre C pour définir Ox, mais pas A pour Oy sinon tu vas te retrouver avec un repère indirect.
D'après toi?
Les coordonnées de A dans quel repère?
Si tu prends les coordonnées de A dans le repère laboratoire, ça correspond à quel vecteur?
pour avoir la bonne matrice de transformation.
Sinon tu aurais la transformation inverse si tu ne l'inverses pas...
Tu ajoutes les coordonnées de C à quoi?
Pourrais-tu faire des questions complètes stp, ça serait plus simple...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager