Skip to main content
Participating Frequently
January 5, 2022
Question

エクスプレッション 特定のキーフレームの値をリンクさせるには?

  • January 5, 2022
  • 2 replies
  • 248 views

レイヤーAのトランスフォームの[位置]にいくつかキーフレームを打っていたとします。
2番目のキーフレームの値をレイヤーBの[位置]にリンクさせたいのですが、可能でしょうか?
レイヤーBの[位置]の値を変更すれば、自動でレイヤーAの[位置]の2番目のキーフレームの値も変更されるようにしたいです!

    This topic has been closed for replies.

    2 replies

    Community Expert
    January 5, 2022

    下記はどうでしょう。

    let p = thisComp.layer("レイヤーB").transform.position;
    let k1 = key(1).time;
    let k2 = key(2).time;
    let k3 = key(3).time;
    if((time >= k1) &&  (time <= k2)){
    	linear(time,k1,k2, valueAtTime(k1),p);
    }else if((time >= k2) && (time <= k3)){
    	linear(time,k2,k3,p,valueAtTime(k3));
    }else value;
    Participating Frequently
    January 5, 2022

    できました!

    ありがとうございます!

    しかし、キーフレームに値をsetできる専用のメソッドってないんですね...

    難しいです...

     

    Participating Frequently
    January 5, 2022

    キーフレームをリンクさせる場合はエクスプレッションを使うと非常に簡単にリンクすることが出来ます。

    まずリンクしたいレイヤーの位置のストップウォッチマークをAlt(Option)キーを押しながらクリックしてエクスプレッションを有効にします。

    次にエクスプレッションのピックウィップをリンクしたいプロパティに伸ばせばキーフレームがリンクされます。