Poser覚書> Poser操作 > スクリプト

現在のフレーム以降のキーフレームを全削除するスクリプト

 現在のフレーム以降のキーフレームを全削除するPythonスクリプトを作った。

 アニメーションポーズ編集時に、ここから後ろのフレームを全部パッと消したいなあ、ということはないだろうか。私はちょくちょくそう思ったので、スクリプトを作ってみた。

使い方

 スクリプトを実行すると、現在のフレーム(カレントフレーム)以降のキーフレームをばっさり消す。

 delframes_after_current.py ... 選択中のパーツ(例えば、腕やBODYなど)を消す。

 delframes_after_current_allparts.py ... 選択中のパーツに限らず、対象フィギュアの全パーツを消す。

注意点

 アンドゥが効かない。これは一歩間違えるとシャレにならないので、本当に気をつけよう。

スクリプト

#
import poser

scene = poser.Scene()
currentFrame = scene.Frame()
if( scene.NumFrames() < 2 ):
 raise("Total frame number is 1. can not delete");

actor = scene.CurrentActor()
figure = scene.CurrentFigure()

for i in range(currentFrame,scene.NumFrames()):
 actor.DeleteKeyFrame(i)

scene.SetFrame(currentFrame)

▲delframes_after_current.py 選択したパーツのキーフレームを消すスクリプト

#
import poser

scene = poser.Scene()
currentFrame = scene.Frame()
if( scene.NumFrames() < 2 ):
 raise("Total frame number is 1. can not delete");

figure = scene.CurrentFigure()
for work_act in figure.Actors():
 for i in range(currentFrame,scene.NumFrames()):
  work_act.DeleteKeyFrame(i)

scene.SetFrame(currentFrame)

▲delframes_after_current_allparts.py 選択したフィギュアの全パーツのキーフレームを消すスクリプト

 Pythonはインデントを正確に入力しないとエラーになるので注意。念のためzipしたファイルを置いておこう。

 →DeleteFrames.zip

その他

 なにかあっても責任は取れないけども、自由に使って欲しい。

 ちょっと改造して再度公開したりしてもOK、特に私にそのことを知らせる必要もない。

関連:

次のドラッグ&ドロップでライブラリからフィギュアなどが呼び出せるPoser8標準付属の便利ツール FileDropperへ


Poser覚書> Poser操作 > スクリプト もくじ