私はPythonでMayaで複製したジョイントから子を削除しようとしていますが、動作していません。私は何が欠けているのですか?私はこれを理解していたものからMaya Python複製されたジョイントから子を削除
import maya.cmds as mc
mc.duplicate('spine02_Joint',n='spineGrpJnt')
mc.parent('spineGrpJnt',w=True)
mc.select('spineGrpJnt')
childJnts = mc.listRelatives(ad=True)
mc.delete(childJnts)
はchildJntsのすべてを削除する必要がありますが、それは私にエラーを与える:「複数のオブジェクトは、名前と一致する:」
なぜ[0]配列の最初のインデックスですか?複製はあなたに配列を与えますか? – Giakaama
trueの場合、duplicateコマンドはリストを返しますが、この場合は1つの項目のリスト(単一の複製されたジョイント)です。したがって、後で使用するときに 'new_jnt [0]'を置くのではなく、最初の項目を変数に取り込む方が少し簡単です。また、変数 'new_jnts'に名前を付けなかったので、読みやすくするためのリストではなく、単一項目にするのがより理にかなっています。そして、しばしば、次のコマンドに戻り値データを1つの項目として送ります(次の2行でparentとlistRelativesのように) –
これは基本的に、コマンドが返すデータをどのように使用するかによって決まります。if私は1つの項目に興味があるだけです(または、私はすでにそれが私にリスト内の1つの項目を与えてくれることを知っています)。もし私がもっと多くのアイテムを手に入れているのであれば、私はそうではありません。 –