リンクをクリップボードにコピー
コピー完了
シェイプレイヤーのパスからCreate Nulls From Pathsのパスをトレースを使用して
ヌルレイヤー作成して
シャイプレイヤーのパスのトリミングの終了点にヌルレイヤーの進行状況を
ピックウィップで繋げました。
進行状況が0%から99,9%まではうまく動作しているのですが
100%になるとヌルレイヤーの回転角度が変ってしまいます。
今は、進行状況を99.9%までしようするように使用していますが、
何か良い手段はないでしょうか?
割り算のミスのような感じがしますので
どこかに絶対値として計算させれば対応できそうな気がしますが
良い方法を知っていましたら教えてください。
症状のイメージをファイル添付します。
リンクをクリップボードにコピー
コピー完了
リンクをクリップボードにコピー
コピー完了
パスにアンカーポイントが誤って追加されていないでしょうか。
ヌルの向きが反転しているので、右端にアンカーポイントを追加した後、左側にポイントを追加したような動きになっています。
aiファイルから作成している場合は、Illustratorで確認して原因が不明なら再度、パスを描いてみてはどうでしょう。
リンクをクリップボードにコピー
コピー完了
ヌルレイヤの進行状況のピックウィップを、線で使用してるパスのトリミングの終了点にひも付けした際に
ヌルレイヤのトランスフォームの位置と回転のエクスプレッションが作られて
計算が違っていると思われます。
細かく動かすと進行状況が99.9%までは、意図する動きとなり100.0%に変わった瞬間
ヌルレイヤの回転位置が、変化しまいます。
試しに、エクスプレッションの中で100で割っている場所を100.1に変更すると
うまくいきます。
しかしながら、別の動きで、100%を超える場合や正確な位置を出したいので
100.1でにげたくないので、良い方法がありましたら教えてください。
3つ目の画像が、エクスプレッションが見えやすい画像です。
よろしくお願いいたします。
リンクをクリップボードにコピー
コピー完了
ヌルにあるエクスプレッションは、Create Nulls From Pathsを適用すると自動で追加されるもので、これは問題ないと思います。
問題があれば、2018年から追加された機能ですから、ユーザーからの報告が多数寄せられているはずです。
特定のパスだけ起きる現象であれば、After Effectsのペンでパスを描き直してもできると思います。
リンクをクリップボードにコピー
コピー完了
Create Nulls From Pathsを使用してヌルレイヤを作っった際に、
ヌルレイヤのトランスフォームの位置と角度にエクスプレッションが作られて
ヌルレイヤのエフェクト-パスをトレース内のパスの進行状況が、99.9%から100.0%に変わった瞬間に
逆方向になります。
自動的に作られた回転のエクスプレッションが下記です。
var pathToTrace = thisComp.layer("延びる下の線 2")("ADBE Root Vectors Group")(1)("ADBE Vector Shape");
var progress = thisLayer.effect("Pseudo/ADBE Trace Path")("Pseudo/ADBE Trace Path-0001")/100;
var pathTan = pathToTrace.tangentOnPath(progress);
radiansToDegrees(Math.atan2(pathTan[1],pathTan[0]));
上記のエクスプレッションで100で割っている部分を、100.1に変更すると問題が解決されます。
この症状は、発生する線の位置と発生しない位置があり困っています。
グローバル座標とレイヤー座標の関係もしくは、ラジアン角などの問題もあるような気がします。
角度は-90度から始まり曲がった位置で0度となり99.9%の位置まで0度ですが
100%になった瞬間に170.3度となります。
上下の位置で2つの線を書いていますが、片方だけ出る症状で困っています。
不明点があれば、追記いたしますのでよろしくお願いいたします。
リンクをクリップボードにコピー
コピー完了
Huge21さんの回答が原因の可能性としては高いと思います。
エクスプレッションを疑うのは無駄だと思います。
100の数値は、百分率で100%となるようにしているだけです。
例えば、100m走が100.1m走に変わって100m走ってもゴールに着いていない状態です。
100%で99.9%と100.1%の100%は、ほぼ同じことになるので数値は変えないようにしましょう。
リンクをクリップボードにコピー
コピー完了
ようやく意味がわかり解決いたしました。
終了点に見えないベジェ用のポイントが配置されていたようで、
ペンツールの頂点の切り替えを選択して、Alt(option)を押しながら終了点をクリックしたら
問題が解決しました。
余談ですが、Aiからのデータを取り込んだのですが
Aiの編集で隣り合う四角形を2つ書いて2つの図形を合体後に不要部分を削除し
その線に対して”効果-スタイライズ-角を丸くする”で作ったデータを
Aeで読み込み、ベクトルレイヤからシャイプレイヤを作成した際に発生しました。
取り込んだ元データの作り方で影響が出たようです。
回答ありがとうございました。
リンクをクリップボードにコピー
コピー完了
リンクをクリップボードにコピー
コピー完了
アドバイスありがとうございます。
Adobe初心者なので、色々とわからないことが多く非常に助かります。
色々と、教えていただければ助かります。
Create Nulls From Pathsを使用してヌルレイヤを作っった際に、
ヌルレイヤのトランスフォームの位置と角度にエクスプレッションが作られて
ヌルレイヤのエフェクト-パスをトレース内のパスの進行状況が、99.9%から100.0%に変わった瞬間に
逆方向になります。
自動的に作られた角度のエクスプレッションが下記です。
var pathToTrace = thisComp.layer("延びる下の線 2")("ADBE Root Vectors Group")(1)("ADBE Vector Shape");
var progress = thisLayer.effect("Pseudo/ADBE Trace Path")("Pseudo/ADBE Trace Path-0001")/100;
var pathTan = pathToTrace.tangentOnPath(progress);
radiansToDegrees(Math.atan2(pathTan[1],pathTan[0]));
上記のエクスプレッションで100で割っている部分を、100.1に変更すると問題が解決されます。
この症状は、発生する線の位置と発生しない位置があり困っています。
作ったパスの問題ではないと思うのですがどうでしょうか?
グローバル座標とレイヤー座標の関係もしくは、ラジアン角などの問題もあるような気がします。
角度は-90度から始まり曲がった位置で0度となり99.9%の位置まで0度ですが
100%になった瞬間に170.3度となります。
上下の位置で2つの線を書いていますが、片方だけ出る症状で困っています。
不明点があれば、追記いたしますのでよろしくお願いいたします。
リンクをクリップボードにコピー
コピー完了
Huge21さんの回答にあるAltキーを使う操作は、
下記リンクの方向線を切ったり・なくす方法で学習できます。
リンクをクリップボードにコピー
コピー完了
アドバイスありがとうございます。
エクスプレッションの勉強と考えて色々とトライしてみます。
座標に関する補正などが複雑なんですね。
色々な情報が、乱立して戸惑ってます。
tangentOnPathはpointOnPathの位置を[0,0]として、そこから進行方向へ1進んだ位置を出すので、使うときはpointOnPathにtangentOnPathを足して使う。