Cinema4D(素晴らしいpy4Dを使用)からのアニメーションキーフレームをリストのリストに保存しています:
props = [lx,ly,lz,sx,sy,sz,rx,ry,rz]
任意のアニメーションの各プロパティ/トラックのキーフレームを出力しましたが、長さが異なります。
track Position . X has 24 keys
track Position . Y has 24 keys
track Position . Z has 24 keys
track Scale . X has 1 keys
track Scale . Y has 1 keys
track Scale . Z has 1 keys
track Rotation . H has 23 keys
track Rotation . P has 24 keys
track Rotation . B has 24 keys
これらのキーを Blender で使用したい場合は、次のようにする必要があります。
- 現在のフレームに移動
- そのキー フレームのプロパティを設定し (位置、回転、スケールにすることができます)、キーフレームを挿入します
これまでのところ、私の計画は次のとおりです。
- 0 からすべてのプロパティのキー フレームの最大数までループします。
- 各プロパティをループ
- 現在のキーの値が保存されているかどうかを確認します。保存されている場合は、Blender のフレームに移動し、値を保存する/キーフレームを挿入します
これはこれを行うための最良の方法ですか?
これが質問のコンテキストです。
まず、props ストアの最大のリストを見つける必要があります。私はPythonが初めてで、それを行う魔法の関数があるかどうか疑問に思っていました. max() に似ていますが、リストの長さです。
現時点では、次のようにコーディングすることを考えています。
//after props are set
lens = []
for p in props: lens.append(len(p))
maxLen = max(lens)
それを得る最良の方法は何ですか?
ありがとう