def _sided_rotation_limit(self, unsided_name, armature_object): bpy.ops.object.mode_set(mode='POSE', toggle=False) if unsided_name in _ROTATION_LIMITS: for axis_name in _ROTATION_LIMITS[unsided_name].keys(): name = self._sided(unsided_name) limits = _ROTATION_LIMITS[unsided_name][axis_name] RigService.set_ik_rotation_limits(name, armature_object, axis=axis_name, min_angle=limits[0], max_angle=limits[1])
def _sided_rotation_limits(self, finger_number, armature_object): bpy.ops.object.mode_set(mode='POSE', toggle=False) for segment_number in [1, 2, 3]: limits = {} if finger_number == 1: if segment_number == 1: limits = _ROTATION_LIMITS["thumb_first_segment"] else: limits = _ROTATION_LIMITS["thumb_following_segments"] else: if segment_number == 1: limits = _ROTATION_LIMITS["finger_first_segment"] else: limits = _ROTATION_LIMITS["finger_following_segments"] for axis_name in limits.keys(): name = self._sided("finger" + str(finger_number) + "-" + str(segment_number)) angles = limits[axis_name] RigService.set_ik_rotation_limits(name, armature_object, axis=axis_name, min_angle=angles[0], max_angle=angles[1])