使用组件选择
使用组件(如顶点或 uv 点)时,Maya 默认返回以冒号分隔的范围而不是单个项:
print cmds.ls('pCube1.vtx[*]') # get all the vertices in the cube
# [u'pCube1.vtx[0:7]']
你可以将 ls
与 flatten
选项一起使用,以强制 Maya 将范围表示法扩展为单个组件条目:
expanded = cmds.ls('pCube1.vtx[*]', flatten=True)
print expanded
# [u'pCube1.vtx[0]', u'pCube1.vtx[1]', u'pCube1.vtx[2]', u'pCube1.vtx[3]', u'pCube1.vtx[4]', u'pCube1.vtx[5]', u'pCube1.vtx[6]', u'pCube1.vtx[7]']
循环时,这种形式通常更好,因为你没有编写任何代码来将像 pCube1.vtx[0:7]
这样的字符串转换成多个单独的条目。
你还可以使用 filterExpand
命令获得相同的结果。