我有一个脚本,用户选择一个顶点,并且应该存储顶点所属网格的名称。
但是,我并不知道如何优雅地获取这些信息。它打印得很好,例如pPipe1.vtx[242]
。但只获取pPipe1变换节点名称似乎并不简单。宁愿不采取切断字符串中的字符。这似乎是不好的做法。
答案 0 :(得分:3)
丑陋的方式是简单的方法 - 如果你在句点上分割顶点条目,你将获得变换父项。但是,您也可以将顶点条目传递给cmds.ls(o=True)
,它会剥离属性和组件名称并仅返回对象:
cmds.select("pCube1.vtx[*]")
sel = cmds.ls(sl=True)
print sel
# [u'pCube1.vtx[0:7]']
obj = cmds.ls(*sel, o=True)
print obj
# [u'pCubeShape1']
答案 1 :(得分:1)
一项:
sel = cmds.ls(sl=True)[0].split('.')[0]
获取项目列表:
sel = [i.split('.')[0] for i in cmds.ls(sl=True)]
sel = list(set(sel)) # Use this to remove multiple instance of an object