MayaPythonの備忘録的なものです。
自分用のメモですので、なんだか見難くて申し訳ありません。
gooブログでもシンタックスハイライトとか出来ればいいのに・・・
Python_MAYA機能メモ
Python_ネイティブ機能メモ
関連-------------------------------------
Python_MAYA機能メモ
Python_ネイティブ機能メモ
Python_エラーメモ
編集
自分用のメモですので、なんだか見難くて申し訳ありません。
gooブログでもシンタックスハイライトとか出来ればいいのに・・・
Python_MAYA機能メモ
Python_ネイティブ機能メモ
# 親子付けされたロケータを作成 def fCteateLocatorParent( vlCteateLocators, vParent ): for oLoc in vlCteateLocators: if not cmds.objExists( oLoc ): cmds.spaceLocator( name = oLoc ) if cmds.objExists( vParent ):cmds.parent( oLoc, vParent ) vParent = oLoc fCteateLocatorParent( ["RIDER","BLACK","RX"], "ExistingObj" )
# 全ての骨のローカル軸表示をON/OFF def fAllBoneDisplayLocalAxis( vBool ): for oJoint in cmds.ls( type ="joint" ): cmds.setAttr( oJoint + ".displayLocalAxis", vBool ) fAllBoneDisplayLocalAxis( True )# Falseで非表示
# 真のノードタイプを取得(トランスノードからシェイプノードのタイプを導き出す) def fDeepType( vObj ): oType = cmds.nodeType( vObj ) if oType == "transform":# タイプがtransformの場合深く探る for oChild in cmds.listRelatives( vObj, children =True ) or []: if cmds.nodeType( oChild ) in ("nurbsCurve","locator","mesh"): return( cmds.nodeType( oChild ) ) return( "transform" ) return( oType ) fDeepType( cmds.ls( selection =True )[0] ) # やっている事がだいぶトリッキーなので、なんかもっと良い方法は無いものだろうか…
# 二つのオブジェクト間の距離を求める(ピタゴラスの定理) def fFindDistance( vStart, vEnd ): lSP = cmds.xform( vStart,worldSpace=True, translation=True, query=True ) lEP = cmds.xform( vEnd, worldSpace=True, translation=True, query=True ) return((lSP[0]-lEP[0])**2+(lSP[1]-lEP[1])**2+(lSP[2]-lEP[2])**2)**0.5
関連-------------------------------------
Python_MAYA機能メモ
Python_ネイティブ機能メモ
Python_エラーメモ
編集