Exemplo n.º 1
0
 def __init__(self, *args, **kwargs):
     kwargs['model'] = kwargs.pop('model', TailModel())
     super(RigTail, self).__init__(*args, **kwargs)
     self._model.ik_tail = rigLaces.RigLaces(rig_system=self.rig_system)
     self._model.fk_tail = rigFK.RigFK(rig_system=self.rig_system)
     self.root = None
     self.tip = None
Exemplo n.º 2
0
    def create_point_base(self, *arm_points, **kwargs):
        super(Leg, self).create_point_base(*arm_points, **kwargs)
        self.ik_rig = rigIK.IKRig(rig_system=self.rig_system)
        self.ik_rig.create_point_base(*arm_points[:-1],
                                      control_orientation='world',
                                      last_joint_follows_control=False)
        self.fk_rig = rigFK.RigFK(rig_system=self.rig_system)
        self.fk_rig.create_point_base(*arm_points, orient_type='point_orient')
        self.palm = rigSingleJoint.RigSingleJoint(rig_system=self.rig_system)

        self.palm.create_point_base(arm_points[-1], name='palm', type='box')
        self.ik_fk_switch = constraintSwitch.ConstraintSwitch(
            rig_system=self.rig_system)
        self.ik_fk_switch.build(self.ik_rig.joints,
                                self.fk_rig.joints,
                                control=self.palm.controls[0],
                                attribute_name='IkFkSwitch')
        for each_control in self.ik_rig.controls:
            self.ik_fk_switch.attribute_output_a >> each_control.visibility

        for each_control in self.fk_rig.controls:
            self.ik_fk_switch.attribute_output_b >> each_control.visibility
        # pm.parentConstraint(self.fk_limb.controls[0], self.ik_limb.reset_controls['poleVector'], mo=True)
        # pm.parentConstraint(self.fk_limb.controls[0], self.ik_limb.reset_controls['ikHandleSecondary'], mo=True)
        pm.parentConstraint(self.fk_rig.controls[0],
                            self.ik_rig.root_joints,
                            mo=True)
Exemplo n.º 3
0
 def __init__(self, **kwargs):
     super(RigBypedModel, self).__init__(**kwargs)
     self.l_arm = arm.Arm()
     self.r_arm = arm.Arm()
     self.l_leg = rigIKFKLegFeet.RigIKKFLegFeet()
     self.r_leg = rigIKFKLegFeet.RigIKKFLegFeet()
     self.l_hand = hand.Hand()
     self.r_hand = hand.Hand()
     self.neck_head = neckHead.NeckHead()
     self.spine = rigSpine.RigSpine()
     self.hip = rigFK.RigFK()
     self.cog = rigProp.RigProp()
     self.jaw = rigFK.RigFK()
     self.rig_world = rigWorld.RigWorld()
     self.l_arm_space_switch = armSpaceSwitch.ArmSpaceSwitch()
     self.r_arm_space_switch = armSpaceSwitch.ArmSpaceSwitch()
     self.l_leg_space_switch = legSpaceSwitch.LegSpaceSwitch()
     self.r_leg_space_switch = legSpaceSwitch.LegSpaceSwitch()
Exemplo n.º 4
0
    def __init__(self, **kwargs):
        super(QuadrupedModel, self).__init__(**kwargs)
        self.l_arm = rigQuadFrontLeg.RigQuadFrontLeg()
        self.r_arm = rigQuadFrontLeg.RigQuadFrontLeg()
        self.l_leg = rigIKQuadLegFeet.RigIKQuadLegFeet()
        self.r_leg = rigIKQuadLegFeet.RigIKQuadLegFeet()
        self.l_hand = hand.Hand()
        self.r_hand = hand.Hand()
        self.tail = rigTailLace.RigTail()
        self.neck_head = neckHead.NeckHead()
        self.spine = rigQuadSpine.RigQuadSpine()
        self.hip = rigFK.RigFK()
        self.cog = rigProp.RigProp()
        self.jaw = rigFK.RigFK()
        self.rig_world = rigWorld.RigWorld()
        self.l_arm_space_switch = frontLegSpaceSwitch.FrontLegSpaceSwitch()
        self.r_arm_space_switch = frontLegSpaceSwitch.FrontLegSpaceSwitch()
        self.l_leg_space_switch = backLegSpaceSwitch.BackLegSpaceSwitch()
        self.r_leg_space_switch = backLegSpaceSwitch.BackLegSpaceSwitch()

        self.hip_space_switch = rigHipSpaceSwitch.HipSpaceSwitch()
        self.neck_space_switch = rigNeckSpaceSwitch.NeckHeadSpaceSwitch()
