示例#1
0
def createSplineIk(name, joints, **kwargs):
    """
        Creates spline Ik
        return values: 
        IK
        EFF
        CRV
    """
    # Default args
    args = {"sol":"ikRPsolver"}
    functArgs =  Lib.defaultArgs(args, kwargs)
    kwargs = Lib.deleteDictKey(kwargs, "sol")
    ret = {}
    
    handleData = cmds.ikHandle( n= (name + "_IKH"), sol= functArgs["sol"], sj= joints[0], ee= joints[len(joints)-1],**kwargs)
    cmds.setAttr((handleData[0] + ".v"), 0)
    handleData[2] = cmds.rename(handleData[2],(name+ "IK_CRV") )
    
    ret["IK"] = handleData[0]
    ret["EFF"] = handleData[1]
    ret["CRV"] = handleData[2]
    return ret
示例#2
0
def createIkHandle(name, joints, **kwargs):
    """
        Creates Ik handle for three joints
        return values: 
        IK
        EFF
    """
    # Default args
    args = {"sol":"ikRPsolver"}
    functArgs =  Lib.defaultArgs(args, kwargs)
    kwargs = Lib.deleteDictKey(kwargs, "sol")
    ret = {}
    
    if len(joints) != 3:
        cmds.error("Incorrect number of joints supplied to IkHandle.")
    
    handleData = cmds.ikHandle( n= (name + "_IKH"), sol= functArgs["sol"], sj= joints[0], ee= joints[2],**kwargs)
    cmds.setAttr((handleData[0] + ".v"), 0)
    
    ret["IK"] = handleData[0]
    ret["EFF"] = handleData[1]
    return ret