Expressions/Scripts/Presets

Moderators: Disciple, zlovatt

mihak
Topic Author
Posts: 5
Joined: Sun Mar 23, 2008 6:50 am

### adaptive rotation based on a point

Hello!

I'm just working on a little project. I have an object that has animated position, and i wanted it to aim at the certain point. So here is a short amateurish expression i wrote:

x1 = content("Shape 1").transform.position[0];
y1 = content("Shape 1").transform.position[1];
x2 = -120;
y2 = 130;

x1 and y1 is the object position (i was working with a shape, but you could pickwhip anything), while x2 and y2 are the target point coordinates. And i love that the after effects has built-in protection against division by 0

All suggestions or fixes are welcome.

curiousturtle
Posts: 1
Joined: Thu Apr 03, 2008 3:22 am
Location: Aarhus, Denmark
Contact:

### Re: adaptive rotation based on a point

Just a small tweak that I use:

fromPoint=transform.position;
atPoint=thisComp.layer("Shape Layer 1").transform.position;
delta=sub(fromPoint,atPoint);
angle=Math.atan2(delta[1],delta[0]);

It makes it easier just to select and pickwhip new points. The fromPoint is of course your source layer and the atPoint is where you want it to point.

I think I've seen an even easier way to do this, but I'll be blowed if I can remember it.

Cheers,
Ben
Curious Turtle Professional Video
Training | Editing |Support

www.curiousturtle.com

SpotPost
Posts: 3
Joined: Fri May 23, 2008 6:51 am

### Re: adaptive rotation based on a point

Ben I think you mean this:

lookAt(position,thisComp.layer("Target_Layer").transform.position)

Pop that into the 'Orientation' of a layer, and it will keep rotating to face the target layer. It stays aligned along the Z axis, so you may want to rotate the layer by 90 degrees on Y.

Yan Masterson
Spot Post Ltd.
London.

### Who is online

Users browsing this forum: No registered users and 3 guests