メタセコイアのオブジェクト名を一括変更するスクリプト
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

メタセコイアのオブジェクト名を一括変更するスクリプト

2014-05-21 18:12
  • 1
メタセコイアのオブジェクト名を一括変更する方法をネットで検索しましたが、そのような機能もプラグインも見つけられなかったので、スクリプトを書いてみました。

Keynoteでの変形を確認するためオブジェクトの名前を「bdef:~」にして、ExportPMDで出力する時だけ「sdef:~」にしたいために、次のようなスクリプトを書いてみました。

bdef2sdef.py
# bdef: -> sdef:
doc = MQSystem.getDocument()
for x in doc.object:
src = x.name
if src.startswith('bdef:'):
dst = src.replace('bdef:', 'sdef:')
x.name = dst

メタセコイアVer3.1.6で実行できました(V4系でも実行できるかもですが、確認していません)。スクリプトの実行方法は、メニューの「パネル」から「スクリプトエディタ」を選択してエディタ画面を開き、上半分の入力欄に上記のスクリプトを書き込んだうえで、F5キーを押すだけです。



これでオブジェクト名が一括して変更されます。このスクリプトをファイルに保存すれば、右側の「追加」ボタンでリストに登録することもできます。

次のスクリプトはさっきとは逆に「sdef:~」を「bdef:~」にします。

sdef2bdef.py
# sdef: -> bdef:
doc = MQSystem.getDocument()
for x in doc.object:
src = x.name
if src.startswith('sdef:'):
dst = src.replace('sdef:', 'bdef:')
x.name = dst

メタセコイアのスクリプトは初挑戦なのに調子に乗ってもう1つスクリプトを書いてみました。Keynoteでボーンに追従するオブジェクトにするためには「~-ボーンの材質名」という名前にするわけですが、次のスクリプトでは、カレントのオブジェクトの名前の後ろに「-カレントの材質の名前」を追加してくれます。

concat.py
# ObjectName -> ObjectName-MaterialName
doc = MQSystem.getDocument()
obj = doc.object[doc.currentObjectIndex]
mat = doc.material[doc.currentMaterialIndex]
dst = obj.name + '-' + mat.name
obj.name = dst

履歴
2014-05-23:
コードの一部書き換えと本文の一部削除

広告
×
いただきました!
メタセコイア4でも動作確認できました。
こういったスクリプト探していたので助かります!ありがとうございます
66ヶ月前
コメントを書く
コメントをするには、
ログインして下さい。