Exemplo n.º 5
0
def build():
    tongue_base_root = pm.ls('C_tongueBase00_reference_grp')[0]
    rig_tongue_base = rigLaces.RigLaces()
    rig_tongue_base.create_point_base(*tongue_base_root.getChildren(), single_orient_object=True, joint_number=1)
    tongue_root = pm.ls('C_tongue00_reference_grp')[0]
    rig_spline_tongue = rigSplineIK.RigSplineIK()
    rig_spline_tongue.create_point_base(*tongue_root.getChildren(), curve=rig_tongue_base.curve)
    rig_tongue = rigFK.RigFK()
    rig_tongue.create_point_base(*rig_spline_tongue.joints,   orient_type='point_orient')
    rig_tongue.create.constraint.node_base(rig_spline_tongue.joints[0], rig_tongue.reset_controls[0])

    for each_joint, each_reset in zip(rig_spline_tongue.joints[1:], rig_tongue.reset_controls[1:]):
        rig_follow_position = rigFollowPosition.FollowPosition()
        rig_follow_position.build(each_reset, each_joint)

    pm.addAttr('C_joint00_jaw_ctr', ln='tongue_out', proxy=rig_spline_tongue.ik.offset, k=True)
    print rig_tongue_base.reset_controls
    for parent, index_sets in zip(['C_joint02_Spine_sknjnt', 'C_joint00_neck_ctr', 'C_joint00_jaw_ctr'],
                                  [(0, 4), (4, 7), (7, 24)]):
        for index in range(*index_sets):
            rig_tongue_base.create.constraint.node_base(parent, rig_tongue_base.reset_controls[index], mo=True)
    rig_tongue.rename_as_skinned_joints()
Exemplo n.º 6
0
    def create_point_base(self, *points, **kwargs):
        control = kwargs.pop('control', None)
        if control:
            self._model.ik_feet = reverseFeet.RigReverseFeet(
                rig_system=self.rig_system)
            self.ik_feet.create_point_base(*points)
            self._model.fk_feet = rigFK.RigFK(rig_system=self.rig_system)
            self.fk_feet.create_point_base(*points[:3],
                                           orient_type='point_orient')
            self.build(self.ik_feet.joints,
                       self.fk_feet.joints,
                       control=control,
                       attribute_name='IkFkSwitch')

            for each_control in self.ik_feet.controls:
                self.attribute_output_a >> each_control.visibility

            for each_control, each_joint in zip(self.fk_feet.controls,
                                                self.fk_feet.joints):
                self.attribute_output_b >> each_control.visibility
                # scale_constraints = each_joint.parentMatrix[0].listConnections(type='scaleConstraint', plugs=True)
                # scale_constraints[0].disconnect()
        else:
            print 'you should provide a control on the kwargs'
Exemplo n.º 7
0
 def __init__(self, *args, **kwargs):
     super(RigSpine, self).__init__(*args, **kwargs)
     self._model = SpineModel()
     self.rig_spline_ik = rigSplineIK.RigSplineIK(
         rig_system=self.rig_system)
     self.fk_spine = rigFK.RigFK(rig_system=self.rig_system)
Exemplo n.º 8
0
 def fk_rig(self):
     if self._model.fk_rig is None:
         self._model.fk_rig = rigFK.RigFK(rig_system=self.rig_system)
     return self._model.fk_rig
Exemplo n.º 9
0
 def head(self):
     if not self._model.head:
         self._model.head = rigFK.RigFK(rig_system=self.rig_system)
     return self._model.head
Exemplo n.º 10
0
 def rig_ik_feet_pivot(self):
     if not self._model.rig_fk_feet_pivot:
         self._model.rig_fk_feet_pivot = rigFK.RigFK()
     return self._model.rig_ik_feet_pivot