i'm trying to make a bunch of cubes move and rotate everytime I update
the current time by using the setTranslation and setRotation. It's not
doing that when I call moveCubes(). Please let me know what's wrong
with my script. Thanks!
#move objects with respect to time
import maya.OpenMaya as om
import maya.cmds as cmds
import sys
def setVector(x, y, z):
time = cmds.currentTime(q=True)
vector = om.MVector(0.0, 0.0, 0.0)
vector.x = x * time
vector.y = y * time
vector.z = z * time
return vector
def moveCubes():
sList = om.MSelectionList()
om.MGlobal.getActiveSelectionList(sList)
iter1 = om.MItSelectionList( sList, om.MFn.kGeometric )
while not iter1.isDone():
dagPath = om.MDagPath()
cube = om.MObject()
sList.getDagPath(0, dagPath, cube)
ord = om.MEulerRotation.kXYZ
rot = om.MEulerRotation(3.4, 5.4, 22.3, ord)
vector = setVector(0.5, 0.2, 0.8)
#print vector.x
spc = om.MSpace.kWorld
try:
transFn = om.MFnTransform(dagPath)
except:
pass
else:
try:
transFn.setTranslation(vector, spc)
print vector.y
transFn.setRotation(rot, spc)
except:
sys.stderr.write("Error doing translate on transform
\n")
iter1.next()
continue
iter1.next()
--
view archives: http://groups.google.com/group/python_inside_maya
change your subscription settings:
http://groups.google.com/group/python_inside_maya/subscribe