在Maya中通过Python自动生成和放置对象

时间:2017-04-17 14:08:41

标签: python 3d maya

我需要知道如何在Maya中使用Python生成一些对象,然后将它们沿X轴自动分隔15。我试着写一个代码,但它不起作用。

import maya.cmds as cmds

i = 0
while i < 10:
    cmds.polyCube()
    i = i + 1

objects = cmds.ls( type = "shape" )

for j in objects:
    cmds.setAttr( "%s.translateX" % item, 15 )

请帮我解决我的问题。

2 个答案:

答案 0 :(得分:1)

你必须将maya命令返回的列表放入变量中。

for i in range(10):
    cube = cmds.polyCube()
    cubeTransform = cube[0] # cube is a list composed by cube transform name and polycube modificator
    cmds.setAttr("%s.translateX" % cube[0],15)

答案 1 :(得分:0)

要获得预期结果,请使用以下代码:

import maya.cmds as mc

x = 0
y = 0
mc.polyCube( name = 'cube' )

for i in range(9):
    mc.polyCube( name = 'cube' )
    x += 15
    y += 3    
    mc.move( x, y, 0 )

mc.select( all = True )    
mc.scale( 5, 5, 5 )

enter image description here