# Positionsänderung über Expressions bei After Effects



## tasovi (3. März 2004)

Wer kann mir helfen?
ich möchte mit Adobe after effects, 2 ebenen per expression verknüpfen.
die 1.ebene bewegt sich innerhalb von den positions keyframes
bei der 2.ebene habe ich bei der eigenschaft position eine expression eingefügt die wie folgt lautet:

this_comp.layer(1).position

jetzt bewegt sich die 2. ebene exakt wie die 1.

wie kann ich denn jetzt per expression die x und y koordinaten der position verändern?

im fall von rotationen ging das einfach so:
this_comp.layer(1).rotation*12
dadurch hat sich die ebene 12 mal schneller als die andere gedreht.

aber ich würde gerne an die positions_koordinaten ran kommen.
damit ich leichte abänderungen von der original bewegeung hinbekomme!

wer kann helfen?


----------



## Chrisu (4. März 2004)

So, hier ist die Lösung deines Problems:

*[thisComp.layer(1).position[0],thisComp.layer(1).position[1]]* 

Alternativ kannst du das auch mit dem Lasso machen (Symbol in der Mitte). Dann darf man allerding mit dem Lasso nicht auf "Position" zeigen, sondern muß einfach auf den entsprechenden X- bzw. Y-Wert zeigen.

HTH and so long,
Chrisu


----------



## tasovi (4. März 2004)

super vilen dank!hat prima geklappt!

kannst du(oder wer es weiß) mir noch sagen, wie ich zu der expression
[thisComp.layer(1).position[0],thisComp.layer(1).position[1]] 

gleichzeitig noch folgende expression anwenden kann:
this_comp.layer(1).position.value_at_time(time-3)   

ohne dass die eine die andere aufhebt?
muss man die irgendwie verknüpfen?

thx


----------



## Chrisu (4. März 2004)

Also ich weiß nicht, ob ich dich jetzt richtig verstehe.
Aber hier ist eine Lösung:

*pos=thisComp.layer("Weiße Farbfläche 2").position.valueAtTime(time-3);
[pos[0],pos[1]-200];*

Damit ist die zweite Ebene jetzt um 200 Pixel höher und wird 3 Sekunden später nachgezogen.

So long,
Chrisu

PS:
hab gerade nochmals das Ganze mit AFX 5.5 ausprobiert. Funktioniert auch, nur mußt du hier statt thisComp --> this_comp und anstatt valueAtTime --> value_at_time einsetzen. Da haben die anscheinend doch etwas geändert.


----------



## tasovi (9. März 2004)

super!
du hast es drauF!
vielen dank!
funktioniert einsA


----------



## pOwLchen (26. Juli 2006)

etwas mehr als 2 jahre später -> gleiche frage ähnliches Problem.

es geht um die Expression in After Effects. Ich versuche derzeit einige Arbeitsabläufe in AE 6.0 via Expression zu vereinfachen und suche ein Tutorial, Erklärung, oder ähnliches in dem verschiedene beispiele aufgezeigt werden wie das genau funktioniert.
Ich habe mir in etwa " http://www.motionscript.com/mastering-expressions/language-beginning-1.html  " sowas vorgestellt (in deutsch wäre am besten, muss aber nicht). 

Eine auflistung von möglichen Befehlen, Variablen etc. wäre hierfür durchaus hilfreich.
Ich weis mittlerweile das diese Expressions befehle auf Java basieren, aber in wie weit man Java auf diese AE funktion übergreifen/ummünzen kann weis ich nicht 

Für Tip's, Link's, Tut's, pdf's und was es noch so alles gibt bin ich euch überaus dankbar.

Hoffe ihr könnt mir weiterhelfen


mfg powl



PS: im handbuch von AE 6.0 waren dazu einige gute tips vorhanden, soweit ich mich erinnern kann, nur hab ich das verlegt  und finde es jetzt nicht mehr *haare ausreis*


----------

