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
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