Maya API
458 bundled Tech Connector wrapper functions in the current source catalog. This is not a count of the host application’s native API. A listed function may require its host application and bridge to be available.
Type to search all API references.
Bundled Python wrappers
- activate_surface_spatial_smooth_brush
- add_file_open_callback
- add_missing_parents_with_long_names
- add_tools_to_user_setup
- aim_joint_x_axis_to_world_x
- align_clavicle_to_upperarm_height
- align_clavicle_Y_by_rotateY
- align_studio_center_face_positions
- align_studio_knees_to_final_mesh_line
- align_studio_leg_front_projection
- align_studio_thigh_roots_to_pelvis_depth
- analyze_mesh_for_joint_placement
- apply_auto_weights
- apply_enum_data
- apply_shoulder_profile_to_skin
- apply_shoulder_profile_to_weights
- apply_side_color_override
- attach_ground
- attach_selected_ground
- auto_skin_mesh
- auto_skin_selected
- bake_all_keyable_attributes
- bake_ground
- bake_joint_orient_to_rotate
- bake_solved_skeleton_to_create_rig_controls
- bind_mesh
- bind_runtime
- build
- build_atlas
- build_basic_biped_skeleton
- build_bone_segments
- build_cached_bone_segments
- build_default_shoulder_profile
- build_demo_scene
- build_enum_names_for_space_targets
- build_example_scene
- build_node_lookup
- build_referenced_animation_scene
- build_rfl_ik_and_constraints
- build_skeleton_from_points
- build_vehicle_rig
- capture_anchor_baseline
- capture_baseline
- capture_current_pose_as_preferred_angles
- capture_mapped_baseline
- capture_module_rebuild_identity
- capture_scene
- capture_selected_baseline
- capture_studio_template_knee_bend_axes
- classify_arm_pose
- cleanup_command_port_files
- cleanup_temp_bones
- clear_mesh_query_cache
- clear_module_metadata
- closest_point_on_segment
- collect_enum_data
- configure_mapped_bend_axes
- configure_studio_bend_axes
- configure_studio_elbow_bend_axes_from_channels
- constrain_controls_to_two_parents
- create_and_populate_export_node
- create_arm_space_switches
- create_auto_joints_for_mesh
- create_auto_joints_for_selected_mesh
- create_bi_arrow_ctrl
- create_brow_main_setup
- create_command_port
- create_composite_space
- create_cube_ctrl
- create_diamond_ctrl
- create_eye_aim_setup
- create_finger_rigs
- create_full_rig
- create_guides_from_points
- create_ik_fk_limb
- create_joint
- create_joint_controls
- create_joints_along_curve
- create_leg_space_switches
- create_loft_surface_with_follicle_joints
- create_maya_menu
- create_menu_once
- create_prism_ctrl
- create_rfl_joints_template
- create_rig_from_mapping
- create_rig_mapping
- create_rig_space_switches
- create_rigged_proxy
- create_space_switch
- create_sphere_ctrl
- create_surface_from_joints_original
- create_twist_driver
- cross
- deactivate_surface_spatial_smooth_brush
- delete_auto_joint_guides
- delete_existing_generated_skeleton
- delete_temp_bones
- delete_unused_scaffold_nodes
- disable_evaluation
- disconnect_attr_connections
- discover_create_rig_bindings
- display_warning
- duplicate_static_hierarchy
- dynamic_module_spec
- enable_evaluation
- enforce_limb_planarity
- enforce_studio_center_face_local_zeroes
- enforce_studio_elbow_z_hinges
- enforce_studio_finger_planarity
- enforce_studio_joint_dof_policy
- enforce_studio_knee_y_hinges
- enforce_studio_neck2_head1_local_x_plane
- enforce_studio_neck2_midpoint
- enforce_studio_thumb_z_only_rotates
- enforce_studio_twist_translate_x
- ensure_rfl_attrs
- ensure_world_aligned_bank_sdk
- evaluate_mesh_against_baseline
- evaluate_points
- evaluate_selected_mesh
- evaluate_studio_foot_contract
- evaluate_studio_pelvis_contract
- execute
- export_animation
- export_animation_async
- export_animation_to_fbx
- export_control_rig_skeleton
- export_fbx
- export_fbx_with_settings
- export_metahuman_sliders_as_fbx
- export_node_exists
- export_selected_enum_orders
- export_skeletal_fbx
- export_skin_weights
- extract_studio_template_core_points
- extract_studio_template_joint_axes
- finalize_studio_core_positions_from_mesh
- finalize_studio_spine_neck_head
- find_face_joints
- find_ik_handle_constrained_by_ctrl
- find_or_create_user_setup
- find_references_from_namespace
- find_rig_roots
- find_skin_cluster
- find_skinned_or_top_joints
- find_template_roots
- fit_mapped_skeleton
- fit_studio_arm_hand_from_reference
- fit_studio_arm_hinge_plane_to_mesh
- fit_studio_arm_red_dot_refinement
- fit_studio_brow_arcs_to_surface
- fit_studio_brow_end_joints_to_surface
- fit_studio_brows_from_left_profile
- fit_studio_detail_joints_to_volume
- fit_studio_distal_thumb_joints
- fit_studio_elbow_pivots_to_mesh
- fit_studio_eyelid_joints_to_surface
- fit_studio_face_pivots_to_mesh
- fit_studio_finger_knuckle_height
- fit_studio_foot_front_flare
- fit_studio_hand_joints
- fit_studio_lip_joints_to_surface
- fit_studio_neck_head_jaw_relative
- fit_studio_pelvis_ridge
- fit_studio_scene_feature_joints
- fit_studio_template_skeleton
- fit_studio_thumb_root_depth
- fit_studio_toe_pivots_to_volume
- fit_studio_toe_tips_to_ground
- fit_studio_wrist_pivots_to_mesh
- from_character_definition
- generate_sequence_dict_from_anim_dict
- get_all_joint_children
- get_all_module_metadata
- get_attr_connections
- get_camera_sequencer_data
- get_cameras_from_selection
- get_command_port
- get_ctrl_shape_cvs
- get_default_export_path
- get_descendant_joints
- get_display_range
- get_dynamic_rig_modules
- get_embedded_secondary_arm_systems
- get_enum_attrs
- get_enum_labels
- get_export_node_data
- get_external_rig_systems
- get_facial_joints
- get_facial_sliders
- get_joint_position
- get_maya_fps
- get_mesh_bounds
- get_mesh_vertices
- get_module_controls
- get_nose_joints
- get_ordered_hierarchy
- get_region_size_from_joints
- get_rig_namespaces
- get_scene_path
- get_side_from_node
- get_side_prefix
- get_skin_joints
- get_world_position
- guess_joint_map_from_root
- hide_post_build_face_nodes
- hik_map_to_rig_args
- import_enum_orders
- import_fbx
- import_matching_skin_weights
- import_reference_and_strip_namespace_test
- import_skin_weights
- initialize_command_port
- inspect_animation_range
- inspect_dynamic_rig_module
- inspect_external_rig_system
- inspect_rigged_proxy
- install_current_maya_tools
- install_ground_callback
- install_ground_callbacks
- install_scene_callbacks
- is_animator_control_identity
- is_maya
- is_motionbuilder
- is_studio_template_skeleton
- launch_hik_ui
- learn_shoulder_profile_from_selected
- learn_shoulder_profile_from_skin
- list_skinned_meshes
- load_baseline
- load_biped_rig_template
- load_default_biped_rig_template
- load_default_vehicle_rig_template
- load_enum_data_from_json
- load_module_metadata
- load_profile
- load_shoulder_profile
- load_vehicle_rig_template
- log
- log_exception
- main
- make_hik_maps_from_root
- mapped_anatomical_joints
- mapped_detail_editability_issues
- mapped_hierarchy_missing_slots
- mapped_hierarchy_requested
- mapped_studio_template_namespace
- maya_execute_and_capture
- measure_planar_deviation
- mesh_profile_features
- mirror_face_joints
- mirror_joint_yz_behavior_with_label_flip
- mirror_studio_right_leg_from_left
- move_all_studio_joint_orientation_to_rotate
- normalize
- normalize_and_limit_weights
- normalize_rfl_joint_suffixes
- offset_pv_pad
- on_before_save
- open_scene_with_specific_references
- orient_control_pad_to_world_safely
- orient_skeleton
- orient_studio_arm_chains
- orient_studio_brow_joints
- orient_studio_center_face_grid_axes
- orient_studio_digit_chains
- orient_studio_elbow_z_hinge_frames
- orient_studio_eyelid_chains_to_tips
- orient_studio_face_local_y_up
- orient_studio_head_chains
- orient_studio_leg_chains
- orient_studio_leg_reference_frames
- orient_studio_neck1_grid_standard
- orient_studio_root_pelvis_hipswing_y_up
- orient_studio_single_child_chains
- orient_studio_spine_vertical
- orient_studio_surface_face_joints
- orient_studio_teeth_scene_y_up
- orient_studio_twist_joints_like_parents
- place_mapped_detail_joints
- placement_frame_from_mapping
- point_from_normalized_bounds
- populate_default_face_map_from_scene
- position_finger_pv_above_knuckle
- predict_mesh
- preserve_post_build_extensions
- preserve_rfl_pivot_joints
- preview_biped_joint_placement
- preview_selected_mesh_joint_placement
- publish_referenced_animation_source
- query_space_switches
- rebind_metahuman_face_to_body
- rebuild_all_space_switches
- rebuild_dynamic_rig_modules
- rebuild_enum_attr_with_order
- reconnect_attr_connections
- record_approved_scene
- record_rig_owned_nodes
- reference_rig
- refine_foot_landmarks
- refine_leg_landmarks
- refine_shoulder_landmarks
- refine_studio_core_targets_for_mesh
- refresh_skin_bind_matrices_for_current_pose
- register_dynamic_rig_module
- reload_dependencies
- reload_rig_function_stack
- remove_all_ground_callbacks
- remove_arm_module
- remove_brows_module
- remove_clavicle_module
- remove_dynamic_rig_modules_for_rebuild
- remove_eyelids_module
- remove_eyes_module
- remove_file_open_callback
- remove_full_rig
- remove_ground_callback
- remove_head_module
- remove_leg_module
- remove_mouth_module
- remove_neck_module
- remove_other_face_module
- remove_pelvis_module
- remove_rig_restore_bind_pose_and_export
- remove_root_module
- remove_save_callback
- remove_spine_module
- remove_teeth_module
- remove_tongue_module
- rename_brow_pad_hierarchies
- rename_duplicates
- repair_preserved_extension_body_mapping
- reset_wheel_roll
- resolve_rfl_joints
- resolve_shoulder_profile
- resolve_space_target
- resolve_space_targets_from_labels
- resolve_to_scene
- restore_all_control_cv_positions
- restore_module_rebuild_identity
- restore_post_build_extensions
- restore_rig_connections
- restore_skin_bind_pose
- retarget_fbx_hik
- rig_arm_module
- rig_brows_module
- rig_clavicle_module
- rig_eyelids_module
- rig_eyes_module
- rig_head_module
- rig_leg_module
- rig_mouth_module
- rig_neck_module
- rig_other_face_module
- rig_pelvis_module
- rig_root_module
- rig_spine_module
- rig_teeth_module
- rig_tongue_module
- rotate_ctrl_cvs_object_x
- rotate_ctrl_cvs_object_y
- rotate_ctrl_cvs_object_z
- run_export
- run_geodesic_voxel_bind
- run_manifest
- safe_constrain_two_parents
- save_enum_data_to_json
- save_module_metadata
- save_port_to_file
- save_session_to_file
- save_shoulder_profile
- save_vehicle_rig
- scale_ctrl_cvs_local
- scale_ctrl_to_region
- scene_joints
- selection
- send_command
- set_all_limb_ik_fk_switches
- set_display_range
- set_dynamic_rig_module_active
- set_external_rig_system_active
- set_keyframe
- set_sdk
- set_t_pose
- setup_hik_character
- setup_ik_limb_stretch
- setup_jaw_lip_driver
- setup_maya_livelink
- setup_rfl_sdks
- setup_secondary_face_constraints
- setup_show_twist_ctrls
- setup_spine_segment_stretch
- setup_surface_rig
- setup_surface_rig_with_drivers
- show_animation_manager
- smooth_reference_eyelid_tip_points
- smooth_skin_weights
- smooth_skin_weights_spatial
- smooth_skin_weights_spatial_from_selection
- snap_all_reverse_foot_helpers_after_t_pose
- snap_ctrl_cvs_to_child
- snap_reverse_foot_helpers_to_deformation_skeleton
- snap_to_joint_matrix
- solve_basic_biped_points
- solve_mapped_hierarchy_points
- solve_production_biped_points
- solve_reference_corpus_points
- solve_reference_detail_points
- solve_reference_eye_centers
- solve_reference_eyelid_tip_points
- solve_reference_internal_head_points
- solve_reference_joint_roll_vectors
- solve_reference_thumb_dorsal_vectors
- solve_reference_thumb_knuckle_z_vectors
- solve_reference_toe_points
- solve_scene_brow_mesh_points
- solve_scene_eye_mesh_centers
- solve_scene_oral_mesh_points
- solve_studio_template_points
- solve_template_joint_roll_vectors
- solve_topology_reference_points
- solve_vertex_weights
- solve_vertex_weights_from_position
- sort_reverse_hierarchy
- stable_node_name
- store_all_control_cv_positions
- store_rig_connections
- straighten_core_spine_points
- strip_ctrl_shape_and_rename
- tag_pose_metadata
- train_model
- transfer_fbx_animation_dialog
- transfer_fbx_animation_to_control_rig
- transfer_fbx_to_engine
- transfer_skin_weights
- transfer_skin_weights_from_selection
- translate_imported_meshes
- undo_chunk
- undoable
- unlock_studio_joint_channels
- unqualified_name
- update_ground
- update_joint_setup_for_import
- update_maya_script_path
- update_registered_live_rigs
- validate_anatomical_layout
- validate_body_joint_map
- validate_points_inside_mesh
- validate_studio_final_joint_placement
- validate_t_pose_channels
- world_align_origin_and_pelvis
- write_report
- zero_origin_translation_preserving_children
- zero_studio_digit_non_curl_rotations
- zero_studio_elbow_bind_rotations
- zero_studio_eyelid_tip_rotates
- get_main_window_pointer
- get_main_window_pointer
activate_surface_spatial_smooth_brush
api.dcc.maya.activate_surface_spatial_smooth_brush(...)- Signature
activate_surface_spatial_smooth_brush(- Target
maya_tools.Rigging.skinning_utils.activate_surface_spatial_smooth_brush- Source
maya_tools/Rigging/skinning_utils.py:1228- Name status
- Friendly call available
Activate the topology-independent Maya skin smoothing brush.
Parameters
radius· default 1.0iterations· default 1strength· default 0.35max_influences· default 8normal_angle· default 120.0max_neighbors· default 96cross_region_share· default 0.45
Related functions
add_file_open_callback
api.dcc.maya.add_file_open_callback(...)- Signature
add_file_open_callback(widget)- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.add_file_open_callback- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:13- Name status
- Friendly call available
Parameters
widget· required
Related functions
add_missing_parents_with_long_names
api.dcc.maya.add_missing_parents_with_long_names(...)- Signature
add_missing_parents_with_long_names(joint_list)- Target
maya_tools.Animation.anim_export.anim_export.add_missing_parents_with_long_names- Source
maya_tools/Animation/anim_export/anim_export.py:326- Name status
- Friendly call available
Given a list of joints, return the full DAG paths including all parent joints. Ensures all names are long paths to avoid ambiguity. :param joint_list: List of joint names (can be short or long) :return: List of joints including all parents, with long names
Parameters
joint_list· required
add_tools_to_user_setup
api.dcc.maya.add_tools_to_user_setup(...)- Signature
add_tools_to_user_setup(tools_dir)- Target
maya_tools.maya_setup.add_tools_to_user_setup- Source
maya_tools/maya_setup.py:61- Name status
- Friendly call available
Add sys.path.append for tools_dir into userSetup.py if not present.
Parameters
tools_dir· required
Related functions
aim_joint_x_axis_to_world_x
api.dcc.maya.aim_joint_x_axis_to_world_x(...)- Signature
aim_joint_x_axis_to_world_x(joint_name, side=None)- Target
maya_tools.Rigging.mocap.setup_hik.aim_joint_x_axis_to_world_x- Source
maya_tools/Rigging/mocap/setup_hik.py:404- Name status
- Friendly call available
Aim local +X at world +X and normalize mirrored arm roll for T-pose.
Parameters
joint_name· requiredside· default None
Related functions
align_clavicle_to_upperarm_height
api.dcc.maya.align_clavicle_to_upperarm_height(...)- Signature
align_clavicle_to_upperarm_height(- Target
maya_tools.Rigging.mocap.setup_hik.align_clavicle_to_upperarm_height- Source
maya_tools/Rigging/mocap/setup_hik.py:269- Name status
- Friendly call available
Level clavicle local X in front view with a pure world-Z rotation. The studio clavicle frame uses local Y for its authored forward/back roll and local Z close to world vertical. Rotating whichever local axis merely happens to be closest to world depth can therefore swing the clavicle forward. A world-Z rotation changes only its front-view elevation while preserving the reference-rig depth component and roll convention.
Parameters
clavicle_joint· requiredupperarm_joint· requiredsample_range· default 30.0step· default 0.1
Related functions
align_clavicle_Y_by_rotateY
api.dcc.maya.align_clavicle_Y_by_rotateY(...)- Signature
align_clavicle_Y_by_rotateY(clavicle_joint, sample_range=30.0, step=0.1)- Target
maya_tools.Rigging.mocap.setup_hik.align_clavicle_Y_by_rotateY- Source
maya_tools/Rigging/mocap/setup_hik.py:225- Name status
- Friendly call available
Level the first clavicle child by changing only rotateY.
Parameters
clavicle_joint· requiredsample_range· default 30.0step· default 0.1
Related functions
align_studio_center_face_positions
api.dcc.maya.align_studio_center_face_positions(...)- Signature
align_studio_center_face_positions(- Target
maya_tools.Rigging.joint_placer.align_studio_center_face_positions- Source
maya_tools/Rigging/joint_placer.py:10063- Name status
- Friendly call available
Place central body and face anchors on the mesh front-view midline. Capture targets before moving parents and preserve child world matrices.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
align_studio_knees_to_final_mesh_line
api.dcc.maya.align_studio_knees_to_final_mesh_line(...)- Signature
align_studio_knees_to_final_mesh_line(- Target
maya_tools.Rigging.joint_placer.align_studio_knees_to_final_mesh_line- Source
maya_tools/Rigging/joint_placer.py:9592- Name status
- Friendly call available
Place knee pivots on the final guided hip-to-ankle line in the mesh. The mesh core pass runs before optional scene guides are restored. A later thigh guide can therefore move the femoral root while leaving its knee at the pre-guide position. Recompute the knee's front and depth placement after guides, clamp both coordinates to that side's mesh section, and keep knee height fixed. This prevents a mesh-depth offset from making a neutral leg look like it is already hinging backward.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
align_studio_leg_front_projection
api.dcc.maya.align_studio_leg_front_projection(...)- Signature
align_studio_leg_front_projection(- Target
maya_tools.Rigging.joint_placer.align_studio_leg_front_projection- Source
maya_tools/Rigging/joint_placer.py:9552- Name status
- Friendly call available
Place each knee on its hip-to-ankle line in front view only. Knee Y (height) and Z (sagittal depth) remain mesh-fitted. Only lateral X is corrected. Front-plane continuity is authoritative even when imperfect or asymmetric geometry means the pivot is not the exact kneecap center.
Parameters
mesh· str · default ''namespace· str · default ''
Related functions
align_studio_thigh_roots_to_pelvis_depth
api.dcc.maya.align_studio_thigh_roots_to_pelvis_depth(...)- Signature
align_studio_thigh_roots_to_pelvis_depth(- Target
maya_tools.Rigging.joint_placer.align_studio_thigh_roots_to_pelvis_depth- Source
maya_tools/Rigging/joint_placer.py:7523- Name status
- Friendly call available
Align both femoral roots with the pelvis in side view.
Parameters
namespace· str · default ''
Related functions
analyze_mesh_for_joint_placement
api.dcc.maya.analyze_mesh_for_joint_placement(...)- Signature
analyze_mesh_for_joint_placement(mesh: str) -> MeshPlacementReport- Target
maya_tools.Rigging.joint_placer.analyze_mesh_for_joint_placement- Source
maya_tools/Rigging/joint_placer.py:1140- Name status
- Friendly call available
Return topology facts that determine how trustworthy volume tests are.
Parameters
mesh· str · required
Related functions
apply_auto_weights
api.dcc.maya.apply_auto_weights(...)- Signature
apply_auto_weights(- Target
maya_tools.Rigging.auto_skinner.apply_auto_weights- Source
maya_tools/Rigging/auto_skinner.py:475- Name status
- Friendly call available
Parameters
mesh· str · requiredroot_joint· str · requiredmax_influences· int · default DEFAULT_MAX_INFLUENCESreplace_existing_skin· bool · default Falsefalloff_power· float · default 2.0bind_method· int · default DEFAULT_BIND_METHODcustom_distance_weights· bool · default Truegeodesic_voxel_falloff· float · default 0.0geodesic_voxel_resolution· int · default 256shoulder_profile· Optional[object] · default Noneshoulder_blend_strength· float · default 0.0
Related functions
apply_enum_data
api.dcc.maya.apply_enum_data(...)- Signature
apply_enum_data(data, prefer_first_match=True, strip_namespaces=True, verbose=True)- Target
maya_tools.Rigging.enum_attrs.apply_enum_data- Source
maya_tools/Rigging/enum_attrs.py:348- Name status
- Friendly call available
Apply stored enum data to matching nodes in the current scene.
Parameters
data· requiredprefer_first_match· default Truestrip_namespaces· default Trueverbose· default True
Related functions
apply_shoulder_profile_to_skin
api.dcc.maya.apply_shoulder_profile_to_skin(...)- Signature
apply_shoulder_profile_to_skin(- Target
maya_tools.Rigging.auto_skinner.apply_shoulder_profile_to_skin- Source
maya_tools/Rigging/auto_skinner.py:329- Name status
- Friendly call available
Parameters
mesh· str · requiredskin· str · requiredshoulder_profile· Optional[dict] · requiredblend_strength· float · default 0.35max_influences· int · default DEFAULT_MAX_INFLUENCES
Related functions
apply_shoulder_profile_to_weights
api.dcc.maya.apply_shoulder_profile_to_weights(...)- Signature
apply_shoulder_profile_to_weights(- Target
maya_tools.Rigging.auto_skinner.apply_shoulder_profile_to_weights- Source
maya_tools/Rigging/auto_skinner.py:296- Name status
- Friendly call available
Parameters
pos· om.MVector · requiredweights· WeightList · requiredshoulder_profile· Optional[dict] · requiredblend_strength· float · requiredmax_influences· int · required
Related functions
apply_side_color_override
api.dcc.maya.apply_side_color_override(...)- Signature
apply_side_color_override(node)- Target
maya_tools.Rigging.create_rig_core.apply_side_color_override- Source
maya_tools/Rigging/create_rig_core.py:2190- Name status
- Friendly call available
Auto-detect side from name and apply viewport override color to the SHAPE. l_ -> blue (6) r_ -> red (13) center -> yellow (17) :param node: ctrl to edit :return:
Parameters
node· required
Related functions
attach_ground
api.dcc.maya.attach_ground(...)- Signature
attach_ground(meshes: Iterable[str], *, rig_root: Optional[str] = None) -> dict[str, Any]- Target
maya_tools.Rigging.vehicle_rig.attach_ground- Source
maya_tools/Rigging/vehicle_rig.py:390- Name status
- Friendly call available
Parameters
meshes· Iterable[str] · requiredrig_root· Optional[str] · default None
Related functions
attach_selected_ground
api.dcc.maya.attach_selected_ground(...)- Signature
attach_selected_ground(rig_root: Optional[str] = None) -> dict[str, Any]- Target
maya_tools.Rigging.vehicle_rig.attach_selected_ground- Source
maya_tools/Rigging/vehicle_rig.py:405- Name status
- Friendly call available
Parameters
rig_root· Optional[str] · default None
Related functions
auto_skin_mesh
api.dcc.maya.auto_skin_mesh(...)- Signature
auto_skin_mesh(- Target
maya_tools.Rigging.auto_skinner.auto_skin_mesh- Source
maya_tools/Rigging/auto_skinner.py:588- Name status
- Friendly call available
Parameters
mesh· str · requiredroot_joint· str · default 'origin'max_influences· int · default DEFAULT_MAX_INFLUENCESsmooth_iterations· int · default 2replace_existing_skin· bool · default Falsefalloff_power· float · default 2.0bind_method· int · default DEFAULT_BIND_METHODcustom_distance_weights· bool · default Truegeodesic_voxel_falloff· float · default 0.0geodesic_voxel_resolution· int · default 256shoulder_profile· Optional[object] · default Noneshoulder_blend_strength· float · default 0.0
Related functions
auto_skin_selected
api.dcc.maya.auto_skin_selected(...)- Signature
auto_skin_selected(- Target
maya_tools.Rigging.auto_skinner.auto_skin_selected- Source
maya_tools/Rigging/auto_skinner.py:622- Name status
- Friendly call available
Parameters
root_joint· str · default 'origin'max_influences· int · default DEFAULT_MAX_INFLUENCESsmooth_iterations· int · default 2replace_existing_skin· bool · default Falsefalloff_power· float · default 2.0bind_method· int · default DEFAULT_BIND_METHODcustom_distance_weights· bool · default Truegeodesic_voxel_falloff· float · default 0.0geodesic_voxel_resolution· int · default 256shoulder_profile· Optional[object] · default Noneshoulder_blend_strength· float · default 0.0
Related functions
bake_all_keyable_attributes
api.dcc.maya.bake_all_keyable_attributes(...)- Signature
bake_all_keyable_attributes(nodes, start_frame, end_frame)- Target
maya_tools.Animation.anim_export.anim_export.bake_all_keyable_attributes- Source
maya_tools/Animation/anim_export/anim_export.py:151- Name status
- Friendly call available
:param nodes: nodes to bake :param start_frame: start of range to bake :param end_frame: end of range to bake :return:
Parameters
nodes· requiredstart_frame· requiredend_frame· required
Related functions
bake_ground
api.dcc.maya.bake_ground(...)- Signature
bake_ground(- Target
maya_tools.Rigging.vehicle_rig.bake_ground- Source
maya_tools/Rigging/vehicle_rig.py:1277- Name status
- Friendly call available
Parameters
rig_root· Optional[str] · default Nonestart· Optional[float] · default Noneend· Optional[float] · default Nonestep· float · default 1.0
Related functions
bake_joint_orient_to_rotate
api.dcc.maya.bake_joint_orient_to_rotate(...)- Signature
bake_joint_orient_to_rotate(joints=None)- Target
maya_tools.Rigging.create_rig_core.bake_joint_orient_to_rotate- Source
maya_tools/Rigging/create_rig_core.py:3966- Name status
- Friendly call available
Moves jointOrient values into rotate channels while preserving world-space pose. :param joints: list of joints to bake; all joints if None :return: None
Parameters
joints· default None
Related functions
bake_solved_skeleton_to_create_rig_controls
api.dcc.maya.bake_solved_skeleton_to_create_rig_controls(...)- Signature
bake_solved_skeleton_to_create_rig_controls(- Target
maya_tools.Rigging.mocap.referenced_animation_scene.bake_solved_skeleton_to_create_rig_controls- Source
maya_tools/Rigging/mocap/referenced_animation_scene.py:446- Name status
- Friendly call available
Parameters
rig_namespace· str · requiredsolved_namespace· str · requiredmapping_profile· str | Path · requiredstart_frame· float | None · default Noneend_frame· float | None · default Nonesample_subdivisions· int · default 4
Related functions
bind_mesh
api.dcc.maya.bind_mesh(...)- Signature
bind_mesh(- Target
maya_tools.Rigging.auto_skinner.bind_mesh- Source
maya_tools/Rigging/auto_skinner.py:375- Name status
- Friendly call available
Parameters
mesh· str · requiredjoints· Sequence[str] · requiredmax_influences· int · default DEFAULT_MAX_INFLUENCESreplace_existing· bool · default Falsebind_method· int · default DEFAULT_BIND_METHOD
Related functions
bind_runtime
api.dcc.maya.bind_runtime(...)- Signature
bind_runtime(namespace)- Target
maya_tools.Rigging.create_rig_modules.bind_runtime- Source
maya_tools/Rigging/create_rig_modules.py:18- Name status
- Friendly call available
Binds facade helpers used by the modular rig implementations. :param namespace: globals from the public ``create_rig`` facade. :return: None.
Parameters
namespace· required
build
api.dcc.maya.build(...)- Signature
build(output_path: Path = OUTPUT_PATH) -> Path- Target
maya_tools.Rigging.build_vehicle_rig_template.build- Source
maya_tools/Rigging/build_vehicle_rig_template.py:48- Name status
- Friendly call available
Parameters
output_path· Path · default OUTPUT_PATH
build_atlas
api.dcc.maya.build_atlas(...)- Signature
build_atlas(- Target
maya_tools.Rigging.joint_placement_reference_builder.build_atlas- Source
maya_tools/Rigging/joint_placement_reference_builder.py:248- Name status
- Friendly call available
Parameters
cases· Iterable[Tuple[str, str]] · requiredoutput_directory· str · default ''
build_basic_biped_skeleton
api.dcc.maya.build_basic_biped_skeleton(...)- Signature
build_basic_biped_skeleton(- Target
maya_tools.Rigging.joint_placer.build_basic_biped_skeleton- Source
maya_tools/Rigging/joint_placer.py:15146- Name status
- Friendly call available
Parameters
mesh· str · requiredorient· bool · default Truereplace_existing· bool · default Truecreate_guides· bool · default Falsesolver· str · default 'production'landmark_points· Optional[Dict[str, Vector3]] · default Nonetemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATEtemplate_namespace· str · default ''require_interior· bool · default Falsejoint_map· Optional[dict] · default Noneimport_skin_weights· bool · default False
Related functions
build_bone_segments
api.dcc.maya.build_bone_segments(...)- Signature
build_bone_segments(joints: Sequence[str]) -> List[Tuple[str, str]]- Target
maya_tools.Rigging.auto_skinner.build_bone_segments- Source
maya_tools/Rigging/auto_skinner.py:114- Name status
- Friendly call available
Parameters
joints· Sequence[str] · required
Related functions
build_cached_bone_segments
api.dcc.maya.build_cached_bone_segments(...)- Signature
build_cached_bone_segments(joints: Sequence[str]) -> List[BindSegment]- Target
maya_tools.Rigging.auto_skinner.build_cached_bone_segments- Source
maya_tools/Rigging/auto_skinner.py:127- Name status
- Friendly call available
Parameters
joints· Sequence[str] · required
Related functions
build_default_shoulder_profile
api.dcc.maya.build_default_shoulder_profile(...)- Signature
build_default_shoulder_profile(joints: Sequence[str]) -> dict- Target
maya_tools.Rigging.auto_skinner.build_default_shoulder_profile- Source
maya_tools/Rigging/auto_skinner.py:164- Name status
- Friendly call available
Parameters
joints· Sequence[str] · required
Related functions
build_demo_scene
api.dcc.maya.build_demo_scene(...)- Signature
build_demo_scene(path: str = DEFAULT_DEMO_PATH) -> dict[str, Any]- Target
maya_tools.Rigging.vehicle_rig.build_demo_scene- Source
maya_tools/Rigging/vehicle_rig.py:1343- Name status
- Friendly call available
Build and bake a short uneven-ground validation scene.
Parameters
path· str · default DEFAULT_DEMO_PATH
Related functions
build_enum_names_for_space_targets
api.dcc.maya.build_enum_names_for_space_targets(...)- Signature
build_enum_names_for_space_targets(targets, side=None)- Target
maya_tools.Rigging.create_rig_core.build_enum_names_for_space_targets- Source
maya_tools/Rigging/create_rig_core.py:5104- Name status
- Friendly call available
Build enum display names in the SAME ORDER as the incoming targets. Do not reorder here. Target order must drive enum order. :param targets: list of targets :param side: side :return: result
Parameters
targets· requiredside· default None
Related functions
build_example_scene
api.dcc.maya.build_example_scene(...)- Signature
build_example_scene(path: str = DEFAULT_RIG_PATH) -> dict[str, Any]- Target
maya_tools.Rigging.vehicle_rig.build_example_scene- Source
maya_tools/Rigging/vehicle_rig.py:1326- Name status
- Friendly call available
Parameters
path· str · default DEFAULT_RIG_PATH
Related functions
build_node_lookup
api.dcc.maya.build_node_lookup(...)- Signature
build_node_lookup(strip_namespaces=True)- Target
maya_tools.Rigging.enum_attrs.build_node_lookup- Source
maya_tools/Rigging/enum_attrs.py:328- Name status
- Friendly call available
Build a lookup of scene nodes by short name.
Parameters
strip_namespaces· default True
Related functions
build_referenced_animation_scene
api.dcc.maya.build_referenced_animation_scene(...)- Signature
build_referenced_animation_scene(- Target
maya_tools.Rigging.mocap.referenced_animation_scene.build_referenced_animation_scene- Source
maya_tools/Rigging/mocap/referenced_animation_scene.py:718- Name status
- Friendly call available
Parameters
rig_scene· str | Path · requiredsolved_animation_fbx· str | Path · requiredoutput_scene· str | Path · requiredrig_namespace· str · default 'CharacterRig'solved_namespace· str · default 'RetargetSolved'rig_adapter· str · default 'create_rig'mapping_profile· str | Path | None · default Nonestart_frame· float | None · default Noneend_frame· float | None · default None
Related functions
build_rfl_ik_and_constraints
api.dcc.maya.build_rfl_ik_and_constraints(...)- Signature
build_rfl_ik_and_constraints(- Target
maya_tools.Rigging.create_rig_core.build_rfl_ik_and_constraints- Source
maya_tools/Rigging/create_rig_core.py:2011- Name status
- Friendly call available
creates full reverse foot setup from existing joints :param side: l or r :param ik_leg_ctrl: actual leg ik ctrl :param ik_leg_joints: list of ['ankle', 'toe', 'toeTip'] joints :param rfl_joints: list of ['heel', 'outerBank', 'innerBank', 'toe', 'toeTip', 'ankle'] joints :return:
Parameters
side· requiredik_leg_ctrl· requiredik_leg_joints· requiredrfl_joints· required
Related functions
build_skeleton_from_points
api.dcc.maya.build_skeleton_from_points(...)- Signature
build_skeleton_from_points(- Target
maya_tools.Rigging.joint_placer.build_skeleton_from_points- Source
maya_tools/Rigging/joint_placer.py:3929- Name status
- Friendly call available
Parameters
points· Dict[str, Vector3] · requiredroot_name· str · default 'origin'orient· bool · default Truereplace_existing· bool · default Truepose_type· str · default 'unknown'pose_angle_degrees· float · default 0.0
Related functions
build_vehicle_rig
api.dcc.maya.build_vehicle_rig(...)- Signature
build_vehicle_rig(- Target
maya_tools.Rigging.vehicle_rig.build_vehicle_rig- Source
maya_tools/Rigging/vehicle_rig.py:188- Name status
- Friendly call available
Parameters
root_joint· Optional[str] · default Noneground_meshes· Optional[Iterable[str]] · default Nonecreate_preview_geometry· bool · default True
Related functions
capture_anchor_baseline
api.dcc.maya.capture_anchor_baseline(...)- Signature
capture_anchor_baseline(- Target
maya_tools.Rigging.joint_placement_regression.capture_anchor_baseline- Source
maya_tools/Rigging/joint_placement_regression.py:239- Name status
- Friendly call available
Capture approved core anchors from an older or differently named rig.
Parameters
mesh· str · requiredpath· str · requiredcanonical_to_source_joint· Dict[str, str] · requiredcase_id· str · default ''notes· str · default ''thresholds· Optional[Dict[str, object]] · default None
Related functions
capture_baseline
api.dcc.maya.capture_baseline(...)- Signature
capture_baseline(- Target
maya_tools.Rigging.joint_placement_regression.capture_baseline- Source
maya_tools/Rigging/joint_placement_regression.py:126- Name status
- Friendly call available
Capture the currently approved fitted skeleton as a golden baseline.
Parameters
mesh· str · requiredpath· str · requiredcase_id· str · default ''namespace· str · default ''notes· str · default ''thresholds· Optional[Dict[str, object]] · default None
Related functions
capture_current_pose_as_preferred_angles
api.dcc.maya.capture_current_pose_as_preferred_angles(...)- Signature
capture_current_pose_as_preferred_angles(root: str) -> Dict[str, Tuple[float, float, float]]- Target
maya_tools.Rigging.joint_placer.capture_current_pose_as_preferred_angles- Source
maya_tools/Rigging/joint_placer.py:5072- Name status
- Friendly call available
Store the completed placed pose as every joint's preferred angles. This must run after all placement and orientation cleanup. Preferred angles are pose data, so deriving them from nominal prebend constants can disagree with the skeleton the artist is actually looking at (and can make an IK solve jump as soon as it is enabled).
Parameters
root· str · required
Related functions
capture_mapped_baseline
api.dcc.maya.capture_mapped_baseline(...)- Signature
capture_mapped_baseline(- Target
maya_tools.Rigging.joint_placement_regression.capture_mapped_baseline- Source
maya_tools/Rigging/joint_placement_regression.py:184- Name status
- Friendly call available
Capture joints from an external approved rig under studio target names.
Parameters
mesh· str · requiredpath· str · requiredtarget_to_source_joint· Dict[str, str] · requiredcase_id· str · default ''notes· str · default ''thresholds· Optional[Dict[str, object]] · default None
Related functions
capture_module_rebuild_identity
api.dcc.maya.capture_module_rebuild_identity(...)- Signature
capture_module_rebuild_identity(module_id, controls=None)- Target
maya_tools.Rigging.create_rig.capture_module_rebuild_identity- Source
maya_tools/Rigging/create_rig.py:4388- Name status
- Friendly call available
Persist live control/space names and control shapes before module removal.
Parameters
module_id· requiredcontrols· default None
Related functions
capture_scene
api.dcc.maya.capture_scene(...)- Signature
capture_scene(scene: str, case_id: str, output_directory: str) -> Dict[str, object]- Target
maya_tools.Rigging.joint_placement_reference_builder.capture_scene- Source
maya_tools/Rigging/joint_placement_reference_builder.py:132- Name status
- Friendly call available
Capture every uniquely named deform joint from a file or current scene. Pass an empty ``scene`` to capture the active Maya scene without opening, saving, or otherwise modifying it. This is used when an artist marks the current joint placement as the approved production reference.
Parameters
scene· str · requiredcase_id· str · requiredoutput_directory· str · required
capture_selected_baseline
api.dcc.maya.capture_selected_baseline(...)- Signature
capture_selected_baseline(path: str, case_id: str = "", namespace: str = "")- Target
maya_tools.Rigging.joint_placement_regression.capture_selected_baseline- Source
maya_tools/Rigging/joint_placement_regression.py:761- Name status
- Friendly call available
Parameters
path· str · requiredcase_id· str · default ''namespace· str · default ''
Related functions
capture_studio_template_knee_bend_axes
api.dcc.maya.capture_studio_template_knee_bend_axes(...)- Signature
capture_studio_template_knee_bend_axes(- Target
maya_tools.Rigging.joint_placer.capture_studio_template_knee_bend_axes- Source
maya_tools/Rigging/joint_placer.py:9487- Name status
- Friendly call available
Tag knees with the studio template's authored local-Y hinge.
Parameters
namespace· str · default ''
Related functions
classify_arm_pose
api.dcc.maya.classify_arm_pose(...)- Signature
classify_arm_pose(- Target
maya_tools.Rigging.joint_placer.classify_arm_pose- Source
maya_tools/Rigging/joint_placer.py:464- Name status
- Friendly call available
Classify generated arm placement as T-pose or A-pose from shoulder-to-hand slope. Returns: tuple[str, float]: pose label and absolute arm-down angle from horizontal.
Parameters
points· Dict[str, Vector3] · requiredframe· Optional[PlacementFrame] · default None
Related functions
cleanup_temp_bones
api.dcc.maya.cleanup_temp_bones(...)- Signature
cleanup_temp_bones(function)- Target
maya_tools.Rigging.temp_cleanup.cleanup_temp_bones- Source
maya_tools/Rigging/temp_cleanup.py:73- Name status
- Friendly call available
Clean up only temporary joints created by this operation. Existing scene joints are treated as user data, even when their names contain ``temp``. Sweeping the entire scene before a fit could otherwise delete authored helpers such as hair, eyelid, or twist joints.
Parameters
function· required
Related functions
clear_mesh_query_cache
api.dcc.maya.clear_mesh_query_cache(...)- Signature
clear_mesh_query_cache() -> None- Target
maya_tools.Rigging.joint_placer.clear_mesh_query_cache- Source
maya_tools/Rigging/joint_placer.py:1434- Name status
- Friendly call available
Release placement acceleration structures before a new mesh solve.
Parameters
None documented.
Related functions
clear_module_metadata
api.dcc.maya.clear_module_metadata(...)- Signature
clear_module_metadata(module_id)- Target
maya_tools.Rigging.create_rig.clear_module_metadata- Source
maya_tools/Rigging/create_rig.py:5587- Name status
- Friendly call available
Mark a module as not built while keeping its joint/parent info. :param module_id: unique module identifier :return: None
Parameters
module_id· required
Related functions
closest_point_on_segment
api.dcc.maya.closest_point_on_segment(...)- Signature
closest_point_on_segment(point: om.MVector, a: om.MVector, b: om.MVector) -> Tuple[om.MVector, float]- Target
maya_tools.Rigging.auto_skinner.closest_point_on_segment- Source
maya_tools/Rigging/auto_skinner.py:135- Name status
- Friendly call available
Parameters
point· om.MVector · requireda· om.MVector · requiredb· om.MVector · required
collect_enum_data
api.dcc.maya.collect_enum_data(...)- Signature
collect_enum_data(nodes=None, attr_filter=None, strip_namespaces=True)- Target
maya_tools.Rigging.enum_attrs.collect_enum_data- Source
maya_tools/Rigging/enum_attrs.py:86- Name status
- Friendly call available
Collect enum definitions from nodes. Parameters ---------- nodes : list[str] or None Nodes to inspect. If None, uses selection. attr_filter : list[str] or None If provided, only these enum attrs are exported. strip_namespaces : bool If True, stores short node names without namespaces. Returns ------- dict
Parameters
nodes· default Noneattr_filter· default Nonestrip_namespaces· default True
Related functions
configure_mapped_bend_axes
api.dcc.maya.configure_mapped_bend_axes(...)- Signature
configure_mapped_bend_axes(root: str, joint_map: dict) -> Dict[str, str]- Target
maya_tools.Rigging.joint_placer.configure_mapped_bend_axes- Source
maya_tools/Rigging/joint_placer.py:10149- Name status
- Friendly call available
Apply the same hinge policy through user-defined HIK joint mappings.
Parameters
root· str · requiredjoint_map· dict · required
Related functions
configure_studio_bend_axes
api.dcc.maya.configure_studio_bend_axes(...)- Signature
configure_studio_bend_axes(root: str, namespace: str = "") -> Dict[str, str]- Target
maya_tools.Rigging.joint_placer.configure_studio_bend_axes- Source
maya_tools/Rigging/joint_placer.py:9262- Name status
- Friendly call available
Author one preferred bend axis while leaving all channels editable.
Parameters
root· str · requirednamespace· str · default ''
Related functions
configure_studio_elbow_bend_axes_from_channels
api.dcc.maya.configure_studio_elbow_bend_axes_from_channels(...)- Signature
configure_studio_elbow_bend_axes_from_channels(- Target
maya_tools.Rigging.joint_placer.configure_studio_elbow_bend_axes_from_channels- Source
maya_tools/Rigging/joint_placer.py:9314- Name status
- Friendly call available
Bias elbow IK to local Z while keeping every rotate channel editable.
Parameters
namespace· str · default ''
Related functions
constrain_controls_to_two_parents
api.dcc.maya.constrain_controls_to_two_parents(...)- Signature
constrain_controls_to_two_parents(- Target
maya_tools.Rigging.create_rig_core.constrain_controls_to_two_parents- Source
maya_tools/Rigging/create_rig_core.py:3899- Name status
- Friendly call available
Apply a parentConstraint to each control in the list using parent1 and parent2 as drivers. :param controls: Controls to constrain :param parent1: First parent/driver :param parent2: Second parent/driver :param parent1_value: Weight value for parent1 :param parent2_value: Weight value for parent2 :param maintain_offset: Whether to maintain offset :return: list[str]
Parameters
controls· requiredparent1· requiredparent2· requiredparent1_value· default 1.0parent2_value· default 0.0maintain_offset· default True
Related functions
create_and_populate_export_node
api.dcc.maya.create_and_populate_export_node(...)- Signature
create_and_populate_export_node(anim_dict, skeletons, uproject, log_path, cmd_path, export_directory, namespace_skeleton_map)- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.create_and_populate_export_node- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:224- Name status
- Friendly call available
Data is passed from the UI, likely wont need to call from Maya directly (just separating out cmds calls into this file) :param anim_dict: :param skeletons: :param uproject: :param log_path: :param cmd_path: :param export_directory: :param namespace_skeleton_map: :return:
Parameters
anim_dict· requiredskeletons· requireduproject· requiredlog_path· requiredcmd_path· requiredexport_directory· requirednamespace_skeleton_map· required
Related functions
create_arm_space_switches
api.dcc.maya.create_arm_space_switches(...)- Signature
create_arm_space_switches(side, body_joint_map=None)- Target
maya_tools.Rigging.create_rig_core.create_arm_space_switches- Source
maya_tools/Rigging/create_rig_core.py:5650- Name status
- Friendly call available
Builds space switches (including composite spaces) for the Arm module. :param side: left or right side (l/r) :param body_joint_map: optional body joint mapping dictionary :return: None
Parameters
side· requiredbody_joint_map· default None
Related functions
create_auto_joints_for_mesh
api.dcc.maya.create_auto_joints_for_mesh(...)- Signature
create_auto_joints_for_mesh(- Target
maya_tools.Rigging.joint_placer.create_auto_joints_for_mesh- Source
maya_tools/Rigging/joint_placer.py:15431- Name status
- Friendly call available
Parameters
mesh· str · requiredorient· bool · default Truereplace_existing· bool · default Truecreate_guides· bool · default Falsesolver· str · default 'production'landmark_points· Optional[Dict[str, Vector3]] · default Nonetemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATEtemplate_namespace· str · default ''require_interior· bool · default Falsejoint_map· Optional[dict] · default Noneimport_skin_weights· bool · default False
Related functions
create_auto_joints_for_selected_mesh
api.dcc.maya.create_auto_joints_for_selected_mesh(...)- Signature
create_auto_joints_for_selected_mesh(- Target
maya_tools.Rigging.joint_placer.create_auto_joints_for_selected_mesh- Source
maya_tools/Rigging/joint_placer.py:15481- Name status
- Friendly call available
Parameters
orient· bool · default Truereplace_existing· bool · default Truecreate_guides· bool · default Falsesolver· str · default 'production'landmark_points· Optional[Dict[str, Vector3]] · default Nonetemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATEtemplate_namespace· str · default ''require_interior· bool · default Falsejoint_map· Optional[dict] · default None
Related functions
create_bi_arrow_ctrl
api.dcc.maya.create_bi_arrow_ctrl(...)- Signature
create_bi_arrow_ctrl(name, size=1.2)- Target
maya_tools.Rigging.create_rig_core.create_bi_arrow_ctrl- Source
maya_tools/Rigging/create_rig_core.py:363- Name status
- Friendly call available
Two arrows pointing in opposite directions, rotated 90° around X-axis :param name: ctrl name :param size: relative size mult :return:
Parameters
name· requiredsize· default 1.2
Related functions
create_brow_main_setup
api.dcc.maya.create_brow_main_setup(...)- Signature
create_brow_main_setup(side, root_parent='head1_ctrl')- Target
maya_tools.Rigging.create_rig.create_brow_main_setup- Source
maya_tools/Rigging/create_rig.py:319- Name status
- Friendly call available
Creates the main eyebrows setup, snapping it to the middle brow control. :param side: Left or right side (l/r) :param root_parent: Parent control node name :return: dict
Parameters
side· requiredroot_parent· default 'head1_ctrl'
Related functions
create_composite_space
api.dcc.maya.create_composite_space(...)- Signature
create_composite_space(name, parents, match_to, parent_node=None)- Target
maya_tools.Rigging.create_rig_core.create_composite_space- Source
maya_tools/Rigging/create_rig_core.py:4928- Name status
- Friendly call available
Creates a transform constrained to multiple parents, matched to the driven group. :param name: name of the composite space node to create :param parents: list of parent control nodes :param match_to: node to match position/orientation to :param parent_node: optional node to parent the created space transform under before constraining :return: str or None
Parameters
name· requiredparents· requiredmatch_to· requiredparent_node· default None
Related functions
create_cube_ctrl
api.dcc.maya.create_cube_ctrl(...)- Signature
create_cube_ctrl(name, size=1.5)- Target
maya_tools.Rigging.create_rig_core.create_cube_ctrl- Source
maya_tools/Rigging/create_rig_core.py:251- Name status
- Friendly call available
Wireframe cube control :param name: control name :param size: local size mult :return:
Parameters
name· requiredsize· default 1.5
Related functions
create_diamond_ctrl
api.dcc.maya.create_diamond_ctrl(...)- Signature
create_diamond_ctrl(name, size=1.0, normal=(0, 1, 0))- Target
maya_tools.Rigging.create_rig_core.create_diamond_ctrl- Source
maya_tools/Rigging/create_rig_core.py:172- Name status
- Friendly call available
Creates a diamond-shaped nurbsCurve control. :param name: ctrl_name :param size: local size mult :param normal: relative direction :return:
Parameters
name· requiredsize· default 1.0normal· default (0, 1, 0)
Related functions
create_eye_aim_setup
api.dcc.maya.create_eye_aim_setup(...)- Signature
create_eye_aim_setup(- Target
maya_tools.Rigging.create_rig_core.create_eye_aim_setup- Source
maya_tools/Rigging/create_rig_core.py:5812- Name status
- Friendly call available
Creates a standard left/right eye aim setup with a shared center aim control. :param left_eye_joint: left eye joint name :param right_eye_joint: right eye joint name :param aim_distance: local aim control distance offset :param head_ctrl: head parent control name :return: dict
Parameters
left_eye_joint· default 'l_eye'right_eye_joint· default 'r_eye'aim_distance· default 25head_ctrl· default 'head1_ctrl'
Related functions
create_finger_rigs
api.dcc.maya.create_finger_rigs(...)- Signature
create_finger_rigs(finger_joints, hand_driver=None)- Target
maya_tools.Rigging.create_rig_core.create_finger_rigs- Source
maya_tools/Rigging/create_rig_core.py:4237- Name status
- Friendly call available
Creates IK driven FK system for finger joints :param finger_joints: finger joints :param hand_driver: parent transform/joint name to parent finger rigs under :return:
Parameters
finger_joints· requiredhand_driver· default None
Related functions
create_full_rig
api.dcc.maya.create_full_rig(...)- Signature
create_full_rig(arm_joints=None, leg_joints=None, spine_joints=None, neck_joints=None, root_joints=None,- Target
maya_tools.Rigging.create_rig.create_full_rig- Source
maya_tools/Rigging/create_rig.py:688- Name status
- Friendly call available
Builds the entire character rig by coordinating modular setup builders. :param arm_joints: list of mapped arm joints :param leg_joints: list or dict of mapped leg joints :param spine_joints: list of mapped spine joints :param neck_joints: list of mapped neck/head joints :param root_joints: list of mapped root/pelvis joints :param hip_swing: hipswing name or prefix :param face_joint_map: mapping dictionary for face joints :param face_joints: list of face joints :param snap_rfl: whether to snap reverse-foot pivots during T-pose and leg setup :param shoe_meshes: optional footwear meshes for reverse-foot pivot placement :return: dict
Parameters
arm_joints· default Noneleg_joints· default Nonespine_joints· default Noneneck_joints· default Noneroot_joints· default Nonehip_swing· default 'hipswing'face_joint_map· default Noneface_joints· default Nonesnap_rfl· default Trueshoe_meshes· default None
Related functions
create_guides_from_points
api.dcc.maya.create_guides_from_points(...)- Signature
create_guides_from_points(- Target
maya_tools.Rigging.joint_placer.create_guides_from_points- Source
maya_tools/Rigging/joint_placer.py:4004- Name status
- Friendly call available
Create or update color-coded guides without rebuilding the DAG.
Parameters
points· Dict[str, Vector3] · requiredgroup_name· str · default 'auto_joint_guides_grp'confidence· Optional[Dict[str, float]] · default Noneoutside_joints· Optional[Iterable[str]] · default None
Related functions
create_ik_fk_limb
api.dcc.maya.create_ik_fk_limb(...)- Signature
create_ik_fk_limb(sel, root_parent)- Target
maya_tools.Rigging.create_rig_core.create_ik_fk_limb- Source
maya_tools/Rigging/create_rig_core.py:1107- Name status
- Friendly call available
Creates an IK/FK limb from either: - 3 joints (arm) - 4+ joints (leg with extra joints) Behavior is determined purely by joint count. :param sel: list of joints in the limb chain (top -> mid -> end -> optional extras) :param root_parent: transform to parent FK controls / IK controls under :return: { "fk_chain": fk_joints, "ik_chain": ik_joints, "driver_chain": driver_joints, "fk_controls": fk_ctrls, "ik_ctrl": ik_ctrl, "pv_ctrl": pv_ctrl, "ik_handle": ik_handle, "blend_constraints": blend_constraints }
Parameters
sel· requiredroot_parent· required
Related functions
create_joint
api.dcc.maya.create_joint(...)- Signature
create_joint(name: str, position: Vector3, parent: Optional[str] = None, radius: float = 1.0) -> str- Target
maya_tools.Rigging.joint_placer.create_joint- Source
maya_tools/Rigging/joint_placer.py:3842- Name status
- Friendly call available
Parameters
name· str · requiredposition· Vector3 · requiredparent· Optional[str] · default Noneradius· float · default 1.0
Related functions
create_joint_controls
api.dcc.maya.create_joint_controls(...)- Signature
create_joint_controls(- Target
maya_tools.Rigging.create_rig_core.create_joint_controls- Source
maya_tools/Rigging/create_rig_core.py:2222- Name status
- Friendly call available
Creates a control hierarchy for the joints :param joint_list: list of joints to create , accepts hierarchy or single item list :param control_shape: shape type, can be circle, diamond, prism, arrow, cube or sphere :param root_parent: what to parent hierarchy to :param sub_ctrls: do you want local sub controls :param keep_constraint: do you want to keep connected to the joint or just snapped to :param sub_ctrl_shape_rotation_x: local X rotation baked into sub-control CVs :param sub_ctrl_shape_rotation_z: local Z rotation baked into sub-control CVs :return: each ctrl gets added to a list of results, which then has a dict for each joint in the list results.append({ "joint": jnt, "ctrl": ctrl, "sdk": sdk, "pad": pad, "sub_ctrl": sub_ctrl })
Parameters
joint_list· default Nonecontrol_shape· default 'sphere'root_parent· default Nonesub_ctrls· default Falsekeep_constraint· default Truesub_ctrl_shape_rotation_x· default 0.0sub_ctrl_shape_rotation_z· default 0.0
Related functions
create_joints_along_curve
api.dcc.maya.create_joints_along_curve(...)- Signature
create_joints_along_curve(curve, joint_count=5, keep_attached=True, name_prefix=None)- Target
maya_tools.Rigging.create_rig_core.create_joints_along_curve- Source
maya_tools/Rigging/create_rig_core.py:764- Name status
- Friendly call available
Create evenly spaced independent joints along a NURBS curve. When ``keep_attached`` is true, each joint is placed below a transform driven by its own fraction-mode motionPath node. Otherwise the evaluated world transforms are baked onto the joints and all helper nodes are removed.
Parameters
curve· requiredjoint_count· default 5keep_attached· default Truename_prefix· default None
Related functions
create_leg_space_switches
api.dcc.maya.create_leg_space_switches(...)- Signature
create_leg_space_switches(side, body_joint_map=None)- Target
maya_tools.Rigging.create_rig_core.create_leg_space_switches- Source
maya_tools/Rigging/create_rig_core.py:5516- Name status
- Friendly call available
Builds space switches (including composite spaces) for the Leg module. :param side: left or right side (l/r) :param body_joint_map: optional body joint mapping dictionary :return: None
Parameters
side· requiredbody_joint_map· default None
Related functions
create_loft_surface_with_follicle_joints
api.dcc.maya.create_loft_surface_with_follicle_joints(...)- Signature
create_loft_surface_with_follicle_joints(joint_chain, name="surface", offset=0.5)- Target
maya_tools.Rigging.create_rig_core.create_loft_surface_with_follicle_joints- Source
maya_tools/Rigging/create_rig_core.py:2828- Name status
- Friendly call available
Create a lofted surface along a joint chain. Creates: - Lofted NURBS surface - Follicles attached to the surface - Follicle joints parented to the follicles (to drive controls) :param joint_chain: list of joints :param name: surface name :param offset: offset of curves :return: loft_surf: name of the lofted NURBS surface follicle_joints: list of joints aligned to the follicles
Parameters
joint_chain· requiredname· default 'surface'offset· default 0.5
Related functions
create_prism_ctrl
api.dcc.maya.create_prism_ctrl(...)- Signature
create_prism_ctrl(name, size=1.0, depth=0.5, normal=(0, 1, 0))- Target
maya_tools.Rigging.create_rig_core.create_prism_ctrl- Source
maya_tools/Rigging/create_rig_core.py:203- Name status
- Friendly call available
Creates a prism-shaped nurbsCurve control. :param name: control name :param size: horizontal/vertical scale of diamond :param depth: prism depth along Y-axis :param normal: vector to orient the prism along (default Y-up) :return:
Parameters
name· requiredsize· default 1.0depth· default 0.5normal· default (0, 1, 0)
Related functions
create_rfl_joints_template
api.dcc.maya.create_rfl_joints_template(...)- Signature
create_rfl_joints_template(side, ankle_jnt, toe_jnt, toe_tip_jnt)- Target
maya_tools.Rigging.create_rig.create_rfl_joints_template- Source
maya_tools/Rigging/create_rig.py:4745- Name status
- Friendly call available
Creates RFL template joints heel > outerBank > innerBank > toeTip > toe > ankle. :param side: side :param ankle_jnt: ankle jnt :param toe_jnt: toe jnt :param toe_tip_jnt: toe tip jnt :return: result
Parameters
side· requiredankle_jnt· requiredtoe_jnt· requiredtoe_tip_jnt· required
Related functions
create_rig_from_mapping
api.dcc.maya.create_rig(...)- Signature
create_rig_from_mapping(body_joint_map, face_joint_map)- Target
maya_tools.Rigging.create_rig.create_rig_from_mapping- Source
maya_tools/Rigging/create_rig.py:2373- Name status
- Friendly call available
Runs create_full_rig using the mapped joints from HIK/Face mappings. :param body_joint_map: body joint mapping dictionary :param face_joint_map: face joint mapping dictionary :return: None
Parameters
body_joint_map· requiredface_joint_map· required
Related functions
create_rig_mapping
api.dcc.maya.create_rig_mapping(...)- Signature
create_rig_mapping(root_joint=None)- Target
maya_tools.Rigging.mocap.setup_hik.create_rig_mapping- Source
maya_tools/Rigging/mocap/setup_hik.py:2338- Name status
- Friendly call available
Standalone HIK mapping function. Auto-detects the skeleton root if none is provided, then runs guess_joint_map_from_root and populate_default_face_map_from_scene. Returns a tuple of (body_joint_map, face_joint_map) suitable for passing to create_rig.hik_map_to_rig_args. :param root_joint: Optional root joint name. If None, auto-detected from scene. :return: (body_joint_map dict, face_joint_map dict)
Parameters
root_joint· default None
Related functions
create_rig_space_switches
api.dcc.maya.create_rig_space_switches(...)- Signature
create_rig_space_switches(side)- Target
maya_tools.Rigging.create_rig_core.create_rig_space_switches- Source
maya_tools/Rigging/create_rig_core.py:5802- Name status
- Friendly call available
Builds the base space switches for both Leg and Arm modules on this side. :param side: left or right side (l/r) :return: None
Parameters
side· required
Related functions
create_rigged_proxy
api.dcc.maya.create_rigged_proxy(...)- Signature
create_rigged_proxy(- Target
maya_tools.Rigging.validation_proxy.create_rigged_proxy- Source
maya_tools/Rigging/validation_proxy.py:8- Name status
- Friendly call available
Parameters
name_prefix· str · default 'AIStudio_Proxy'start_frame· int · default 1end_frame· int · default 24travel_distance· float · default 100.0
Related functions
create_space_switch
api.dcc.maya.create_space_switch(...)- Signature
create_space_switch(- Target
maya_tools.Rigging.create_rig_core.create_space_switch- Source
maya_tools/Rigging/create_rig_core.py:4970- Name status
- Friendly call available
Builds a space switch where each target gets a matched child transform, and those children are the actual constraint drivers. Constraint is applied to the driven control's parent group. :param driven: control name that drives space switching (e.g. "r_lowerarm_low_pv_ctrl") :param targets: list of target control names (e.g. ["r_clavicle1_ctrl", "pelvis_ctrl", "origin_ctrl"]) :param attr_name: name of the enum attribute created on the driven control :param dup_suffix: suffix appended to duplicated space target transforms :param constraint_type: type of constraint to use ("parent" or "orient") :param enum_names: optional list of custom enum display names for options :return: dict
Parameters
driven· requiredtargets· requiredattr_name· default 'space'dup_suffix· default '_spaceTarget'constraint_type· default 'parent'enum_names· default None
Related functions
create_sphere_ctrl
api.dcc.maya.create_sphere_ctrl(...)- Signature
create_sphere_ctrl(name, radius=1.5)- Target
maya_tools.Rigging.create_rig_core.create_sphere_ctrl- Source
maya_tools/Rigging/create_rig_core.py:326- Name status
- Friendly call available
Creates a sphere-like control made of 3 rotated circles with proper shape parenting :param name: ctrl name :param radius: relative radius of sphere :return:
Parameters
name· requiredradius· default 1.5
Related functions
create_surface_from_joints_original
api.dcc.maya.create_surface_from_joints_original(...)- Signature
create_surface_from_joints_original(- Target
maya_tools.Rigging.create_rig_core.create_surface_from_joints_original- Source
maya_tools/Rigging/create_rig_core.py:2698- Name status
- Friendly call available
Stable surface builder using nurbsPlane + CV positioning. - Offsets using joint local Z axis - Supports closed loops - Creates follicles + follicle joints :param joint_chain: list of joints :param name: surface name :return: surface, follicle_joints
Parameters
joint_chain· requiredname· default 'surface'
Related functions
create_twist_driver
api.dcc.maya.create_twist_driver(...)- Signature
create_twist_driver(driver_bone="l_thigh_driver",- Target
maya_tools.Rigging.create_rig_core.create_twist_driver- Source
maya_tools/Rigging/create_rig_core.py:6137- Name status
- Friendly call available
Creates a twist driver setup for a limb segment. Args: driver_bone (str): Name of the driver bone. child_bone (str): Name of the child bone. parent (str): Parent control or group name. surface (str): Name of the lofted surface. Returns: str: Name of the created twist driver joint. :param driver_bone: driver bone :param child_bone: child bone :param parent: parent :param surface: surface :return: result
Parameters
driver_bone· default 'l_thigh_driver'child_bone· default 'l_knee_driver'parent· default 'hipswing_ctrl'surface· default 'l_thigh_surface'constraint_settings· default None
Related functions
cross
api.dcc.maya.cross(...)- Signature
cross(a, b)- Target
maya_tools.Rigging.create_rig_core.cross- Source
maya_tools/Rigging/create_rig_core.py:2684- Name status
- Friendly call available
Computes the cross product of two 3D vectors. :param a: first 3D vector :param b: second 3D vector :return: list[float]
Parameters
a· requiredb· required
deactivate_surface_spatial_smooth_brush
api.dcc.maya.deactivate_surface_spatial_smooth_brush(...)- Signature
deactivate_surface_spatial_smooth_brush()- Target
maya_tools.Rigging.skinning_utils.deactivate_surface_spatial_smooth_brush- Source
maya_tools/Rigging/skinning_utils.py:1271- Name status
- Friendly call available
Exit the spatial skin brush and return to Maya's selection context.
Parameters
None documented.
Related functions
delete_auto_joint_guides
api.dcc.maya.delete_auto_joint_guides(...)- Signature
delete_auto_joint_guides() -> List[str]- Target
maya_tools.Rigging.joint_placer.delete_auto_joint_guides- Source
maya_tools/Rigging/joint_placer.py:4090- Name status
- Friendly call available
Delete only the temporary guide hierarchy owned by joint placement.
Parameters
None documented.
Related functions
delete_existing_generated_skeleton
api.dcc.maya.delete_existing_generated_skeleton(...)- Signature
delete_existing_generated_skeleton(root_name: str = "origin") -> None- Target
maya_tools.Rigging.joint_placer.delete_existing_generated_skeleton- Source
maya_tools/Rigging/joint_placer.py:3832- Name status
- Friendly call available
Parameters
root_name· str · default 'origin'
Related functions
delete_temp_bones
api.dcc.maya.delete_temp_bones(...)- Signature
delete_temp_bones(exclude=())- Target
maya_tools.Rigging.temp_cleanup.delete_temp_bones- Source
maya_tools/Rigging/temp_cleanup.py:19- Name status
- Friendly call available
Delete newly created construction joints with a distinct ``temp`` token. Non-temporary children are first reparented beside the temporary joint so cleanup cannot accidentally remove a persistent skeleton branch. Referenced and explicitly excluded joints are left untouched because they predate the current operation and may be valid rig data despite their name.
Parameters
exclude· default ()
Related functions
delete_unused_scaffold_nodes
api.dcc.maya.delete_unused_scaffold_nodes(...)- Signature
delete_unused_scaffold_nodes()- Target
maya_tools.Rigging.create_rig.delete_unused_scaffold_nodes- Source
maya_tools/Rigging/create_rig.py:2545- Name status
- Friendly call available
Delete unused scaffold and temporary nodes without removing rig drivers. A ``*_main`` joint with a matching control (or parented beneath a control) is a persistent surface driver used by the lips, brows, and eyelids. It must survive even if Maya does not report its skinCluster through a direct ``listConnections`` query.
Parameters
None documented.
Related functions
disable_evaluation
api.dcc.maya.disable_evaluation(...)- Signature
disable_evaluation()- Target
maya_tools.Utilities.dag.disable_evaluation- Source
maya_tools/Utilities/dag.py:3- Name status
- Friendly call available
Equivalent to Evaluation > Evaluation Mode > Off
Parameters
None documented.
Related functions
disconnect_attr_connections
api.dcc.maya.disconnect_attr_connections(...)- Signature
disconnect_attr_connections(plug)- Target
maya_tools.Rigging.enum_attrs.disconnect_attr_connections- Source
maya_tools/Rigging/enum_attrs.py:185- Name status
- Friendly call available
Parameters
plug· required
Related functions
discover_create_rig_bindings
api.dcc.maya.discover_create_rig_bindings(...)- Signature
discover_create_rig_bindings(- Target
maya_tools.Rigging.mocap.referenced_animation_scene.discover_create_rig_bindings- Source
maya_tools/Rigging/mocap/referenced_animation_scene.py:219- Name status
- Friendly call available
Discover controls by their joint-driving graph, including non-``_ctrl`` rigs.
Parameters
rig_namespace· str · requiredsolved_namespace· str · requiredallowed_bones· set[str] | None · default None
Related functions
display_warning
api.dcc.maya.display_warning(...)- Signature
display_warning(warning)- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.display_warning- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:88- Name status
- Friendly call available
:param warning: Warning to display :return:
Parameters
warning· required
Related functions
duplicate_static_hierarchy
api.dcc.maya.duplicate_static_hierarchy(...)- Signature
duplicate_static_hierarchy(root, suffix="static")- Target
maya_tools.Rigging.create_rig.duplicate_static_hierarchy- Source
maya_tools/Rigging/create_rig.py:2762- Name status
- Friendly call available
Duplicate static hierarchy. :param root: root :param suffix: suffix :return: result
Parameters
root· requiredsuffix· default 'static'
Related functions
dynamic_module_spec
api.dcc.maya.dynamic_module_spec(...)- Signature
dynamic_module_spec(joints, parent=None, **settings)- Target
maya_tools.Rigging.create_rig.dynamic_module_spec- Source
maya_tools/Rigging/create_rig.py:1264- Name status
- Friendly call available
Create the persistent input specification used by rigging UI widgets.
Parameters
joints· requiredparent· default None**settings· required
Related functions
enable_evaluation
api.dcc.maya.enable_evaluation(...)- Signature
enable_evaluation()- Target
maya_tools.Utilities.dag.enable_evaluation- Source
maya_tools/Utilities/dag.py:11- Name status
- Friendly call available
Restore normal evaluation (Parallel).
Parameters
None documented.
Related functions
enforce_limb_planarity
api.dcc.maya.enforce_limb_planarity(...)- Signature
enforce_limb_planarity(- Target
maya_tools.Rigging.joint_placer.enforce_limb_planarity- Source
maya_tools/Rigging/joint_placer.py:516- Name status
- Friendly call available
Put the primary IK chains on explicit anatomical planes. Arms use the template's side/up bend plane: depth is the outward hinge axis (local Y), so the elbow prebend must be vertical rather than drifting toward character-front/back. Legs and the spine use YZ planes (constant X). A small elbow/knee prebend is retained or introduced inside the corresponding plane so a rotate-plane IK solver never receives a singular straight chain.
Parameters
points· Dict[str, Vector3] · requiredminimum_bend· float · default 0.0inside_query· Optional['MeshInteriorQuery'] · default Noneframe· Optional[PlacementFrame] · default None
Related functions
enforce_studio_center_face_local_zeroes
api.dcc.maya.enforce_studio_center_face_local_zeroes(...)- Signature
enforce_studio_center_face_local_zeroes(- Target
maya_tools.Rigging.joint_placer.enforce_studio_center_face_local_zeroes- Source
maya_tools/Rigging/joint_placer.py:10106- Name status
- Friendly call available
Enforce studio nose local-channel zeroes without moving child branches.
Parameters
namespace· str · default ''preserve_nose_root_depth· bool · default False
Related functions
enforce_studio_elbow_z_hinges
api.dcc.maya.enforce_studio_elbow_z_hinges(...)- Signature
enforce_studio_elbow_z_hinges(- Target
maya_tools.Rigging.joint_placer.enforce_studio_elbow_z_hinges- Source
maya_tools/Rigging/joint_placer.py:11700- Name status
- Friendly call available
Preserve the authored arm frame and identify its local bend axis. Arm roll is already transferred from approved production rigs by :func:`orient_studio_arm_chains`. Do not rebuild that frame from the shoulder/elbow/wrist triangle here: on relaxed arms the triangle can be nearly degenerate and its normal can rotate local Y/Z by 90 degrees, separating the shoulder and elbow frames from the project standard. Preserve the transferred frame and record the dominant local hinge axis.
Parameters
namespace· str · default ''
Related functions
enforce_studio_finger_planarity
api.dcc.maya.enforce_studio_finger_planarity(...)- Signature
enforce_studio_finger_planarity(- Target
maya_tools.Rigging.joint_placer.enforce_studio_finger_planarity- Source
maya_tools/Rigging/joint_placer.py:5462- Name status
- Friendly call available
Make joints 02 through the terminal of each digit one bend plane. Joint 01 is the metacarpal fan/root and may approach joint 02 from outside that plane. The articulated finger starts at 02; projecting only that subchain preserves the approved palm spread while guaranteeing that joints 03-05 can use one local curl axis.
Parameters
root· str · requirednamespace· str · default ''mesh· str · default ''
Related functions
enforce_studio_joint_dof_policy
api.dcc.maya.enforce_studio_joint_dof_policy(...)- Signature
enforce_studio_joint_dof_policy(- Target
maya_tools.Rigging.joint_placer.enforce_studio_joint_dof_policy- Source
maya_tools/Rigging/joint_placer.py:9369- Name status
- Friendly call available
Set animator-facing hinge axes without locking transform channels.
Parameters
namespace· str · default ''
Related functions
enforce_studio_knee_y_hinges
api.dcc.maya.enforce_studio_knee_y_hinges(...)- Signature
enforce_studio_knee_y_hinges(- Target
maya_tools.Rigging.joint_placer.enforce_studio_knee_y_hinges- Source
maya_tools/Rigging/joint_placer.py:11809- Name status
- Friendly call available
Express each fitted knee pose exclusively on local rotateY. The thigh frame comes from the hip-knee-ankle plane, with local Y normal to that plane. Mesh-relative pivots stay fixed while the knee and every child through toeTip use signed local Translate X only.
Parameters
namespace· str · default ''
Related functions
enforce_studio_neck2_head1_local_x_plane
api.dcc.maya.enforce_studio_neck2_head1_local_x_plane(...)- Signature
enforce_studio_neck2_head1_local_x_plane(- Target
maya_tools.Rigging.joint_placer.enforce_studio_neck2_head1_local_x_plane- Source
maya_tools/Rigging/joint_placer.py:10019- Name status
- Friendly call available
Keep neck2->head1 on the joint's local X axis after final restores. The head pivot remains at its fitted mesh-relative location to within the tiny off-plane correction required to put the segment in a single plane.
Parameters
namespace· str · default ''
Related functions
enforce_studio_neck2_midpoint
api.dcc.maya.enforce_studio_neck2_midpoint(...)- Signature
enforce_studio_neck2_midpoint(- Target
maya_tools.Rigging.joint_placer.enforce_studio_neck2_midpoint- Source
maya_tools/Rigging/joint_placer.py:9996- Name status
- Friendly call available
Keep neck2 exactly halfway between the final neck1 and head1 pivots.
Parameters
namespace· str · default ''
Related functions
enforce_studio_thumb_z_only_rotates
api.dcc.maya.enforce_studio_thumb_z_only_rotates(...)- Signature
enforce_studio_thumb_z_only_rotates(- Target
maya_tools.Rigging.joint_placer.enforce_studio_thumb_z_only_rotates- Source
maya_tools/Rigging/joint_placer.py:9437- Name status
- Friendly call available
Keep thumb 02-terminal animator rotations on the curl channel only. Approved thumb pivots can require a multi-axis rest frame under a lowered, scaled hand. Store that fitted rest frame in jointOrient, leaving rotate channels neutral and local Z available as the sole authored curl channel. Child matrices are detached and restored so the operation cannot move any descendant pivot.
Parameters
namespace· str · default ''
Related functions
enforce_studio_twist_translate_x
api.dcc.maya.enforce_studio_twist_translate_x(...)- Signature
enforce_studio_twist_translate_x(- Target
maya_tools.Rigging.joint_placer.enforce_studio_twist_translate_x- Source
maya_tools/Rigging/joint_placer.py:13057- Name status
- Friendly call available
Put every deformation twist joint solely on its parent's local X axis. Twist pivots are fitted along their parent segment and inherit that segment's basis. Final elbow/leg orientation cleanup can nevertheless leave stale local Y/Z offsets. Zero those offsets while preserving any children in world space so this channel cleanup cannot disturb auxiliary branches below a twist joint.
Parameters
root· str · required
Related functions
ensure_rfl_attrs
api.dcc.maya.ensure_rfl_attrs(...)- Signature
ensure_rfl_attrs(ik_leg_ctrl)- Target
maya_tools.Rigging.create_rig_core.ensure_rfl_attrs- Source
maya_tools/Rigging/create_rig_core.py:1765- Name status
- Friendly call available
Ensures the reverse foot setup attributes exist on the IK leg control. :param ik_leg_ctrl: name of the IK leg control node :return: None
Parameters
ik_leg_ctrl· required
Related functions
ensure_world_aligned_bank_sdk
api.dcc.maya.ensure_world_aligned_bank_sdk(...)- Signature
ensure_world_aligned_bank_sdk(joint)- Target
maya_tools.Rigging.create_rig_core.ensure_world_aligned_bank_sdk- Source
maya_tools/Rigging/create_rig_core.py:1801- Name status
- Friendly call available
Insert a world-aligned rotation group below an RFL bank joint. RFL joints can carry arbitrary joint orientation from skeleton placement. Driving their ordinary control SDK's local Z therefore banks around a diagonal axis. This group parents the downstream RFL control pad, so its clean Z axis moves the constrained foot hierarchy as one rigid branch.
Parameters
joint· required
Related functions
evaluate_mesh_against_baseline
api.dcc.maya.evaluate_mesh_against_baseline(...)- Signature
evaluate_mesh_against_baseline(- Target
maya_tools.Rigging.joint_placement_regression.evaluate_mesh_against_baseline- Source
maya_tools/Rigging/joint_placement_regression.py:438- Name status
- Friendly call available
Parameters
mesh· str · requiredbaseline_path· str · requiredtemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATEbuild_skeleton· bool · default Falseuse_topology_reference· bool · default False
Related functions
evaluate_points
api.dcc.maya.evaluate_points(...)- Signature
evaluate_points(- Target
maya_tools.Rigging.joint_placement_regression.evaluate_points- Source
maya_tools/Rigging/joint_placement_regression.py:308- Name status
- Friendly call available
Compare a placement result with one approved normalized baseline.
Parameters
mesh· str · requiredpoints· Dict[str, Tuple[float, float, float]] · requiredbaseline· Dict[str, object] · requiredpreview· Optional[joint_placer.PlacementPreview] · default Nonetemplate_joint_count· int · default 0reverse_foot_joint_count· int · default 0fitted_points· Optional[Dict[str, Tuple[float, float, float]]] · default None
Related functions
evaluate_selected_mesh
api.dcc.maya.evaluate_selected_mesh(...)- Signature
evaluate_selected_mesh(baseline_path: str, template_path: str = DEFAULT_PLACEMENT_TEMPLATE)- Target
maya_tools.Rigging.joint_placement_regression.evaluate_selected_mesh- Source
maya_tools/Rigging/joint_placement_regression.py:768- Name status
- Friendly call available
Parameters
baseline_path· str · requiredtemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATE
Related functions
evaluate_studio_foot_contract
api.dcc.maya.evaluate_studio_foot_contract(...)- Signature
evaluate_studio_foot_contract(- Target
maya_tools.Rigging.joint_placement_regression.evaluate_studio_foot_contract- Source
maya_tools/Rigging/joint_placement_regression.py:497- Name status
- Friendly call available
Validate the animator-facing foot result on a fitted studio skeleton.
Parameters
namespace· str · default ''mesh· str · default ''require_mirror· bool · default True
Related functions
evaluate_studio_pelvis_contract
api.dcc.maya.evaluate_studio_pelvis_contract(...)- Signature
evaluate_studio_pelvis_contract(- Target
maya_tools.Rigging.joint_placement_regression.evaluate_studio_pelvis_contract- Source
maya_tools/Rigging/joint_placement_regression.py:652- Name status
- Friendly call available
Validate the shared pelvis-ridge lift on a fitted studio skeleton.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
execute
api.dcc.maya.execute(...)- Signature
execute(capability: str, payload: dict[str, Any]) -> dict[str, Any]- Target
maya_tools.Rigging.rigging_host_adapter.execute- Source
maya_tools/Rigging/rigging_host_adapter.py:105- Name status
- Friendly call available
Parameters
capability· str · requiredpayload· dict[str, Any] · required
export_animation
api.dcc.maya.export_animation(...)- Signature
export_animation(maya_file, export_path, namespace, start_frame, end_frame, nodes=None, reference_paths=None, changelist=None)- Target
maya_tools.Animation.anim_export.anim_export.export_animation- Source
maya_tools/Animation/anim_export/anim_export.py:16- Name status
- Friendly call available
Opens Maya file and exports animation to FBX using `mayapy`. :param maya_file: (str): Path to the Maya scene file. :param export_path: (str): Path where the FBX should be saved. :param namespace: (str): Namespace of the skeleton. :param start_frame: (int): Start frame of the animation. :param end_frame: (int): End frame of the animation. :param nodes: (list, optional): Specific nodes to export instead. :param reference_paths: (str, optional): Specific reference path to load :return:
Parameters
maya_file· requiredexport_path· requirednamespace· requiredstart_frame· requiredend_frame· requirednodes· default Nonereference_paths· default Nonechangelist· default None
Related functions
export_animation_async
api.dcc.maya.export_animation_async(...)- Signature
export_animation_async(cmd, maya_env, export_path)- Target
maya_tools.Animation.anim_export.anim_export_command.export_animation_async- Source
maya_tools/Animation/anim_export/anim_export_command.py:93- Name status
- Friendly call available
exports on separate thread so maya session isn't locked up during export :param cmd: subprocess command string for export :param maya_env: maya env settings from os.environ.copy() :param export_path: actual fbx export location :return:
Parameters
cmd· requiredmaya_env· requiredexport_path· required
Related functions
export_animation_to_fbx
api.dcc.maya.export_animation_to_fbx(...)- Signature
export_animation_to_fbx(export_path, namespace, start_frame, end_frame, nodes=None, reference_paths=None, changelist=None)- Target
maya_tools.Animation.anim_export.anim_export_command.export_animation_to_fbx- Source
maya_tools/Animation/anim_export/anim_export_command.py:8- Name status
- Friendly call available
Subprocess command function which calls the actual export function, to make scene state unchanged :param export_path: full path for fbx animation to be exported :param namespace: namespace to be exported in the data :param start_frame: start frame of exported data :param end_frame: end frame of exported data :param nodes: Joints or nodes to be exported :param reference_paths: Paths to import in the maya py instance from reference :param changelist: Optional changelist id for P4 add/edit :return:
Parameters
export_path· requirednamespace· requiredstart_frame· requiredend_frame· requirednodes· default Nonereference_paths· default Nonechangelist· default None
Related functions
export_control_rig_skeleton
api.dcc.maya.export_control_rig_skeleton(...)- Signature
export_control_rig_skeleton(- Target
maya_tools.Animation.anim_export.clean_skeleton_export.export_control_rig_skeleton- Source
maya_tools/Animation/anim_export/clean_skeleton_export.py:47- Name status
- Friendly call available
Open a baked-control scene, export its clean deform skeleton, reopen-audit it. The solved skeleton identifies the intended deform-joint subset, not the motion to export: the referenced control rig is sampled after any edits. Requires mayapy/Maya's Python environment.
Parameters
scene_path· str | Path · requiredoutput_fbx· str | Path · requiredstart_frame· int · requiredend_frame· int · requiredrig_namespace· str · default 'CharacterRig'solved_namespace· str · default 'RetargetSolved'mapping_profile· str | Path | None · default Noneoverwrite· bool · default False
export_fbx
api.dcc.maya.export_fbx(...)- Signature
export_fbx(- Target
maya_tools.Animation.anim_export.bridge_export.export_fbx- Source
maya_tools/Animation/anim_export/bridge_export.py:12- Name status
- Friendly call available
Parameters
export_path· str · requiredstart_frame· int · default 1end_frame· int · default 120selected_only· bool · default Truenodes· Iterable[str] | None · default Nonebake_animation· bool · default Trueuse_animation_range· bool · default False
export_fbx_with_settings
api.dcc.maya.export_fbx_with_settings(...)- Signature
export_fbx_with_settings(- Target
maya_tools.Animation.anim_export.fbx_export_core.export_fbx_with_settings- Source
maya_tools/Animation/anim_export/fbx_export_core.py:9- Name status
- Friendly call available
Parameters
filepath· str | Path · requiredsettings· Iterable[str] · requiredselected_only· bool · default Truecmds_module· default Nonemel_module· default None
export_metahuman_sliders_as_fbx
api.dcc.maya.export_metahuman_sliders_as_fbx(...)- Signature
export_metahuman_sliders_as_fbx(slider_set='FacialControls', fbx_path='', start_frame=None, end_frame=None)- Target
maya_tools.Animation.anim_export.anim_export.export_metahuman_sliders_as_fbx- Source
maya_tools/Animation/anim_export/anim_export.py:171- Name status
- Friendly call available
Bakes facial slider animation and exports it as an FBX. :param slider_set: Name of the set containing facial sliders. :param fbx_path: Full file path for the FBX export. :param start_frame: Start frame of baking range. Defaults to timeline start. :param end_frame: End frame of baking range. Defaults to timeline end.
Parameters
slider_set· default 'FacialControls'fbx_path· default ''start_frame· default Noneend_frame· default None
Related functions
export_node_exists
api.dcc.maya.export_node_exists(...)- Signature
export_node_exists()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.export_node_exists- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:62- Name status
- Friendly call available
Parameters
None documented.
Related functions
export_selected_enum_orders
api.dcc.maya.export_selected_enum_orders(...)- Signature
export_selected_enum_orders(filepath, attr_filter=None)- Target
maya_tools.Rigging.enum_attrs.export_selected_enum_orders- Source
maya_tools/Rigging/enum_attrs.py:427- Name status
- Friendly call available
Export enum label orders from selected nodes to JSON.
Parameters
filepath· requiredattr_filter· default None
Related functions
export_skeletal_fbx
api.dcc.maya.export_skeletal_fbx(...)- Signature
export_skeletal_fbx(- Target
maya_tools.Rigging.unreal_skeletal_export.export_skeletal_fbx- Source
maya_tools/Rigging/unreal_skeletal_export.py:118- Name status
- Friendly call available
Parameters
rig_name· str · requiredoutput_directory· str · requiredmeshes· list[str] | tuple[str, ...] | None · default Noneskeletal_mesh_name· str · default ''
Related functions
export_skin_weights
api.dcc.maya.export_skin_weights(...)- Signature
export_skin_weights(meshes, export_dir="C:/temp/weights")- Target
maya_tools.Rigging.skinning_utils.export_skin_weights- Source
maya_tools/Rigging/skinning_utils.py:1389- Name status
- Friendly call available
Exports skin weights for a list of meshes to XML using deformerWeights. Saves influence order in individual JSON sidecar files. :param meshes: list of mesh names to export :param export_dir: target directory to save all files
Parameters
meshes· requiredexport_dir· default 'C:/temp/weights'
Related functions
extract_studio_template_core_points
api.dcc.maya.extract_studio_template_core_points(...)- Signature
extract_studio_template_core_points(- Target
maya_tools.Rigging.joint_placer.extract_studio_template_core_points- Source
maya_tools/Rigging/joint_placer.py:1449- Name status
- Friendly call available
Read authored bind-pose world positions directly from a Maya ASCII template.
Parameters
template_path· str · default DEFAULT_PLACEMENT_TEMPLATE
Related functions
extract_studio_template_joint_axes
api.dcc.maya.extract_studio_template_joint_axes(...)- Signature
extract_studio_template_joint_axes(- Target
maya_tools.Rigging.joint_placer.extract_studio_template_joint_axes- Source
maya_tools/Rigging/joint_placer.py:1510- Name status
- Friendly call available
Read each joint's authored world-space XYZ basis from its bind matrix.
Parameters
template_path· str · default DEFAULT_PLACEMENT_TEMPLATE
Related functions
finalize_studio_core_positions_from_mesh
api.dcc.maya.finalize_studio_core_positions_from_mesh(...)- Signature
finalize_studio_core_positions_from_mesh(- Target
maya_tools.Rigging.joint_placer.finalize_studio_core_positions_from_mesh- Source
maya_tools/Rigging/joint_placer.py:9675- Name status
- Friendly call available
Re-fit the central spine and leg pivots after orientation restores. Preserve the fitted spine heights from the selected mesh/reference solve, recenter each vertebra in its own torso section, and center each ankle in its own side's mesh section. The knee stays on the hip-to-ankle front-view line, clamped to the knee's mesh section.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
finalize_studio_spine_neck_head
api.dcc.maya.finalize_studio_spine_neck_head(...)- Signature
finalize_studio_spine_neck_head(- Target
maya_tools.Rigging.joint_placer.finalize_studio_spine_neck_head- Source
maya_tools/Rigging/joint_placer.py:9956- Name status
- Friendly call available
Reassert the central torso/head line after all detail volume fitting.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
find_face_joints
api.dcc.maya.find_face_joints(...)- Signature
find_face_joints(pattern, face_joints)- Target
maya_tools.Rigging.mocap.setup_hik.find_face_joints- Source
maya_tools/Rigging/mocap/setup_hik.py:205- Name status
- Friendly call available
Return joints in the scene matching the pattern that are descendants of the face root.
Parameters
pattern· requiredface_joints· required
Related functions
find_ik_handle_constrained_by_ctrl
api.dcc.maya.find_ik_handle_constrained_by_ctrl(...)- Signature
find_ik_handle_constrained_by_ctrl(ctrl)- Target
maya_tools.Rigging.create_rig_core.find_ik_handle_constrained_by_ctrl- Source
maya_tools/Rigging/create_rig_core.py:2099- Name status
- Friendly call available
Finds the IK handle currently constrained by the given control. :param ctrl: actual ik ctrl :return: Returns the ikHandle or None.
Parameters
ctrl· required
Related functions
find_or_create_user_setup
api.dcc.maya.find_or_create_user_setup(...)- Signature
find_or_create_user_setup()- Target
maya_tools.maya_setup.find_or_create_user_setup- Source
maya_tools/maya_setup.py:32- Name status
- Friendly call available
Create or refresh the current profile's authenticated Maya startup.
Parameters
None documented.
Related functions
find_references_from_namespace
api.dcc.maya.find_references_from_namespace(...)- Signature
find_references_from_namespace(namespace)- Target
maya_tools.Animation.anim_export.anim_export_utils.find_references_from_namespace- Source
maya_tools/Animation/anim_export/anim_export_utils.py:81- Name status
- Friendly call available
Find all reference nodes (including sub-references and constraint dependencies) associated with a given namespace. :param namespace: The namespace you want to check, e.g., 'Test:sub_rig'. :return: List of [ref_path, ref_node] pairs.
Parameters
namespace· required
Related functions
find_rig_roots
api.dcc.maya.find_rig_roots(...)- Signature
find_rig_roots() -> list[str]- Target
maya_tools.Rigging.vehicle_rig.find_rig_roots- Source
maya_tools/Rigging/vehicle_rig.py:60- Name status
- Friendly call available
Parameters
None documented.
Related functions
find_skin_cluster
api.dcc.maya.find_skin_cluster(...)- Signature
find_skin_cluster(mesh: str) -> Optional[str]- Target
maya_tools.Rigging.auto_skinner.find_skin_cluster- Source
maya_tools/Rigging/auto_skinner.py:62- Name status
- Friendly call available
Parameters
mesh· str · required
Related functions
find_skinned_or_top_joints
api.dcc.maya.find_skinned_or_top_joints(...)- Signature
find_skinned_or_top_joints(namespace='')- Target
maya_tools.Utilities.joints.find_skinned_or_top_joints- Source
maya_tools/Utilities/joints.py:4- Name status
- Friendly call available
Finds the topmost joint in the skinned joint hierarchy. If no skinClusters exist, walks up from any joint in the namespace and returns the highest ancestor. :param namespace: Namespace string with colon suffix (e.g., 'MyChar:') :return: Name of the topmost joint (str)
Parameters
namespace· default ''
find_template_roots
api.dcc.maya.find_template_roots(...)- Signature
find_template_roots() -> list[str]- Target
maya_tools.Rigging.vehicle_rig.find_template_roots- Source
maya_tools/Rigging/vehicle_rig.py:56- Name status
- Friendly call available
Parameters
None documented.
Related functions
fit_mapped_skeleton
api.dcc.maya.fit_mapped_skeleton(...)- Signature
fit_mapped_skeleton(- Target
maya_tools.Rigging.joint_placer.fit_mapped_skeleton- Source
maya_tools/Rigging/joint_placer.py:13512- Name status
- Friendly call available
Fit solved anatomical roles onto an existing user-defined hierarchy.
Parameters
mesh· str · requiredpoints· Dict[str, Vector3] · requiredjoint_map· dict · required
Related functions
fit_studio_arm_hand_from_reference
api.dcc.maya.fit_studio_arm_hand_from_reference(...)- Signature
fit_studio_arm_hand_from_reference(- Target
maya_tools.Rigging.joint_placer.fit_studio_arm_hand_from_reference- Source
maya_tools/Rigging/joint_placer.py:6533- Name status
- Friendly call available
Restore approved mesh-relative arm and hand landmarks exactly. Topology transfer from the approved rig corpus owns elbow, wrist, and digit anatomy. No independent per-joint section-centering is allowed here: that post-process bent otherwise correct arms and pushed fingertips onto a shell edge. A later hand-volume pass may adjust only the through-volume coordinate before digit planarity and orientation are finalized.
Parameters
mesh· str · requirednamespace· str · default ''reference_targets· Optional[Dict[str, Vector3]] · default None
Related functions
fit_studio_arm_hinge_plane_to_mesh
api.dcc.maya.fit_studio_arm_hinge_plane_to_mesh(...)- Signature
fit_studio_arm_hinge_plane_to_mesh(- Target
maya_tools.Rigging.joint_placer.fit_studio_arm_hinge_plane_to_mesh- Source
maya_tools/Rigging/joint_placer.py:6690- Name status
- Friendly call available
Conform arm pivots without flattening an authored A-pose into a T-pose. Atlas transfer supplies stable longitudinal landmarks, while the target mesh owns each pivot's through-volume depth. Shoulder, elbow, and wrist must *not* share one world-Y value: doing that drags an A-pose shoulder down into the armpit. Preserve the fitted shoulder and the atlas elbow height, center their depth independently, and apply the 60-percent dorsal rule only inside the wrist's own section. The later hinge-orientation pass derives local Z from this final shoulder/elbow/wrist triangle.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_arm_red_dot_refinement
api.dcc.maya.fit_studio_arm_red_dot_refinement(...)- Signature
fit_studio_arm_red_dot_refinement(- Target
maya_tools.Rigging.joint_placer.fit_studio_arm_red_dot_refinement- Source
maya_tools/Rigging/joint_placer.py:6496- Name status
- Friendly call available
Audit the topology-fitted shoulder, elbow, and wrist landmarks. The approved topology transfer already places these pivots from the source rigs. A former post-pass recentered the chain independently and then projected the wrist onto a synthetic plane. That destroyed the fitted shoulder/wrist landmarks and translated the complete finger hierarchy. Arm orientation is now solved from this immutable triangle instead.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_brow_arcs_to_surface
api.dcc.maya.fit_studio_brow_arcs_to_surface(...)- Signature
fit_studio_brow_arcs_to_surface(- Target
maya_tools.Rigging.joint_placer.fit_studio_brow_arcs_to_surface- Source
maya_tools/Rigging/joint_placer.py:7929- Name status
- Friendly call available
Fair each complete brow row into one smooth surface-following arc.
Parameters
mesh· str · requiredroot· str · requirednamespace· str · default ''iterations· int · default 4strength· float · default 0.35
Related functions
fit_studio_brow_end_joints_to_surface
api.dcc.maya.fit_studio_brow_end_joints_to_surface(...)- Signature
fit_studio_brow_end_joints_to_surface(- Target
maya_tools.Rigging.joint_placer.fit_studio_brow_end_joints_to_surface- Source
maya_tools/Rigging/joint_placer.py:7768- Name status
- Friendly call available
Continue each outer brow arc using the approved rig proportions. Brow landmarks are independent children of the head, so a generic local surface transfer can accidentally fold ``brow_end`` back toward the eye. Approved rigs consistently continue outward from brow4 through brow5. Preserve that component-wise continuation, then solve only its depth from the target face surface.
Parameters
mesh· str · requiredroot· str · requirednamespace· str · default ''
Related functions
fit_studio_brows_from_left_profile
api.dcc.maya.fit_studio_brows_from_left_profile(...)- Signature
fit_studio_brows_from_left_profile(- Target
maya_tools.Rigging.joint_placer.fit_studio_brows_from_left_profile- Source
maya_tools/Rigging/joint_placer.py:7876- Name status
- Friendly call available
Transfer the approved left-brow spacing and surface proximity.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_detail_joints_to_volume
api.dcc.maya.fit_studio_detail_joints_to_volume(...)- Signature
fit_studio_detail_joints_to_volume(- Target
maya_tools.Rigging.joint_placer.fit_studio_detail_joints_to_volume- Source
maya_tools/Rigging/joint_placer.py:7684- Name status
- Friendly call available
Conform every non-root studio joint to the character volume.
Parameters
mesh· str · requiredroot· str · requirednamespace· str · default ''preserve_reference_layout· bool · default False
Related functions
fit_studio_distal_thumb_joints
api.dcc.maya.fit_studio_distal_thumb_joints(...)- Signature
fit_studio_distal_thumb_joints(- Target
maya_tools.Rigging.joint_placer.fit_studio_distal_thumb_joints- Source
maya_tools/Rigging/joint_placer.py:6232- Name status
- Friendly call available
Restore the topology-authored distal thumb pivots and rest bend. The topology/reference solve already owns the longitudinal knuckle and fingertip locations. ``smoothing`` is retained as an explicit opt-in for legacy data, but defaults to zero so a generic chord fraction cannot replace those anatomical landmarks.
Parameters
mesh· str · requirednamespace· str · default ''smoothing· float · default 0.0minimum_bend_degrees· float · default 4.0
Related functions
fit_studio_elbow_pivots_to_mesh
api.dcc.maya.fit_studio_elbow_pivots_to_mesh(...)- Signature
fit_studio_elbow_pivots_to_mesh(- Target
maya_tools.Rigging.joint_placer.fit_studio_elbow_pivots_to_mesh- Source
maya_tools/Rigging/joint_placer.py:6647- Name status
- Friendly call available
Fit both elbow pivots consistently at the approved arm-chain fraction.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_eyelid_joints_to_surface
api.dcc.maya.fit_studio_eyelid_joints_to_surface(...)- Signature
fit_studio_eyelid_joints_to_surface(- Target
maya_tools.Rigging.joint_placer.fit_studio_eyelid_joints_to_surface- Source
maya_tools/Rigging/joint_placer.py:8465- Name status
- Friendly call available
Collapse eyelid roots to each eye and ray their tips onto the lid skin.
Parameters
mesh· str · requiredroot· str · requirednamespace· str · default ''
Related functions
fit_studio_face_pivots_to_mesh
api.dcc.maya.fit_studio_face_pivots_to_mesh(...)- Signature
fit_studio_face_pivots_to_mesh(- Target
maya_tools.Rigging.joint_placer.fit_studio_face_pivots_to_mesh- Source
maya_tools/Rigging/joint_placer.py:2541- Name status
- Friendly call available
Finish internal face pivots from this character's face and throat mesh. These anchors are especially vulnerable to atlas transfer: a nose root can collapse onto the head pivot, a tongue can drift away from its separate tongue surface, and an Adam's apple can land at the neck base. Use local face landmarks and sagittal mesh sections so the rules scale with each character rather than relying on scene-space offsets.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_finger_knuckle_height
api.dcc.maya.fit_studio_finger_knuckle_height(...)- Signature
fit_studio_finger_knuckle_height(- Target
maya_tools.Rigging.joint_placer.fit_studio_finger_knuckle_height- Source
maya_tools/Rigging/joint_placer.py:6445- Name status
- Friendly call available
Seat each finger joint 02 two thirds toward the dorsal surface. Joints 03-04 retain their mesh-derived pose and joint 05 remains centered in the fingertip. The later planar pass makes that 02-05 chain a stable single-axis curl plane without flattening every pivot to one shell height.
Parameters
mesh· str · requirednamespace· str · default ''upper_fraction· float · default 2.0 / 3.0
Related functions
fit_studio_foot_front_flare
api.dcc.maya.fit_studio_foot_front_flare(...)- Signature
fit_studio_foot_front_flare(- Target
maya_tools.Rigging.joint_placer.fit_studio_foot_front_flare- Source
maya_tools/Rigging/joint_placer.py:7287- Name status
- Friendly call available
Recenter each foot joint in its own same-side mesh section. Reference toe tips can initially sit beyond the mesh end. Applying this correction after containment lets the final foot use the actual local footprint instead of a fixed character-height flare.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_hand_joints
api.dcc.maya.fit_studio_hand_joints(...)- Signature
fit_studio_hand_joints(- Target
maya_tools.Rigging.joint_placer.fit_studio_hand_joints- Source
maya_tools/Rigging/joint_placer.py:5957- Name status
- Friendly call available
Fit detailed studio fingers to the actual hand volume. The template supplies digit spread, proportions, and bend planes. Each chain is kept as long as the mesh allows and is centered through the local mesh thickness, so placement is not merely a front-view projection.
Parameters
mesh· str · requiredroot· str · requirednamespace· str · default ''preserve_reference_layout· bool · default False
Related functions
fit_studio_lip_joints_to_surface
api.dcc.maya.fit_studio_lip_joints_to_surface(...)- Signature
fit_studio_lip_joints_to_surface(- Target
maya_tools.Rigging.joint_placer.fit_studio_lip_joints_to_surface- Source
maya_tools/Rigging/joint_placer.py:8260- Name status
- Friendly call available
Author two clean, symmetric lip arcs from mesh-fitted face anchors. The approved center and commissure pivots are anchors. Only the four intermediate pivots on each half are faired; this prevents the upper and lower passes from fighting over their shared corners. The front-view curve is an elliptical half-arc. Depth comes from the frontmost facial-shell intersection at each clean X/Y sample, rather than a nearest hit that can jump to the oral cavity. This keeps the arc smooth in front view and registered to the actual lip surface in profile.
Parameters
mesh· str · requirednamespace· str · default ''iterations· int · default 8strength· float · default 1.0
Related functions
fit_studio_neck_head_jaw_relative
api.dcc.maya.fit_studio_neck_head_jaw_relative(...)- Signature
fit_studio_neck_head_jaw_relative(- Target
maya_tools.Rigging.joint_placer.fit_studio_neck_head_jaw_relative- Source
maya_tools/Rigging/joint_placer.py:12182- Name status
- Friendly call available
Transfer approved neck/head/jaw pivots by mesh-relative proportions.
Parameters
mesh· str · requirednamespace· str · default ''placement_names· Optional[Iterable[str]] · default None
Related functions
fit_studio_pelvis_ridge
api.dcc.maya.fit_studio_pelvis_ridge(...)- Signature
fit_studio_pelvis_ridge(- Target
maya_tools.Rigging.joint_placer.fit_studio_pelvis_ridge- Source
maya_tools/Rigging/joint_placer.py:7586- Name status
- Friendly call available
Raise the pelvis branch toward the visible pelvic ridge. Pelvis, hipswing, and both femoral roots move by one shared scale-relative amount. Every other joint is restored to its original world position so the correction does not translate the spine, knees, or detailed branches.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_scene_feature_joints
api.dcc.maya.fit_studio_scene_feature_joints(...)- Signature
fit_studio_scene_feature_joints(- Target
maya_tools.Rigging.joint_placer.fit_studio_scene_feature_joints- Source
maya_tools/Rigging/joint_placer.py:2524- Name status
- Friendly call available
Reapply authoritative eye, teeth, and tongue mesh centers after volume fitting.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_template_skeleton
api.dcc.maya.fit_studio_template_skeleton(...)- Signature
fit_studio_template_skeleton(- Target
maya_tools.Rigging.joint_placer.fit_studio_template_skeleton- Source
maya_tools/Rigging/joint_placer.py:13733- Name status
- Friendly call available
Load or reuse the complete studio skeleton and fit it to solved anchors.
Parameters
points· Dict[str, Vector3] · requiredmesh· str · default ''template_path· str · default DEFAULT_PLACEMENT_TEMPLATEnamespace· str · default ''replace_existing· bool · default Trueapproved_world_matrices· Optional[Dict[str, Sequence[float]]] · default None
Related functions
fit_studio_thumb_root_depth
api.dcc.maya.fit_studio_thumb_root_depth(...)- Signature
fit_studio_thumb_root_depth(- Target
maya_tools.Rigging.joint_placer.fit_studio_thumb_root_depth- Source
maya_tools/Rigging/joint_placer.py:6393- Name status
- Friendly call available
Seat thumb_01 slightly palmar of center without moving its children. A world-axis hand-depth solve is unreliable where the thumb mound turns away from the palm. Use the topology-transferred thumb dorsal vector (or the joint's local Y fallback), then place the CMC pivot at a modest 45% through that local section. The distal knuckle chain stays fixed in world space while only thumb_01 moves inward from the dorsal shell.
Parameters
mesh· str · requirednamespace· str · default ''dorsal_fraction· float · default 0.45
Related functions
fit_studio_toe_pivots_to_volume
api.dcc.maya.fit_studio_toe_pivots_to_volume(...)- Signature
fit_studio_toe_pivots_to_volume(- Target
maya_tools.Rigging.joint_placer.fit_studio_toe_pivots_to_volume- Source
maya_tools/Rigging/joint_placer.py:7334- Name status
- Friendly call available
Center toe pivots on the full forefoot and toe-end centerline. The toe base uses the center of the complete same-side forefoot width, not one digit's interval. The terminal helper sits at the center of the toe-end line, just inside the longest toe, and barely above the sole contact surface.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
fit_studio_toe_tips_to_ground
api.dcc.maya.fit_studio_toe_tips_to_ground(...)- Signature
fit_studio_toe_tips_to_ground(- Target
maya_tools.Rigging.joint_placer.fit_studio_toe_tips_to_ground- Source
maya_tools/Rigging/joint_placer.py:7547- Name status
- Friendly call available
Put terminal toe pivots on the supplied mesh ground without lateral drift. The old extrapolation * (toe_depth / foot_depth) amplified any ankle to toe X mismatch and pulled tips across the character centerline. The local foot section pass now owns X/Z; this pass changes Y only.
Parameters
namespace· str · default ''ground_y· float · default 0.0
Related functions
fit_studio_wrist_pivots_to_mesh
api.dcc.maya.fit_studio_wrist_pivots_to_mesh(...)- Signature
fit_studio_wrist_pivots_to_mesh(- Target
maya_tools.Rigging.joint_placer.fit_studio_wrist_pivots_to_mesh- Source
maya_tools/Rigging/joint_placer.py:9877- Name status
- Friendly call available
Re-seat wrist pivots in the hand volume after all reference restores. Later approved-frame restores can put the wrist back on the dorsal edge after the earlier arm fit. Reapply the established 60-percent section placement as the last positional pass, preserving every child in world space so the finger roots/tips do not move with the wrist correction.
Parameters
mesh· str · requirednamespace· str · default ''
Related functions
from_character_definition
api.dcc.maya.from_character_definition(...)- Signature
from_character_definition(character, base_joint_map=None)- Target
maya_tools.Rigging.mocap.hik_mapping.from_character_definition- Source
maya_tools/Rigging/mocap/hik_mapping.py:69- Name status
- Friendly call available
Read slot connections supported by the active Maya HIK node version.
Parameters
character· requiredbase_joint_map· default None
generate_sequence_dict_from_anim_dict
api.dcc.maya.generate_sequence_dict_from_anim_dict(...)- Signature
generate_sequence_dict_from_anim_dict(anim_dict)- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.generate_sequence_dict_from_anim_dict- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:148- Name status
- Friendly call available
Generates a new dictionary with shot_number as the key, and a list of animations as the value. Each animation has export path, skeleton, blueprint (default to None), nodes, start frame, and end frame. :param anim_dict: The original animation dictionary, where the key is the export path and the value contains start frame, end frame, namespace, skeleton, color, and nodes. :return: new dictionary with shot_number as keys.
Parameters
anim_dict· required
Related functions
get_all_joint_children
api.dcc.maya.get_all_joint_children(...)- Signature
get_all_joint_children(root_joint)- Target
maya_tools.Animation.anim_export.anim_export.get_all_joint_children- Source
maya_tools/Animation/anim_export/anim_export.py:141- Name status
- Friendly call available
Returns a list of all child joints (recursively) under the given root joint.
Parameters
root_joint· required
Related functions
get_all_module_metadata
api.dcc.maya.get_all_module_metadata(...)- Signature
get_all_module_metadata()- Target
maya_tools.Rigging.create_rig.get_all_module_metadata- Source
maya_tools/Rigging/create_rig.py:5568- Name status
- Friendly call available
Return {module_id: data_dict} for every stored module. :return: dict
Parameters
None documented.
Related functions
get_attr_connections
api.dcc.maya.get_attr_connections(...)- Signature
get_attr_connections(plug)- Target
maya_tools.Rigging.enum_attrs.get_attr_connections- Source
maya_tools/Rigging/enum_attrs.py:176- Name status
- Friendly call available
Returns incoming and outgoing connections for an attribute plug.
Parameters
plug· required
Related functions
get_camera_sequencer_data
api.dcc.maya.get_camera_sequencer_data(...)- Signature
get_camera_sequencer_data()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_camera_sequencer_data- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:45- Name status
- Friendly call available
Retrieves all shots, shot ranges, and corresponding shot cameras from Maya's Camera Sequencer. :return: List of tuples (shot_number, start_frame, end_frame, camera)
Parameters
None documented.
Related functions
get_cameras_from_selection
api.dcc.maya.get_cameras_from_selection(...)- Signature
get_cameras_from_selection()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_cameras_from_selection- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:97- Name status
- Friendly call available
Parameters
None documented.
Related functions
get_ctrl_shape_cvs
api.dcc.maya.get_ctrl_shape_cvs(...)- Signature
get_ctrl_shape_cvs(ctrl)- Target
maya_tools.Rigging.create_rig_core.get_ctrl_shape_cvs- Source
maya_tools/Rigging/create_rig_core.py:5202- Name status
- Friendly call available
Gets ctrl shape cvs. :param ctrl: ctrl :return: result
Parameters
ctrl· required
Related functions
get_default_export_path
api.dcc.maya.get_default_export_path(...)- Signature
get_default_export_path()- Target
maya_tools.Rigging.mocap.hik_ui.get_default_export_path- Source
maya_tools/Rigging/mocap/hik_ui.py:148- Name status
- Friendly call available
Parameters
None documented.
Related functions
get_descendant_joints
api.dcc.maya.get_descendant_joints(...)- Signature
get_descendant_joints(root_joint)- Target
maya_tools.Rigging.mocap.setup_hik.get_descendant_joints- Source
maya_tools/Rigging/mocap/setup_hik.py:198- Name status
- Friendly call available
Returns all descendant joints of root_joint (including root).
Parameters
root_joint· required
Related functions
get_display_range
api.dcc.maya.get_display_range(...)- Signature
get_display_range()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_display_range- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:66- Name status
- Friendly call available
:return: start and end frames of the time slider
Parameters
None documented.
Related functions
get_dynamic_rig_modules
api.dcc.maya.get_dynamic_rig_modules(...)- Signature
get_dynamic_rig_modules()- Target
maya_tools.Rigging.create_rig.get_dynamic_rig_modules- Source
maya_tools/Rigging/create_rig.py:1053- Name status
- Friendly call available
Return ordered tool-authored module build records stored in the scene.
Parameters
None documented.
Related functions
get_embedded_secondary_arm_systems
api.dcc.maya.get_embedded_secondary_arm_systems(...)- Signature
get_embedded_secondary_arm_systems()- Target
maya_tools.Rigging.create_rig.get_embedded_secondary_arm_systems- Source
maya_tools/Rigging/create_rig.py:1832- Name status
- Friendly call available
Discover complete secondary arm modules embedded in the core rig. Divine Being's extra arms are authored beneath the main control hierarchy, so the general external-extension scanner correctly treats them as owned core nodes. Expose their complete low-arm chains as inventory-only entries in the HIK UI without detaching or reparenting parts of the core rig.
Parameters
None documented.
Related functions
get_enum_attrs
api.dcc.maya.get_enum_attrs(...)- Signature
get_enum_attrs(node)- Target
maya_tools.Rigging.enum_attrs.get_enum_attrs- Source
maya_tools/Rigging/enum_attrs.py:73- Name status
- Friendly call available
Parameters
node· required
Related functions
get_enum_labels
api.dcc.maya.get_enum_labels(...)- Signature
get_enum_labels(node, attr)- Target
maya_tools.Rigging.enum_attrs.get_enum_labels- Source
maya_tools/Rigging/enum_attrs.py:66- Name status
- Friendly call available
Parameters
node· requiredattr· required
Related functions
get_export_node_data
api.dcc.maya.get_export_node_data(...)- Signature
get_export_node_data()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_export_node_data- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:254- Name status
- Friendly call available
Parameters
None documented.
Related functions
get_external_rig_systems
api.dcc.maya.get_external_rig_systems(...)- Signature
get_external_rig_systems(discover_live=True)- Target
maya_tools.Rigging.create_rig.get_external_rig_systems- Source
maya_tools/Rigging/create_rig.py:1765- Name status
- Friendly call available
Return user-authored control systems attached around the generated rig. Saved manifest roots remain an inventory after restoration. A live scan also exposes newly-authored systems before the first Remove/Rebuild cycle. Builder-owned systems (including the nose rig) and registered dynamic modules are excluded by the ownership boundary calculation.
Parameters
discover_live· default True
Related functions
get_facial_joints
api.dcc.maya.get_facial_joints(...)- Signature
get_facial_joints(namespace)- Target
maya_tools.Animation.anim_export.anim_export_utils.get_facial_joints- Source
maya_tools/Animation/anim_export/anim_export_utils.py:28- Name status
- Friendly call available
Detects joints with 'FACIAL_' in their name within the given namespace (including nested ones). Returns the list of joints and the actual namespace. :param namespace: Base namespace to filter by (e.g., 'MyChar') :return: Tuple (facial_joints, actual_namespace) or (None, None) if not found.
Parameters
namespace· required
Related functions
get_facial_sliders
api.dcc.maya.get_facial_sliders(...)- Signature
get_facial_sliders(namespace=None)- Target
maya_tools.Animation.anim_export.anim_export_utils.get_facial_sliders- Source
maya_tools/Animation/anim_export/anim_export_utils.py:4- Name status
- Friendly call available
Detects the 'FacialControls' set under any namespace (including nested ones) and returns the slider nodes and the actual namespace they belong to. :param namespace: (optional) A base namespace to filter by. :return: Tuple (slider_nodes, actual_namespace) or None if not found.
Parameters
namespace· default None
Related functions
get_joint_position
api.dcc.maya.get_joint_position(...)- Signature
get_joint_position(joint: str) -> om.MVector- Target
maya_tools.Rigging.auto_skinner.get_joint_position- Source
maya_tools/Rigging/auto_skinner.py:69- Name status
- Friendly call available
Parameters
joint· str · required
Related functions
get_maya_fps
api.dcc.maya.get_maya_fps(...)- Signature
get_maya_fps()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_maya_fps- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:185- Name status
- Friendly call available
Parameters
None documented.
Related functions
get_mesh_bounds
api.dcc.maya.get_mesh_bounds(...)- Signature
get_mesh_bounds(mesh: str) -> Dict[str, object]- Target
maya_tools.Rigging.joint_placer.get_mesh_bounds- Source
maya_tools/Rigging/joint_placer.py:1112- Name status
- Friendly call available
Parameters
mesh· str · required
Related functions
get_mesh_vertices
api.dcc.maya.get_mesh_vertices(...)- Signature
get_mesh_vertices(mesh: str) -> List[str]- Target
maya_tools.Rigging.auto_skinner.get_mesh_vertices- Source
maya_tools/Rigging/auto_skinner.py:147- Name status
- Friendly call available
Parameters
mesh· str · required
Related functions
get_module_controls
api.dcc.maya.get_module_controls(...)- Signature
get_module_controls(module_id, existing_only=True)- Target
maya_tools.Rigging.create_rig.get_module_controls- Source
maya_tools/Rigging/create_rig.py:4226- Name status
- Friendly call available
Return controls recorded/discovered for a stored rig module. :param module_id: unique module identifier :param existing_only: only return controls that exist in the current scene :return: list[str]
Parameters
module_id· requiredexisting_only· default True
Related functions
get_nose_joints
api.dcc.maya.get_nose_joints(...)- Signature
get_nose_joints(face_joint_map=None)- Target
maya_tools.Rigging.create_rig_core.get_nose_joints- Source
maya_tools/Rigging/create_rig_core.py:1676- Name status
- Friendly call available
Gets nose joints. :param face_joint_map: mapping for face joint map :return: result
Parameters
face_joint_map· default None
Related functions
get_ordered_hierarchy
api.dcc.maya.get_ordered_hierarchy(...)- Signature
get_ordered_hierarchy(root)- Target
maya_tools.Rigging.create_rig.get_ordered_hierarchy- Source
maya_tools/Rigging/create_rig.py:2739- Name status
- Friendly call available
Gets ordered hierarchy. :param root: root :return: result
Parameters
root· required
Related functions
get_region_size_from_joints
api.dcc.maya.get_region_size_from_joints(...)- Signature
get_region_size_from_joints(joints)- Target
maya_tools.Rigging.create_rig_core.get_region_size_from_joints- Source
maya_tools/Rigging/create_rig_core.py:2571- Name status
- Friendly call available
Returns average spatial size of a joint region. Useful for auto-scaling controls (mouth, eyelids, brows). :param joints: list of joints :return: Average of results
Parameters
joints· required
Related functions
get_rig_namespaces
api.dcc.maya.get_rig_namespaces(...)- Signature
get_rig_namespaces(selection = True)- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_rig_namespaces- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:114- Name status
- Friendly call available
Detects namespaces of selected rigs that contain joints with 'origin' as the top joint. :return: Set of valid namespaces
Parameters
selection· default True
Related functions
get_scene_path
api.dcc.maya.get_scene_path(...)- Signature
get_scene_path()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_scene_path- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:108- Name status
- Friendly call available
Parameters
None documented.
Related functions
get_side_from_node
api.dcc.maya.get_side_from_node(...)- Signature
get_side_from_node(node)- Target
maya_tools.Rigging.enum_attrs.get_side_from_node- Source
maya_tools/Rigging/enum_attrs.py:23- Name status
- Friendly call available
Parameters
node· required
Related functions
get_side_prefix
api.dcc.maya.get_side_prefix(...)- Signature
get_side_prefix(name)- Target
maya_tools.Rigging.create_rig_core.get_side_prefix- Source
maya_tools/Rigging/create_rig_core.py:2381- Name status
- Friendly call available
gets side if it exists for node :param name: node to check :return: Returns 'l', 'r', or None based on joint naming.
Parameters
name· required
Related functions
get_skin_joints
api.dcc.maya.get_skin_joints(...)- Signature
get_skin_joints(root_joint: str, include_ignored: bool = False) -> List[str]- Target
maya_tools.Rigging.auto_skinner.get_skin_joints- Source
maya_tools/Rigging/auto_skinner.py:93- Name status
- Friendly call available
Parameters
root_joint· str · requiredinclude_ignored· bool · default False
Related functions
get_world_position
api.dcc.maya.get_world_position(...)- Signature
get_world_position(obj)- Target
maya_tools.Rigging.mocap.setup_hik.get_world_position- Source
maya_tools/Rigging/mocap/setup_hik.py:215- Name status
- Friendly call available
Gets the world position :param obj: name of object :return:
Parameters
obj· required
Related functions
guess_joint_map_from_root
api.dcc.maya.guess_joint_map_from_root(...)- Signature
guess_joint_map_from_root(root_joint, base_joint_map=None)- Target
maya_tools.Rigging.mocap.setup_hik.guess_joint_map_from_root- Source
maya_tools/Rigging/mocap/setup_hik.py:2105- Name status
- Friendly call available
Guesses HIK joint slots from a root joint based on name matching. :param root_joint: The root joint of the skeleton. :param base_joint_map: Optional dict to write results into (e.g. self.default_map). If None, a deep copy of setup_hik.DEFAULT_JOINT_MAP is used. :return: A dict with HIK slots and their mapped joint names.
Parameters
root_joint· requiredbase_joint_map· default None
Related functions
hide_post_build_face_nodes
api.dcc.maya.hide_post_build_face_nodes(...)- Signature
hide_post_build_face_nodes(node_names=POST_BUILD_HIDDEN_FACE_NODES)- Target
maya_tools.Rigging.create_rig.hide_post_build_face_nodes- Source
maya_tools/Rigging/create_rig.py:634- Name status
- Friendly call available
Hide the internal face joints that should not remain visible to animators.
Parameters
node_names· default POST_BUILD_HIDDEN_FACE_NODES
Related functions
hik_map_to_rig_args
api.dcc.maya.hik_map_to_rig_args(...)- Signature
hik_map_to_rig_args(body_joint_map, face_joint_map)- Target
maya_tools.Rigging.create_rig.hik_map_to_rig_args- Source
maya_tools/Rigging/create_rig.py:188- Name status
- Friendly call available
Translate body and face mappings into rig arguments. Only joints that exist in the scene are included. Face slots are read from face_joint_map rather than body_joint_map. :param body_joint_map: mapping for body joint map :param face_joint_map: mapping for face joint map :return: result
Parameters
body_joint_map· requiredface_joint_map· required
Related functions
import_enum_orders
api.dcc.maya.import_enum_orders(...)- Signature
import_enum_orders(filepath)- Target
maya_tools.Rigging.enum_attrs.import_enum_orders- Source
maya_tools/Rigging/enum_attrs.py:439- Name status
- Friendly call available
Import enum label orders from JSON and apply them to matching nodes in the currently opened scene.
Parameters
filepath· required
Related functions
import_fbx
api.dcc.maya.import_fbx(...)- Signature
import_fbx(filepath: str, namespace: str = "") -> dict[str, Any]- Target
maya_tools.Animation.bridge_import.import_fbx- Source
maya_tools/Animation/bridge_import.py:9- Name status
- Friendly call available
Parameters
filepath· str · requirednamespace· str · default ''
import_matching_skin_weights
api.dcc.maya.import_matching_skin_weights(...)- Signature
import_matching_skin_weights(- Target
maya_tools.Rigging.joint_placer.import_matching_skin_weights- Source
maya_tools/Rigging/joint_placer.py:5105- Name status
- Friendly call available
Import exported weights when both files exactly match the mesh name.
Parameters
mesh· str · requiredexport_dir· str · default DEFAULT_SKIN_WEIGHT_DIR
import_reference_and_strip_namespace_test
api.dcc.maya.import_reference_and_strip_namespace_test(...)- Signature
import_reference_and_strip_namespace_test(namespace, root)- Target
maya_tools.Animation.anim_export.anim_export.import_reference_and_strip_namespace_test- Source
maya_tools/Animation/anim_export/anim_export.py:256- Name status
- Friendly call available
Imports objects from a reference associated with the given namespace, imports any nested references, strips all namespaces, renames duplicates, and returns a list of renamed transform nodes. :param namespace: The namespace of the reference. :param root: Root transform node to collect hierarchy from. :return: List of renamed transform nodes.
Parameters
namespace· requiredroot· required
Related functions
import_skin_weights
api.dcc.maya.import_skin_weights(...)- Signature
import_skin_weights(meshes, export_dir="C:/temp/weights",- Target
maya_tools.Rigging.skinning_utils.import_skin_weights- Source
maya_tools/Rigging/skinning_utils.py:1756- Name status
- Friendly call available
Import skin weights without rebuilding an existing skinCluster. Existing influences and dagPose membership are preserved. Influences present in the saved data but missing from the cluster are added at zero weight before the weights are loaded. :param meshes: list of mesh names to import to :param export_dir: directory where XML and JSON files are stored :param missing_influence_resolver: optional confirmation callback. It receives ``mesh, proposals, unresolved, ambiguous`` and returns truthy to rename the proposed scene joints before retrying influence matching.
Parameters
meshes· requiredexport_dir· default 'C:/temp/weights'missing_influence_resolver· default None
Related functions
inspect_animation_range
api.dcc.maya.inspect_animation_range(...)- Signature
inspect_animation_range(objects: Iterable[str] | None = None) -> dict[str, Any]- Target
maya_tools.Animation.bridge_timeline.inspect_animation_range- Source
maya_tools/Animation/bridge_timeline.py:7- Name status
- Friendly call available
Parameters
objects· Iterable[str] | None · default None
inspect_dynamic_rig_module
api.dcc.maya.inspect_dynamic_rig_module(...)- Signature
inspect_dynamic_rig_module(record)- Target
maya_tools.Rigging.create_rig.inspect_dynamic_rig_module- Source
maya_tools/Rigging/create_rig.py:2039- Name status
- Friendly call available
Return live boundary details for one recipe-backed added module.
Parameters
record· required
Related functions
inspect_external_rig_system
api.dcc.maya.inspect_external_rig_system(...)- Signature
inspect_external_rig_system(root, manifest=None)- Target
maya_tools.Rigging.create_rig.inspect_external_rig_system- Source
maya_tools/Rigging/create_rig.py:1998- Name status
- Friendly call available
Return every saved/live connection that crosses one system boundary.
Parameters
root· requiredmanifest· default None
Related functions
inspect_rigged_proxy
api.dcc.maya.inspect_rigged_proxy(...)- Signature
inspect_rigged_proxy(- Target
maya_tools.Rigging.validation_proxy.inspect_rigged_proxy- Source
maya_tools/Rigging/validation_proxy.py:78- Name status
- Friendly call available
Parameters
name_prefix· str · default 'AIStudio_Proxy'start_frame· int · default 1end_frame· int · default 24
Related functions
install_current_maya_tools
api.dcc.maya.install_current_maya_tools(...)- Signature
install_current_maya_tools()- Target
maya_tools.maya_setup.install_current_maya_tools- Source
maya_tools/maya_setup.py:94- Name status
- Friendly call available
Install the current checkout into Maya; never runs merely on import.
Parameters
None documented.
Related functions
install_ground_callback
api.dcc.maya.install_ground_callback(...)- Signature
install_ground_callback(rig_root: Optional[str] = None) -> list[int]- Target
maya_tools.Rigging.vehicle_rig.install_ground_callback- Source
maya_tools/Rigging/vehicle_rig.py:1199- Name status
- Friendly call available
Install native DG/time callbacks for immediate drag and playback updates. ``scriptJob(attributeChange=...)`` can be coalesced until a Maya manipulator releases the mouse. MNodeMessage is delivered for every channel edit, while MEventMessage's timeChanged event runs before each playback redraw.
Parameters
rig_root· Optional[str] · default None
Related functions
install_ground_callbacks
api.dcc.maya.install_ground_callbacks(...)- Signature
install_ground_callbacks() -> list[int]- Target
maya_tools.Rigging.vehicle_rig.install_ground_callbacks- Source
maya_tools/Rigging/vehicle_rig.py:1248- Name status
- Friendly call available
Parameters
None documented.
Related functions
install_scene_callbacks
api.dcc.maya.install_scene_callbacks(...)- Signature
install_scene_callbacks() -> list[int]- Target
maya_tools.Rigging.vehicle_rig.install_scene_callbacks- Source
maya_tools/Rigging/vehicle_rig.py:1256- Name status
- Friendly call available
Restore live vehicle evaluation whenever a scene is opened or imported.
Parameters
None documented.
Related functions
is_animator_control_identity
api.dcc.maya.is_animator_control_identity(...)- Signature
is_animator_control_identity(node: str, object_sets: Iterable[str] = ()) -> bool- Target
maya_tools.Rigging.mocap.control_identity.is_animator_control_identity- Source
maya_tools/Rigging/mocap/control_identity.py:8- Name status
- Friendly call available
Use a naming contract or an explicit Maya control set membership.
Parameters
node· str · requiredobject_sets· Iterable[str] · default ()
is_maya
api.dcc.maya.is_maya(...)- Signature
is_maya()- Target
maya_tools.Cinematics.SequenceUI.sequence_ui.is_maya- Source
maya_tools/Cinematics/SequenceUI/sequence_ui.py:90- Name status
- Friendly call available
Parameters
None documented.
is_motionbuilder
api.dcc.maya.is_motionbuilder(...)- Signature
is_motionbuilder()- Target
maya_tools.Cinematics.SequenceUI.sequence_ui.is_motionbuilder- Source
maya_tools/Cinematics/SequenceUI/sequence_ui.py:97- Name status
- Friendly call available
Parameters
None documented.
is_studio_template_skeleton
api.dcc.maya.is_studio_template_skeleton(...)- Signature
is_studio_template_skeleton(root_joint: str, namespace: str = "") -> bool- Target
maya_tools.Rigging.joint_placer.is_studio_template_skeleton- Source
maya_tools/Rigging/joint_placer.py:4113- Name status
- Friendly call available
Parameters
root_joint· str · requirednamespace· str · default ''
Related functions
launch_hik_ui
api.dcc.maya.launch_hik_ui(...)- Signature
launch_hik_ui(- Target
maya_tools.Rigging.mocap.hik_ui.launch_hik_ui- Source
maya_tools/Rigging/mocap/hik_ui.py:6346- Name status
- Friendly call available
Parameters
parent· default Nonegraph· default Noneselection_provider· default Noneundo_callback· default Nonerefresh_callback· default None
learn_shoulder_profile_from_selected
api.dcc.maya.learn_shoulder_profile_from_selected(...)- Signature
learn_shoulder_profile_from_selected(- Target
maya_tools.Rigging.auto_skinner.learn_shoulder_profile_from_selected- Source
maya_tools/Rigging/auto_skinner.py:277- Name status
- Friendly call available
Parameters
root_joint· str · default 'origin'output_path· Optional[str] · default Noneradius_scale· float · default 0.45
Related functions
learn_shoulder_profile_from_skin
api.dcc.maya.learn_shoulder_profile_from_skin(...)- Signature
learn_shoulder_profile_from_skin(- Target
maya_tools.Rigging.auto_skinner.learn_shoulder_profile_from_skin- Source
maya_tools/Rigging/auto_skinner.py:228- Name status
- Friendly call available
Parameters
mesh· str · requiredroot_joint· str · default 'origin'radius_scale· float · default 0.45min_vertices· int · default 6
Related functions
list_skinned_meshes
api.dcc.maya.list_skinned_meshes(...)- Signature
list_skinned_meshes() -> list[str]- Target
maya_tools.Rigging.unreal_skeletal_export.list_skinned_meshes- Source
maya_tools/Rigging/unreal_skeletal_export.py:41- Name status
- Friendly call available
Return exportable, non-intermediate skinned mesh transforms in the scene.
Parameters
None documented.
load_baseline
api.dcc.maya.load_baseline(...)- Signature
load_baseline(path: str) -> Dict[str, object]- Target
maya_tools.Rigging.joint_placement_regression.load_baseline- Source
maya_tools/Rigging/joint_placement_regression.py:296- Name status
- Friendly call available
Parameters
path· str · required
Related functions
load_biped_rig_template
api.dcc.maya.load_biped_rig_template(...)- Signature
load_biped_rig_template(- Target
maya_tools.Rigging.rig_template.load_biped_rig_template- Source
maya_tools/Rigging/rig_template.py:168- Name status
- Friendly call available
Import or reference the biped rig template and report skeleton/RFL joints.
Parameters
template_path· str · default DEFAULT_BIPED_RIG_TEMPLATEnamespace· str · default ''reference· bool · default Falsemerge_namespaces_on_clash· bool · default False
Related functions
load_default_biped_rig_template
api.dcc.maya.load_default_biped_rig_template(...)- Signature
load_default_biped_rig_template(reference: bool = False, namespace: str = "") -> dict- Target
maya_tools.Rigging.rig_template.load_default_biped_rig_template- Source
maya_tools/Rigging/rig_template.py:264- Name status
- Friendly call available
Parameters
reference· bool · default Falsenamespace· str · default ''
Related functions
load_default_vehicle_rig_template
api.dcc.maya.load_default_vehicle_rig_template(...)- Signature
load_default_vehicle_rig_template(reference: bool = False, namespace: str = "") -> dict- Target
maya_tools.Rigging.rig_template.load_default_vehicle_rig_template- Source
maya_tools/Rigging/rig_template.py:359- Name status
- Friendly call available
Parameters
reference· bool · default Falsenamespace· str · default ''
Related functions
load_enum_data_from_json
api.dcc.maya.load_enum_data_from_json(...)- Signature
load_enum_data_from_json(filepath)- Target
maya_tools.Rigging.enum_attrs.load_enum_data_from_json- Source
maya_tools/Rigging/enum_attrs.py:168- Name status
- Friendly call available
Parameters
filepath· required
Related functions
load_module_metadata
api.dcc.maya.load_module_metadata(...)- Signature
load_module_metadata(module_id)- Target
maya_tools.Rigging.create_rig.load_module_metadata- Source
maya_tools/Rigging/create_rig.py:5549- Name status
- Friendly call available
Return the stored dict for module_id, or {} if not found. :param module_id: unique module identifier :return: dict
Parameters
module_id· required
Related functions
load_profile
api.dcc.maya.load_profile(...)- Signature
load_profile(json_path, base_joint_map=None)- Target
maya_tools.Rigging.mocap.hik_mapping.load_profile- Source
maya_tools/Rigging/mocap/hik_mapping.py:41- Name status
- Friendly call available
Load a serialized HumanIK map without modifying the shared default.
Parameters
json_path· requiredbase_joint_map· default None
load_shoulder_profile
api.dcc.maya.load_shoulder_profile(...)- Signature
load_shoulder_profile(path: str) -> dict- Target
maya_tools.Rigging.auto_skinner.load_shoulder_profile- Source
maya_tools/Rigging/auto_skinner.py:213- Name status
- Friendly call available
Parameters
path· str · required
Related functions
load_vehicle_rig_template
api.dcc.maya.load_vehicle_rig_template(...)- Signature
load_vehicle_rig_template(- Target
maya_tools.Rigging.rig_template.load_vehicle_rig_template- Source
maya_tools/Rigging/rig_template.py:282- Name status
- Friendly call available
Import the joint-only vehicle template and report its portable roles. SI-unit configuration is stored as attributes on the joints. Controls, geometry, constraints, and ground-query nodes are created later by the host vehicle-rig builder.
Parameters
template_path· str · default DEFAULT_VEHICLE_RIG_TEMPLATEnamespace· str · default ''reference· bool · default Falsemerge_namespaces_on_clash· bool · default False
Related functions
main
api.dcc.maya.main(...)- Signature
main(argv=None) -> int- Target
maya_tools.Rigging.joint_placement_regression_runner.main- Source
maya_tools/Rigging/joint_placement_regression_runner.py:326- Name status
- Friendly call available
Parameters
argv· default None
make_hik_maps_from_root
api.dcc.maya.make_hik_maps_from_root(...)- Signature
make_hik_maps_from_root(root_joint: str) -> Tuple[dict, dict]- Target
maya_tools.Rigging.joint_placer.make_hik_maps_from_root- Source
maya_tools/Rigging/joint_placer.py:3961- Name status
- Friendly call available
Parameters
root_joint· str · required
Related functions
mapped_anatomical_joints
api.dcc.maya.mapped_anatomical_joints(...)- Signature
mapped_anatomical_joints(joint_map: Optional[dict]) -> Dict[str, str]- Target
maya_tools.Rigging.joint_placer.mapped_anatomical_joints- Source
maya_tools/Rigging/joint_placer.py:4191- Name status
- Friendly call available
Resolve the active HIK mapping into placement roles. Spine roles are distributed across the available HIK spine slots, allowing a user hierarchy to contain one through four mapped spine joints.
Parameters
joint_map· Optional[dict] · required
Related functions
mapped_detail_editability_issues
api.dcc.maya.mapped_detail_editability_issues(...)- Signature
mapped_detail_editability_issues(root: str) -> List[str]- Target
maya_tools.Rigging.joint_placer.mapped_detail_editability_issues- Source
maya_tools/Rigging/joint_placer.py:13195- Name status
- Friendly call available
Return driven/locked body detail joints that make a fit unsafe. MetaHuman body helpers must be editable in neutral-pose editing mode before their core skeleton is repositioned. Detect this before any scale or joint move so a live RigLogic/RBF graph cannot leave a partially fitted skeleton.
Parameters
root· str · required
Related functions
mapped_hierarchy_missing_slots
api.dcc.maya.mapped_hierarchy_missing_slots(...)- Signature
mapped_hierarchy_missing_slots(joint_map: Optional[dict]) -> List[str]- Target
maya_tools.Rigging.joint_placer.mapped_hierarchy_missing_slots- Source
maya_tools/Rigging/joint_placer.py:4219- Name status
- Friendly call available
Parameters
joint_map· Optional[dict] · required
Related functions
mapped_hierarchy_requested
api.dcc.maya.mapped_hierarchy_requested(...)- Signature
mapped_hierarchy_requested(joint_map: Optional[dict]) -> bool- Target
maya_tools.Rigging.joint_placer.mapped_hierarchy_requested- Source
maya_tools/Rigging/joint_placer.py:4223- Name status
- Friendly call available
Parameters
joint_map· Optional[dict] · required
Related functions
mapped_studio_template_namespace
api.dcc.maya.mapped_studio_template_namespace(...)- Signature
mapped_studio_template_namespace(joint_map: Optional[dict]) -> Optional[str]- Target
maya_tools.Rigging.joint_placer.mapped_studio_template_namespace- Source
maya_tools/Rigging/joint_placer.py:4256- Name status
- Friendly call available
Return the namespace when a mapping points at the studio template. The UI auto-populates its HIK mapping from any skeleton in the scene. A loaded studio template must still use the specialized studio fitting pass; treating it as an arbitrary mapped hierarchy skips its digit, twist, foot, and orientation contracts.
Parameters
joint_map· Optional[dict] · required
Related functions
measure_planar_deviation
api.dcc.maya.measure_planar_deviation(...)- Signature
measure_planar_deviation(- Target
maya_tools.Rigging.joint_placer.measure_planar_deviation- Source
maya_tools/Rigging/joint_placer.py:1045- Name status
- Friendly call available
Parameters
points· Dict[str, Vector3] · requiredframe· Optional[PlacementFrame] · default None
mesh_profile_features
api.dcc.maya.mesh_profile_features(...)- Signature
mesh_profile_features(mesh)- Target
maya_tools.Rigging.joint_placement_ml.mesh_profile_features- Source
maya_tools/Rigging/joint_placement_ml.py:67- Name status
- Friendly call available
Return a normalized 32-slice silhouette profile for a Maya mesh.
Parameters
mesh· required
Related functions
mirror_face_joints
api.dcc.maya.mirror_face_joints(...)- Signature
mirror_face_joints(- Target
maya_tools.Rigging.create_rig_core.mirror_face_joints- Source
maya_tools/Rigging/create_rig_core.py:4868- Name status
- Friendly call available
Mirrors face joints and optionally rotates them 180 degrees in Z (object space). :param joints: list of joint names to mirror :param search_replace: tuple (search, replace) for naming :param mirror_axis: 'YZ', 'XZ', or 'XY' :param rotate_z_180: bool, apply local Z 180 rotation after mirror :return: list of mirrored joints
Parameters
joints· requiredsearch_replace· default ('l_', 'r_')mirror_axis· default 'YZ'rotate_z_180· default True
Related functions
mirror_joint_yz_behavior_with_label_flip
api.dcc.maya.mirror_joint_yz_behavior_with_label_flip(...)- Signature
mirror_joint_yz_behavior_with_label_flip(root_joint=None, rename_first_char=True)- Target
maya_tools.Rigging.create_rig_core.mirror_joint_yz_behavior_with_label_flip- Source
maya_tools/Rigging/create_rig_core.py:5460- Name status
- Friendly call available
Mirror a joint chain across YZ using behavior mirroring. Then flip joint label Side from Left<->Right on the mirrored chain. Optionally swaps first character of the mirrored names: l/r/L/R. :param root_joint: root joint name to mirror; sl=True if None :param rename_first_char: whether to swap first character l/r :return: list[str]
Parameters
root_joint· default Nonerename_first_char· default True
Related functions
mirror_studio_right_leg_from_left
api.dcc.maya.mirror_studio_right_leg_from_left(...)- Signature
mirror_studio_right_leg_from_left(- Target
maya_tools.Rigging.joint_placer.mirror_studio_right_leg_from_left- Source
maya_tools/Rigging/joint_placer.py:6868- Name status
- Friendly call available
Make the right leg an exact world-X reflection of the authored left leg.
Parameters
namespace· str · default ''
Related functions
move_all_studio_joint_orientation_to_rotate
api.dcc.maya.move_all_studio_joint_orientation_to_rotate(...)- Signature
move_all_studio_joint_orientation_to_rotate(- Target
maya_tools.Rigging.joint_placer.move_all_studio_joint_orientation_to_rotate- Source
maya_tools/Rigging/joint_placer.py:10592- Name status
- Friendly call available
Zero jointOrient/rotateAxis everywhere without changing world poses.
Parameters
root· str · requirednamespace· str · default ''
Related functions
normalize
api.dcc.maya.normalize(...)- Signature
normalize(v)- Target
maya_tools.Rigging.create_rig_core.normalize- Source
maya_tools/Rigging/create_rig_core.py:2674- Name status
- Friendly call available
Normalises a 3D vector. :param v: input 3D vector :return: list[float]
Parameters
v· required
Related functions
normalize_and_limit_weights
api.dcc.maya.normalize_and_limit_weights(...)- Signature
normalize_and_limit_weights(weights: WeightList, max_influences: int = DEFAULT_MAX_INFLUENCES) -> WeightList- Target
maya_tools.Rigging.auto_skinner.normalize_and_limit_weights- Source
maya_tools/Rigging/auto_skinner.py:152- Name status
- Friendly call available
Parameters
weights· WeightList · requiredmax_influences· int · default DEFAULT_MAX_INFLUENCES
Related functions
normalize_rfl_joint_suffixes
api.dcc.maya.normalize_rfl_joint_suffixes(...)- Signature
normalize_rfl_joint_suffixes(side=None, namespace=None)- Target
maya_tools.Rigging.create_rig_core.normalize_rfl_joint_suffixes- Source
maya_tools/Rigging/create_rig_core.py:61- Name status
- Friendly call available
Normalize existing reverse-foot joint suffixes to uppercase ``_RFL``. This is a rename-only migration: authored pivots, hierarchy, orientation, and node identity are retained. Ambiguous or occupied destinations are refused rather than guessed.
Parameters
side· default Nonenamespace· default None
Related functions
offset_pv_pad
api.dcc.maya.offset_pv_pad(...)- Signature
offset_pv_pad(pad, side, amount=5.0)- Target
maya_tools.Rigging.create_rig_core.offset_pv_pad- Source
maya_tools/Rigging/create_rig_core.py:2630- Name status
- Friendly call available
:param pad: pad to offset :param side: side of ctrl :param amount: offset amount :return:
Parameters
pad· requiredside· requiredamount· default 5.0
Related functions
open_scene_with_specific_references
api.dcc.maya.open_scene_with_specific_references(...)- Signature
open_scene_with_specific_references(maya_file, reference_list)- Target
maya_tools.Animation.anim_export.anim_export_utils.open_scene_with_specific_references- Source
maya_tools/Animation/anim_export/anim_export_utils.py:55- Name status
- Friendly call available
Opens a Maya scene and loads only the specified references, ignoring any others. :param maya_file: Full path to the .ma or .mb file :param reference_list: List of dictionaries [{"path": "...", "namespace": "..."}, ...]
Parameters
maya_file· requiredreference_list· required
Related functions
orient_control_pad_to_world_safely
api.dcc.maya.orient_control_pad_to_world_safely(...)- Signature
orient_control_pad_to_world_safely(ctrl, jnt)- Target
maya_tools.Rigging.create_rig_core.orient_control_pad_to_world_safely- Source
maya_tools/Rigging/create_rig_core.py:2127- Name status
- Friendly call available
Safely orients the control's pad to world coordinate space without moving the joint, unparenting children first, resetting world rotation on the pad, recreating parent/scale constraints, and then reparenting the children back under the control. :param ctrl: ctrl :param jnt: jnt
Parameters
ctrl· requiredjnt· required
Related functions
orient_skeleton
api.dcc.maya.orient_skeleton(...)- Signature
orient_skeleton(root_joint: str) -> None- Target
maya_tools.Rigging.joint_placer.orient_skeleton- Source
maya_tools/Rigging/joint_placer.py:3861- Name status
- Friendly call available
Parameters
root_joint· str · required
Related functions
orient_studio_arm_chains
api.dcc.maya.orient_studio_arm_chains(...)- Signature
orient_studio_arm_chains(- Target
maya_tools.Rigging.joint_placer.orient_studio_arm_chains- Source
maya_tools/Rigging/joint_placer.py:11537- Name status
- Friendly call available
Aim arm X axes at placed children and transfer approved template roll. Joint placement owns every pivot. The atlas owns only the relative frame: left +X runs down the arm and right -X runs down it, while Y/Z retain the same roll used by approved production rigs. This avoids deriving roll from an almost-flat arm triangle, which was unstable and broke pose matching.
Parameters
mesh· str · default ''namespace· str · default ''only_joints· Optional[Sequence[str]] · default None
Related functions
orient_studio_brow_joints
api.dcc.maya.orient_studio_brow_joints(...)- Signature
orient_studio_brow_joints(- Target
maya_tools.Rigging.joint_placer.orient_studio_brow_joints- Source
maya_tools/Rigging/joint_placer.py:12442- Name status
- Friendly call available
Aim X at the next brow and keep Y tangent to the facial surface.
Parameters
mesh· str · default ''namespace· str · default ''
Related functions
orient_studio_center_face_grid_axes
api.dcc.maya.orient_studio_center_face_grid_axes(...)- Signature
orient_studio_center_face_grid_axes(- Target
maya_tools.Rigging.joint_placer.orient_studio_center_face_grid_axes- Source
maya_tools/Rigging/joint_placer.py:12154- Name status
- Friendly call available
World-align center facial anchors to the scene grid axes exactly.
Parameters
namespace· str · default ''
Related functions
orient_studio_digit_chains
api.dcc.maya.orient_studio_digit_chains(...)- Signature
orient_studio_digit_chains(- Target
maya_tools.Rigging.joint_placer.orient_studio_digit_chains- Source
maya_tools/Rigging/joint_placer.py:8696- Name status
- Friendly call available
Center fingertips and author straight, animator-facing digit channels. Joint 01 aims at joint 02. Every joint from 02 onward uses signed Translate X only (+X left, -X right), and the articulated chain shares one bend plane. From joint 02 onward, every digit uses signed local Translate X and local Z as its curl axis. The non-thumb local Y basis points toward the dorsal side, so positive/negative Z flexes the digit into the dorsal plane. Channels remain editable and unlocked.
Parameters
mesh· str · default ''namespace· str · default ''preserve_positions· bool · default Falsepreserve_knuckle_positions· bool · default False
Related functions
orient_studio_elbow_z_hinge_frames
api.dcc.maya.orient_studio_elbow_z_hinge_frames(...)- Signature
orient_studio_elbow_z_hinge_frames(- Target
maya_tools.Rigging.joint_placer.orient_studio_elbow_z_hinge_frames- Source
maya_tools/Rigging/joint_placer.py:11733- Name status
- Friendly call available
Align upperarm/lowerarm frames to their bend plane for rotateZ curl. The two segment X axes are aimed at their placed children. Their shared Z axis is the shoulder-elbow-wrist plane normal, so the lowerarm's fitted rest bend is representable by rotateZ alone with jointOrient and rotateAxis both zero. Joint positions and child world matrices are kept.
Parameters
namespace· str · default ''
Related functions
orient_studio_eyelid_chains_to_tips
api.dcc.maya.orient_studio_eyelid_chains_to_tips(...)- Signature
orient_studio_eyelid_chains_to_tips(- Target
maya_tools.Rigging.joint_placer.orient_studio_eyelid_chains_to_tips- Source
maya_tools/Rigging/joint_placer.py:8635- Name status
- Friendly call available
Aim each eyelid segment's local +X toward its mesh-fitted tip child. The saved Lost Soul Kid rig authors every eyelid tip at positive local X. Preserve that convention for both template and mapped fits, after their mesh-dependent tip locations are final. Reorientation preserves each tip's evaluated world matrix and restores the joint's existing DoF policy.
Parameters
root· str · required
Related functions
orient_studio_face_local_y_up
api.dcc.maya.orient_studio_face_local_y_up(...)- Signature
orient_studio_face_local_y_up(root: str) -> Dict[str, Dict[str, float]]- Target
maya_tools.Rigging.joint_placer.orient_studio_face_local_y_up- Source
maya_tools/Rigging/joint_placer.py:12663- Name status
- Friendly call available
Orient side facial joints to the studio's mirrored X/Y/Z convention. The lateral axis is derived from the eye landmarks so this remains aligned to the character when the mesh is rotated in the scene. Left-side joints use outward lateral X, world-up Y, and forward Z; right-side joints use the mirrored X and Z directions with Y still up. Centerline face joints retain their X aim and roll Y toward projected world-up. Joint positions and child world matrices are preserved.
Parameters
root· str · required
Related functions
orient_studio_head_chains
api.dcc.maya.orient_studio_head_chains(...)- Signature
orient_studio_head_chains(- Target
maya_tools.Rigging.joint_placer.orient_studio_head_chains- Source
maya_tools/Rigging/joint_placer.py:12037- Name status
- Friendly call available
Aim the central neck, skull, jaw, and tongue joints down-bone. These joints own facial and oral branches, so the generic one-child pass deliberately skips several of them. Explicit primary-child pairs keep local X anatomical while preserving every secondary branch in world space.
Parameters
namespace· str · default ''include_oral· bool · default True
Related functions
orient_studio_leg_chains
api.dcc.maya.orient_studio_leg_chains(...)- Signature
orient_studio_leg_chains(- Target
maya_tools.Rigging.joint_placer.orient_studio_leg_chains- Source
maya_tools/Rigging/joint_placer.py:12787- Name status
- Friendly call available
Author studio-mirrored signed-X frames for both leg chains.
Parameters
namespace· str · default ''only_joints· Optional[Sequence[str]] · default None
Related functions
orient_studio_leg_reference_frames
api.dcc.maya.orient_studio_leg_reference_frames(...)- Signature
orient_studio_leg_reference_frames(- Target
maya_tools.Rigging.joint_placer.orient_studio_leg_reference_frames- Source
maya_tools/Rigging/joint_placer.py:11634- Name status
- Friendly call available
Transfer approved leg roll without changing fitted leg/foot pivots.
Parameters
mesh· str · default ''namespace· str · default ''
Related functions
orient_studio_neck1_grid_standard
api.dcc.maya.orient_studio_neck1_grid_standard(...)- Signature
orient_studio_neck1_grid_standard(- Target
maya_tools.Rigging.joint_placer.orient_studio_neck1_grid_standard- Source
maya_tools/Rigging/joint_placer.py:12113- Name status
- Friendly call available
Keep neck1 aimed at neck2 with the same forward-Y axis as the spine.
Parameters
namespace· str · default ''
Related functions
orient_studio_root_pelvis_hipswing_y_up
api.dcc.maya.orient_studio_root_pelvis_hipswing_y_up(...)- Signature
orient_studio_root_pelvis_hipswing_y_up(- Target
maya_tools.Rigging.joint_placer.orient_studio_root_pelvis_hipswing_y_up- Source
maya_tools/Rigging/joint_placer.py:11981- Name status
- Friendly call available
Give origin, pelvis, and hipswing a shared world-Y-up basis.
Parameters
namespace· str · default ''
Related functions
orient_studio_single_child_chains
api.dcc.maya.orient_studio_single_child_chains(...)- Signature
orient_studio_single_child_chains(- Target
maya_tools.Rigging.joint_placer.orient_studio_single_child_chains- Source
maya_tools/Rigging/joint_placer.py:8592- Name status
- Friendly call available
Aim local X down every unambiguous one-child studio bone. Branch joints retain their authored basis because no single child defines a unique aim direction. The origin is also preserved as a world-space reference. Every oriented joint is measured after freezing so callers can audit the actual evaluated result rather than trusting the command.
Parameters
root· str · requirednamespace· str · default ''
Related functions
orient_studio_spine_vertical
api.dcc.maya.orient_studio_spine_vertical(...)- Signature
orient_studio_spine_vertical(namespace: str = "") -> Dict[str, float]- Target
maya_tools.Rigging.joint_placer.orient_studio_spine_vertical- Source
maya_tools/Rigging/joint_placer.py:11937- Name status
- Friendly call available
Give every spine pivot one identical scene-vertical world basis.
Parameters
namespace· str · default ''
Related functions
orient_studio_surface_face_joints
api.dcc.maya.orient_studio_surface_face_joints(...)- Signature
orient_studio_surface_face_joints(- Target
maya_tools.Rigging.joint_placer.orient_studio_surface_face_joints- Source
maya_tools/Rigging/joint_placer.py:12561- Name status
- Friendly call available
Keep cheek and under-eye X axes tangent to the facial surface.
Parameters
mesh· str · requiredroot· str · required
Related functions
orient_studio_teeth_scene_y_up
api.dcc.maya.orient_studio_teeth_scene_y_up(...)- Signature
orient_studio_teeth_scene_y_up(- Target
maya_tools.Rigging.joint_placer.orient_studio_teeth_scene_y_up- Source
maya_tools/Rigging/joint_placer.py:12389- Name status
- Friendly call available
World-align teeth joints with scene Y up and zero jointOrient. Teeth are rigid oral anchors rather than down-bone chain joints. Keeping their basis scene-aligned makes dental controls predictable even when the head and jaw parents carry character-specific roll.
Parameters
namespace· str · default ''
Related functions
orient_studio_twist_joints_like_parents
api.dcc.maya.orient_studio_twist_joints_like_parents(...)- Signature
orient_studio_twist_joints_like_parents(- Target
maya_tools.Rigging.joint_placer.orient_studio_twist_joints_like_parents- Source
maya_tools/Rigging/joint_placer.py:13006- Name status
- Friendly call available
Match every studio twist joint's world basis exactly to its parent bone.
Parameters
root· str · requirednamespace· str · default ''
Related functions
place_mapped_detail_joints
api.dcc.maya.place_mapped_detail_joints(...)- Signature
place_mapped_detail_joints(- Target
maya_tools.Rigging.joint_placer.place_mapped_detail_joints- Source
maya_tools/Rigging/joint_placer.py:13235- Name status
- Friendly call available
Place and verify MetaHuman-style twist and corrective joints. Facial DNA joints and driver duplicates are deliberately untouched. Their neutral transforms belong to RigLogic/DNA and require the face mesh/DNA update workflow rather than a body-volume projection.
Parameters
mesh· str · requiredroot· str · requiredjoint_map· dict · requiredtwist_fractions· Optional[Dict[str, Tuple[str, str, float]]] · default None
Related functions
placement_frame_from_mapping
api.dcc.maya.placement_frame_from_mapping(...)- Signature
placement_frame_from_mapping(joint_map: Optional[dict]) -> PlacementFrame- Target
maya_tools.Rigging.joint_placer.placement_frame_from_mapping- Source
maya_tools/Rigging/joint_placer.py:4140- Name status
- Friendly call available
Infer character axes from mapped hips/head and left/right limbs.
Parameters
joint_map· Optional[dict] · required
Related functions
point_from_normalized_bounds
api.dcc.maya.point_from_normalized_bounds(...)- Signature
point_from_normalized_bounds(bounds: Dict[str, object], xyz: Vector3) -> Vector3- Target
maya_tools.Rigging.joint_placer.point_from_normalized_bounds- Source
maya_tools/Rigging/joint_placer.py:1438- Name status
- Friendly call available
Parameters
bounds· Dict[str, object] · requiredxyz· Vector3 · required
Related functions
populate_default_face_map_from_scene
api.dcc.maya.populate_default_face_map_from_scene(...)- Signature
populate_default_face_map_from_scene(base_face_map=None)- Target
maya_tools.Rigging.mocap.setup_hik.populate_default_face_map_from_scene- Source
maya_tools/Rigging/mocap/setup_hik.py:2021- Name status
- Friendly call available
Fill face map with default scene joints under HIK head reference.
Parameters
base_face_map· default None
Related functions
position_finger_pv_above_knuckle
api.dcc.maya.position_finger_pv_above_knuckle(...)- Signature
position_finger_pv_above_knuckle(pad, knuckle_joint, distance=5.0)- Target
maya_tools.Rigging.create_rig_core.position_finger_pv_above_knuckle- Source
maya_tools/Rigging/create_rig_core.py:2645- Name status
- Friendly call available
Place a finger PV above the knuckle on its signed local-Z axis. The project finger frame has local Y pointing sideways. Local Z is the knuckle-up axis; choose its sign against scene up so mirrored hands both place the PV above rather than below the digit.
Parameters
pad· requiredknuckle_joint· requireddistance· default 5.0
Related functions
predict_mesh
api.dcc.maya.predict_mesh(...)- Signature
predict_mesh(mesh, model_path="")- Target
maya_tools.Rigging.joint_placement_ml.predict_mesh- Source
maya_tools/Rigging/joint_placement_ml.py:456- Name status
- Friendly call available
Return supported normalized landmarks for independently active regions.
Parameters
mesh· requiredmodel_path· default ''
Related functions
preserve_post_build_extensions
api.dcc.maya.preserve_post_build_extensions(...)- Signature
preserve_post_build_extensions()- Target
maya_tools.Rigging.create_rig.preserve_post_build_extensions- Source
maya_tools/Rigging/create_rig.py:1595- Name status
- Friendly call available
Detach and store every post-build system crossing the rig boundary.
Parameters
None documented.
Related functions
preserve_rfl_pivot_joints
api.dcc.maya.preserve_rfl_pivot_joints(...)- Signature
preserve_rfl_pivot_joints(side=None)- Target
maya_tools.Rigging.create_rig.preserve_rfl_pivot_joints- Source
maya_tools/Rigging/create_rig.py:3881- Name status
- Friendly call available
Preserve rfl pivot joints. :param side: side :return: result
Parameters
side· default None
Related functions
preview_biped_joint_placement
api.dcc.maya.preview_biped_joint_placement(...)- Signature
preview_biped_joint_placement(- Target
maya_tools.Rigging.joint_placer.preview_biped_joint_placement- Source
maya_tools/Rigging/joint_placer.py:15072- Name status
- Friendly call available
Solve and validate placement without creating or replacing a skeleton.
Parameters
mesh· str · requiredsolver· str · default 'production'landmark_points· Optional[Dict[str, Vector3]] · default Nonetemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATEcreate_guides· bool · default Truejoint_map· Optional[dict] · default None
Related functions
preview_selected_mesh_joint_placement
api.dcc.maya.preview_selected_mesh_joint_placement(...)- Signature
preview_selected_mesh_joint_placement(- Target
maya_tools.Rigging.joint_placer.preview_selected_mesh_joint_placement- Source
maya_tools/Rigging/joint_placer.py:15460- Name status
- Friendly call available
Preview the selected mesh without creating or replacing rig joints.
Parameters
solver· str · default 'production'landmark_points· Optional[Dict[str, Vector3]] · default Nonetemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATEcreate_guides· bool · default Truejoint_map· Optional[dict] · default None
Related functions
publish_referenced_animation_source
api.dcc.maya.publish_referenced_animation_source(...)- Signature
publish_referenced_animation_source(- Target
maya_tools.Rigging.mocap.referenced_animation_scene.publish_referenced_animation_source- Source
maya_tools/Rigging/mocap/referenced_animation_scene.py:772- Name status
- Friendly call available
Publish a portable review scene and prove its rig reference and keys survive reload.
Parameters
work_scene· str | Path · requiredpublished_rig_scene· str | Path · requiredoutput_scene· str | Path · required
Related functions
query_space_switches
api.dcc.maya.query_space_switches(...)- Signature
query_space_switches(driven)- Target
maya_tools.Rigging.create_rig.query_space_switches- Source
maya_tools/Rigging/create_rig.py:2444- Name status
- Friendly call available
Queries and returns any space switches driving 'driven' checking control and pad levels. :param driven: control node to query :return: list[dict]
Parameters
driven· required
Related functions
rebind_metahuman_face_to_body
api.dcc.maya.rebind_metahuman_face_to_body(...)- Signature
rebind_metahuman_face_to_body(face_mesh, face_joints, body_joints, skin_weights_path, dna_file_path)- Target
maya_tools.Rigging.metahuman_utils.rebind_metahuman_face_to_body- Source
maya_tools/Rigging/metahuman_utils.py:7- Name status
- Friendly call available
Rebind MetaHuman head mesh to a different body rig, transfer skin weights, and update the DNA. :param face_mesh: Name of the MetaHuman face mesh (e.g. "Face_Mesh") :param face_joints: List of face rig joints to snap (e.g. ["root", "pelvis", "spine_01", "spine_02","spine_03", "spine_04", "spine_05", "neck_01", "neck_02", "head"]) :param body_joints: Corresponding joints on the new body rig. :param skin_weights_path: File path to export/import skin weights. :param dna_file_path: Path to the MetaHuman DNA file to update.
Parameters
face_mesh· requiredface_joints· requiredbody_joints· requiredskin_weights_path· requireddna_file_path· required
rebuild_all_space_switches
api.dcc.maya.rebuild_all_space_switches(...)- Signature
rebuild_all_space_switches()- Target
maya_tools.Rigging.create_rig.rebuild_all_space_switches- Source
maya_tools/Rigging/create_rig.py:5673- Name status
- Friendly call available
Rebuilds all space switches in the scene using stored connections to ensure they are perfectly aligned with newly oriented controls.
Parameters
None documented.
Related functions
rebuild_dynamic_rig_modules
api.dcc.maya.rebuild_dynamic_rig_modules(...)- Signature
rebuild_dynamic_rig_modules()- Target
maya_tools.Rigging.create_rig.rebuild_dynamic_rig_modules- Source
maya_tools/Rigging/create_rig.py:1216- Name status
- Friendly call available
Rebuild all enabled dynamic modules in their original creation order.
Parameters
None documented.
Related functions
rebuild_enum_attr_with_order
api.dcc.maya.rebuild_enum_attr_with_order(...)- Signature
rebuild_enum_attr_with_order(node, attr, new_labels, preserve_value_by_label=True, stored_label=None, stored_value=None, verbose=True)- Target
maya_tools.Rigging.enum_attrs.rebuild_enum_attr_with_order- Source
maya_tools/Rigging/enum_attrs.py:212- Name status
- Friendly call available
Rebuild enum order on an existing attr while preserving connections. Notes ----- - This preserves raw connections by disconnecting and reconnecting them. - It remaps the attr's local current value by label when possible. - If stored_label is supplied, it will restore the saved enum selection by label. - It does NOT remap animated/int-driven upstream values by semantic label. If you need that too, this can be expanded later.
Parameters
node· requiredattr· requirednew_labels· requiredpreserve_value_by_label· default Truestored_label· default Nonestored_value· default Noneverbose· default True
Related functions
reconnect_attr_connections
api.dcc.maya.reconnect_attr_connections(...)- Signature
reconnect_attr_connections(plug, incoming, outgoing)- Target
maya_tools.Rigging.enum_attrs.reconnect_attr_connections- Source
maya_tools/Rigging/enum_attrs.py:198- Name status
- Friendly call available
Parameters
plug· requiredincoming· requiredoutgoing· required
Related functions
record_approved_scene
api.dcc.maya.record_approved_scene(...)- Signature
record_approved_scene(case_id, family, atlas_directory="")- Target
maya_tools.Rigging.joint_placement_ml.record_approved_scene- Source
maya_tools/Rigging/joint_placement_ml.py:490- Name status
- Friendly call available
Add an artist-approved live Maya placement and train with regional gates. The active model is replaced only if grouped holdout improves over the shape-neighbor baseline and no previously active region regresses. Every attempt is recorded in training_history.json so improvement is auditable.
Parameters
case_id· requiredfamily· requiredatlas_directory· default ''
record_rig_owned_nodes
api.dcc.maya.record_rig_owned_nodes(...)- Signature
record_rig_owned_nodes()- Target
maya_tools.Rigging.create_rig.record_rig_owned_nodes- Source
maya_tools/Rigging/create_rig.py:1400- Name status
- Friendly call available
Record the exact builder-owned scene nodes before extensions reattach.
Parameters
None documented.
Related functions
reference_rig
api.dcc.maya.reference_rig(...)- Signature
reference_rig(rig_scene: str | Path, namespace: str) -> dict[str, Any]- Target
maya_tools.Rigging.mocap.referenced_animation_scene.reference_rig- Source
maya_tools/Rigging/mocap/referenced_animation_scene.py:42- Name status
- Friendly call available
Parameters
rig_scene· str | Path · requirednamespace· str · required
Related functions
refine_foot_landmarks
api.dcc.maya.refine_foot_landmarks(...)- Signature
refine_foot_landmarks(- Target
maya_tools.Rigging.joint_placer.refine_foot_landmarks- Source
maya_tools/Rigging/joint_placer.py:936- Name status
- Friendly call available
Place toe base and tip in the local foot volume after ankle solving.
Parameters
points· Dict[str, Vector3] · requiredquery· 'MeshInteriorQuery' · requiredframe· Optional[PlacementFrame] · default None
Related functions
refine_leg_landmarks
api.dcc.maya.refine_leg_landmarks(...)- Signature
refine_leg_landmarks(- Target
maya_tools.Rigging.joint_placer.refine_leg_landmarks- Source
maya_tools/Rigging/joint_placer.py:837- Name status
- Friendly call available
Solve hip height, knee line, and ankle line from limb morphology. Template ratios put the sample character's knees too high and its ankles down in the foot. The knee is the compact section between the thigh and calf, while the ankle is the narrow section above the foot flare. Search bounded height bands so a ray cannot jump into the pelvis or foot.
Parameters
points· Dict[str, Vector3] · requiredquery· 'MeshInteriorQuery' · requiredframe· Optional[PlacementFrame] · default None
Related functions
refine_shoulder_landmarks
api.dcc.maya.refine_shoulder_landmarks(...)- Signature
refine_shoulder_landmarks(- Target
maya_tools.Rigging.joint_placer.refine_shoulder_landmarks- Source
maya_tools/Rigging/joint_placer.py:735- Name status
- Friendly call available
Move each arm root from the torso seed to the humeral-head section. A globally scaled template commonly leaves the upper-arm pivot inside the chest. In a T/A pose, the torso-to-arm transition is measurable: the very tall torso section collapses into a compact, nearly round deltoid/humeral section. Search only the proximal third of the upper arm and take the first local section matching that morphology. This is a 3D volume test, not a front-view silhouette estimate.
Parameters
points· Dict[str, Vector3] · requiredquery· 'MeshInteriorQuery' · requiredframe· Optional[PlacementFrame] · default None
Related functions
refine_studio_core_targets_for_mesh
api.dcc.maya.refine_studio_core_targets_for_mesh(...)- Signature
refine_studio_core_targets_for_mesh(- Target
maya_tools.Rigging.joint_placer.refine_studio_core_targets_for_mesh- Source
maya_tools/Rigging/joint_placer.py:6925- Name status
- Friendly call available
Refine torso, A-stance legs, feet, and neck from local mesh sections. Unlike a whole-mesh inside test, every leg point must use the interval on its own side. This prevents the opposite leg or pelvis shell from falsely validating a joint in empty space.
Parameters
targets· Dict[str, Vector3] · requiredmesh· str · required
Related functions
refresh_skin_bind_matrices_for_current_pose
api.dcc.maya.refresh_skin_bind_matrices_for_current_pose(...)- Signature
refresh_skin_bind_matrices_for_current_pose(influences)- Target
maya_tools.Rigging.create_rig_core.refresh_skin_bind_matrices_for_current_pose- Source
maya_tools/Rigging/create_rig_core.py:3144- Name status
- Friendly call available
Make the current rigged pose the skin rest pose for selected influences. Rig construction reparents and constrains the bind joints to their driver chains. Some production scenes also arrive with joints that have already been repositioned relative to their stored skin bind matrices. Refreshing only the selected influences at the completed setup pose prevents the newly built rig from changing the mesh in its default pose.
Parameters
influences· required
Related functions
register_dynamic_rig_module
api.dcc.maya.register_dynamic_rig_module(...)- Signature
register_dynamic_rig_module(module_id, module_type, build_spec, build_now=True)- Target
maya_tools.Rigging.create_rig.register_dynamic_rig_module- Source
maya_tools/Rigging/create_rig.py:1160- Name status
- Friendly call available
Register a tool-authored module and optionally build it immediately.
Parameters
module_id· requiredmodule_type· requiredbuild_spec· requiredbuild_now· default True
Related functions
reload_dependencies
api.dcc.maya.reload_dependencies(...)- Signature
reload_dependencies() -> str- Target
maya_tools.Rigging.rigging_host_adapter.reload_dependencies- Source
maya_tools/Rigging/rigging_host_adapter.py:30- Name status
- Friendly call available
Refresh the complete Maya rig stack for bridge-driven operations.
Parameters
None documented.
reload_rig_function_stack
api.dcc.maya.reload_rig_function_stack(...)- Signature
reload_rig_function_stack(force=False)- Target
maya_tools.Rigging.mocap.hik_ui.reload_rig_function_stack- Source
maya_tools/Rigging/mocap/hik_ui.py:93- Name status
- Friendly call available
Reload changed Maya rig modules; skip the expensive no-change path.
Parameters
force· default False
remove_all_ground_callbacks
api.dcc.maya.remove_all_ground_callbacks(...)- Signature
remove_all_ground_callbacks() -> None- Target
maya_tools.Rigging.vehicle_rig.remove_all_ground_callbacks- Source
maya_tools/Rigging/vehicle_rig.py:1143- Name status
- Friendly call available
Remove live callbacks, including entries whose scene nodes were deleted.
Parameters
None documented.
Related functions
remove_arm_module
api.dcc.maya.remove_arm_module(...)- Signature
remove_arm_module(side, body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_arm_module- Source
maya_tools/Rigging/create_rig.py:4646- Name status
- Friendly call available
Remove rig nodes and space switches for the given arm side. :param side: left or right side (l/r) :param body_joint_map: body joint mapping dictionary :return: int
Parameters
side· requiredbody_joint_map· required
Related functions
remove_brows_module
api.dcc.maya.remove_brows_module(...)- Signature
remove_brows_module(side, face_joint_map)- Target
maya_tools.Rigging.create_rig.remove_brows_module- Source
maya_tools/Rigging/create_rig.py:2642- Name status
- Friendly call available
Removes all controls and constraints built for eyebrows. :param side: left or right side (l/r) :param face_joint_map: face joint mapping dictionary :return: int
Parameters
side· requiredface_joint_map· required
Related functions
remove_clavicle_module
api.dcc.maya.remove_clavicle_module(...)- Signature
remove_clavicle_module(side, body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_clavicle_module- Source
maya_tools/Rigging/create_rig.py:5891- Name status
- Friendly call available
Removes the Clavicle control setup. :param side: left or right side (l/r) :param body_joint_map: body joint mapping dictionary :return: int
Parameters
side· requiredbody_joint_map· required
Related functions
remove_dynamic_rig_modules_for_rebuild
api.dcc.maya.remove_dynamic_rig_modules_for_rebuild(...)- Signature
remove_dynamic_rig_modules_for_rebuild()- Target
maya_tools.Rigging.create_rig.remove_dynamic_rig_modules_for_rebuild- Source
maya_tools/Rigging/create_rig.py:1196- Name status
- Friendly call available
Remove generated nodes while retaining every registered build recipe.
Parameters
None documented.
Related functions
remove_eyelids_module
api.dcc.maya.remove_eyelids_module(...)- Signature
remove_eyelids_module(side, face_joint_map)- Target
maya_tools.Rigging.create_rig.remove_eyelids_module- Source
maya_tools/Rigging/create_rig.py:2805- Name status
- Friendly call available
Removes all controls and constraints built for eyelids. :param side: left or right side (l/r) :param face_joint_map: face joint mapping dictionary :return: int
Parameters
side· requiredface_joint_map· required
Related functions
remove_eyes_module
api.dcc.maya.remove_eyes_module(...)- Signature
remove_eyes_module(face_joint_map)- Target
maya_tools.Rigging.create_rig.remove_eyes_module- Source
maya_tools/Rigging/create_rig.py:3064- Name status
- Friendly call available
Removes all controls built for the eyes. :param face_joint_map: face joint mapping dictionary :return: int
Parameters
face_joint_map· required
Related functions
remove_file_open_callback
api.dcc.maya.remove_file_open_callback(...)- Signature
remove_file_open_callback()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.remove_file_open_callback- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:24- Name status
- Friendly call available
Removes all previously registered Maya scene callbacks.
Parameters
None documented.
Related functions
remove_full_rig
api.dcc.maya.remove_full_rig(...)- Signature
remove_full_rig(body_joint_map, face_joint_map=None)- Target
maya_tools.Rigging.create_rig.remove_full_rig- Source
maya_tools/Rigging/create_rig.py:2295- Name status
- Friendly call available
Removes all controls, rig nodes, and clears the Do_Not_Touch group. :param body_joint_map: body joint mapping dictionary :param face_joint_map: face joint mapping dictionary :return: None
Parameters
body_joint_map· requiredface_joint_map· default None
Related functions
remove_ground_callback
api.dcc.maya.remove_ground_callback(...)- Signature
remove_ground_callback(rig_root: Optional[str] = None) -> None- Target
maya_tools.Rigging.vehicle_rig.remove_ground_callback- Source
maya_tools/Rigging/vehicle_rig.py:1129- Name status
- Friendly call available
Remove every live evaluator registered for one vehicle rig.
Parameters
rig_root· Optional[str] · default None
Related functions
remove_head_module
api.dcc.maya.remove_head_module(...)- Signature
remove_head_module(body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_head_module- Source
maya_tools/Rigging/create_rig.py:5501- Name status
- Friendly call available
Removes the head control setup. :param body_joint_map: body joint mapping dictionary :return: int
Parameters
body_joint_map· required
Related functions
remove_leg_module
api.dcc.maya.remove_leg_module(...)- Signature
remove_leg_module(side, body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_leg_module- Source
maya_tools/Rigging/create_rig.py:5128- Name status
- Friendly call available
Remove rig nodes and RFL setups for the given leg side. :param side: left or right side (l/r) :param body_joint_map: body joint mapping dictionary :return: int
Parameters
side· requiredbody_joint_map· required
Related functions
remove_mouth_module
api.dcc.maya.remove_mouth_module(...)- Signature
remove_mouth_module(face_joint_map)- Target
maya_tools.Rigging.create_rig.remove_mouth_module- Source
maya_tools/Rigging/create_rig.py:2955- Name status
- Friendly call available
Removes all controls and constraints built for the mouth. :param face_joint_map: face joint mapping dictionary :return: int
Parameters
face_joint_map· required
Related functions
remove_neck_module
api.dcc.maya.remove_neck_module(...)- Signature
remove_neck_module(body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_neck_module- Source
maya_tools/Rigging/create_rig.py:5441- Name status
- Friendly call available
Removes the neck control setup. :param body_joint_map: body joint mapping dictionary :return: int
Parameters
body_joint_map· required
Related functions
remove_other_face_module
api.dcc.maya.remove_other_face_module(...)- Signature
remove_other_face_module(face_joint_map)- Target
maya_tools.Rigging.create_rig.remove_other_face_module- Source
maya_tools/Rigging/create_rig.py:3337- Name status
- Friendly call available
Removes all secondary controls built for other face joints. :param face_joint_map: face joint mapping dictionary :return: int
Parameters
face_joint_map· required
Related functions
remove_pelvis_module
api.dcc.maya.remove_pelvis_module(...)- Signature
remove_pelvis_module(body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_pelvis_module- Source
maya_tools/Rigging/create_rig.py:5251- Name status
- Friendly call available
Removes the pelvis and hipswing control setup. :param body_joint_map: body joint mapping dictionary :return: int
Parameters
body_joint_map· required
Related functions
remove_rig_restore_bind_pose_and_export
api.dcc.maya.remove_rig_restore_bind_pose_and_export(...)- Signature
remove_rig_restore_bind_pose_and_export(- Target
maya_tools.Rigging.unreal_skeletal_export.remove_rig_restore_bind_pose_and_export- Source
maya_tools/Rigging/unreal_skeletal_export.py:170- Name status
- Friendly call available
Remove generated controls, restore skin bind pose, and export Unreal FBX.
Parameters
body_joint_map· dict[str, Any] · requiredface_joint_map· dict[str, Any] | None · requiredrig_name· str · requiredoutput_directory· str · requiredmeshes· list[str] | tuple[str, ...] | None · default Noneskeletal_mesh_name· str · default ''
Related functions
remove_root_module
api.dcc.maya.remove_root_module(...)- Signature
remove_root_module(body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_root_module- Source
maya_tools/Rigging/create_rig.py:5196- Name status
- Friendly call available
Removes the root origin control setup. :param body_joint_map: body joint mapping dictionary :return: int
Parameters
body_joint_map· required
Related functions
remove_spine_module
api.dcc.maya.remove_spine_module(...)- Signature
remove_spine_module(body_joint_map)- Target
maya_tools.Rigging.create_rig.remove_spine_module- Source
maya_tools/Rigging/create_rig.py:5359- Name status
- Friendly call available
Removes the spine control setup. :param body_joint_map: body joint mapping dictionary :return: int
Parameters
body_joint_map· required
Related functions
remove_teeth_module
api.dcc.maya.remove_teeth_module(...)- Signature
remove_teeth_module(face_joint_map)- Target
maya_tools.Rigging.create_rig.remove_teeth_module- Source
maya_tools/Rigging/create_rig.py:3182- Name status
- Friendly call available
Removes all controls built for the teeth. :param face_joint_map: face joint mapping dictionary :return: int
Parameters
face_joint_map· required
Related functions
remove_tongue_module
api.dcc.maya.remove_tongue_module(...)- Signature
remove_tongue_module(face_joint_map)- Target
maya_tools.Rigging.create_rig.remove_tongue_module- Source
maya_tools/Rigging/create_rig.py:3128- Name status
- Friendly call available
Removes all controls built for the tongue. :param face_joint_map: face joint mapping dictionary :return: int
Parameters
face_joint_map· required
Related functions
rename_brow_pad_hierarchies
api.dcc.maya.rename_brow_pad_hierarchies(...)- Signature
rename_brow_pad_hierarchies(side)- Target
maya_tools.Rigging.create_rig.rename_brow_pad_hierarchies- Source
maya_tools/Rigging/create_rig.py:461- Name status
- Friendly call available
Rename these hierarchies for the given side: 1. side_browX_ctrl_pad -> side_browX_driver_pad and rename entire hierarchy ctrl -> driver 2. side_browX_main_ctrl_pad -> side_browX_ctrl_pad and rename entire hierarchy main_ctrl -> ctrl Also deletes shapes on nodes renamed to 'driver'. Args: side (str): 'l' or 'r' Returns: dict: { "ctrl_to_driver": {pad_name: rename_map, ...}, "main_ctrl_to_ctrl": {pad_name: rename_map, ...} } :param side: side :return: result
Parameters
side· required
Related functions
rename_duplicates
api.dcc.maya.rename_duplicates(...)- Signature
rename_duplicates()- Target
maya_tools.Utilities.dag.rename_duplicates- Source
maya_tools/Utilities/dag.py:24- Name status
- Friendly call available
Renames duplicate DAG nodes by appending an incrementing number. Example: cube -> cube1 cube -> cube2 cube -> cube3
Parameters
None documented.
repair_preserved_extension_body_mapping
api.dcc.maya.repair_preserved_extension_body_mapping(...)- Signature
repair_preserved_extension_body_mapping(body_joint_map)- Target
maya_tools.Rigging.create_rig.repair_preserved_extension_body_mapping- Source
maya_tools/Rigging/create_rig.py:1274- Name status
- Friendly call available
Keep preserved user systems out of fixed HumanIK body module slots. Auto-detection can map a later user joint branch (for example baby_neck) into the standard Neck/Head slots. During rebuild that would create a second control with the same name as the detached extension. When a mapped joint matches a preserved control stem, restore the last standard module input saved in module metadata instead.
Parameters
body_joint_map· required
Related functions
reset_wheel_roll
api.dcc.maya.reset_wheel_roll(...)- Signature
reset_wheel_roll(rig_root: Optional[str] = None, *, preserve_rotation: bool = False) -> dict[str, Any]- Target
maya_tools.Rigging.vehicle_rig.reset_wheel_roll- Source
maya_tools/Rigging/vehicle_rig.py:924- Name status
- Friendly call available
Parameters
rig_root· Optional[str] · default Nonepreserve_rotation· bool · default False
resolve_rfl_joints
api.dcc.maya.resolve_rfl_joints(...)- Signature
resolve_rfl_joints(side)- Target
maya_tools.Rigging.create_rig.resolve_rfl_joints- Source
maya_tools/Rigging/create_rig.py:4680- Name status
- Friendly call available
Resolve an existing reverse-foot hierarchy. Supports both the newer toe pivot name and older/manual ball pivot name: <side>_toe_RFL <side>_ball_RFL Returns joints in the order expected by build_rfl_ik_and_constraints: heel, outerBank, innerBank, toeTip, toe/ball, ankle Returns [] when a complete setup cannot be found. :param side: side :return: result
Parameters
side· required
Related functions
resolve_shoulder_profile
api.dcc.maya.resolve_shoulder_profile(...)- Signature
resolve_shoulder_profile(- Target
maya_tools.Rigging.auto_skinner.resolve_shoulder_profile- Source
maya_tools/Rigging/auto_skinner.py:359- Name status
- Friendly call available
Parameters
shoulder_profile· Optional[object] · requiredjoints· Sequence[str] · required
Related functions
resolve_space_target
api.dcc.maya.resolve_space_target(...)- Signature
resolve_space_target(label, node=None, side=None)- Target
maya_tools.Rigging.enum_attrs.resolve_space_target- Source
maya_tools/Rigging/enum_attrs.py:32- Name status
- Friendly call available
Parameters
label· requirednode· default Noneside· default None
Related functions
resolve_space_targets_from_labels
api.dcc.maya.resolve_space_targets_from_labels(...)- Signature
resolve_space_targets_from_labels(labels, node=None, side=None, require_existing=True)- Target
maya_tools.Rigging.enum_attrs.resolve_space_targets_from_labels- Source
maya_tools/Rigging/enum_attrs.py:46- Name status
- Friendly call available
Parameters
labels· requirednode· default Noneside· default Nonerequire_existing· default True
Related functions
resolve_to_scene
api.dcc.maya.resolve_to_scene(...)- Signature
resolve_to_scene(joint_map, root_joint, repair_required=True)- Target
maya_tools.Rigging.mocap.hik_mapping.resolve_to_scene- Source
maya_tools/Rigging/mocap/hik_mapping.py:119- Name status
- Friendly call available
Resolve one mapping to one hierarchy and return validation provenance.
Parameters
joint_map· requiredroot_joint· requiredrepair_required· default True
restore_all_control_cv_positions
api.dcc.maya.restore_all_control_cv_positions(...)- Signature
restore_all_control_cv_positions(store_node=MODULE_STORE_NODE)- Target
maya_tools.Rigging.create_rig_core.restore_all_control_cv_positions- Source
maya_tools/Rigging/create_rig_core.py:5293- Name status
- Friendly call available
Restore all control cv positions. :param store_node: store node :return: result
Parameters
store_node· default MODULE_STORE_NODE
Related functions
restore_module_rebuild_identity
api.dcc.maya.restore_module_rebuild_identity(...)- Signature
restore_module_rebuild_identity(module_id)- Target
maya_tools.Rigging.create_rig.restore_module_rebuild_identity- Source
maya_tools/Rigging/create_rig.py:4466- Name status
- Friendly call available
Restore uniquely matched legacy names, spaces, and control CV shapes.
Parameters
module_id· required
Related functions
restore_post_build_extensions
api.dcc.maya.restore_post_build_extensions(...)- Signature
restore_post_build_extensions()- Target
maya_tools.Rigging.create_rig.restore_post_build_extensions- Source
maya_tools/Rigging/create_rig.py:2200- Name status
- Friendly call available
Reattach preserved extension systems to the newly generated rig.
Parameters
None documented.
Related functions
restore_rig_connections
api.dcc.maya.restore_rig_connections(...)- Signature
restore_rig_connections(module_name)- Target
maya_tools.Rigging.create_rig.restore_rig_connections- Source
maya_tools/Rigging/create_rig.py:5751- Name status
- Friendly call available
Restores space switches, constraints, and output connections stored for module_name. :param module_name: name of the module :return: int
Parameters
module_name· required
Related functions
restore_skin_bind_pose
api.dcc.maya.restore_skin_bind_pose(...)- Signature
restore_skin_bind_pose(meshes: list[str] | tuple[str, ...] | None = None) -> dict[str, Any]- Target
maya_tools.Rigging.unreal_skeletal_export.restore_skin_bind_pose- Source
maya_tools/Rigging/unreal_skeletal_export.py:94- Name status
- Friendly call available
Parameters
meshes· list[str] | tuple[str, ...] | None · default None
Related functions
retarget_fbx_hik
api.dcc.maya.retarget_fbx_hik(...)- Signature
retarget_fbx_hik(- Target
maya_tools.Rigging.mocap.hik_retarget.retarget_fbx_hik- Source
maya_tools/Rigging/mocap/hik_retarget.py:156- Name status
- Friendly call available
Retarget from an imported HIK character or an explicit slot/bone map. An animation-only FBX can use ``source_hik_fbx`` when it has the same skeleton as a separately characterized sister FBX. Otherwise a mapped, uncharacterized FBX needs ``source_tpose_frame`` so locking the definition records a deliberate reference pose rather than an arbitrary animation frame. Already-characterized FBX files retain their authored HumanIK stance and do not need an external map.
Parameters
target_rig· str · requiredsource_fbx· str · requiredoutput_fbx· str · requiredsource_mapping· dict[str, dict[str, Any]] | None · default Nonetarget_character· str | None · default 'Character1'source_character· str · default 'AIStudioSourceCharacter'source_namespace· str · default 'AIStudioSource'target_namespace· str · default 'MannyRig_v01_retarget'reset_scene· bool · default Truesource_tpose_frame· float | None · default Nonesource_hik_fbx· str | None · default None
rig_arm_module
api.dcc.maya.rig_arm_module(...)- Signature
rig_arm_module(side, body_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_arm_module- Source
maya_tools/Rigging/create_rig.py:3353- Name status
- Friendly call available
Rigs the Arm (IK/FK limb, Fingers, and Twist surface rigs). :param side: left or right side (l/r) :param body_joint_map: body joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
side· requiredbody_joint_map· requiredparent_ctrl· default None
Related functions
rig_brows_module
api.dcc.maya.rig_brows_module(...)- Signature
rig_brows_module(side, face_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_brows_module- Source
maya_tools/Rigging/create_rig.py:2606- Name status
- Friendly call available
Builds the eyebrows setup with lofted surfaces and driver controls. :param side: left or right side (l/r) :param face_joint_map: face joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
side· requiredface_joint_map· requiredparent_ctrl· default None
Related functions
rig_clavicle_module
api.dcc.maya.rig_clavicle_module(...)- Signature
rig_clavicle_module(side, body_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_clavicle_module- Source
maya_tools/Rigging/create_rig.py:5848- Name status
- Friendly call available
Builds the Clavicle control setup. :param side: left or right side (l/r) :param body_joint_map: body joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
side· requiredbody_joint_map· requiredparent_ctrl· default None
Related functions
rig_eyelids_module
api.dcc.maya.rig_eyelids_module(...)- Signature
rig_eyelids_module(side, face_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_eyelids_module- Source
maya_tools/Rigging/create_rig.py:2669- Name status
- Friendly call available
Builds the eyelids setup with lofted surfaces and driver controls. :param side: left or right side (l/r) :param face_joint_map: face joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
side· requiredface_joint_map· requiredparent_ctrl· default None
Related functions
rig_eyes_module
api.dcc.maya.rig_eyes_module(...)- Signature
rig_eyes_module(face_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_eyes_module- Source
maya_tools/Rigging/create_rig.py:3025- Name status
- Friendly call available
Builds the eye aim control setup. :param face_joint_map: face joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
face_joint_map· requiredparent_ctrl· default None
Related functions
rig_head_module
api.dcc.maya.rig_head_module(...)- Signature
rig_head_module(body_joint_map, face_joint_map=None, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_head_module- Source
maya_tools/Rigging/create_rig.py:5461- Name status
- Friendly call available
Builds the head control setup and space switches. :param body_joint_map: body joint mapping dictionary :param face_joint_map: face joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
body_joint_map· requiredface_joint_map· default Noneparent_ctrl· default None
Related functions
rig_leg_module
api.dcc.maya.rig_leg_module(...)- Signature
rig_leg_module(- Target
maya_tools.Rigging.create_rig.rig_leg_module- Source
maya_tools/Rigging/create_rig.py:4788- Name status
- Friendly call available
Rigs the Leg (IK/FK limb, Twist surface rigs, foot roll RFL, and switches). :param side: left or right side (l/r) :param body_joint_map: body joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
side· requiredbody_joint_map· requiredparent_ctrl· default Nonesnap_rfl· default Trueshoe_meshes· default None
Related functions
rig_mouth_module
api.dcc.maya.rig_mouth_module(...)- Signature
rig_mouth_module(face_joint_map, parent_ctrl=None, jaw_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_mouth_module- Source
maya_tools/Rigging/create_rig.py:2876- Name status
- Friendly call available
Builds the mouth setup with lofted surfaces, follicle controls, and jaw drivers. :param face_joint_map: face joint mapping dictionary :param parent_ctrl: parent control node name :param jaw_ctrl: jaw control node name :return: None
Parameters
face_joint_map· requiredparent_ctrl· default Nonejaw_ctrl· default None
Related functions
rig_neck_module
api.dcc.maya.rig_neck_module(...)- Signature
rig_neck_module(body_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_neck_module- Source
maya_tools/Rigging/create_rig.py:5379- Name status
- Friendly call available
Builds the neck control setup and space switches. :param body_joint_map: body joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
body_joint_map· requiredparent_ctrl· default None
Related functions
rig_other_face_module
api.dcc.maya.rig_other_face_module(...)- Signature
rig_other_face_module(face_joint_map, parent_ctrl=None, jaw_ctrl=None, jaw_joint=None)- Target
maya_tools.Rigging.create_rig.rig_other_face_module- Source
maya_tools/Rigging/create_rig.py:3202- Name status
- Friendly call available
Rig other face module. :param face_joint_map: mapping for face joint map :param parent_ctrl: parent ctrl :param jaw_ctrl: jaw ctrl :param jaw_joint: jaw joint :return:
Parameters
face_joint_map· requiredparent_ctrl· default Nonejaw_ctrl· default Nonejaw_joint· default None
Related functions
rig_pelvis_module
api.dcc.maya.rig_pelvis_module(...)- Signature
rig_pelvis_module(body_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_pelvis_module- Source
maya_tools/Rigging/create_rig.py:5208- Name status
- Friendly call available
Builds the pelvis and hipswing control setup. :param body_joint_map: body joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
body_joint_map· requiredparent_ctrl· default None
Related functions
rig_root_module
api.dcc.maya.rig_root_module(...)- Signature
rig_root_module(body_joint_map)- Target
maya_tools.Rigging.create_rig.rig_root_module- Source
maya_tools/Rigging/create_rig.py:5174- Name status
- Friendly call available
Builds the root origin control setup. :param body_joint_map: body joint mapping dictionary :return: None
Parameters
body_joint_map· required
Related functions
rig_spine_module
api.dcc.maya.rig_spine_module(...)- Signature
rig_spine_module(body_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_spine_module- Source
maya_tools/Rigging/create_rig.py:5270- Name status
- Friendly call available
Builds the spine control setup. :param body_joint_map: body joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
body_joint_map· requiredparent_ctrl· default None
Related functions
rig_teeth_module
api.dcc.maya.rig_teeth_module(...)- Signature
rig_teeth_module(face_joint_map, parent_ctrl=None, jaw_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_teeth_module- Source
maya_tools/Rigging/create_rig.py:3147- Name status
- Friendly call available
Builds the upper and lower teeth controls setup. :param face_joint_map: face joint mapping dictionary :param parent_ctrl: parent control node name :param jaw_ctrl: jaw control node name :return: None
Parameters
face_joint_map· requiredparent_ctrl· default Nonejaw_ctrl· default None
Related functions
rig_tongue_module
api.dcc.maya.rig_tongue_module(...)- Signature
rig_tongue_module(face_joint_map, parent_ctrl=None)- Target
maya_tools.Rigging.create_rig.rig_tongue_module- Source
maya_tools/Rigging/create_rig.py:3099- Name status
- Friendly call available
Builds the tongue controls setup. :param face_joint_map: face joint mapping dictionary :param parent_ctrl: parent control node name :return: None
Parameters
face_joint_map· requiredparent_ctrl· default None
Related functions
rotate_ctrl_cvs_object_x
api.dcc.maya.rotate_ctrl_cvs_object_x(...)- Signature
rotate_ctrl_cvs_object_x(ctrl, degrees=90.0)- Target
maya_tools.Rigging.create_rig_core.rotate_ctrl_cvs_object_x- Source
maya_tools/Rigging/create_rig_core.py:2424- Name status
- Friendly call available
Rotate a control's shape CVs around its local X axis. The transform itself is not rotated, so its zero channels, constraints, and animation behavior remain unchanged.
Parameters
ctrl· requireddegrees· default 90.0
Related functions
rotate_ctrl_cvs_object_y
api.dcc.maya.rotate_ctrl_cvs_object_y(...)- Signature
rotate_ctrl_cvs_object_y(ctrl, degrees=90.0)- Target
maya_tools.Rigging.create_rig_core.rotate_ctrl_cvs_object_y- Source
maya_tools/Rigging/create_rig_core.py:2523- Name status
- Friendly call available
Rotate a control's shape CVs around local Y without rotating its transform.
Parameters
ctrl· requireddegrees· default 90.0
Related functions
rotate_ctrl_cvs_object_z
api.dcc.maya.rotate_ctrl_cvs_object_z(...)- Signature
rotate_ctrl_cvs_object_z(ctrl, degrees=90.0)- Target
maya_tools.Rigging.create_rig_core.rotate_ctrl_cvs_object_z- Source
maya_tools/Rigging/create_rig_core.py:2476- Name status
- Friendly call available
Rotate a control's shape CVs around local Z without rotating its transform.
Parameters
ctrl· requireddegrees· default 90.0
Related functions
run_export
api.dcc.maya.run_export(...)- Signature
run_export(cmd, maya_env, export_path)- Target
maya_tools.Animation.anim_export.anim_export_command.run_export- Source
maya_tools/Animation/anim_export/anim_export_command.py:67- Name status
- Friendly call available
exports using subprocess to keep maya scene unchanged / non-destructive :param cmd: subprocess command string for export :param maya_env: maya env settings from os.environ.copy() :param export_path: actual fbx export location :return:
Parameters
cmd· requiredmaya_env· requiredexport_path· required
Related functions
run_geodesic_voxel_bind
api.dcc.maya.run_geodesic_voxel_bind(...)- Signature
run_geodesic_voxel_bind(- Target
maya_tools.Rigging.auto_skinner.run_geodesic_voxel_bind- Source
maya_tools/Rigging/auto_skinner.py:409- Name status
- Friendly call available
Parameters
skin_cluster· str · requiredmax_influences· int · default DEFAULT_MAX_INFLUENCESfalloff· float · default 0.0voxel_resolution· int · default 256validate_voxels· bool · default True
Related functions
run_manifest
api.dcc.maya.run_manifest(...)- Signature
run_manifest(manifest_path: str)- Target
maya_tools.Rigging.joint_placement_regression_runner.run_manifest- Source
maya_tools/Rigging/joint_placement_regression_runner.py:83- Name status
- Friendly call available
Parameters
manifest_path· str · required
safe_constrain_two_parents
api.dcc.maya.safe_constrain_two_parents(...)- Signature
safe_constrain_two_parents(controls, parent1, parent2, **kwargs)- Target
maya_tools.Rigging.create_rig.safe_constrain_two_parents- Source
maya_tools/Rigging/create_rig.py:569- Name status
- Friendly call available
Safe constrain two parents. :param controls: list of controls :param parent1: parent1 :param parent2: parent2 :param kwargs: list of kwargs :return:
Parameters
controls· requiredparent1· requiredparent2· required**kwargs· required
save_enum_data_to_json
api.dcc.maya.save_enum_data_to_json(...)- Signature
save_enum_data_to_json(filepath, nodes=None, attr_filter=None, strip_namespaces=True)- Target
maya_tools.Rigging.enum_attrs.save_enum_data_to_json- Source
maya_tools/Rigging/enum_attrs.py:150- Name status
- Friendly call available
Parameters
filepath· requirednodes· default Noneattr_filter· default Nonestrip_namespaces· default True
Related functions
save_module_metadata
api.dcc.maya.save_module_metadata(...)- Signature
save_module_metadata(module_id, data_dict)- Target
maya_tools.Rigging.create_rig.save_module_metadata- Source
maya_tools/Rigging/create_rig.py:5523- Name status
- Friendly call available
Persist data_dict for module_id on the scene-level store node. :param module_id: unique module identifier :param data_dict: dictionary containing module properties :return: None
Parameters
module_id· requireddata_dict· required
Related functions
save_shoulder_profile
api.dcc.maya.save_shoulder_profile(...)- Signature
save_shoulder_profile(profile: dict, path: str) -> str- Target
maya_tools.Rigging.auto_skinner.save_shoulder_profile- Source
maya_tools/Rigging/auto_skinner.py:204- Name status
- Friendly call available
Parameters
profile· dict · requiredpath· str · required
Related functions
save_vehicle_rig
api.dcc.maya.save_vehicle_rig(...)- Signature
save_vehicle_rig(path: str = DEFAULT_RIG_PATH) -> str- Target
maya_tools.Rigging.vehicle_rig.save_vehicle_rig- Source
maya_tools/Rigging/vehicle_rig.py:1316- Name status
- Friendly call available
Parameters
path· str · default DEFAULT_RIG_PATH
Related functions
scale_ctrl_cvs_local
api.dcc.maya.scale_ctrl_cvs_local(...)- Signature
scale_ctrl_cvs_local(ctrl, scale=(1.0, 1.0, 1.0))- Target
maya_tools.Rigging.create_rig_core.scale_ctrl_cvs_local- Source
maya_tools/Rigging/create_rig_core.py:2396- Name status
- Friendly call available
Scales CVs of a NURBS curve or surface relative to the control's local space. :param ctrl: transform of the control :param scale: (sx, sy, sz) local scale multiplier :return:
Parameters
ctrl· requiredscale· default (1.0, 1.0, 1.0)
Related functions
scale_ctrl_to_region
api.dcc.maya.scale_ctrl_to_region(...)- Signature
scale_ctrl_to_region(- Target
maya_tools.Rigging.create_rig_core.scale_ctrl_to_region- Source
maya_tools/Rigging/create_rig_core.py:2601- Name status
- Friendly call available
Scales control CVs based on the size of a joint region. :param ctrl: ctrl to scale :param region_joints: list of joints :param base_size: reference size (tweak once per rig) :param multiplier: artistic tuning knob :return:
Parameters
ctrl· requiredregion_joints· requiredbase_size· default 1.0multiplier· default 1.0
Related functions
scene_joints
api.dcc.maya.scene_joints(...)- Signature
scene_joints() -> dict[str, Any]- Target
maya_tools.Rigging.rigging_host_adapter.scene_joints- Source
maya_tools/Rigging/rigging_host_adapter.py:84- Name status
- Friendly call available
Parameters
None documented.
selection
api.dcc.maya.selection(...)- Signature
selection() -> dict[str, Any]- Target
maya_tools.Rigging.rigging_host_adapter.selection- Source
maya_tools/Rigging/rigging_host_adapter.py:101- Name status
- Friendly call available
Parameters
None documented.
set_all_limb_ik_fk_switches
api.dcc.maya.set_all_limb_ik_fk_switches(...)- Signature
set_all_limb_ik_fk_switches(value=1.0)- Target
maya_tools.Rigging.create_rig.set_all_limb_ik_fk_switches- Source
maya_tools/Rigging/create_rig.py:929- Name status
- Friendly call available
Set every constructed arm/leg IK/FK switch to the build default.
Parameters
value· default 1.0
Related functions
set_display_range
api.dcc.maya.set_display_range(...)- Signature
set_display_range(start_frame, end_frame)- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.set_display_range- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:76- Name status
- Friendly call available
:param start_frame: :param end_frame: :return:
Parameters
start_frame· requiredend_frame· required
Related functions
set_dynamic_rig_module_active
api.dcc.maya.set_dynamic_rig_module_active(...)- Signature
set_dynamic_rig_module_active(module_id, active)- Target
maya_tools.Rigging.create_rig.set_dynamic_rig_module_active- Source
maya_tools/Rigging/create_rig.py:1236- Name status
- Friendly call available
Remove or rebuild one registered module while retaining its recipe.
Parameters
module_id· requiredactive· required
Related functions
set_external_rig_system_active
api.dcc.maya.set_external_rig_system_active(...)- Signature
set_external_rig_system_active(root, active)- Target
maya_tools.Rigging.create_rig.set_external_rig_system_active- Source
maya_tools/Rigging/create_rig.py:2068- Name status
- Friendly call available
Reversibly attach or detach one user-authored system.
Parameters
root· requiredactive· required
Related functions
set_keyframe
api.dcc.maya.set_keyframe(...)- Signature
set_keyframe(- Target
maya_tools.Animation.bridge_keyframe.set_keyframe- Source
maya_tools/Animation/bridge_keyframe.py:16- Name status
- Friendly call available
Parameters
object_name· str · requiredattribute· str · requiredvalue· float · requiredframe· int | float | str · required
set_sdk
api.dcc.maya.set_sdk(...)- Signature
set_sdk(driver, driven_attr, keys)- Target
maya_tools.Rigging.create_rig_core.set_sdk- Source
maya_tools/Rigging/create_rig_core.py:1711- Name status
- Friendly call available
set driven key function :param driver: 'ctrl.attr' :param driven_attr: 'node.attr' :param keys: list of tuples [(driver_value, driven_value)] :return:
Parameters
driver· requireddriven_attr· requiredkeys· required
Related functions
set_t_pose
api.dcc.maya.set_t_pose(...)- Signature
set_t_pose(- Target
maya_tools.Rigging.mocap.setup_hik.set_t_pose- Source
maya_tools/Rigging/mocap/setup_hik.py:1615- Name status
- Friendly call available
T-pose the arms and legs before snapping reverse-foot helpers. Arm and thigh rotate channels are changed on the deformation skeleton. The pelvis translation and all jointOrient values remain untouched. Arms extend along world X while each fitted leg becomes vertical in front view without removing its side-view knee prebend.
Parameters
l_upperarm· default Noner_upperarm· default Nonel_clav· default Noner_clav· default Nonel_elbow· default Noner_elbow· default Nonel_hand· default Noner_hand· default Nonejoint_map· default Nonepelvis· default Nonesnap_rfl· default Trueshoe_meshes· default None
Related functions
setup_hik_character
api.dcc.maya.setup_hik_character(...)- Signature
setup_hik_character(character_name, joint_map, fbx_export_path, namespace)- Target
maya_tools.Rigging.mocap.setup_hik.setup_hik_character- Source
maya_tools/Rigging/mocap/setup_hik.py:1893- Name status
- Friendly call available
Setup a HIK character definition and export to FBX for MotionBuilder. :param character_name: Name of the HIK character to create. :param joint_map: Mapping of HIK slots to joint names. :param fbx_export_path: Full path to export the FBX file. :param namespace: namespace to apply on export :return:
Parameters
character_name· requiredjoint_map· requiredfbx_export_path· requirednamespace· required
setup_ik_limb_stretch
api.dcc.maya.setup_ik_limb_stretch(...)- Signature
setup_ik_limb_stretch(- Target
maya_tools.Rigging.create_rig_core.setup_ik_limb_stretch- Source
maya_tools/Rigging/create_rig_core.py:990- Name status
- Friendly call available
Add bend-preserving stretch to a two-bone IK chain. The enabled ratio is measured against the chain's original root-to-end chord, not the sum of its two bone lengths. Dividing by the length sum makes the scaled bones exactly equal the target distance and therefore forces the IK triangle flat. Scaling from the original chord preserves the authored elbow/knee angle while the limb extends or compresses. A small positive ratio floor avoids zero-length segments at full collapse.
Parameters
ik_joints· requiredik_ctrl· requiredswitch_ctrl· requiredscale_reference· default Nonesetup_positions· default None
Related functions
setup_jaw_lip_driver
api.dcc.maya.setup_jaw_lip_driver(...)- Signature
setup_jaw_lip_driver(jaw_ctrl, lip_driver_ctrls, lip_ctrl_dict, head_ctrl="head1_ctrl")- Target
maya_tools.Rigging.create_rig_core.setup_jaw_lip_driver- Source
maya_tools/Rigging/create_rig_core.py:5942- Name status
- Friendly call available
Initial setup for driving mouth and lips via the jaw control. Args: jaw_ctrl (str): Name of the jaw control. lip_driver_ctrls (list[str]): List of driver controls for the lips. lip_ctrl_dict (dict): Dictionary mapping joints to lip controls. head_ctrl (str): Name of the head control. Returns: None :param jaw_ctrl: jaw ctrl :param lip_driver_ctrls: list of lip driver ctrls :param lip_ctrl_dict: mapping for lip ctrl dict :param head_ctrl: head ctrl :return: result
Parameters
jaw_ctrl· requiredlip_driver_ctrls· requiredlip_ctrl_dict· requiredhead_ctrl· default 'head1_ctrl'
Related functions
setup_maya_livelink
api.dcc.maya.setup_maya_livelink(...)- Signature
setup_maya_livelink()- Target
maya_tools.maya_setup.setup_maya_livelink- Source
maya_tools/maya_setup.py:89- Name status
- Friendly call available
Refresh the one managed, authenticated bridge block in userSetup.py.
Parameters
None documented.
Related functions
setup_rfl_sdks
api.dcc.maya.setup_rfl_sdks(...)- Signature
setup_rfl_sdks(ik_leg_ctrl, rfl_joints, rfl_control_map=None)- Target
maya_tools.Rigging.create_rig_core.setup_rfl_sdks- Source
maya_tools/Rigging/create_rig_core.py:1932- Name status
- Friendly call available
Connect the reverse-foot attributes to the RFL control SDK groups. RFL joints may be resolved as long DAG paths, but generated controls use short names. Always strip the joint path before constructing control names. :param ik_leg_ctrl: ik leg ctrl :param rfl_joints: list of rfl joints
Parameters
ik_leg_ctrl· requiredrfl_joints· requiredrfl_control_map· default None
Related functions
setup_secondary_face_constraints
api.dcc.maya.setup_secondary_face_constraints(...)- Signature
setup_secondary_face_constraints(face_joint_map=None, head_ctrl=None)- Target
maya_tools.Rigging.create_rig.setup_secondary_face_constraints- Source
maya_tools/Rigging/create_rig.py:513- Name status
- Friendly call available
Setup secondary face constraints. :param face_joint_map: mapping for face joint map :param head_ctrl: head ctrl :return:
Parameters
face_joint_map· default Nonehead_ctrl· default None
Related functions
setup_show_twist_ctrls
api.dcc.maya.setup_show_twist_ctrls(...)- Signature
setup_show_twist_ctrls(side, limb, twist_joints=None, attr_nice_name="Show Twist Ctrls")- Target
maya_tools.Rigging.create_rig_core.setup_show_twist_ctrls- Source
maya_tools/Rigging/create_rig_core.py:393- Name status
- Friendly call available
Setup show twist ctrls. :param side: side :param limb: limb :param twist_joints: list of twist joints :param attr_nice_name: attr nice name :return: result
Parameters
side· requiredlimb· requiredtwist_joints· default Noneattr_nice_name· default 'Show Twist Ctrls'
Related functions
setup_spine_segment_stretch
api.dcc.maya.setup_spine_segment_stretch(...)- Signature
setup_spine_segment_stretch(spine_joints, control_data, pelvis_ctrl, scale_reference=None)- Target
maya_tools.Rigging.create_rig_core.setup_spine_segment_stretch- Source
maya_tools/Rigging/create_rig_core.py:860- Name status
- Friendly call available
Add per-bone distance stretch without replacing the existing FK spine.
Parameters
spine_joints· requiredcontrol_data· requiredpelvis_ctrl· requiredscale_reference· default None
Related functions
setup_surface_rig
api.dcc.maya.setup_surface_rig(...)- Signature
setup_surface_rig(joint_chain, loft_name="eyelid", offset=0.5, region="eyelid", root_parent=None,- Target
maya_tools.Rigging.create_rig_core.setup_surface_rig- Source
maya_tools/Rigging/create_rig_core.py:2946- Name status
- Friendly call available
Sets up the eyelid rig: - Duplicates first joint to close the chain - Creates loft + follicles + follicle joints - Deletes temp joint - Creates controls and aims them at follicle joints :param joint_chain: list of joints :param loft_name: surface name :param offset: amount to offset :param region: region can be eyelid, mouth, or other(doesn't matter name) :param root_parent: what to parent system to :param create_controls: whether to create controls for each joint in the chain :return: dict mapping eyelid joints to their controls
Parameters
joint_chain· requiredloft_name· default 'eyelid'offset· default 0.5region· default 'eyelid'root_parent· default Nonecreate_controls· default True
Related functions
setup_surface_rig_with_drivers
api.dcc.maya.setup_surface_rig_with_drivers(...)- Signature
setup_surface_rig_with_drivers(- Target
maya_tools.Rigging.create_rig_core.setup_surface_rig_with_drivers- Source
maya_tools/Rigging/create_rig_core.py:3483- Name status
- Friendly call available
Sets up a driver based surface rig (great for Mouth and eyelid setups) :param joint_list: list of joints :param loft_name: surface name :param offset: amount to offset curves to loft from joints :param driver_follicle_indices: mapping indices; if None, they are auto-detected :param side: right or left :param region: mouth, eyelid, or other :param root_parent: what to parent system to :param face_joint_map: dictionary containing face mapping data :return: tuple
Parameters
joint_list· requiredloft_name· default 'eyelid'offset· default 0.5driver_follicle_indices· default Noneside· default 'r'region· default 'eyelid'root_parent· default Noneface_joint_map· default None
Related functions
show_animation_manager
api.dcc.maya.show_animation_manager(...)- Signature
show_animation_manager()- Target
maya_tools.Cinematics.SequenceUI.sequence_ui.show_animation_manager- Source
maya_tools/Cinematics/SequenceUI/sequence_ui.py:1410- Name status
- Friendly call available
Launches the Animation Manager UI in Maya. :return:
Parameters
None documented.
smooth_reference_eyelid_tip_points
api.dcc.maya.smooth_reference_eyelid_tip_points(...)- Signature
smooth_reference_eyelid_tip_points(- Target
maya_tools.Rigging.joint_placer.smooth_reference_eyelid_tip_points- Source
maya_tools/Rigging/joint_placer.py:2734- Name status
- Friendly call available
Regularize each authored eyelid arc while preserving both corners. Upper and lower lids are smoothed independently so the inner and outer canthi remain exact. The caller projects the resulting proposals back to the mesh, making this a curve-quality pass rather than a free-space edit.
Parameters
points· Dict[str, Vector3] · requirediterations· int · default 4strength· float · default 0.4
Related functions
smooth_skin_weights
api.dcc.maya.smooth_skin_weights(...)- Signature
smooth_skin_weights(mesh: str, iterations: int = 2) -> Optional[str]- Target
maya_tools.Rigging.auto_skinner.smooth_skin_weights- Source
maya_tools/Rigging/auto_skinner.py:570- Name status
- Friendly call available
Parameters
mesh· str · requirediterations· int · default 2
Related functions
smooth_skin_weights_spatial
api.dcc.maya.smooth_skin_weights_spatial(...)- Signature
smooth_skin_weights_spatial(- Target
maya_tools.Rigging.skinning_utils.smooth_skin_weights_spatial- Source
maya_tools/Rigging/skinning_utils.py:271- Name status
- Friendly call available
Diffuse weights through world-space neighborhoods, ignoring mesh edges. The normal-angle gate reduces bleeding between nearby opposing surfaces. Locked influences retain their exact input weights.
Parameters
mesh· requiredvertex_indices· default Noneradius· default 1.0iterations· default 4strength· default 0.5max_influences· default 4normal_angle· default 75.0max_neighbors· default 48sample_weights· default Noneadaptive_radius· default Falsecross_region_share· default 0.45automatic_radius· default Falsetopology_share· default 0.0artifact_only· default Falseoutlier_threshold· default 0.06
Related functions
smooth_skin_weights_spatial_from_selection
api.dcc.maya.smooth_skin_weights_spatial_from_selection(...)- Signature
smooth_skin_weights_spatial_from_selection(- Target
maya_tools.Rigging.skinning_utils.smooth_skin_weights_spatial_from_selection- Source
maya_tools/Rigging/skinning_utils.py:243- Name status
- Friendly call available
Smooth the selected skin using surface position instead of edge topology. The automatic batch path intentionally ignores a component subset. It is the one-click alternative to painting and should repair the full selected skinned surface, including disconnected and mixed-density regions.
Parameters
radius· default 1.0iterations· default 4strength· default 0.5max_influences· default 4normal_angle· default 75.0max_neighbors· default 48cross_region_share· default 0.1entire_mesh· default Falseautomatic_radius· default Falseartifact_only· default False
Related functions
snap_all_reverse_foot_helpers_after_t_pose
api.dcc.maya.snap_all_reverse_foot_helpers_after_t_pose(...)- Signature
snap_all_reverse_foot_helpers_after_t_pose(- Target
maya_tools.Rigging.joint_placer.snap_all_reverse_foot_helpers_after_t_pose- Source
maya_tools/Rigging/joint_placer.py:4829- Name status
- Friendly call available
Run post-T-pose RFL fitting, optionally using selected footwear meshes.
Parameters
shoe_meshes· Optional[Iterable[str]] · default None
Related functions
snap_ctrl_cvs_to_child
api.dcc.maya.snap_ctrl_cvs_to_child(...)- Signature
snap_ctrl_cvs_to_child(ctrl, child_joint, axis="x", flip_direction=False)- Target
maya_tools.Rigging.create_rig_core.snap_ctrl_cvs_to_child- Source
maya_tools/Rigging/create_rig_core.py:271- Name status
- Friendly call available
Snaps control CVs toward the child joint along a local axis. :param ctrl: control transform :param child_joint: child joint or pad :param axis: 'x', 'y', or 'z' (local axis to operate on) :param flip_direction: reverse child-facing side
Parameters
ctrl· requiredchild_joint· requiredaxis· default 'x'flip_direction· default False
Related functions
snap_reverse_foot_helpers_to_deformation_skeleton
api.dcc.maya.snap_reverse_foot_helpers_to_deformation_skeleton(...)- Signature
snap_reverse_foot_helpers_to_deformation_skeleton(- Target
maya_tools.Rigging.joint_placer.snap_reverse_foot_helpers_to_deformation_skeleton- Source
maya_tools/Rigging/joint_placer.py:4703- Name status
- Friendly call available
Snap RFL helpers to the finalized deformation-leg T-pose. Initial anatomical placement and skin import deliberately leave the detached reverse-foot helpers untouched. The T-pose pass first straightens the legs in front view and grounds the toe tips, then calls this function.
Parameters
namespace· str · default ''sides· Optional[Iterable[str]] · default Noneshoe_meshes· Optional[Iterable[str]] · default None
Related functions
snap_to_joint_matrix
api.dcc.maya.snap_to_joint_matrix(...)- Signature
snap_to_joint_matrix(jnt, node)- Target
maya_tools.Rigging.create_rig_core.snap_to_joint_matrix- Source
maya_tools/Rigging/create_rig_core.py:2116- Name status
- Friendly call available
snaps node to the joint using world matrix :param jnt: joint to snap to :param node: node to snap :return:
Parameters
jnt· requirednode· required
Related functions
solve_basic_biped_points
api.dcc.maya.solve_basic_biped_points(...)- Signature
solve_basic_biped_points(mesh: str) -> Tuple[Dict[str, Vector3], Dict[str, float]]- Target
maya_tools.Rigging.joint_placer.solve_basic_biped_points- Source
maya_tools/Rigging/joint_placer.py:3121- Name status
- Friendly call available
Return first-pass biped joint positions. The current implementation is proportional, with confidence set low/medium. This gives a stable baseline that can later be refined by landmark or mesh cross-section solvers without changing the downstream rigging code.
Parameters
mesh· str · required
Related functions
solve_mapped_hierarchy_points
api.dcc.maya.solve_mapped_hierarchy_points(...)- Signature
solve_mapped_hierarchy_points(- Target
maya_tools.Rigging.joint_placer.solve_mapped_hierarchy_points- Source
maya_tools/Rigging/joint_placer.py:3009- Name status
- Friendly call available
Use the active rig mapping as the proportion and hierarchy proposal.
Parameters
mesh· str · requiredjoint_map· dict · requiredtemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATE
Related functions
solve_production_biped_points
api.dcc.maya.solve_production_biped_points(...)- Signature
solve_production_biped_points(- Target
maya_tools.Rigging.joint_placer.solve_production_biped_points- Source
maya_tools/Rigging/joint_placer.py:3359- Name status
- Friendly call available
Place a biped template using proposals plus mesh-volume verification. ``landmark_points`` is the integration seam for an ML or vision provider. Known joint names override the proportional proposal, but every override is still recentered and validated against the Maya mesh. Unknown landmarks are ignored so a provider cannot accidentally alter the output contract.
Parameters
mesh· str · requiredlandmark_points· Optional[Dict[str, Vector3]] · default Nonetemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATEjoint_map· Optional[dict] · default None
Related functions
solve_reference_corpus_points
api.dcc.maya.solve_reference_corpus_points(...)- Signature
solve_reference_corpus_points(- Target
maya_tools.Rigging.joint_placer.solve_reference_corpus_points- Source
maya_tools/Rigging/joint_placer.py:2940- Name status
- Friendly call available
Seed placement from the closest approved normalized character.
Parameters
mesh· str · requiredtemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATE
Related functions
solve_reference_detail_points
api.dcc.maya.solve_reference_detail_points(...)- Signature
solve_reference_detail_points(- Target
maya_tools.Rigging.joint_placer.solve_reference_detail_points- Source
maya_tools/Rigging/joint_placer.py:2806- Name status
- Friendly call available
Blend the closest approved full skeletons into target mesh space. The atlas supplies anatomical proportions for fingers, thumbs, feet, correctives, and facial branches. Mesh-volume fitting is intentionally a secondary local correction so it cannot rebuild those branches from an ambiguous front-view section.
Parameters
mesh· str · requiredreference_count· int · default 3
Related functions
solve_reference_eye_centers
api.dcc.maya.solve_reference_eye_centers(...)- Signature
solve_reference_eye_centers(- Target
maya_tools.Rigging.joint_placer.solve_reference_eye_centers- Source
maya_tools/Rigging/joint_placer.py:2250- Name status
- Friendly call available
Infer eye pivots from the eyelid ring when no eyeball mesh exists. The approved rigs encode a stable relationship between each eye pivot and its visible eyelid loop. Reconstructing that relationship in lid-local units is more reliable than transferring an invisible interior landmark directly, especially on characters whose scene has no separate eye mesh.
Parameters
mesh· str · requiredeyelid_tip_points· Optional[Dict[str, Vector3]] · default None
Related functions
solve_reference_eyelid_tip_points
api.dcc.maya.solve_reference_eyelid_tip_points(...)- Signature
solve_reference_eyelid_tip_points(mesh: str) -> Dict[str, Vector3]- Target
maya_tools.Rigging.joint_placer.solve_reference_eyelid_tip_points- Source
maya_tools/Rigging/joint_placer.py:2163- Name status
- Friendly call available
Transfer eyelid tips by weighted exact-topology vertex correspondence. Eyelid surface patches are nearly planar, so a free affine fit can produce a valid mathematical transform with a wildly incorrect ray direction. Inverse-distance interpolation of the authored neighboring vertices keeps every result on the corresponding eyelid loop.
Parameters
mesh· str · required
Related functions
solve_reference_internal_head_points
api.dcc.maya.solve_reference_internal_head_points(...)- Signature
solve_reference_internal_head_points(- Target
maya_tools.Rigging.joint_placer.solve_reference_internal_head_points- Source
maya_tools/Rigging/joint_placer.py:2904- Name status
- Friendly call available
Fit neck, skull, jaw, teeth, and tongue without surface extrapolation. These pivots sit inside the skull or oral cavity, where nearest-surface patches are frequently close to planar. A local affine solve can then become ill-conditioned and throw the joint toward the face. Blend the normalized authored pivots from the closest topology-compatible rigs instead; this keeps the centerline stable while retaining age/proportion differences from the reference corpus.
Parameters
mesh· str · requiredreference_count· int · default 5excluded_case_ids· Iterable[str] · default ()
Related functions
solve_reference_joint_roll_vectors
api.dcc.maya.solve_reference_joint_roll_vectors(...)- Signature
solve_reference_joint_roll_vectors(- Target
maya_tools.Rigging.joint_placer.solve_reference_joint_roll_vectors- Source
maya_tools/Rigging/joint_placer.py:4894- Name status
- Friendly call available
Transfer approved local-Y roll while retaining target positions/X aims. The production rigs agree on a relative arm and digit frame. Positions may differ substantially between characters, so copying Euler values is not a valid comparison. Instead, rotate each approved reference frame by the shortest arc from its signed local X to the target bone's signed local X, then average the transported local-Y vectors. This changes roll only; target pivots and the target bone direction remain authoritative.
Parameters
mesh· str · requireddesired_x_by_name· Dict[str, om.MVector] · required
Related functions
solve_reference_thumb_dorsal_vectors
api.dcc.maya.solve_reference_thumb_dorsal_vectors(...)- Signature
solve_reference_thumb_dorsal_vectors(mesh: str) -> Dict[str, Vector3]- Target
maya_tools.Rigging.joint_placer.solve_reference_thumb_dorsal_vectors- Source
maya_tools/Rigging/joint_placer.py:1950- Name status
- Friendly call available
Transfer approved thumb roll vectors through matching mesh topology.
Parameters
mesh· str · required
Related functions
solve_reference_thumb_knuckle_z_vectors
api.dcc.maya.solve_reference_thumb_knuckle_z_vectors(...)- Signature
solve_reference_thumb_knuckle_z_vectors(mesh: str) -> Dict[str, Vector3]- Target
maya_tools.Rigging.joint_placer.solve_reference_thumb_knuckle_z_vectors- Source
maya_tools/Rigging/joint_placer.py:2052- Name status
- Friendly call available
Transfer the approved local-Z thumb direction through mesh topology. A shortest-arc bone aim preserves the reference roll approximately, but it cannot account for character-specific deformation around the thumb mound. Exact-topology affine transfer makes local Z follow the visible knuckle surface while leaving the joint positions and local-X aims authoritative.
Parameters
mesh· str · required
Related functions
solve_reference_toe_points
api.dcc.maya.solve_reference_toe_points(...)- Signature
solve_reference_toe_points(- Target
maya_tools.Rigging.joint_placer.solve_reference_toe_points- Source
maya_tools/Rigging/joint_placer.py:2926- Name status
- Friendly call available
Fit toe bases at the authored ball pivots and tips inside the mesh end.
Parameters
mesh· str · requiredreference_count· int · default 5excluded_case_ids· Iterable[str] · default ()
Related functions
solve_scene_brow_mesh_points
api.dcc.maya.solve_scene_brow_mesh_points(...)- Signature
solve_scene_brow_mesh_points(body_mesh: str) -> Dict[str, Vector3]- Target
maya_tools.Rigging.joint_placer.solve_scene_brow_mesh_points- Source
maya_tools/Rigging/joint_placer.py:2474- Name status
- Friendly call available
Sample separate eyebrow meshes into smooth medial-to-lateral joint arcs.
Parameters
body_mesh· str · required
Related functions
solve_scene_eye_mesh_centers
api.dcc.maya.solve_scene_eye_mesh_centers(...)- Signature
solve_scene_eye_mesh_centers(body_mesh: str) -> Dict[str, Vector3]- Target
maya_tools.Rigging.joint_placer.solve_scene_eye_mesh_centers- Source
maya_tools/Rigging/joint_placer.py:2410- Name status
- Friendly call available
Use actual eyeball geometry, including a single combined two-eye mesh.
Parameters
body_mesh· str · required
Related functions
solve_scene_oral_mesh_points
api.dcc.maya.solve_scene_oral_mesh_points(...)- Signature
solve_scene_oral_mesh_points(body_mesh: str) -> Dict[str, Vector3]- Target
maya_tools.Rigging.joint_placer.solve_scene_oral_mesh_points- Source
maya_tools/Rigging/joint_placer.py:2431- Name status
- Friendly call available
Place teeth and tongue joints from separate feature meshes when present.
Parameters
body_mesh· str · required
Related functions
solve_studio_template_points
api.dcc.maya.solve_studio_template_points(...)- Signature
solve_studio_template_points(- Target
maya_tools.Rigging.joint_placer.solve_studio_template_points- Source
maya_tools/Rigging/joint_placer.py:1577- Name status
- Friendly call available
Scale the authored studio skeleton into the target mesh as the proposal.
Parameters
mesh· str · requiredtemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATE
Related functions
solve_template_joint_roll_vectors
api.dcc.maya.solve_template_joint_roll_vectors(...)- Signature
solve_template_joint_roll_vectors(- Target
maya_tools.Rigging.joint_placer.solve_template_joint_roll_vectors- Source
maya_tools/Rigging/joint_placer.py:4988- Name status
- Friendly call available
Transport each named joint's authored rig-template roll to its fitted X.
Parameters
desired_x_by_name· Dict[str, om.MVector] · requiredtemplate_path· str · default DEFAULT_PLACEMENT_TEMPLATE
Related functions
solve_topology_reference_points
api.dcc.maya.solve_topology_reference_points(...)- Signature
solve_topology_reference_points(- Target
maya_tools.Rigging.joint_placer.solve_topology_reference_points- Source
maya_tools/Rigging/joint_placer.py:1786- Name status
- Friendly call available
Transfer an approved skeleton through identical production topology.
Parameters
mesh· str · required
Related functions
solve_vertex_weights
api.dcc.maya.solve_vertex_weights(...)- Signature
solve_vertex_weights(- Target
maya_tools.Rigging.auto_skinner.solve_vertex_weights- Source
maya_tools/Rigging/auto_skinner.py:433- Name status
- Friendly call available
Parameters
vertex· str · requiredsegments· Sequence[Tuple[str, str]] · requiredmax_influences· int · default DEFAULT_MAX_INFLUENCESfalloff_power· float · default 2.0
Related functions
solve_vertex_weights_from_position
api.dcc.maya.solve_vertex_weights_from_position(...)- Signature
solve_vertex_weights_from_position(- Target
maya_tools.Rigging.auto_skinner.solve_vertex_weights_from_position- Source
maya_tools/Rigging/auto_skinner.py:451- Name status
- Friendly call available
Parameters
pos· om.MVector · requiredsegments· Sequence[BindSegment] · requiredmax_influences· int · default DEFAULT_MAX_INFLUENCESfalloff_power· float · default 2.0
Related functions
sort_reverse_hierarchy
api.dcc.maya.sort_reverse_hierarchy(...)- Signature
sort_reverse_hierarchy(node_list)- Target
maya_tools.Animation.anim_export.anim_export.sort_reverse_hierarchy- Source
maya_tools/Animation/anim_export/anim_export.py:349- Name status
- Friendly call available
Sorts DAG nodes in reverse hierarchy order (children before parents). Assumes all nodes are given as full paths or unique enough to convert to full paths.
Parameters
node_list· required
stable_node_name
api.dcc.maya.stable_node_name(...)- Signature
stable_node_name(node)- Target
maya_tools.Rigging.mocap.hik_mapping.stable_node_name- Source
maya_tools/Rigging/mocap/hik_mapping.py:35- Name status
- Friendly call available
Return the shortest namespace-qualified name stable under reparenting.
Parameters
node· required
Related functions
store_all_control_cv_positions
api.dcc.maya.store_all_control_cv_positions(...)- Signature
store_all_control_cv_positions(store_node=MODULE_STORE_NODE)- Target
maya_tools.Rigging.create_rig_core.store_all_control_cv_positions- Source
maya_tools/Rigging/create_rig_core.py:5226- Name status
- Friendly call available
Store all control cv positions. :param store_node: store node :return: result
Parameters
store_node· default MODULE_STORE_NODE
Related functions
store_rig_connections
api.dcc.maya.store_rig_connections(...)- Signature
store_rig_connections(controls_list, module_name)- Target
maya_tools.Rigging.create_rig.store_rig_connections- Source
maya_tools/Rigging/create_rig.py:5598- Name status
- Friendly call available
Queries space switches, external constraints, and output connections for controls_list and stores them in GLOBAL_RIG_STORE[module_name]. :param controls_list: list of control nodes to query :param module_name: name of the module :return: None
Parameters
controls_list· requiredmodule_name· required
Related functions
straighten_core_spine_points
api.dcc.maya.straighten_core_spine_points(...)- Signature
straighten_core_spine_points(- Target
maya_tools.Rigging.joint_placer.straighten_core_spine_points- Source
maya_tools/Rigging/joint_placer.py:3177- Name status
- Friendly call available
Keep the fitted spine on one straight pelvis-to-neck centerline. Preserve the target mesh's fitted vertebral heights and end pivots; remove independent depth/lateral recentering from intermediate vertebrae, which otherwise produces a visibly kinked chain.
Parameters
points· Dict[str, Vector3] · requiredquery· Optional['MeshInteriorQuery'] · default None
Related functions
strip_ctrl_shape_and_rename
api.dcc.maya.strip_ctrl_shape_and_rename(...)- Signature
strip_ctrl_shape_and_rename(ctrl)- Target
maya_tools.Rigging.create_rig_core.strip_ctrl_shape_and_rename- Source
maya_tools/Rigging/create_rig_core.py:5912- Name status
- Friendly call available
Delete all shapes under the transform and rename it. Args: ctrl (str): Control node name to process. Returns: str: The new node name. :param ctrl: ctrl :return: result
Parameters
ctrl· required
Related functions
tag_pose_metadata
api.dcc.maya.tag_pose_metadata(...)- Signature
tag_pose_metadata(root_joint: str, pose_type: str, pose_angle_degrees: float) -> None- Target
maya_tools.Rigging.joint_placer.tag_pose_metadata- Source
maya_tools/Rigging/joint_placer.py:3827- Name status
- Friendly call available
Parameters
root_joint· str · requiredpose_type· str · requiredpose_angle_degrees· float · required
Related functions
train_model
api.dcc.maya.train_model(...)- Signature
train_model(example_directory, registry_path, output_path)- Target
maya_tools.Rigging.joint_placement_ml.train_model- Source
maya_tools/Rigging/joint_placement_ml.py:271- Name status
- Friendly call available
Train and save a model; activate it only when grouped holdout passes.
Parameters
example_directory· requiredregistry_path· requiredoutput_path· required
transfer_fbx_animation_dialog
api.dcc.maya.transfer_fbx_animation_dialog(...)- Signature
transfer_fbx_animation_dialog(**kwargs: Any) -> dict[str, Any] | None- Target
maya_tools.Rigging.mocap.fbx_to_control_rig.transfer_fbx_animation_dialog- Source
maya_tools/Rigging/mocap/fbx_to_control_rig.py:195- Name status
- Friendly call available
Pick the source FBX, Maya rig, companion HIK FBX, and output scene. Cancellation leaves the scene unchanged. The dialog offers the selected target's companion HIK FBX or a separately selected characterized sister FBX for the animation skeleton. An embedded HIK definition takes priority. Explicit ``source_mapping`` and ``source_tpose_frame`` can be passed in ``kwargs`` for an uncharacterized source without a companion FBX.
Parameters
**kwargs· Any · required
Related functions
transfer_fbx_animation_to_control_rig
api.dcc.maya.transfer_fbx_animation_to_control_rig(...)- Signature
transfer_fbx_animation_to_control_rig(- Target
maya_tools.Rigging.mocap.fbx_to_control_rig.transfer_fbx_animation_to_control_rig- Source
maya_tools/Rigging/mocap/fbx_to_control_rig.py:49- Name status
- Friendly call available
Transfer a selected animation FBX onto a selected Maya control rig. The animation FBX's embedded locked HIK character is preferred. An uncharacterized source uses a selected sister ``source_hik_fbx`` or, when omitted, tries the selected target's companion HIK skeleton. Their HIK slots and full joint lineages must match; unrelated skeletons fail closed. An explicit ``source_mapping`` instead needs a known T-pose frame. ``mapping_profile`` optionally overrides the target slot map. Otherwise the selected companion HIK FBX supplies a profile for the control bake. Both stages open clean Maya scenes. Save any current scene before calling. Outputs are refused when present unless ``overwrite`` is explicit.
Parameters
animation_fbx· str | Path · requiredrig_scene· str | Path · requiredtarget_hik_fbx· str | Path · requiredoutput_scene· str | Path · requiredmapping_profile· str | Path | None · default Nonesolved_fbx· str | Path | None · default Nonesource_mapping· dict[str, dict[str, Any]] | None · default Nonesource_hik_fbx· str | Path | None · default Nonesource_tpose_frame· float | None · default Nonetarget_character· str | None · default Nonerig_namespace· str · default 'CharacterRig'solved_namespace· str · default 'RetargetSolved'overwrite· bool · default Falseforce_discard_scene· bool · default False
Related functions
transfer_fbx_to_engine
api.dcc.maya.transfer_fbx_to_engine(...)- Signature
transfer_fbx_to_engine(- Target
maya_tools.Rigging.mocap.fbx_to_engine.transfer_fbx_to_engine- Source
maya_tools/Rigging/mocap/fbx_to_engine.py:9- Name status
- Friendly call available
Retarget, bake animator controls, then export only target deform joints. All inputs and both user-facing outputs are preflighted before Maya changes scenes. The companion/slot checks and clean-FBX reopen audit are delegated to their validated stages; no source or rig file is overwritten.
Parameters
animation_fbx· str | Path · requiredrig_scene· str | Path · requiredtarget_hik_fbx· str | Path · requiredoutput_scene· str | Path · requiredoutput_fbx· str | Path · requiredsource_hik_fbx· str | Path | None · default Nonesource_mapping· dict[str, dict[str, Any]] | None · default Nonesource_tpose_frame· float | None · default Nonemapping_profile· str | Path | None · default Nonetarget_character· str | None · default Noneoverwrite· bool · default Falseforce_discard_scene· bool · default False
transfer_skin_weights
api.dcc.maya.transfer_skin_weights(...)- Signature
transfer_skin_weights(- Target
maya_tools.Rigging.skinning_utils.transfer_skin_weights- Source
maya_tools/Rigging/skinning_utils.py:96- Name status
- Friendly call available
Transfer skin weights from source meshes to a target mesh. Args: source_meshes (list[str]) target_mesh (str) Returns: dict | bool
Parameters
source_meshes· requiredtarget_mesh· required
Related functions
transfer_skin_weights_from_selection
api.dcc.maya.transfer_skin_weights_from_selection(...)- Signature
transfer_skin_weights_from_selection(remove_unused_influences=True)- Target
maya_tools.Rigging.skinning_utils.transfer_skin_weights_from_selection- Source
maya_tools/Rigging/skinning_utils.py:80- Name status
- Friendly call available
Transfer skin weights from selected source meshes to the last selected mesh.
Parameters
remove_unused_influences· default True
Related functions
translate_imported_meshes
api.dcc.maya.translate_imported_meshes(...)- Signature
translate_imported_meshes(- Target
maya_tools.Animation.bridge_import.translate_imported_meshes- Source
maya_tools/Animation/bridge_import.py:55- Name status
- Friendly call available
Move only visible meshes supplied by the preceding Maya import stage.
Parameters
objects· list[str] · requiredtranslation· list[float] · requiredrelative· bool · default True
undo_chunk
api.dcc.maya.undo_chunk(...)- Signature
undo_chunk(name: str) -> Iterator[None]- Target
maya_tools.Rigging.undo_utils.undo_chunk- Source
maya_tools/Rigging/undo_utils.py:17- Name status
- Friendly call available
Group nested rig edits into one Maya undo step.
Parameters
name· str · required
undoable
api.dcc.maya.undoable(...)- Signature
undoable(name: str) -> Callable[[_F], _F]- Target
maya_tools.Rigging.undo_utils.undoable- Source
maya_tools/Rigging/undo_utils.py:34- Name status
- Friendly call available
Decorate a public Maya operation with a nested-safe undo chunk.
Parameters
name· str · required
unlock_studio_joint_channels
api.dcc.maya.unlock_studio_joint_channels(...)- Signature
unlock_studio_joint_channels(- Target
maya_tools.Rigging.joint_placer.unlock_studio_joint_channels- Source
maya_tools/Rigging/joint_placer.py:13116- Name status
- Friendly call available
Leave every studio joint transform channel unlocked and keyable.
Parameters
root· str · requirednamespace· str · default ''
Related functions
unqualified_name
api.dcc.maya.unqualified_name(...)- Signature
unqualified_name(node)- Target
maya_tools.Rigging.mocap.hik_mapping.unqualified_name- Source
maya_tools/Rigging/mocap/hik_mapping.py:29- Name status
- Friendly call available
Return a DAG and namespace independent Maya node name.
Parameters
node· required
Related functions
update_ground
api.dcc.maya.update_ground(...)- Signature
update_ground(rig_root: Optional[str] = None) -> dict[str, Any]- Target
maya_tools.Rigging.vehicle_rig.update_ground- Source
maya_tools/Rigging/vehicle_rig.py:960- Name status
- Friendly call available
Parameters
rig_root· Optional[str] · default None
Related functions
update_joint_setup_for_import
api.dcc.maya.update_joint_setup_for_import(...)- Signature
update_joint_setup_for_import(facial_joints)- Target
maya_tools.Animation.anim_export.anim_export.update_joint_setup_for_import- Source
maya_tools/Animation/anim_export/anim_export.py:215- Name status
- Friendly call available
Sets up hierachy to match the Face Archetype Skeleton :param facial_joints: list of facial joints :return:
Parameters
facial_joints· required
Related functions
update_maya_script_path
api.dcc.maya.update_maya_script_path(...)- Signature
update_maya_script_path(new_path)- Target
maya_tools.maya_setup.update_maya_script_path- Source
maya_tools/maya_setup.py:10- Name status
- Friendly call available
Update MAYA_SCRIPT_PATH environment variable for the current Windows user.
Parameters
new_path· required
Related functions
update_registered_live_rigs
api.dcc.maya.update_registered_live_rigs(...)- Signature
update_registered_live_rigs(*, refresh_viewport: bool = True) -> int- Target
maya_tools.Rigging.vehicle_rig.update_registered_live_rigs- Source
maya_tools/Rigging/vehicle_rig.py:1184- Name status
- Friendly call available
Evaluate registered rigs now; intended for a Qt viewport heartbeat.
Parameters
refresh_viewport· bool · default True
Related functions
validate_anatomical_layout
api.dcc.maya.validate_anatomical_layout(...)- Signature
validate_anatomical_layout(- Target
maya_tools.Rigging.joint_placer.validate_anatomical_layout- Source
maya_tools/Rigging/joint_placer.py:3207- Name status
- Friendly call available
Return actionable hierarchy/order problems in an otherwise valid volume solution.
Parameters
points· Dict[str, Vector3] · requiredbounds· Dict[str, object] · requiredframe· Optional[PlacementFrame] · default None
Related functions
validate_body_joint_map
api.dcc.maya.validate_body_joint_map(...)- Signature
validate_body_joint_map(body_joint_map: dict, required_slots: Iterable[str] = CORE_HIK_SLOTS) -> List[str]- Target
maya_tools.Rigging.joint_placer.validate_body_joint_map- Source
maya_tools/Rigging/joint_placer.py:3995- Name status
- Friendly call available
Parameters
body_joint_map· dict · requiredrequired_slots· Iterable[str] · default CORE_HIK_SLOTS
Related functions
validate_points_inside_mesh
api.dcc.maya.validate_points_inside_mesh(...)- Signature
validate_points_inside_mesh(- Target
maya_tools.Rigging.joint_placer.validate_points_inside_mesh- Source
maya_tools/Rigging/joint_placer.py:3145- Name status
- Friendly call available
Return deform landmarks whose positions cannot be verified in the mesh.
Parameters
mesh· str · requiredpoints· Dict[str, Vector3] · requiredquery· Optional[MeshInteriorQuery] · default None
Related functions
validate_studio_final_joint_placement
api.dcc.maya.validate_studio_final_joint_placement(...)- Signature
validate_studio_final_joint_placement(- Target
maya_tools.Rigging.joint_placer.validate_studio_final_joint_placement- Source
maya_tools/Rigging/joint_placer.py:10721- Name status
- Friendly call available
Reject post-fit hierarchy drift and grossly displaced joint pivots.
Parameters
mesh· str · requiredroot· str · requiredfitted_positions· Optional[Dict[str, Vector3]] · default Nonestage· str · default 'final'validate_orientations· bool · default Falsevalidate_center_face_alignment· bool · default Truevalidate_fingertip_centering· bool · default Truevalidate_neck2_midpoint· bool · default Truevalidate_nose_root_local_zero· bool · default True
Related functions
validate_t_pose_channels
api.dcc.maya.validate_t_pose_channels(...)- Signature
validate_t_pose_channels(joint_map)- Target
maya_tools.Rigging.mocap.setup_hik.validate_t_pose_channels- Source
maya_tools/Rigging/mocap/setup_hik.py:1582- Name status
- Friendly call available
Validate mapped channels before the UI opens its pose undo transaction.
Parameters
joint_map· required
Related functions
world_align_origin_and_pelvis
api.dcc.maya.world_align_origin_and_pelvis(...)- Signature
world_align_origin_and_pelvis(root_joint: str) -> None- Target
maya_tools.Rigging.joint_placer.world_align_origin_and_pelvis- Source
maya_tools/Rigging/joint_placer.py:3906- Name status
- Friendly call available
Parameters
root_joint· str · required
Related functions
write_report
api.dcc.maya.write_report(...)- Signature
write_report(report: Dict[str, object], path: str) -> str- Target
maya_tools.Rigging.joint_placement_regression.write_report- Source
maya_tools/Rigging/joint_placement_regression.py:754- Name status
- Friendly call available
Parameters
report· Dict[str, object] · requiredpath· str · required
zero_origin_translation_preserving_children
api.dcc.maya.zero_origin_translation_preserving_children(...)- Signature
zero_origin_translation_preserving_children(root_joint: str) -> None- Target
maya_tools.Rigging.joint_placer.zero_origin_translation_preserving_children- Source
maya_tools/Rigging/joint_placer.py:3915- Name status
- Friendly call available
Put the rig-space origin at world zero without moving the skeleton.
Parameters
root_joint· str · required
Related functions
zero_studio_digit_non_curl_rotations
api.dcc.maya.zero_studio_digit_non_curl_rotations(...)- Signature
zero_studio_digit_non_curl_rotations(- Target
maya_tools.Rigging.joint_placer.zero_studio_digit_non_curl_rotations- Source
maya_tools/Rigging/joint_placer.py:9403- Name status
- Friendly call available
Bake digit rest frames into jointOrient so only curl is in rotateZ.
Parameters
namespace· str · default ''
Related functions
zero_studio_elbow_bind_rotations
api.dcc.maya.zero_studio_elbow_bind_rotations(...)- Signature
zero_studio_elbow_bind_rotations(- Target
maya_tools.Rigging.joint_placer.zero_studio_elbow_bind_rotations- Source
maya_tools/Rigging/joint_placer.py:9345- Name status
- Friendly call available
Keep fitted lowerarm bind orientation on rotate, never jointOrient. The fitted world frame is preserved exactly while its Euler values are stored in the animator-facing rotate channels. Joint Orient and Rotate Axis remain zero, and every channel stays editable.
Parameters
namespace· str · default ''
Related functions
zero_studio_eyelid_tip_rotates
api.dcc.maya.zero_studio_eyelid_tip_rotates(...)- Signature
zero_studio_eyelid_tip_rotates(- Target
maya_tools.Rigging.joint_placer.zero_studio_eyelid_tip_rotates- Source
maya_tools/Rigging/joint_placer.py:12529- Name status
- Friendly call available
Zero terminal eyelid rotate channels after all orientation passes.
Parameters
root· str · required
Related functions
get_main_window_pointer
api.dcc.maya.call('maya_tools.Cinematics.SequenceUI.sequence_utils.get_main_window_pointer', ...)- Signature
get_main_window_pointer()- Target
maya_tools.Cinematics.SequenceUI.sequence_utils.get_main_window_pointer- Source
maya_tools/Cinematics/SequenceUI/sequence_utils.py:36- Name status
- Use the full target path
Get the Maya main window pointer :return:
Parameters
None documented.
Related functions
get_main_window_pointer
api.dcc.maya.call('maya_tools.Rigging.mocap.hik_ui.get_main_window_pointer', ...)- Signature
get_main_window_pointer()- Target
maya_tools.Rigging.mocap.hik_ui.get_main_window_pointer- Source
maya_tools/Rigging/mocap/hik_ui.py:159- Name status
- Use the full target path
Get the Maya main window pointer :return:
Parameters
None documented.
Related functions
Registered host operations
These are planner and bridge operations, not individual Python wrapper methods. Availability depends on a connected host, its bridge, required inputs, and the operation’s execution mode.
Maya Export FBX
animation.export · host_native · read-only or UI action
Export selected Maya meshes or baked rig animation to FBX.
Required inputs: export_path.
Maya FBX to Control Rig
animation.fbx_to_control_rig · host_native · changes project
Transfer a selected animation FBX via HumanIK to a selected Maya control rig; optionally use a characterized sister FBX, then bake animator controls into a saved Maya scene.
Required inputs: animation_fbx, rig_scene, target_hik_fbx, output_scene.
Maya Retarget Controls and Export Engine FBX
animation.fbx_to_engine · host_native · changes project
Retarget a selected FBX through HumanIK, bake Maya animator controls, then export only the clean target deform skeleton for an engine import.
Required inputs: animation_fbx, rig_scene, target_hik_fbx, output_scene, output_fbx.
Maya HumanIK Retarget FBX
animation.hik_retarget · host_native · changes project
Retarget a characterized or companion-matched animated FBX through HumanIK and export the baked target skeleton.
Required inputs: target_rig, source_fbx, output_fbx.
Maya Inspect Animation Range
animation.inspect_range · host_native · read-only or UI action
Report the first and last actual animation keys in the Maya scene.
Required inputs: none.
Maya Set Transform Key
animation.set_key · host_native · changes project
Set and verify one Maya transform key at a requested frame.
Required inputs: object_name, attribute, value, frame.
Maya API Call
api.call · host_native · changes project
Call a Maya Python API function, including OpenMaya class methods, with explicit JSON-friendly args/kwargs through the Maya bridge. Use script.run when host objects must be shared across steps.
Required inputs: function.
Maya Create Constraint
constraints.create · host_native · changes project
Create a parent/orient/point/scale/aim constraint between named Maya objects.
Required inputs: constraint_type, targets, driven.
Maya Import FBX
io.import_fbx · host_native · changes project
Import an FBX asset into the current Maya scene and report created nodes.
Required inputs: filepath.
Maya Assign Material
material.assign · host_native · changes project
Assign a material to the current selection or named objects.
Required inputs: material_name.
Maya Create Material
material.create · host_native · changes project
Create a Maya material/shader and shading group.
Required inputs: material_name.
Maya Set Material Color
material.set_color · host_native · changes project
Set a material color from a color name, RGB triplet, or hex value.
Required inputs: material_name, color.
Maya Adjust Facial Control Rig
maya.adjust_facial_control_rig · host_native · changes project
Set/key facial control values for a MetaHuman-style Maya facial rig and optionally export animation.
Required inputs: none.
Maya Scan Facial Rig
maya.scan_facial_rig · host_native · read-only or UI action
Read back Maya facial-control candidates, current selection, and playback range before facial animation edits.
Required inputs: none.
Maya Create Primitive
modeling.create_primitive · host_native · changes project
Create a geometric mesh primitive (cube, sphere, cylinder) in Maya.
Required inputs: primitive_type.
Maya Connect Attributes
node.connect_attr · host_native · changes project
Connect one Maya attribute plug to another, such as ctrl.tx to joint.rx.
Required inputs: source_attr, destination_attr.
Maya Disconnect Attributes
node.disconnect_attr · host_native · changes project
Disconnect one Maya attribute plug from another.
Required inputs: source_attr, destination_attr.
Maya Create Rigged Transfer Proxy
pipeline.create_rigged_proxy · host_native · changes project
Create a disposable skinned and animated proxy for validating skeletal FBX transfer pipelines.
Required inputs: none.
Maya Inspect Rigged Transfer Proxy
pipeline.inspect_rigged_proxy · host_native · read-only or UI action
Read back joint hierarchy, skin normalization, animation range, and material assignment.
Required inputs: none.
Maya Translate Imported Meshes
pipeline.translate_imported_meshes · host_native · changes project
Move visible meshes from an upstream Maya import and verify world positions.
Required inputs: objects, translation.
Maya Auto Skinner
rigging.auto_skinner · host_native · changes project
Calculate skin weights for a mesh in Maya.
Required inputs: mesh_name.
Maya Create Rig
rigging.create_rig · host_native · changes project
Build a control rig for a character model in Maya.
Required inputs: character_name.
Maya Load Biped Rig Template
rigging.load_biped_template · host_native · changes project
Import or reference the studio biped rig template containing RFL joints, then report root and RFL joints.
Required inputs: none.
Maya Scene Cleanup
scene.cleanup · host_native · changes project
Clean up scene hierarchy, delete history, and optimize nodes.
Required inputs: none.
Maya Create Control
scene.create_control · host_native · changes project
Create a simple Maya NURBS control curve and optionally position/select it.
Required inputs: none.
Maya Create Locator
scene.create_locator · host_native · changes project
Create a Maya locator and optionally select it.
Required inputs: none.
Maya List Joints
scene.list_joints · host_native · read-only or UI action
List Maya joint/bone names from the current scene.
Required inputs: none.
Maya List Nodes
scene.ls · host_native · read-only or UI action
List Maya nodes using cmds.ls flags such as selection=True or type='joint'.
Required inputs: none.
Maya Move Object
scene.move · host_native · changes project
Move one or more Maya nodes by a small translation vector.
Required inputs: objects, translation.
Maya Select Objects
scene.select · host_native · changes project
Select one or more Maya nodes by name.
Required inputs: objects.
Maya Run Script
script.run · host_native · changes project
Run one complete Maya Python script through the authenticated bridge; OpenMaya objects stay inside Maya for that call.
Required inputs: code.
Maya Add Skin Influence
skin.add_influence · host_native · changes project
Add an influence joint to an existing skinCluster.
Required inputs: mesh, influence.
Maya Bind Skin
skin.bind · host_native · changes project
Bind a mesh to one or more joint influences with skinCluster.
Required inputs: mesh, influences.
Maya Remove Skin Influence
skin.remove_influence · host_native · changes project
Remove an influence joint from an existing skinCluster.
Required inputs: mesh, influence.
Maya Set Skin Weights
skin.set_weights · host_native · changes project
Set skin weights for selected or named components with skinPercent.
Required inputs: mesh, influence, weight.
Maya Tool Call
tool.call · host_native · changes project
Call a maya_tools package function with explicit args/kwargs.
Required inputs: function.