Alors oui j'ai ta solution !
jte fais ca avec les explications :
d'abord, ce sera vachement plus simple de bosser avec trois layers :
le layer "animation"
le layer "controleur"
et un layer en plus qui stockera les infos de positions du layer animation sur l'on nomera "lespositions" (un objet nul tout bète)
donc : sur le controleur, rien de particulier a faire...
sur "lespositions", on met l'animation de position (Par exemple à l'image 1 [500,450], à l'image 2 [300,600], à l'image 3 [600,320]...)
et sur le layer "animation" cette expression :
positiondorigineXducontroleur = 90;
thisComp.layer("lespositions").toWorld(thisComp.layer("lespositions").transform.anchorPoint,thisComp.layer("controleur").transform.position[0]-positiondorigineXducontroleur)
explications :
positiondorigineXducontroleur, c'est la valeur de la position X du controleur avant qu'on y ait touché.... inutile si c'est 0
ensuite on utilise l'expression "toWorld(point, instant)" qui permet de récupérer les coordonnées d'un point a un instant donné. TRES utile dans plein plein plein de cas, notamment pour mettre un objet a la meme position qu'un autre, quand on ne peut pas faire de lien (peske on veut pas lier la rotation, ou peske ce qu'on lie c'est le centre d'un effet, etc....)
ou en l'occurence ici, pour récupérer une position a un instant donné !
doooonc résumons :
thisComp.layer("lespositions").toWorld
le layer sur lequel on applique lexpression toWorld
(thisComp.layer("lespositions").transform.anchorPoint
le point dont on récupère les coordonnées
(thisComp.layer("controleur").transform.position[0]-positiondorigineXducontroleur)/25
et ca c'est ce qui donne l'instant auquel on prend la position, c'est a dire la position X de "controleur" MOINS sa position d'origine... Si on l'a bougé d'un pixel a droite, ca donne 1, et on divise par 25 (si on fait du 25 images secondes) puisque faut donner le temps en secondes... logique...
et si on voulait prendre la position à l'image 1 pour un déplacement de 10 pixels, a 2 pour 20 pixels, etc... on aurait mis
(thisComp.layer("controleur").transform.position[0]-positiondorigineXducontroleur)/250
et voila !
j'espère que c bien ca que tu voulais !
a la prochaine
(au passage, ca me donne quelques idées pour des trucs qui peuvent etre bien pratique... animer un truc qui se déplace sur une trajectoire par exemple, qu'on a dessiné a l'avance... ya pas mal de possibilités en partant de cette technique je crois !)