Bonjour à tous.
Comme passe temps j'utilise le cryengine3 et son sandbox editor pour diverse chose, mais j'ai un soucis de math au niveau des changements de repère et des vecteurs.
Comme dans le shéma attaché au post, j'ai deux points A(xa ; ya) et B (xb ; yb) se trouvant dans le repère orthonormé world
B est attaché a A, c'est a dire que peut importe les déplacements, rotations de A, B suivra car considéré par le logiciel comme appartenant au repère (A,x',y',z')
Par leur système de flowgraph il y a tout un moyen efficace et facile de faire des opération sur les vecteurs, appliquer déplacement, et monitorer les positions / rotation ce qui m'intéresse là.
Car la seule possibilité offerte par défaut ne donne que les positions et rotation par rapport au repère World, et ca peut importe que B soit "attaché" a A, et c'est là que ca me pose problème.
Du coup, j'aimerais savoir comment faire pour pouvoir monitorer la position de B et ses rotations mais par rapport a son nouveau repère de référence qui est A
voila ! merci d'avance

Bonjour,
une technique classique.
On fait une translation de vecteur u=AO, la rotation voulue, puis une translation de vecteur -u.
En supposant que O est l'origine du monde.
Bonjour, merci pour la réponse.
Cela dit, c'est tellement vague que ca ne m'aide pas du tout
N'ayant pas poursuivi de math plus avancé dans mes études suite au lycée, j'aurais besoin de quelque chose de plus... détaillé, vus que les bases que j'ai en math et sur les vecteurs ne suffisent apparemment pas pour résoudre ca.
D'ou le fait que je vienne demander cela ici. Car j'imagine que cela ne doit pas être si complexe que ca !?
Merci 
Je viens de me rendre compte que j'avais inverser la position de Z et Y au niveau du repère A.. pardon pour mon erreur...
Pardon pour le double post, mais, je n'ai pas trouvé de moyen d'éditer ma précédente réponse.
J'ai bien tenté de faire vec OA - Vec OB pour "isoler" le vecteur AB qui me donne donc les coordonnés de B dans le repère A, mais si j'applique une rotation a A, le vecteur AB va donc être totalement différent..
Par exemple dans le repère A, B se trouve a x=0 y=4 z=0, hors si j'applique une rotation de 90 sur l'axe des x au point A je vais avoir B x=0 y=0 z=4
Je ne suis pas sur de bien avoir compris ta question.
Si, dans le repère (A...), B se trouve a x=0 y=4 z=0 il est normal d'obtenir B x=0 y=0 z=4 dans le repère (A...) après une rotation de 90° autour de l'axe des x du repère (A...)
Si ce résultat est obtenu dans le repère word, il suffit de rajouter les coordonnées de A dans le repère word au résultat obtenu.
Moi ce que je voudrais, c'est un moyen pour avoir les coordonnés de B dans le repère A(x'y'z') et donc si A subit une rotation de 90° dans le repère World, B devrait toujours être a x=0 y=4 z=0 vus que ses coordonnées sont en fonction du repère A et non du repère World ou là en effet ca devient x=0 y=0 z=4
Est ce que je suis plus clair avec ces explications ? 
Je ne comprend pas ton problème.
Si c'est faire faire tourner B dans le repère A(x',y',z') la procédure classique est la suivante :
-- calculer B1=B-A (on soustrait les coordonnées de A à celles de B)
-- faire les rotations voulues au point B1 dans le repère world. On obtient un point B'1
-- calculer la nouvelle position de B : B=B'1+A (comme pour la soustraction)
Si tu veut faire des calculs de changement de repère à la main, c'est assez compliqué.
Je ne me suis apparemment pas encore correctement expliqué vus que tu comprend pas ce que je voudrais avoir.
J'pensais pas si mal m'expliquer :/
Comme je l'ai dis, j'utilise l'editeur du Cryengine3. Devant on peut placer des "points" dans l'espace, et par le systeme de flowgraph réaliser des movements / rotation et monitorer des coordonnés dans l'espace.
Comme le montre le screen, le point A, le point B sont postionné dans le monde ( dépendant du repère "world" )
Le trait bleu représente le fait que B est "attaché" a A, c'est a dire que l'editeur considère que le nouveau repère de référence de B est le point A ( nouveau repère ) car si, par le systeme de flowgraph, je j'applique un movement au point B et lui demande d'aller a la coordonné ( 0,0,0 ) il va se déplacer sur le point A et non a la coordonné (0,0,0) du repère world.
Et si j'applique une rotation a A ( ou le déplace ) le point B sera toujours a z=4.. jusque là, j'imagine que je suis compréhensible ? :/
SEULEMENT, le système de flowgraph, la node "GetPos" ( présente sur le screen ) ne me permet de monitorer les positions / rotation QUE par rapport au repère "world" même si B est "attaché" a A j'aurais quand même ses coordonné dans le monde et non par rapport a son nouveau repère.
Du coup, en effet j'aimerais savoir comment calculer un changement de repère pour connaitre dans n'importe quelle condition la position ou rotation de B dans son nouveau repère qui est A et non plus le repère world ( les seuls valeurs que je peux monitorer grâce a cette node )
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :