|
Blender V4.3
|
Go to the source code of this file.
Macros | |
| #define | BONESEL_ROOT (1u << 29) |
| #define | BONESEL_TIP (1u << 30) |
| #define | BONESEL_BONE (1u << 31) |
| #define | BONESEL_ANY (BONESEL_TIP | BONESEL_ROOT | BONESEL_BONE) |
| #define | EBONE_VISIBLE(arm, ebone) ANIM_bone_is_visible_editbone(arm, ebone) |
| #define | EBONE_SELECTABLE(arm, ebone) (EBONE_VISIBLE(arm, ebone) && !((ebone)->flag & BONE_UNSELECTABLE)) |
| #define | EBONE_EDITABLE(ebone) |
| #define | BONE_SELECT_PARENT 0 |
| #define | BONE_SELECT_CHILD 1 |
| #define | ARM_GROUPS_NAME 1 |
| #define | ARM_GROUPS_ENVELOPE 2 |
| #define | ARM_GROUPS_AUTO 3 |
Enumerations | |
| enum | ePosePathCalcRange { POSE_PATH_CALC_RANGE_CURRENT_FRAME , POSE_PATH_CALC_RANGE_CHANGED , POSE_PATH_CALC_RANGE_FULL } |
| #define ARM_GROUPS_AUTO 3 |
Definition at line 187 of file ED_armature.hh.
Referenced by ED_object_vgroup_calc_from_armature(), PAINT_OT_weight_from_bones(), and blender::ed::object::parent_set().
| #define ARM_GROUPS_ENVELOPE 2 |
Definition at line 186 of file ED_armature.hh.
Referenced by ED_object_vgroup_calc_from_armature(), PAINT_OT_weight_from_bones(), and blender::ed::object::parent_set().
| #define ARM_GROUPS_NAME 1 |
Definition at line 185 of file ED_armature.hh.
Referenced by ED_object_vgroup_calc_from_armature(), and blender::ed::object::parent_set().
| #define BONE_SELECT_CHILD 1 |
Definition at line 55 of file ED_armature.hh.
Referenced by ARMATURE_OT_select_hierarchy(), and POSE_OT_select_hierarchy().
| #define BONE_SELECT_PARENT 0 |
Definition at line 54 of file ED_armature.hh.
Referenced by ARMATURE_OT_select_hierarchy(), armature_select_hierarchy_exec(), POSE_OT_select_hierarchy(), and pose_select_hierarchy_exec().
| #define BONESEL_ANY (BONESEL_TIP | BONESEL_ROOT | BONESEL_BONE) |
Definition at line 40 of file ED_armature.hh.
Referenced by bone_mouse_select_menu(), do_armature_box_select(), and ed_armature_pick_bone_from_selectbuffer_impl().
| #define BONESEL_BONE (1u << 31) |
Definition at line 39 of file ED_armature.hh.
Referenced by armature_edit_select_op_apply(), do_lasso_select_armature__doSelectBone(), do_lasso_select_armature__doSelectBone_clip_content(), ArmatureBoneDrawStrategyBBone::draw_bone(), ArmatureBoneDrawStrategyCustomShape::draw_bone(), ArmatureBoneDrawStrategyEnvelope::draw_bone(), ArmatureBoneDrawStrategyLine::draw_bone(), ArmatureBoneDrawStrategyOcta::draw_bone(), ArmatureBoneDrawStrategyWire::draw_bone(), ED_armature_edit_select_op_from_tagged(), and get_nearest_editbonepoint().
| #define BONESEL_ROOT (1u << 29) |
Definition at line 37 of file ED_armature.hh.
Referenced by armature_edit_select_op_apply(), do_lasso_select_armature__doSelectBone(), ArmatureBoneDrawStrategyLine::draw_bone(), draw_points(), ED_armature_edit_select_op_from_tagged(), and get_nearest_editbonepoint().
| #define BONESEL_TIP (1u << 30) |
Definition at line 38 of file ED_armature.hh.
Referenced by armature_edit_select_op_apply(), do_lasso_select_armature__doSelectBone(), ArmatureBoneDrawStrategyLine::draw_bone(), draw_points(), ED_armature_edit_select_op_from_tagged(), and get_nearest_editbonepoint().
| #define EBONE_EDITABLE | ( | ebone | ) |
Definition at line 48 of file ED_armature.hh.
Referenced by armature_autoside_names_exec(), armature_calc_roll_exec(), armature_parent_clear_exec(), armature_parent_clear_invoke(), armature_parent_set_exec(), armature_parent_set_invoke(), armature_roll_clear_exec(), armature_switch_direction_exec(), bone_collection_assign_editbones(), screen_ctx_selected_bones_(), and screen_ctx_visible_or_editable_bones_().
| #define EBONE_SELECTABLE | ( | arm, | |
| ebone ) (EBONE_VISIBLE(arm, ebone) && !((ebone)->flag & BONE_UNSELECTABLE)) |
Definition at line 45 of file ED_armature.hh.
Referenced by armature_edit_select_op_apply(), armature_select_hierarchy_exec(), armature_select_linked_pick_invoke(), armature_select_mirror_exec(), armature_select_more(), armature_shortest_path_select(), armature_symmetrize_exec(), bone_collection_select(), do_circle_select_armature__doSelectBone(), do_circle_select_armature__doSelectBone_clip_content(), blender::ed::outliner::do_outliner_ebone_select_recursive(), ED_armature_edit_select_pick_bone(), blender::ed::object::jump_to_bone(), blender::ed::outliner::outliner_select_sync_to_edit_bone(), select_similar_bone_collection(), select_similar_bone_color(), select_similar_children(), select_similar_children_immediate(), select_similar_data_pchan(), select_similar_direction(), select_similar_length(), select_similar_prefix(), select_similar_siblings(), and select_similar_suffix().
| #define EBONE_VISIBLE | ( | arm, | |
| ebone ) ANIM_bone_is_visible_editbone(arm, ebone) |
Definition at line 43 of file ED_armature.hh.
Referenced by armature_calc_roll_exec(), armature_click_extrude_exec(), armature_duplicate_selected_exec(), armature_edit_select_op_apply(), armature_extrude_exec(), armature_flip_names_exec(), armature_foreachScreenBone(), armature_hide_exec(), armature_roll_clear_exec(), armature_select_linked_exec(), armature_select_mirror_exec(), armature_select_more_less(), armature_switch_direction_exec(), armature_symmetrize_exec(), createTransArmatureVerts(), do_circle_select_armature__doSelectBone(), do_circle_select_armature__doSelectBone_clip_content(), do_lasso_select_armature__doSelectBone(), do_lasso_select_armature__doSelectBone_clip_content(), blender::draw::overlay::Armatures::draw_armature_edit(), ED_armature_edit_deselect_all_visible(), gizmo_3d_foreach_selected(), screen_ctx_selected_bones_(), screen_ctx_visible_or_editable_bones_(), separate_armature_bones(), and separate_armature_exec().
| enum ePosePathCalcRange |
Corresponds to eAnimvizCalcRange.
| Enumerator | |
|---|---|
| POSE_PATH_CALC_RANGE_CURRENT_FRAME | |
| POSE_PATH_CALC_RANGE_CHANGED | |
| POSE_PATH_CALC_RANGE_FULL | |
Definition at line 267 of file ED_armature.hh.
| Base * ED_armature_base_and_bone_from_select_buffer | ( | blender::Span< Base * > | bases, |
| unsigned int | select_id, | ||
| Bone ** | r_bone ) |
For callers that don't need the pose channel.
| Base * ED_armature_base_and_ebone_from_select_buffer | ( | blender::Span< Base * > | bases, |
| unsigned int | select_id, | ||
| EditBone ** | r_ebone ) |
| Base * ED_armature_base_and_pchan_from_select_buffer | ( | blender::Span< Base * > | bases, |
| unsigned int | select_id, | ||
| bPoseChannel ** | r_pchan ) |
| void ED_armature_bone_rename | ( | Main * | bmain, |
| bArmature * | arm, | ||
| const char * | oldnamep, | ||
| const char * | newnamep ) |
Bone Rename (called by UI for renaming a bone). Seems messy, but that's what you get with not using pointers but channel names :).
Definition at line 151 of file armature_naming.cc.
References BKE_animdata_fix_paths_rename_all(), BKE_armature_find_bone_name(), BKE_grease_pencil_vgroup_name_update(), BKE_modifiers_uses_armature(), BKE_object_defgroup_find_name(), BKE_object_supports_vertex_groups(), BKE_pose_channel_find_name(), BKE_pose_channels_is_valid(), BLI_assert, BLI_ghash_haskey(), BLI_ghash_insert(), BLI_ghash_remove(), UVWarpModifierData::bone_dst, UVWarpModifierData::bone_src, bArmature::bonehash, bPose::chanbase, bPose::chanhash, constraint_bone_name_fix(), Object::constraints, Object::data, DEG_id_tag_update(), Camera::dof, ed_armature_bone_unique_name(), ED_armature_ebone_find_name(), ED_armature_ebone_unique_name(), bArmature::edbo, eGpencilModifierType_Armature, eGpencilModifierType_Hook, eModifierType_Hook, eModifierType_UVWarp, ListBase::first, CameraDOFSettings::focus_object, CameraDOFSettings::focus_subtarget, Object::greasepencil_modifiers, bArmature::id, Camera::id, Object::id, ID_RECALC_GEOMETRY, ID_RECALC_SYNC_TO_EVAL, blender::StringRefBase::is_empty(), bGPdata::layers, LISTBASE_FOREACH, MAXBONENAME, Object::modifiers, bDeformGroup::name, Bone::name, bPoseChannel::name, EditBone::name, ID::next, OB_CAMERA, View3D::ob_center, View3D::ob_center_bone, OB_GPENCIL_LEGACY, OB_GREASE_PENCIL, ArmatureGpencilModifierData::object, HookGpencilModifierData::object, HookModifierData::object, UVWarpModifierData::object_dst, UVWarpModifierData::object_src, Main::objects, PARBONE, Object::parent, Object::parsubstr, Object::partype, Object::pose, Main::screens, SPACE_VIEW3D, STREQ, STREQLEN, STRNCPY, HookGpencilModifierData::subtarget, HookModifierData::subtarget, and Object::type.
Referenced by armature_autoside_names_exec(), ED_armature_bones_flip_names(), blender::ed::outliner::namebutton_fn(), and pose_autoside_names_exec().
| void ED_armature_bones_flip_names | ( | Main * | bmain, |
| bArmature * | arm, | ||
| ListBase * | bones_names, | ||
| bool | do_strip_numbers ) |
Renames (by flipping) all selected bones at once.
This way if we are flipping related bones (e.g., Bone.L, Bone.R) at the same time all the bones are safely renamed, without conflicting with each other.
| arm | Armature the bones belong to |
| bones_names | List of bone conflict elements (LinkData pointing to names). |
| do_strip_numbers | if set, try to get rid of dot-numbers at end of bone names. |
Definition at line 424 of file armature_naming.cc.
References BLI_addtail(), BLI_string_flip_side_name(), ED_armature_bone_rename(), LISTBASE_FOREACH, MAXBONENAME, BoneFlipNameData::name, BoneFlipNameData::name_flip, STREQ, and STRNCPY.
Referenced by armature_flip_names_exec(), and pose_flip_names_exec().
Get current armature from the context, including properties editor pinning.
Definition at line 63 of file armature_edit.cc.
References blender::ed::object::context_active_object(), CTX_data_pointer_get_type(), PointerRNA::data, and OB_ARMATURE.
Referenced by active_bone_collection_poll(), bone_collection_add_exec(), bone_collection_add_poll(), bone_collection_move_exec(), bone_collection_remove_exec(), and uiTemplateBoneCollectionTree().
Default bone add, returns it selected, but without tail set.
Definition at line 60 of file armature_add.cc.
References ThemeWireColor::active, BLI_addtail(), BONE_TIPSEL, EditBone::color, copy_v3_fl(), EditBone::curve_in_x, EditBone::curve_in_z, EditBone::curve_out_x, EditBone::curve_out_z, BoneColor::custom, EditBone::dist, EditBone::ease1, EditBone::ease2, ED_armature_ebone_unique_name(), bArmature::edbo, EditBone::flag, MEM_callocN, EditBone::name, EditBone::rad_head, EditBone::rad_tail, EditBone::roll1, EditBone::roll2, EditBone::scale_in, EditBone::scale_out, EditBone::segments, ThemeWireColor::select, ThemeWireColor::solid, STRNCPY, EditBone::weight, EditBone::xwidth, and EditBone::zwidth.
Referenced by add_points_bone(), armature_bone_primitive_add_exec(), armature_click_extrude_exec(), ED_armature_ebone_add_primitive(), blender::io::usd::import_skeleton(), blender::ed::object::modifier_skin_armature_create(), and blender::ed::object::skin_armature_bone_create().
Definition at line 100 of file armature_add.cc.
References bArmature::act_edbone, bArmature_Runtime::active_collection, ANIM_armature_bonecoll_assign_editbone(), Object::data, DATA_, ED_armature_ebone_add(), ED_armature_edit_deselect_all(), EditBone::head, length(), bArmature::runtime, EditBone::tail, and zero_v3().
Referenced by blender::ed::object::object_armature_add_exec().
Definition at line 1016 of file armature_add.cc.
References BLI_duplicatelist(), and EditBone::bone_collections.
Referenced by duplicateEditBoneObjects().
Return a pointer to the bone of the given name
Definition at line 243 of file armature_utils.cc.
References BLI_findstring(), and offsetof.
Referenced by apply_armature_pose2bones_exec(), applyarmature_adjust_edit_position(), applyarmature_process_selected_recursive(), armature_delete_ebone_cb(), armature_dissolve_ebone_cb(), armature_duplicate_selected_exec(), armature_symmetrize_exec(), bone_collection_assign_named_mode_specific(), ED_armature_bone_rename(), ED_armature_ebone_get_mirrored(), ED_armature_join_objects_exec(), editbone_unique_check(), blender::ed::object::jump_to_bone(), and separate_armature_bones().
| EditBone * ED_armature_ebone_find_shared_parent | ( | EditBone * | ebone_child[], |
| unsigned int | ebone_child_tot ) |
Finds the first parent shared by ebone_child
| ebone_child | Children bones to search |
| ebone_child_tot | Size of the ebone_child array |
Definition at line 155 of file armature_utils.cc.
References EBONE_TEMP_UINT, and EditBone::parent.
Referenced by armature_shortest_path_pick_invoke().
Definition at line 218 of file armature_utils.cc.
References EditBone::head, len, len_v3v3(), madd_v3_v3v3fl(), mat3_to_vec_roll(), EditBone::roll, and EditBone::tail.
Referenced by ED_armature_ebone_from_mat4().
Definition at line 229 of file armature_utils.cc.
References add_v3_v3(), BLI_ASSERT_UNIT_M3, copy_m3_m4(), copy_v3_v3(), ED_armature_ebone_from_mat3(), EditBone::head, sub_v3_v3(), and EditBone::tail.
Referenced by blender::io::usd::import_skeleton().
Definition at line 254 of file armature_utils.cc.
References BLI_string_flip_side_name(), ED_armature_ebone_find_name(), MAXBONENAME, EditBone::name, and STREQ.
Referenced by armature_align_bones_exec(), armature_autoside_names_exec(), armature_calc_roll_exec(), armature_click_extrude_exec(), armature_duplicate_selected_exec(), armature_extrude_exec(), armature_flip_names_exec(), armature_parent_set_exec(), armature_roll_clear_exec(), armature_select_mirror_exec(), armature_select_mirrored_ex(), armature_tag_select_mirrored(), createTransArmatureVerts(), ED_armature_ebone_transform_mirror_update(), get_symmetrized_bone(), postEditBoneDuplicate(), screen_ctx_selected_bones_(), and screen_ctx_visible_or_editable_bones_().
Definition at line 145 of file armature_utils.cc.
References EditBone::parent.
Referenced by armature_shortest_path_pick_invoke(), blender::ed::outliner::do_outliner_ebone_select_recursive(), and blender::ed::outliner::restrictbutton_recursive_ebone().
Definition at line 837 of file armature_utils.cc.
References BLI_addtail(), BLI_assert, BLI_duplicatelist(), BLI_listbase_is_empty(), IDP_CopyProperty_ex(), LIB_ID_CREATE_NO_USER_REFCOUNT, LISTBASE_FOREACH, MEM_dupallocN, and EditBone::prop.
Referenced by undoarm_from_editarm(), and undoarm_to_editarm().
| void ED_armature_ebone_listbase_free | ( | ListBase * | lb, |
| bool | do_id_user ) |
Free list of bones and their properties.
Definition at line 818 of file armature_utils.cc.
References BLI_freelistN(), BLI_listbase_clear(), EditBone::bone_collections, ListBase::first, IDP_FreeProperty_ex(), MEM_freeN(), EditBone::next, and EditBone::prop.
Referenced by undoarm_free_data(), and undoarm_to_editarm().
| void ED_armature_ebone_listbase_temp_clear | ( | ListBase * | lb | ) |
Definition at line 867 of file armature_utils.cc.
References LISTBASE_FOREACH.
Referenced by do_armature_box_select(), do_lasso_select_armature(), preEditBoneDuplicate(), undoarm_from_editarm(), and undoarm_to_editarm().
Definition at line 140 of file armature_utils.cc.
References ED_armature_ebone_remove_ex().
Referenced by armature_delete_selected_exec().
| clear_connected | When false caller is responsible for keeping the flag in a valid state. |
Definition at line 125 of file armature_utils.cc.
References bone_free(), bArmature::edbo, EditBone::flag, LISTBASE_FOREACH, and EditBone::parent.
Referenced by armature_dissolve_selected_exec(), and ED_armature_ebone_remove().
| float ED_armature_ebone_roll_to_vector | ( | const EditBone * | bone, |
| const float | align_axis[3], | ||
| bool | axis_only ) |
Adjust bone roll to align Z axis with vector align_axis is in local space and is normalized.
Definition at line 193 of file armature_edit.cc.
References angle_v3v3(), BLI_ASSERT_UNIT_V3, cross_v3_v3v3(), dot_v3v3(), fabsf, EditBone::head, M_PI_2, negate_v3(), nor, normalize_v3(), project_v3_v3v3_normalized(), sub_v3_v3v3(), EditBone::tail, and vec_roll_to_mat3_normalized().
Referenced by armature_calc_roll_exec(), and recalcData_edit_armature().
| void ED_armature_ebone_select_set | ( | EditBone * | ebone, |
| bool | select ) |
Definition at line 922 of file armature_utils.cc.
References BLI_assert, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, BONE_UNSELECTABLE, ED_armature_ebone_selectflag_set(), EditBone::flag, flag, and select().
Referenced by armature_select_hierarchy_exec(), armature_select_less(), armature_select_linked_impl(), armature_select_more(), armature_select_more_less(), armature_split_exec(), armature_symmetrize_exec(), bone_collection_select(), blender::ed::object::jump_to_bone(), blender::ed::outliner::outliner_select_sync_to_edit_bone(), select_similar_bone_collection(), select_similar_bone_color(), select_similar_children(), select_similar_children_immediate(), select_similar_data_pchan(), select_similar_direction(), select_similar_length(), select_similar_prefix(), select_similar_siblings(), select_similar_suffix(), and blender::ed::outliner::tree_element_active_ebone__sel().
Definition at line 916 of file armature_utils.cc.
References BLI_assert, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, ED_armature_ebone_selectflag_set(), EditBone::flag, and flag.
Referenced by armature_select_less().
Definition at line 910 of file armature_utils.cc.
References BLI_assert, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, ED_armature_ebone_selectflag_set(), EditBone::flag, and flag.
Referenced by armature_select_more().
Definition at line 884 of file armature_utils.cc.
References BONE_CONNECTED, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, EditBone::flag, and EditBone::parent.
Referenced by armature_dissolve_selected_exec(), armature_select_mirror_exec(), armature_select_more_less(), and ED_armature_edit_select_pick_bone().
Definition at line 893 of file armature_utils.cc.
References BONE_CONNECTED, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, EditBone::flag, flag, and EditBone::parent.
Referenced by armature_select_mirror_exec(), armature_shortest_path_select(), ED_armature_ebone_select_set(), ED_armature_ebone_selectflag_disable(), and ED_armature_ebone_selectflag_enable().
Definition at line 188 of file armature_utils.cc.
References EditBone::head, normalize_v3(), EditBone::parent, EditBone::roll, sub_v3_v3v3(), EditBone::tail, and vec_roll_to_mat3_normalized().
Referenced by armature_calc_roll_exec(), armature_finalize_restpose(), createTransArmatureVerts(), ED_armature_ebone_to_mat4(), ED_armature_edit_transform(), ED_armature_join_objects_exec(), and getTransformOrientation_ex().
Definition at line 208 of file armature_utils.cc.
References copy_m4_m3(), copy_v3_v3(), ED_armature_ebone_to_mat3(), and EditBone::head.
Referenced by draw_bone_update_disp_matrix_bbone(), draw_bone_update_disp_matrix_default(), and ebone_spline_preview().
| void ED_armature_ebone_transform_mirror_update | ( | bArmature * | arm, |
| EditBone * | ebo, | ||
| bool | check_select ) |
Definition at line 336 of file armature_utils.cc.
References BONE_CONNECTED, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, copy_v3_v3(), EditBone::curve_in_x, EditBone::curve_in_z, EditBone::curve_out_x, EditBone::curve_out_z, EditBone::dist, EditBone::ease1, EditBone::ease2, ED_armature_ebone_get_mirrored(), bArmature::edbo, EditBone::flag, EditBone::head, LISTBASE_FOREACH, EditBone::parent, EditBone::rad_head, EditBone::rad_tail, EditBone::roll, EditBone::roll1, EditBone::roll2, EditBone::scale_in, EditBone::scale_out, EditBone::segments, EditBone::tail, EditBone::weight, EditBone::xwidth, and EditBone::zwidth.
Referenced by ED_armature_edit_transform_mirror_update().
Ensure the bone name is unique. If bone is already in list, pass it as argument to ignore it.
Definition at line 86 of file armature_naming.cc.
References BLI_uniquename_cb(), data, DATA_, editbone_unique_check(), and EditBone::name.
Referenced by armature_extrude_exec(), armature_subdivide_exec(), duplicateEditBoneObjects(), ED_armature_bone_rename(), ED_armature_ebone_add(), and ED_armature_join_objects_exec().
| bool ED_armature_edit_deselect_all | ( | Object * | obedit | ) |
Definition at line 891 of file armature_select.cc.
References BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, Object::data, bArmature::edbo, bArmature::flag, and LISTBASE_FOREACH.
Referenced by armature_bone_primitive_add_exec(), armature_click_extrude_exec(), armature_fill_bones_exec(), ED_armature_ebone_add_primitive(), ED_armature_edit_deselect_all_multi_ex(), blender::ed::object::jump_to_bone(), separate_armature_bones(), and separate_armature_exec().
| bool ED_armature_edit_deselect_all_multi_ex | ( | blender::Span< Base * > | bases | ) |
| bool ED_armature_edit_deselect_all_visible | ( | Object * | obedit | ) |
Definition at line 904 of file armature_select.cc.
References BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, Object::data, EBONE_VISIBLE, ED_armature_edit_sync_selection(), bArmature::edbo, bArmature::flag, and LISTBASE_FOREACH.
Referenced by armature_circle_select(), do_lasso_select_armature(), and ED_armature_edit_deselect_all_visible_multi_ex().
| bool ED_armature_edit_deselect_all_visible_multi | ( | bContext * | C | ) |
Definition at line 944 of file armature_select.cc.
References BKE_view_layer_array_from_bases_in_edit_mode_unique_data(), CTX_data_ensure_evaluated_depsgraph(), depsgraph, ED_armature_edit_deselect_all_multi_ex(), ED_view3d_viewcontext_init(), ViewContext::scene, ViewContext::v3d, and ViewContext::view_layer.
| bool ED_armature_edit_deselect_all_visible_multi_ex | ( | blender::Span< Base * > | bases | ) |
| void ED_armature_edit_free | ( | bArmature * | arm | ) |
Definition at line 785 of file armature_utils.cc.
References bArmature::act_edbone, BLI_freelistN(), bArmature::edbo, ListBase::first, IDP_FreeProperty(), LISTBASE_FOREACH, and MEM_freeN().
Referenced by ArmatureExporter::add_armature_bones(), apply_armature_pose2bones_exec(), ED_armature_join_objects_exec(), ED_armature_origin_set(), ED_armature_to_edit(), blender::ed::object::editmode_load_free_ex(), blender::io::usd::import_skeleton(), ArmatureImporter::make_armatures(), blender::ed::object::modifier_skin_armature_create(), separate_armature_bones(), and separate_armature_exec().
Perform a selection operation on elements which have been 'touched', use for lasso & border select but can be used elsewhere too.
Tagging is done via #EditBone.temp.i using: BONESEL_ROOT, BONESEL_TIP, BONESEL_BONE And optionally ignoring end-points using the BONESEL_ROOT, BONESEL_TIP right shifted 16 bits. (used when the values are clipped outside the view).
| sel_op | eSelectOp type. |
Definition at line 1224 of file armature_select.cc.
References armature_edit_select_op_apply(), BONE_CONNECTED, BONE_DONE, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, BONESEL_BONE, BONESEL_ROOT, BONESEL_TIP, ED_armature_edit_sync_selection(), bArmature::edbo, ELEM, and LISTBASE_FOREACH.
Referenced by do_armature_box_select(), and do_lasso_select_armature().
| bool ED_armature_edit_select_pick | ( | bContext * | C, |
| const int | mval[2], | ||
| const SelectPick_Params * | params ) |
Bone selection picking for armature edit-mode in the view3d.
Definition at line 1131 of file armature_select.cc.
References CTX_data_ensure_evaluated_depsgraph(), depsgraph, ED_armature_edit_select_pick_bone(), ED_view3d_viewcontext_init(), get_nearest_editbonepoint(), ViewContext::mval, and params.
Referenced by view3d_select_exec().
| bool ED_armature_edit_select_pick_bone | ( | bContext * | C, |
| Base * | basact, | ||
| EditBone * | ebone, | ||
| int | selmask, | ||
| const SelectPick_Params * | params ) |
Definition at line 959 of file armature_select.cc.
References bArmature::act_edbone, blender::ed::object::base_activate(), BKE_object_is_in_editmode(), BKE_view_layer_active_base_get(), BKE_view_layer_array_from_bases_in_edit_mode_unique_data(), BKE_view_layer_synced_ensure(), BLI_assert, BLI_assert_unreachable, BONE_CONNECTED, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_view3d(), Object::data, DEG_id_tag_update(), EBONE_SELECTABLE, ED_armature_ebone_selectflag_get(), ED_armature_edit_deselect_all_multi_ex(), ED_armature_edit_sync_selection(), ED_outliner_select_sync_from_edit_bone_tag(), bArmature::edbo, EditBone::flag, bArmature::id, ID_RECALC_SYNC_TO_EVAL, NC_OBJECT, ND_BONE_SELECT, Base::object, params, EditBone::parent, SEL_OP_ADD, SEL_OP_AND, SEL_OP_SET, SEL_OP_SUB, SEL_OP_XOR, and WM_event_add_notifier().
Referenced by bone_select_menu_exec(), and ED_armature_edit_select_pick().
| void ED_armature_edit_sync_selection | ( | ListBase * | edbo | ) |
Sync selection to parent for connected children.
Definition at line 39 of file armature_utils.cc.
References BONE_CONNECTED, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, BONE_UNSELECTABLE, and LISTBASE_FOREACH.
Referenced by armature_circle_select(), armature_click_extrude_exec(), armature_delete_selected_exec(), armature_dissolve_selected_exec(), armature_duplicate_selected_exec(), armature_extrude_exec(), armature_hide_exec(), armature_parent_clear_exec(), armature_reveal_exec(), armature_select_hierarchy_exec(), armature_select_linked_impl(), armature_select_mirror_exec(), armature_select_more_less(), armature_shortest_path_pick_invoke(), armature_symmetrize_exec(), bone_collection_assign_editbones(), bone_collection_assign_named_mode_specific(), ED_armature_edit_deselect_all_visible(), ED_armature_edit_select_op_from_tagged(), ED_armature_edit_select_pick_bone(), and blender::ed::object::jump_to_bone().
See BKE_armature_transform for object-mode transform.
Definition at line 80 of file armature_edit.cc.
References copy_m3_m4(), ED_armature_ebone_to_mat3(), bArmature::edbo, LISTBASE_FOREACH, mat3_to_vec_roll(), mat4_to_scale(), mul_m3_m3m3(), mul_m4_v3(), and normalize_m3().
Referenced by ED_armature_transform(), and blender::ed::object::edit_armature_coords_and_quats_apply_with_mat4().
| void ED_armature_edit_transform_mirror_update | ( | Object * | obedit | ) |
If edit-bone (partial) selected, copy data. context; edit-mode armature, with mirror editing enabled.
Definition at line 411 of file armature_utils.cc.
References Object::data, ED_armature_ebone_transform_mirror_update(), bArmature::edbo, and LISTBASE_FOREACH.
Referenced by armature_symmetrize_exec(), ED_transverts_update_obedit(), recalcData_edit_armature(), and recalcData_pose().
Put edit-mode back in Object.
Definition at line 647 of file armature_utils.cc.
References bArmature::act_bone, bArmature::act_edbone, ANIM_armature_bonecoll_reconstruct(), Bone::arm_head, Bone::arm_roll, Bone::arm_tail, armature_finalize_restpose(), Bone::bbone_flag, EditBone::bbone_flag, Bone::bbone_mapping_mode, EditBone::bbone_mapping_mode, Bone::bbone_next, EditBone::bbone_next, Bone::bbone_next_flag, EditBone::bbone_next_flag, Bone::bbone_next_type, EditBone::bbone_next_type, Bone::bbone_prev, EditBone::bbone_prev, Bone::bbone_prev_flag, EditBone::bbone_prev_flag, Bone::bbone_prev_type, EditBone::bbone_prev_type, BKE_armature_bone_hash_free(), BKE_armature_bone_hash_make(), BKE_armature_bonelist_free(), BKE_pose_rebuild(), BLI_addtail(), EditBone::bone, EditBone::bone_collections, bone_free(), bArmature::bonebase, Bone::childbase, Bone_Runtime::collections, Bone::color, EditBone::color, copy_v3_v3(), Bone::curve_in_x, EditBone::curve_in_x, Bone::curve_in_z, EditBone::curve_in_z, Bone::curve_out_x, EditBone::curve_out_x, Bone::curve_out_z, EditBone::curve_out_z, Object::data, DEG_id_tag_update(), Bone::dist, EditBone::dist, Bone::ease1, EditBone::ease1, Bone::ease2, EditBone::ease2, bArmature::edbo, ListBase::first, Bone::flag, EditBone::flag, G, G_DEBUG, EditBone::head, bArmature::id, Object::id, IDP_CopyProperty(), Bone::inherit_scale_mode, EditBone::inherit_scale_mode, Bone::layer, EditBone::layer, len_squared_v3v3(), LISTBASE_FOREACH, MEM_callocN, Bone::name, EditBone::name, EditBone::next, ID::next, Main::objects, Bone::parent, EditBone::parent, printf, Bone::prop, EditBone::prop, Bone::rad_head, EditBone::rad_head, Bone::rad_tail, EditBone::rad_tail, Bone::roll, EditBone::roll, Bone::roll1, EditBone::roll1, Bone::roll2, EditBone::roll2, Bone::runtime, Bone::scale_in, EditBone::scale_in, Bone::scale_out, EditBone::scale_out, Bone::segments, EditBone::segments, square_f(), STRNCPY, EditBone::tail, EditBone::temp, Bone::weight, EditBone::weight, Bone::xwidth, EditBone::xwidth, Bone::zwidth, and EditBone::zwidth.
Referenced by apply_armature_pose2bones_exec(), ED_armature_join_objects_exec(), ED_armature_origin_set(), blender::ed::object::editmode_load_free_ex(), blender::io::usd::import_skeleton(), ArmatureImporter::make_armatures(), blender::ed::object::modifier_skin_armature_create(), separate_armature_bones(), and separate_armature_exec().
| int ED_armature_join_objects_exec | ( | bContext * | C, |
| wmOperator * | op ) |
Join armature exec is exported for use in object->join objects operator.
Definition at line 297 of file armature_relations.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), bArmature::adt, Object::adt, ADT_MERGECOPY_KEEP_DST, ANIM_armature_runtime_refresh(), atan2f, blender::ed::object::base_free_and_unlink(), BKE_animdata_copy(), BKE_animdata_merge_copy(), BKE_fcurves_main_cb(), BKE_pose_channels_hash_free(), BKE_report(), BLI_addtail(), BLI_assert, BLI_ghash_free(), BLI_ghash_insert(), BLI_ghash_str_new(), BLI_remlink(), BLI_strdup(), EditBone::bone_collections, bPose::chanbase, bArmature::collection_array, bArmature::collection_array_num, copy_m4_m3(), CTX_data_active_object(), CTX_DATA_BEGIN, CTX_DATA_END, CTX_data_main(), CTX_data_scene(), Object::data, DEG_id_tag_update(), DEG_id_tag_update_ex(), DEG_relations_tag_update(), ED_armature_ebone_find_name(), ED_armature_ebone_to_mat3(), ED_armature_ebone_unique_name(), ED_armature_edit_free(), ED_armature_from_edit(), ED_armature_to_edit(), bArmature::edbo, ListBase::first, EditBone::head, bArmature::id, Object::id, ID_RECALC_GEOMETRY, ID_RECALC_SELECT, invert_m4_m4(), invert_m4_m4_safe_ortho(), join_armature_remap_collection(), joined_armature_fix_animdata_cb(), joined_armature_fix_links(), LISTBASE_FOREACH, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup(), MEM_freeN(), Object::mode, mul_m4_m3m4(), mul_m4_m4m4(), mul_m4_v3(), bPoseChannel::name, EditBone::name, NC_SCENE, ND_LAYER_CONTENT, ND_OB_ACTIVE, bPoseChannel::next, OB_ARMATURE, OPERATOR_CANCELLED, OPERATOR_FINISHED, Object::pose, wmOperator::reports, EditBone::roll, RPT_WARNING, STRNCPY, EditBone::tail, Object::type, unit_m4(), and WM_event_add_notifier().
Referenced by blender::ed::object::object_join_exec().
| Object * ED_armature_object_and_ebone_from_select_buffer | ( | blender::Span< Object * > | objects, |
| unsigned int | select_id, | ||
| EditBone ** | r_ebone ) |
| void ED_armature_origin_set | ( | Main * | bmain, |
| Object * | ob, | ||
| const float | cursor[3], | ||
| int | centermode, | ||
| int | around ) |
| centermode | 0 == do center, 1 == center new, 2 == center cursor. |
editors/object/. Definition at line 126 of file armature_edit.cc.
References add_v3_v3(), BKE_object_is_in_editmode(), copy_v3_v3(), Object::data, ED_armature_edit_free(), ED_armature_from_edit(), ED_armature_to_edit(), bArmature::edbo, INIT_MINMAX, invert_m4_m4(), LISTBASE_FOREACH, Object::loc, mid_v3_v3v3(), min, minmax_v3v3_v3(), mul_m4_v3(), mul_mat3_m4_v3(), mul_v3_fl(), Object::runtime, sub_v3_v3(), V3D_AROUND_CENTER_BOUNDS, and zero_v3().
Referenced by blender::ed::object::object_origin_set_exec().
Definition at line 368 of file armature_select.cc.
References bPoseChannel::bone, ED_armature_pick_pchan(), and xy.
Referenced by pose_select_connected_invoke().
Definition at line 354 of file armature_select.cc.
References ed_armature_pick_bone_impl(), and xy.
Referenced by armature_select_linked_pick_invoke(), armature_shortest_path_pick_invoke(), and blender::ui::sample_data_from_3d_view().
| bPoseChannel * ED_armature_pick_pchan | ( | bContext * | C, |
| const int | xy[2], | ||
| bool | findunsel, | ||
| Base ** | r_base ) |
Definition at line 361 of file armature_select.cc.
References ed_armature_pick_bone_impl(), and xy.
Referenced by ED_armature_pick_bone(), and blender::ui::sample_data_from_3d_view().
| bool bool void ED_armature_pose_select_in_wpaint_mode | ( | const Scene * | scene, |
| ViewLayer * | view_layer, | ||
| Base * | base_select ) |
While in weight-paint mode, a single pose may be active as well. While not common, it's possible we have multiple armatures deforming a mesh.
This function de-selects all other objects, and selects the new base. It can't be set to the active object because we need to keep this set to the weight paint object.
Definition at line 285 of file pose_select.cc.
References blender::ed::object::BA_DESELECT, blender::ed::object::BA_SELECT, blender::ed::object::base_select(), BASE_SELECTED, BKE_modifiers_get_virtual_modifierlist(), BKE_view_layer_active_object_get(), BKE_view_layer_base_find(), BKE_view_layer_synced_ensure(), BLI_assert, eModifierType_Armature, Base::flag, Object::mode, ModifierData::next, OB_ARMATURE, OB_MODE_ALL_WEIGHT_PAINT, ArmatureModifierData::object, and ModifierData::type.
Referenced by bone_select_menu_exec(), and ed_object_select_pick().
| bool ED_armature_pose_select_pick_bone | ( | const Scene * | scene, |
| ViewLayer * | view_layer, | ||
| View3D * | v3d, | ||
| Object * | ob, | ||
| Bone * | bone, | ||
| const SelectPick_Params * | params ) |
| bool bool ED_armature_pose_select_pick_with_buffer | ( | const Scene * | scene, |
| ViewLayer * | view_layer, | ||
| View3D * | v3d, | ||
| Base * | base, | ||
| const GPUSelectResult * | hit_results, | ||
| int | hits, | ||
| const SelectPick_Params * | params, | ||
| bool | do_nearest ) |
Called for mode-less pose selection. assumes the active object is still on old situation.
| void ED_armature_to_edit | ( | bArmature * | arm | ) |
Put armature in edit-mode.
Definition at line 805 of file armature_utils.cc.
References bArmature::act_bone, bArmature::act_edbone, bArmature::bonebase, ED_armature_edit_free(), bArmature::edbo, make_boneList(), and MEM_callocN.
Referenced by ArmatureExporter::add_armature_bones(), apply_armature_pose2bones_exec(), ED_armature_join_objects_exec(), ED_armature_origin_set(), blender::ed::object::editmode_enter_ex(), blender::io::usd::import_skeleton(), ArmatureImporter::make_armatures(), separate_armature_bones(), and separate_armature_exec().
Definition at line 116 of file armature_edit.cc.
References BKE_armature_transform(), ED_armature_edit_transform(), and bArmature::edbo.
| void ED_armature_undosys_type | ( | UndoType * | ut | ) |
Export for ED_undo_sys.
Definition at line 314 of file editarmature_undo.cc.
References armature_undosys_foreach_ID_ref(), armature_undosys_poll(), armature_undosys_step_decode(), armature_undosys_step_encode(), armature_undosys_step_free(), UndoType::flags, UndoType::name, UndoType::poll, UndoType::step_decode, UndoType::step_encode, UndoType::step_foreach_ID_ref, UndoType::step_free, UndoType::step_size, and UNDOTYPE_FLAG_NEED_CONTEXT_FOR_ENCODE.
Referenced by ED_undosys_type_init().
| void ED_keymap_armature | ( | wmKeyConfig * | keyconf | ) |
Definition at line 163 of file armature_ops.cc.
References ED_operator_editarmature(), ED_operator_posemode(), wmKeyMap::poll, RGN_TYPE_WINDOW, SPACE_EMPTY, and WM_keymap_ensure().
Referenced by ED_spacetypes_keymap().
| void ED_mesh_deform_bind_callback | ( | Object * | object, |
| MeshDeformModifierData * | mmd, | ||
| Mesh * | cagemesh, | ||
| float * | vertexcos, | ||
| int | verts_num, | ||
| float | cagemat[4][4] ) |
Definition at line 1757 of file meshlaplacian.cc.
References MeshDeformModifierData::bindcagecos, MeshDeformModifierData::bindmat, BKE_mesh_wrapper_ensure_mdata(), BKE_modifier_get_original(), BKE_modifier_mdef_compact_influences(), MeshDeformModifierData::cage_verts_num, copy_m4_m4(), copy_v3_v3(), end_progress_bar(), harmonic_coordinates_bind(), MEM_callocN, MEM_freeN(), MeshDeformModifierData::modifier, mul_m4_v3(), mul_v3_m4v3(), MeshDeformModifierData::object, start_progress_bar(), Mesh::verts_num, MeshDeformModifierData::verts_num, and waitcursor().
Referenced by blender::ed::object::meshdeform_bind_exec().
Definition at line 98 of file pose_edit.cc.
References BKE_id_is_editable(), BKE_report(), CTX_data_main(), CTX_wm_reports(), ED_object_posemode_enter_ex(), Object::id, NC_SCENE, ND_MODE, NS_MODE_POSE, RPT_WARNING, and WM_event_add_notifier().
Referenced by blender::ed::object::posemode_exec().
This function is used to process the necessary updates for.
Definition at line 78 of file pose_edit.cc.
References BKE_id_is_editable(), BLI_assert, DEG_id_tag_update_ex(), Object::id, ID_RECALC_SYNC_TO_EVAL, Object::mode, OB_ARMATURE, OB_MODE_POSE, Object::restore_mode, and Object::type.
Referenced by blender::ed::outliner::do_outliner_item_posemode_toggle(), ED_editors_init(), ED_object_posemode_enter(), blender::ed::object::ed_object_posemode_set_for_weight_paint_ex(), and blender::ed::object::posemode_exec().
Definition at line 126 of file pose_edit.cc.
References CTX_data_main(), ED_object_posemode_exit_ex(), NC_SCENE, ND_MODE, NS_MODE_OBJECT, and WM_event_add_notifier().
Referenced by blender::ed::object::posemode_exec().
Definition at line 113 of file pose_edit.cc.
References DEG_id_tag_update_ex(), Object::id, ID_RECALC_SYNC_TO_EVAL, Object::mode, and Object::restore_mode.
Referenced by blender::ed::outliner::do_outliner_item_posemode_toggle(), blender::ed::object::ed_object_mode_generic_exit_ex(), ED_object_posemode_exit(), blender::ed::object::ed_object_posemode_set_for_weight_paint_ex(), and blender::ed::object::posemode_exec().
| void ED_object_vgroup_calc_from_armature | ( | ReportList * | reports, |
| Depsgraph * | depsgraph, | ||
| Scene * | scene, | ||
| Object * | ob, | ||
| Object * | par, | ||
| int | mode, | ||
| bool | mirror ) |
Definition at line 470 of file armature_skinning.cc.
References add_verts_to_dgroups(), ARM_GROUPS_AUTO, ARM_GROUPS_ENVELOPE, ARM_GROUPS_NAME, BKE_object_defgroup_count(), bone_looper(), bArmature::bonebase, Object::data, depsgraph, ELEM, ListBase::first, vgroup_add_unique_bone_cb(), and blender::ed::object::vgroup_data_clamp_range().
Referenced by blender::ed::object::parent_set(), and weight_from_bones_exec().
| void ED_operatormacros_armature | ( | ) |
Definition at line 127 of file armature_ops.cc.
References OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorTypeMacro::ptr, RNA_boolean_set(), WM_operatortype_append_macro(), and WM_operatortype_macro_define().
Referenced by ED_spacemacros_init().
| void ED_operatortypes_armature | ( | ) |
Definition at line 21 of file armature_ops.cc.
References ARMATURE_OT_align(), ARMATURE_OT_assign_to_collection(), ARMATURE_OT_autoside_names(), ARMATURE_OT_bone_primitive_add(), ARMATURE_OT_calculate_roll(), ARMATURE_OT_click_extrude(), ARMATURE_OT_collection_add(), ARMATURE_OT_collection_assign(), ARMATURE_OT_collection_create_and_assign(), ARMATURE_OT_collection_deselect(), ARMATURE_OT_collection_move(), ARMATURE_OT_collection_remove(), ARMATURE_OT_collection_select(), ARMATURE_OT_collection_unassign(), ARMATURE_OT_collection_unassign_named(), ARMATURE_OT_delete(), ARMATURE_OT_dissolve(), ARMATURE_OT_duplicate(), ARMATURE_OT_extrude(), ARMATURE_OT_fill(), ARMATURE_OT_flip_names(), ARMATURE_OT_hide(), ARMATURE_OT_move_to_collection(), ARMATURE_OT_parent_clear(), ARMATURE_OT_parent_set(), ARMATURE_OT_reveal(), ARMATURE_OT_roll_clear(), ARMATURE_OT_select_all(), ARMATURE_OT_select_hierarchy(), ARMATURE_OT_select_less(), ARMATURE_OT_select_linked(), ARMATURE_OT_select_linked_pick(), ARMATURE_OT_select_mirror(), ARMATURE_OT_select_more(), ARMATURE_OT_select_similar(), ARMATURE_OT_separate(), ARMATURE_OT_shortest_path_pick(), ARMATURE_OT_split(), ARMATURE_OT_subdivide(), ARMATURE_OT_switch_direction(), ARMATURE_OT_symmetrize(), POSE_OT_armature_apply(), POSE_OT_autoside_names(), POSE_OT_blend_to_neighbors(), POSE_OT_blend_with_rest(), POSE_OT_breakdown(), POSE_OT_copy(), POSE_OT_flip_names(), POSE_OT_hide(), POSE_OT_loc_clear(), POSE_OT_paste(), POSE_OT_paths_calculate(), POSE_OT_paths_clear(), POSE_OT_paths_range_update(), POSE_OT_paths_update(), POSE_OT_propagate(), POSE_OT_push(), POSE_OT_quaternions_flip(), POSE_OT_relax(), POSE_OT_reveal(), POSE_OT_rot_clear(), POSE_OT_rotation_mode_set(), POSE_OT_scale_clear(), POSE_OT_select_all(), POSE_OT_select_constraint_target(), POSE_OT_select_grouped(), POSE_OT_select_hierarchy(), POSE_OT_select_linked(), POSE_OT_select_linked_pick(), POSE_OT_select_mirror(), POSE_OT_select_parent(), POSE_OT_transforms_clear(), POSE_OT_user_transforms_clear(), POSE_OT_visual_transform_apply(), POSELIB_OT_apply_pose_asset(), POSELIB_OT_blend_pose_asset(), and WM_operatortype_append().
Referenced by ED_spacetypes_init().
| void ED_pose_bone_select | ( | Object * | ob, |
| bPoseChannel * | pchan, | ||
| bool | select, | ||
| bool | change_active ) |
Utility method for changing the selection status of a bone. change_active determines whether to change the active bone of the armature when selecting pose channels. It is false during range selection otherwise true.
Definition at line 103 of file pose_select.cc.
References bArmature::act_bone, bPoseChannel::bone, BONE_SELECTED, Object::data, ED_pose_bone_select_tag_update(), ELEM, Bone::flag, PBONE_SELECTABLE, Object::pose, and select().
Referenced by click_select_channel_group(), blender::ed::object::jump_to_bone(), and select_pchan_for_action_group().
| void ED_pose_bone_select_tag_update | ( | Object * | ob | ) |
Definition at line 88 of file pose_select.cc.
References ARM_HAS_VIZ_DEPS, BLI_assert, Object::data, DEG_id_tag_update(), bArmature::flag, bArmature::id, Object::id, ID_RECALC_GEOMETRY, ID_RECALC_SELECT, NC_GEOM, NC_OBJECT, ND_BONE_SELECT, ND_DATA, OB_ARMATURE, Object::type, and WM_main_add_notifier().
Referenced by do_pose_tag_select_op_exec(), ED_armature_pose_select_pick_bone(), ED_pose_bone_select(), ED_pose_deselect_all_multi_ex(), blender::ed::object::jump_to_bone(), pose_circle_select(), pose_select_connected_invoke(), pose_select_constraint_target_exec(), pose_select_hierarchy_exec(), pose_select_linked_exec(), pose_select_parent_exec(), pose_select_same_collection(), pose_select_same_color(), and pose_select_same_keyingset().
'select_mode' is usual SEL_SELECT/SEL_DESELECT/SEL_TOGGLE/SEL_INVERT. When true, 'ignore_visibility' makes this func also affect invisible bones (hidden or on hidden layers).
Definition at line 314 of file pose_select.cc.
References BONE_SELECTED, bPose::chanbase, Object::data, bArmature::flag, LISTBASE_FOREACH, PBONE_VISIBLE, Object::pose, pose_do_bone_select(), SEL_DESELECT, SEL_SELECT, and SEL_TOGGLE.
Referenced by click_select_channel_group(), do_pose_tag_select_op_exec(), ED_armature_pose_select_pick_bone(), ED_pose_deselect_all_multi_ex(), blender::ed::object::jump_to_bone(), and pose_circle_select().
Definition at line 393 of file pose_select.cc.
References BKE_object_pose_base_array_get_unique(), CTX_data_ensure_evaluated_depsgraph(), depsgraph, ED_pose_deselect_all_multi_ex(), ED_view3d_viewcontext_init(), ViewContext::scene, ViewContext::v3d, and ViewContext::view_layer.
| bool ED_pose_deselect_all_multi_ex | ( | blender::Span< Base * > | bases, |
| int | select_mode, | ||
| bool | ignore_visibility ) |
Definition at line 59 of file pose_edit.cc.
References BKE_object_pose_armature_get(), blender::ed::object::context_active_object(), CTX_data_active_object(), CTX_wm_area(), and SPACE_PROPERTIES.
Referenced by add_or_move_to_collection_exec(), and ED_operator_posemode_context().
| void ED_pose_recalculate_paths | ( | bContext * | C, |
| Scene * | scene, | ||
| Object * | ob, | ||
| ePosePathCalcRange | range ) |
For the object with pose/action: update paths for those that have got them This should selectively update paths that exist...
To be called from various tools that do incremental updates.
Definition at line 152 of file pose_edit.cc.
References animviz_calc_motionpaths(), animviz_depsgraph_build(), animviz_get_object_motionpaths(), ANIMVIZ_RECALC_PATHS, bPose::avs, BLI_freelistN(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CTX_data_view_layer(), DEG_graph_free(), DEG_id_tag_update(), depsgraph, Object::id, ID_RECALC_SYNC_TO_EVAL, Object::pose, POSE_PATH_CALC_RANGE_CURRENT_FRAME, pose_path_convert_range(), bAnimVizSettings::recalc, TIMEIT_END, and TIMEIT_START.
Referenced by pose_calculate_paths_exec(), pose_clear_transform_generic_exec(), pose_paste_exec(), pose_update_paths_exec(), poseAnim_mapping_autoKeyframe(), recalcData_pose(), and special_aftertrans_update__pose().