2009-08-28 4 views

答えて

3

アトリビュートエディタのnotesフィールドに入力すると、"notes"というアトリビュートがノードに動的に追加されます。したがって、値を確認するには、ノードに「notes」という属性が存在するかどうかを確認してから値を取得します。

マヤUIは長い名前が"notes"ある場合は属性が

setNotesAttribute(string $nodeName, string $longAttrName, string $shortAttrName, string $attrType, string $newAttrValue) 

と呼ばれているノートを作成して設定するために使用するMELプロシージャ、短い名前は、タイプが"string"で、"nts"です。

+1

恐ろしく、これが私を助けました!次はそのトリックでした: import maya.cmds as cmds cmds.getAttr( '_nodeName.nts') –

1

誰もがこれらの日PyMELを使用しているので、ここではそれがPyMELを使用して取得する方法は次のとおりです。

import pymel.core 
# cast selected into PyNode 
node = pymel.core.ls(sl=1)[0] 

# PyMEL's convenient getAttr syntax 
node.notes.get() 

これは、属性エディタで[メモ]フィールドに何かをすでに追加したと仮定しています。上で述べたように、ノートattrは作成されるだけです。

あなたはすべてのコードから実行していると、ノートのattrが作成されているかどうかがわからない場合、あなたはそのように存在するかどうかを確認することができます

if node.hasAttr('notes'): 
    node.notes.get() 
else: 
    # go ahead and create attr 
    node.addAttr('notes', dt='string') 
    node.notes.get() 

はPyMELを使用することを検討して、それはmaya.cmdsようなものです、より多くのPythonic。

関連する問題