[AfterEffects]円グラフの数値によって色を変えるには?エクスプレッション

円グラフの数値が上がってレッドゾーンになるという表現をする場合色にキーフレームを打たなければいけませんがエクスプレッションで自動化することが可能です

円グラフを作った後からのお話なので、円グラフの作り方はこちらから

カラーを切り替えるための準備

  1. 新規にヌルを作成(制御用)
  2. ヌルにカラー制御エフェクトを3つ追加

Tips

カラーの切り替えようにカラー制御エフェクトを追加しますが同じシェイプレイヤーに追加するとあとで管理がややこしいのでヌルを作ってそこで管理しましょう。エクスプレッションはヌルでコントロールすることが多いです。カラー制御はLow/Middle/Highの様にわかりやすく名前を変えておくと良いと思います。

色を条件分岐で切り替える

n = effect("スライダー制御")("スライダー");
if (n <= 40){
thisComp.layer("Control").effect("Low_Color")("カラー")
}else if(n <= 80){
thisComp.layer("Control").effect("Middle_Color")("カラー")
}else{
thisComp.layer("Control").effect("High_Color")("カラー")
}

はい、嫌になりますね。わかります。でもやってることはすごく簡単なんです。

n = effect("スライダー制御")("スライダー");

これはnの中にキーフレームを打つスライダーの数値を入れる作業

if (n <= 40){
thisComp.layer("Control").effect("Low_Color")("カラー")

スライダーの数値が40まではカラー制御名Low_Colorの色を参照します

}else if(n <= 80){
thisComp.layer("Control").effect("Middle_Color")("カラー")

最初の式から続きなので40-80までの数値ではカラー制御名Middle_Colorの色を参照します。0-40は上の式が優先されます。

}else{
thisComp.layer("Control").effect("High_Color")("カラー")
}

それ以外はHigh_Colorの色を参照。となるので実質81-100までの色の制御です。

if/elseは慣れておくと非常に便利

条件分岐は慣れておくと非常に使いどころが多いと思います。詳細は以前のこの記事からおさらいしても良いと思いますので是非。if/elseの詳細はこちら

念のためaepも期間限定で配布しておきますので確認用に使ってください。

aepダウンロードリンク cc2020(期間限定)

エクスプレションを使って快適なAE生活を^^

https://everydayskillshare.jp/

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です