python-maya 如何用脚本控制模型移动
1、move(x,y,z) :
x,y,z是坐标,将选中的模型,或模型的组件,移动到指定的坐标;
例如:cmds.move(1,0,1)

2、move(x,y,z,r=False),一个重要的参数,relative(简写r,值是bool):
①标记r,意思是移动是否参照当前的位置,
②默认是False(或0),可以不写。
③当r=True(或1)时,x, y, z是参照当前的坐标移动。
例如:cmds.move(1,0,0,r=True)每次执行,x距离就移动1.

3、move(x,y,z) ,move(x,y,z,r=False)都可使用在点,线,面组件移动。

4、如果要设置单个轴移动,还可以写成。
cmds.move(3,x=True);移动到坐标轴x,到3。

5、单个坐标轴移动,也可有相对位置参数 r。
cmds.move(3,x=True,r=True);执行一次,移动3。

1、从通道栏来改变模型的移动数据,即为设施移动值。setAttr()

2、设置单个轴的移动值:cmds.setAttr("pCube3.translateX",1)
第一个参数是字符串,有模型的名称(变换节点的名称)的移动轴组成。
第二个参数数是移动的值。

3、同时设置三个轴的移动值。cmds.setAttr("pCube3.translate",x,y,z)
此时的translate后面不能跟坐标轴名称,但后面要跟,x,y,z,的值。

4、设置值来移动,需要模型的名称,所以,不会像move一样,是直接作用在所选中模型。那么在使用脚本执行时就要先获取它的名称:
#获取变换节点名称列表。
name=cmds.ls(selection=True)
#将所有选中的模型移动到它的冻结点。
for i in range(0,len(name)):
----cmds.setAttr(name[i]+'.translate',0,0,0)
