标志与命令配合使用可以修改其执行。Python 将标志作为命名参数执行。MEL 中的一些标志不需要值。由于 Python 中的所有命名的参数都需要一个值,所以这些标志将被赋予用于启用标志的值 True 或用于忽略标志的 False。设定多个命名的参数时,参数值对用逗号在括号内分隔。在命令中,命令参数必须出现在命名的参数之前。
在 Python 中使用标志
通过键入以下命令创建多边形立方体,多边形立方体的宽度在创建时定义:
cmds.polyCube(width=5)
宽度标志可使您在创建时设定立方体的宽度。
创建多边形球体,多边形球体的半径、X 方向上的细分以及名称在创建时定义。
cmds.polySphere(radius=1, subdivisionsX=4, name="testSphere")
通过用逗号分隔标志值对,可以使用多个标志来修改命令的执行。radius 标志设定所创建球体的半径。subdivisionsX 标志设定球体在 X 方向上的细分数量。
注意通过键入 cmds.help ("command"),可以将可用于命令的标志列表输出到脚本编辑器中。例如:cmds.help ("sphere")
在 Python 中结合使用标志和命令参数
通过在“脚本编辑器”(Script Editor)中键入以下命令,移动多边形球体:
cmds.move(2,2,2)
选择多边形立方体。
通过键入以下命令移动多边形立方体:
cmds.move(1,2,3)
通过键入以下命令,相对于其当前位置移动多边形立方体:
cmds.move(-1,0,-2,relative=True)
多边形立方体相对于其当前位置移动。相对标志必须放置在命令参数之后,在 Python 中,传递参数时,命名的参数必须出现在位置参数之后。命令参数必须始终是命令的第一个参数。
通过键入以下命令,在不选择多边形球体情况下移动多边形球体:
cmds.move(3,2,1,"testSphere",relative=True)
对象的名称必须作为字符串在命令参数之后、标志之前传递。
在 Python 中结合使用标志和多个参数
通过键入以下命令创建黄色染色点光源:
cmds.pointLight(rgb=(1,1,0.5))
点光源命令在原点创建点光源。rgb 标志指定光源的颜色。rgb 标志需要三个值;红色、绿色和蓝色。
标志需要多个值时,这些值必须打包到 Python 的数组或列表数据类型中。数组是存储单一变量内多个同类数据方法,类似于 MEL 中的数组。列表类似于数组,但列表支持单一变量内的多种数据类型。上述命令将 RGB 值打包到数组中。也可以使用列表来达到相似的效果。
通过键入以下命令移动当前选定光源:
cmds.move(12,15,12)
通过键入以下命令创建蓝色染色光源:
cmds.pointLight(rgb=[0.2,0.2,1])
方括号 [] 表示列表,圆括号 ( 表示数组。
rgb 标志的值可以打包到列表或数组中并执行相同的操作。
通过键入以下命令移动当前选定光源:
cmds.move(12,15,-5)
通过单击多边形立方体,然后按住 Shift 键单击球体选择多边形立方体和多边形球体。
通过按键盘上的 F 热键,框显选定对象。
通过按“状态行”(Status line)上的渲染当前帧按钮
渲染场景。
“渲染视图”(Render View)打开并显示以下图像。
选择场景中的所有对象,然后通过键入以下命令删除这些对象
cmds.select(allDagObjects=True) cmds.delete()
结合使用 Maya 命令 select 和 allDagObjects 标志选择场景中实际存在的对象,例如几何体,IK 链和测量工具。这些对象出现在称为 DAG 的内部 Maya 表示上。有关详细信息,请参见《Maya 用户手册》中的“DAG”。