[After Effects]角度と距離から座標を求める。

角度と距離が分かれば、座標を求めることが出来る。

・黄色長方形の角度
・緑四角までの距離(黄色長方形の半分):50
↑の2つから緑四角の座標を求める。

▼緑四角レイヤーの位置に追加したエクスプレッション

//↓黄色長方形レイヤーの角度を、変数kakudoに入れる。
kakudo = degreesToRadians(thisComp.layer("イエロー 平面 1").transform.rotation);

x=50*Math.cos(kakudo);
y=50*Math.sin(kakudo);

//↓回転の中心が画面の中心になるように、数を足す。
[x,y]+[240,180]

▼角度と距離から座標を求める方法

まずは角度を、degreesToRadians()メソッドを使って、
一般的な角度である度数法(ディグリー)から、弧度法(ラジアン)に変換する。
(※座標を求めるときに使うMath.cos()とMath.sin()メソッドの引数はラジアンでなければいけない。)

ラジアン角度 = degreesToRadians(ディグリー角度)

XとYの座標を以下の式を使って求める。

x座標 = 距離×Math.cos(ラジアン角度)
y座標 = 距離×Math.sin(ラジアン角度)

このXとYの座標は、コンポジション左上を原点にした位置になる。

▼雑記


今回の処理は、マジックハンドの動きを再現するために必要になった。
当初は、回転するオブジェクトを親に持つ、子オブジェクトの座標を取得したかったけど、無理だった。

三角関数は理解してないけど、角度と距離が分かれば、それらから座標を求める事が出来た気がしたので、
「角度 距離 座標」で検索して、角度と距離から座標を求める方法を調べた。

[After Effects]角度と距離から座標を求める。” への1件のコメント

  1. ピンバック: [After Effects]回転する親レイヤーの子になっているレイヤーの座標を取得する方法 | NG録

コメントを残す

メールアドレスが公開されることはありません。


五 − = 3


*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>