def _set_finger_ik_target(self, finger_number, armature_object, chain_length): _LOG.enter() bpy.ops.object.mode_set(mode='POSE', toggle=False) tip_name = self.get_last_segment_name_of_finger(finger_number) ik_name = self._get_point_ik_bone_name_for_finger(finger_number) ik_bone = RigService.find_pose_bone_by_name(ik_name, armature_object) self.add_finger_rotation_constraints(finger_number, armature_object) RigService.add_ik_constraint_to_pose_bone(tip_name, armature_object, ik_bone, chain_length)
def _set_shoulder_ik_target(self, armature_object, chain_length): _LOG.enter() bpy.ops.object.mode_set(mode='POSE', toggle=False) shoulder_name = self.get_shoulder_name() shoulder_ik_name = self.which_arm + "_shoulder_ik" shoulder_bone = RigService.find_pose_bone_by_name(shoulder_ik_name, armature_object) self.add_shoulder_rotation_constraints(armature_object) RigService.add_ik_constraint_to_pose_bone(shoulder_name, armature_object, shoulder_bone, chain_length)
def _set_upper_arm_ik_target(self, armature_object, chain_length): _LOG.enter() bpy.ops.object.mode_set(mode='POSE', toggle=False) upper_arm_name = self.get_upper_arm_name() elbow_name = self.which_arm + "_elbow_ik" elbow_bone = RigService.find_pose_bone_by_name(elbow_name, armature_object) self.add_upper_arm_rotation_constraints(armature_object) RigService.add_ik_constraint_to_pose_bone(upper_arm_name, armature_object, elbow_bone, chain_length)
def _set_hip_ik_target(self, armature_object, chain_length): _LOG.enter() bpy.ops.object.mode_set(mode='POSE', toggle=False) hip_name = self.get_hip_name() hip_ik_name = self.which_leg + "_hip_ik" hip_bone = RigService.find_pose_bone_by_name(hip_ik_name, armature_object) self.add_hip_rotation_constraints(armature_object) RigService.add_ik_constraint_to_pose_bone(hip_name, armature_object, hip_bone, chain_length)
def _set_lower_leg_ik_target(self, armature_object, chain_length): _LOG.enter() bpy.ops.object.mode_set(mode='POSE', toggle=False) lower_leg_name = self.get_lower_leg_name() foot_name = self.which_leg + "_foot_ik" foot_bone = RigService.find_pose_bone_by_name(foot_name, armature_object) self.add_lower_leg_rotation_constraints(armature_object) RigService.add_ik_constraint_to_pose_bone(lower_leg_name, armature_object, foot_bone, chain_length)
def _apply_ik_constraint(self, armature_object): _LOG.enter() right = RigService.find_pose_bone_by_name("right_eye_ik", armature_object) left = RigService.find_pose_bone_by_name("left_eye_ik", armature_object) RigService.add_ik_constraint_to_pose_bone(self.get_eye_name(True), armature_object, right, chain_length=1) RigService.add_ik_constraint_to_pose_bone(self.get_eye_name(False), armature_object, left, chain_length=1)