[maya] pymelでReferenceを操作する

pythonCmds や mel だと、非常に扱いにくいというかどうしていいのかわけわからんリファレンス。
なのですが、Pymelだと非常に楽になっていたのでメモをば。

PymelでReferenceをいじる場合は、ls(type=”reference”)で帰ってくる Referenceではなく、FileReferenceを使うらしい。
.referenceFile() で、FileReferenceを取得しているが、オブジェクトがリファレンスじゃないときはNoneが帰ってくる。
ので、リファレンスかどうかを判定する場合にも使える
pm.ls(type=”reference”) で、リファレンスノードをリストした場合、
_UNKNOWN_REF_NODE_ と sharedReferenceNode の2つのノードが含まれてしまう場合があるので要注意。

どんなメソッドがあるかは、 pymel.core.system.FireReference の項目を参照のこと。
とりあえず、よく使いそうなものだけ抜粋

複数のコマンドを利用しないと行けないcmdsに比べると、アクセスする口が1つにまとまってる+コマンド名がわかりやすいのがよいですね(´ω)

ここ数ヶ月はずっとpymelを使ってるのですが あまりの便利さに、cmdsには戻れなくなってしまいました(´・ω・)
mel pythonCmds の段階で、dic型つかえてやっほいとか 関数の初期値設定(゚д゚)ウマーでしたが、
pymelを導入したら、いままで感じてた煩わしさから開放されてもっと幸せになれました。
慣れって恐ろしい…

とはいうものの、オブジェクト指向でのプログラミング経験がゼロに近いので
まだまだ使いこなせてないのが実情。
これを気にもっと勉強しようかと思います(`・ω・´)

コメントを残す

メールアドレスが公開されることはありません。


*