max script で各種操作を行う際によく目にする、# 付きのパラメータ(named parameter? name type?)を Py3dsMax で扱うためのメモ。
本家のドキュメントの Type Conversion でも簡単には触れられているのですが、 “testing” という文字列を #testing という名前としての値に変換するには max script では
"testing" as name
#testing
とし、同様のことを Py3dsmax で行うには
>>> mxs.pyhelper.namify("testing")
#testing
とします。ここまでは OK。で、ここからが疑問で、関数への引数として渡すには? ということが書いてないです。どうすればいいんでしょう?
答えとしては単純で、namify された値をそのまま渡せばいけました。これに気づくまで、わざわざ max script のコードを生成してそれを実行してましたよ。。。。。
たとえば、確認ダイアログを出さないでシーンをリセットする場合。
noPrompt = mxs.pyhelper.namify('noPrompt')
mxs.resetMaxFile(noPrompt)
こんな感じです。メンドクサイですけど、しかたないですね、、、