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

Reply via email to