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

Pythonスクリプトでキーボードショートカットもどき

 Poser7になって、画面上部のメニューからPython(パイソン)スクリプトを直接呼び出すことができるようになった。これを利用して、キーボードショートカットもどきを設定してみたい。

 まず、設定済みの状態を見てもらおう。

 デフォルトの状態で「Scripts」に登録されていたスクリプトは特に使わないので別の場所に移動し、オリジナルコマンドが表示されるようにした。「インバースキネマティクスをオン・オフするコマンド」と「フィギュアの特定パーツを選択状態にするコマンド」である。

 ALTキーを押しながら、「S」「1」「1」と入力すると、私が作ったスクリプト「1 IK ALL ON.py」が実行され、フィギュアのインバースキネマティクスが全てオンになるのだ。

 私としては画期的なことなのだが、ピンとこない人は別に気にしなくていい。以下に設定の仕方をメモしておこう。

c:\Program Files\e frontier\Poser 7\Runtime\Python\poserScripts\ScriptsMenu にあるフォルダをどこか適当なフォルダに移動(切り取り・貼り付け)する。


▲デフォルトでメニューに登録されているいらないPythonスクリプトをどっかに移動

 このフォルダに作ったフォルダや拡張子pyのファイルがPoserの画面上部メニュー「Scripts」に出てくるのだ。ただし、新しくフォルダやファイルを追加した場合はPoserを再起動しないとScriptsに出てこない。

c:\Program Files\e frontier\Poser 7\Runtime\Python\poserScripts\ScriptsMenu に、フォルダを作る。


▲フォルダを作る

 整理するために、私はフォルダを作ったが直接pyスクリプトを置いてもOKだ。

 フォルダ名の頭に「1」とか「2」とか書いてあるのは、こうしておくと数字の「1」キーや「2」キーでショートカットできるから。どうやらフォルダ名やファイル名の1文字目がショートカットキーになるようなのだ。多分。

作ったフォルダの下に、Pythonスクリプトファイルを置く。


▲Pythonスクリプト(拡張子py)

Poserを再起動

 これでOKだ。

 スクリプトの内容もいくつか紹介しておこう。

 1 IK ALL ON.py (インバースキネマティクスを全てオンにするスクリプト)

import poser

scene = poser.Scene()
figure = scene.CurrentFigure()
figure.SetIkStatus(0, 1)
figure.SetIkStatus(1, 1)
figure.SetIkStatus(2, 1)
figure.SetIkStatus(3, 1)



 2 RightHand.py (現在のフィギュアの右手を選択状態にするスクリプト)

import poser

scene = poser.Scene()
scene.SelectActor(scene.Actor("Right Hand"))



 PoserのPythonスクリプトについては、付属のPythonマニュアルPDFを参照して欲しい。Pythonの文法については参考書初めてのPython 第2版あたりがいいんじゃないだろうか。

関連:
Pythonスクリプトでキーボードショートカットもどき

次のフィギュアの目の焦点をカンタンに合わせるスクリプトへ


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