使用组件选择

使用组件(如顶点或 uv 点)时,Maya 默认返回以冒号分隔的范围而不是单个项:

 print cmds.ls('pCube1.vtx[*]')  # get all the vertices in the cube
 # [u'pCube1.vtx[0:7]']

你可以将 lsflatten 选项一起使用,以强制 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 命令获得相同的结果。