Blender  V3.3
Public Attributes | List of all members
bPoseChannel Struct Reference

#include <DNA_action_types.h>

Public Attributes

struct bPoseChannelnext
 
struct bPoseChannelprev
 
IDPropertyprop
 
ListBase constraints
 
char name [64]
 
short flag
 
short ikflag
 
short protectflag
 
short agrp_index
 
char constflag
 
char selectflag
 
char drawflag
 
char bboneflag DNA_DEPRECATED
 
char _pad0 [4]
 
struct Bonebone
 
struct bPoseChannelparent
 
struct bPoseChannelchild
 
struct ListBase iktree
 
struct ListBase siktree
 
bMotionPathmpath
 
struct Objectcustom
 
struct bPoseChannelcustom_tx
 
float custom_scale
 
float custom_scale_xyz [3]
 
float custom_translation [3]
 
float custom_rotation_euler [3]
 
float loc [3]
 
float size [3]
 
float eul [3]
 
float quat [4]
 
float rotAxis [3]
 
float rotAngle
 
short rotmode
 
char _pad [2]
 
float chan_mat [4][4]
 
float pose_mat [4][4]
 
float disp_mat [4][4]
 
float disp_tail_mat [4][4]
 
float constinv [4][4]
 
float pose_head [3]
 
float pose_tail [3]
 
float limitmin [3]
 
float limitmax [3]
 
float stiffness [3]
 
float ikstretch
 
float ikrotweight
 
float iklinweight
 
float roll1
 
float roll2
 
float curve_in_x
 
float curve_in_z
 
float curve_out_x
 
float curve_out_z
 
float ease1
 
float ease2
 
float scale_in_x DNA_DEPRECATED
 
float scale_in_x scale_in_z DNA_DEPRECATED
 
float scale_out_x DNA_DEPRECATED
 
float scale_out_x scale_out_z DNA_DEPRECATED
 
float scale_in [3]
 
float scale_out [3]
 
struct bPoseChannelbbone_prev
 
struct bPoseChannelbbone_next
 
voidtemp
 
bPoseChannelDrawDatadraw_data
 
struct bPoseChannelorig_pchan
 
struct bPoseChannel_Runtime runtime
 

Detailed Description

PoseChannel

A bPoseChannel stores the results of Actions and transform information with respect to the rest-position of bArmature bones.

Definition at line 213 of file DNA_action_types.h.

Member Data Documentation

◆ _pad

char bPoseChannel::_pad[2]

Definition at line 289 of file DNA_action_types.h.

◆ _pad0

char bPoseChannel::_pad0[4]

Definition at line 238 of file DNA_action_types.h.

◆ agrp_index

short bPoseChannel::agrp_index

Index of action-group this bone belongs to (0 = default/no group).

Definition at line 231 of file DNA_action_types.h.

Referenced by animchan_sync_group(), BKE_pose_channel_copy_data(), BKE_pose_remove_group(), and set_pchan_colorset().

◆ bbone_next

struct bPoseChannel* bPoseChannel::bbone_next

◆ bbone_prev

struct bPoseChannel* bPoseChannel::bbone_prev

B-Bone custom handles; set on read file or rebuild pose based on pchan->bone data.

Definition at line 339 of file DNA_action_types.h.

Referenced by BKE_pchan_bbone_handles_get(), BKE_pchan_rebuild_bbone_handles(), BKE_pose_channel_copy_data(), BKE_pose_channels_remove(), BKE_pose_copy_data_ex(), and postEditBoneDuplicate().

◆ bone

struct Bone* bPoseChannel::bone

Set on read file or rebuild pose.

Definition at line 241 of file DNA_action_types.h.

Referenced by action_flip_pchan(), add_pose_transdata(), animchan_sync_group(), animviz_get_object_motionpaths(), apply_targetless_ik(), applyarmature_transfer_properties(), armature_vert_task_with_dvert(), armdef_accumulate_bone(), armdef_evaluate(), b_bone_deform(), BKE_bone_parent_transform_calc_from_pchan(), BKE_constraint_apply_for_pose(), BKE_constraint_mat_convertspace(), BKE_object_defgroup_selected_get(), BKE_object_defgroup_validmap_get(), BKE_pchan_bbone_deform_segment_index(), BKE_pchan_bbone_handles_get(), BKE_pchan_bbone_segments_cache_compute(), BKE_pchan_bbone_spline_params_get(), BKE_pchan_bbone_spline_setup(), BKE_pchan_rebuild_bbone_handles(), BKE_pchan_to_mat4(), BKE_pose_bone_done(), BKE_pose_channel_active_or_first_selected(), BKE_pose_eval_bbone_segments(), BKE_pose_eval_bone(), BKE_pose_is_layer_visible(), BKE_pose_minmax(), BKE_pose_rest(), BKE_pose_update_constraint_flags(), BKE_pose_where_is(), BKE_pose_where_is_bone(), BKE_pose_where_is_bone_tail(), bone_mouse_select_menu(), bone_select_menu_exec(), blender::deg::DepsgraphBuilder::check_pchan_has_bbone(), clear_anim_v3d_exec(), compute_vertex_mask__armature_mode(), constraint_target_to_mat4(), convert_pose(), convert_tree(), createTransPose(), delete_key_v3d_without_keying_set(), dist_bone_deform(), do_circle_select_pose__doSelectBone(), do_lasso_select_pose__do_tag(), do_pose_box_select(), draw_armature_pose(), draw_axes(), draw_bone_box(), draw_bone_degrees_of_freedom(), draw_bone_envelope(), draw_bone_line(), draw_bone_relations(), draw_bone_update_disp_matrix_bbone(), draw_bone_update_disp_matrix_default(), draw_bone_wire(), draw_points(), ED_armature_base_and_bone_from_select_buffer(), ED_armature_pick_bone(), ED_armature_pick_bone_from_selectbuffer(), ed_armature_pick_bone_from_selectbuffer_impl(), ED_object_calc_active_center_for_posemode(), ED_object_jump_to_bone(), ED_object_parent_set(), ED_pose_bone_select(), ED_pose_clear_paths(), ED_pose_deselect_all(), execute_posetree(), getTransformOrientation_ex(), gimbal_axis_pose(), gizmo_bbone_offset_get(), gizmo_bbone_offset_set(), motion_path_cache(), namebutton_fn(), ob_parbone(), outliner_draw_restrictbuts(), outliner_select_sync_from_pose_bone(), outliner_select_sync_to_pose_bone(), pchan_bone_deform(), pchan_circle_doSelectJoint(), pchan_culling_test_bbone(), pchan_culling_test_envelope(), pchan_draw_data_init(), pchan_fn(), pose_bone_do_paste(), pose_channel_in_IK_chain(), pose_do_bone_select(), pose_foreachScreenBone(), pose_grab_with_ik(), pose_grab_with_ik_add(), pose_select_constraint_target_exec(), pose_select_hierarchy_exec(), pose_select_mirror_exec(), pose_select_parent_exec(), pose_select_same_keyingset(), pose_transform_mirror_update(), poselib_apply_pose(), poselib_keytag_pose(), rebuild_pose_bone(), set_pose_keys(), skip_fcurve_selected_data(), snap_curs_to_sel_ex(), snap_sel_to_grid_exec(), snap_selected_to_location(), splineik_evaluate_bone(), splineik_init_tree_from_pchan(), transform_convert_pose_transflags_update(), tree_element_posechannel_activate(), UI_context_copy_to_selected_list(), ui_context_selected_bones_via_pose(), visualkey_get_values(), where_is_ik_bone(), and WIDGETGROUP_armature_spline_poll().

◆ chan_mat

float bPoseChannel::chan_mat[4][4]

◆ child

struct bPoseChannel* bPoseChannel::child

Set on read file or rebuild pose, the 'ik' child, for b-bones.

Definition at line 245 of file DNA_action_types.h.

Referenced by BKE_pchan_bbone_handles_get(), and rebuild_pose_bone().

◆ constflag

char bPoseChannel::constflag

◆ constinv

float bPoseChannel::constinv[4][4]

Inverse result of constraints. doesn't include effect of rest-position, parent, and local transform.

Definition at line 309 of file DNA_action_types.h.

Referenced by add_pose_transdata(), BKE_constraint_apply_for_pose(), BKE_constraints_clear_evalob(), BKE_pose_channel_ensure(), blo_do_versions_pre250(), and pose_channel_flush_to_orig_if_needed().

◆ constraints

ListBase bPoseChannel::constraints

◆ curve_in_x

float bPoseChannel::curve_in_x

◆ curve_in_z

float bPoseChannel::curve_in_z

◆ curve_out_x

float bPoseChannel::curve_out_x

◆ curve_out_z

float bPoseChannel::curve_out_z

◆ custom

struct Object* bPoseChannel::custom

Draws custom object instead of default bone shape.

Note
For the purpose of user interaction (selection, display etc), it's important this value is treated as NULL when ARM_NO_CUSTOM is set.

Definition at line 260 of file DNA_action_types.h.

Referenced by BKE_pchan_minmax(), BKE_pose_channel_copy_data(), BKE_pose_channel_free_ex(), BKE_pose_copy_data_ex(), draw_armature_pose(), draw_axes(), draw_bone_custom_shape(), and updateDuplicateCustomBoneShapes().

◆ custom_rotation_euler

float bPoseChannel::custom_rotation_euler[3]

◆ custom_scale

float bPoseChannel::custom_scale

Definition at line 268 of file DNA_action_types.h.

Referenced by blo_do_versions_270().

◆ custom_scale_xyz

float bPoseChannel::custom_scale_xyz[3]

◆ custom_translation

float bPoseChannel::custom_translation[3]

◆ custom_tx

struct bPoseChannel* bPoseChannel::custom_tx

This is a specific feature to display with another bones transform. Needed in rare cases for advanced rigs, since alternative solutions are highly complicated.

Note
This depends bPoseChannel.custom being set and the ARM_NO_CUSTOM flag being unset.

Definition at line 267 of file DNA_action_types.h.

Referenced by BKE_pchan_minmax(), BKE_pose_channels_remove(), BKE_pose_copy_data_ex(), BKE_pose_rebuild(), draw_axes(), draw_bone_update_disp_matrix_custom(), and postEditBoneDuplicate().

◆ disp_mat

float bPoseChannel::disp_mat[4][4]

◆ disp_tail_mat

float bPoseChannel::disp_tail_mat[4][4]

For display, pose_mat with bone length applied and translated to tail.

Definition at line 304 of file DNA_action_types.h.

Referenced by draw_bone_update_disp_matrix_custom(), draw_bone_update_disp_matrix_default(), and WIDGETGROUP_armature_spline_refresh().

◆ DNA_DEPRECATED [1/5]

char bboneflag bPoseChannel::DNA_DEPRECATED

Definition at line 237 of file DNA_action_types.h.

◆ DNA_DEPRECATED [2/5]

float scale_in_x bPoseChannel::DNA_DEPRECATED

Definition at line 334 of file DNA_action_types.h.

◆ DNA_DEPRECATED [3/5]

float scale_in_x scale_in_z bPoseChannel::DNA_DEPRECATED

Definition at line 334 of file DNA_action_types.h.

◆ DNA_DEPRECATED [4/5]

float scale_out_x scale_out_z bPoseChannel::DNA_DEPRECATED

Definition at line 335 of file DNA_action_types.h.

◆ DNA_DEPRECATED [5/5]

float scale_out_x bPoseChannel::DNA_DEPRECATED

Definition at line 335 of file DNA_action_types.h.

◆ draw_data

bPoseChannelDrawData* bPoseChannel::draw_data

◆ drawflag

char bPoseChannel::drawflag

Definition at line 236 of file DNA_action_types.h.

Referenced by BKE_pose_channel_copy_data().

◆ ease1

float bPoseChannel::ease1

◆ ease2

float bPoseChannel::ease2

◆ eul

float bPoseChannel::eul[3]

◆ flag

short bPoseChannel::flag

◆ ikflag

short bPoseChannel::ikflag

◆ iklinweight

float bPoseChannel::iklinweight

Weight of joint stretch constraint.

Definition at line 324 of file DNA_action_types.h.

Referenced by BKE_pose_channel_copy_data(), and BKE_pose_channel_ensure().

◆ ikrotweight

float bPoseChannel::ikrotweight

Weight of joint rotation constraint.

Definition at line 322 of file DNA_action_types.h.

Referenced by BKE_pose_channel_copy_data(), and BKE_pose_channel_ensure().

◆ ikstretch

float bPoseChannel::ikstretch

◆ iktree

struct ListBase bPoseChannel::iktree

"IK trees" - only while evaluating pose.

Definition at line 245 of file DNA_action_types.h.

Referenced by convert_tree(), create_scene(), iksolver_execute_tree(), initialize_chain(), and initialize_posetree().

◆ limitmax

float bPoseChannel::limitmax[3]

◆ limitmin

float bPoseChannel::limitmin[3]

◆ loc

float bPoseChannel::loc[3]

◆ mpath

bMotionPath* bPoseChannel::mpath

◆ name

char bPoseChannel::name[64]

Need to match bone name length: MAXBONENAME.

Definition at line 222 of file DNA_action_types.h.

Referenced by actcon_get_tarmat(), action_flip_pchan(), animviz_verify_motionpaths(), apply_armature_pose2bones_exec(), applyarmature_adjust_edit_position(), applyarmature_process_selected_recursive(), BKE_constraint_apply_for_pose(), BKE_object_defgroup_validmap_get(), BKE_pose_bone_done(), BKE_pose_channel_ensure(), BKE_pose_channels_hash_ensure(), BKE_pose_channels_is_valid(), BKE_pose_channels_remove(), BKE_pose_constraints_evaluate(), BKE_pose_copy_data_ex(), BKE_pose_copy_result(), BKE_pose_eval_bbone_segments(), BKE_pose_eval_bone(), BKE_pose_iktree_evaluate(), BKE_pose_splineik_evaluate(), bone_mouse_select_menu(), brush_draw_apply(), blender::deg::DepsgraphRelationBuilder::build_driver_data(), blender::deg::DepsgraphNodeBuilder::build_driver_id_property(), blender::deg::DepsgraphRelationBuilder::build_driver_id_property(), blender::deg::DepsgraphRelationBuilder::build_driver_variables(), blender::deg::DepsgraphRelationBuilder::build_ik_pose(), blender::deg::DepsgraphRelationBuilder::build_inter_ik_chains(), blender::deg::DepsgraphNodeBuilder::build_pose_constraints(), blender::deg::DepsgraphRelationBuilder::build_splineik_pose(), clear_anim_v3d_exec(), constraint_add_exec(), blender::deg::RNANodeQuery::construct_node_identifier(), DEG_get_evaluated_rna_pointer(), delete_key_v3d_without_keying_set(), do_versions_ipos_to_animato(), draw_bone_name(), ED_armature_bone_rename(), ED_object_parent_set(), ED_wpaint_ensure_data(), insert_key_button_exec(), joined_armature_fix_links(), joined_armature_fix_links_constraints(), motionpaths_calc_bake_targets(), namebutton_fn(), pchan_clear_loc_with_mirrored(), pchan_clear_rot_with_mirrored(), pchan_clear_scale_with_mirrored(), pchan_duplicate_map(), pose_bone_do_paste(), pose_foreachScreenBone(), pose_select_mirror_exec(), pose_select_same_keyingset(), pose_transform_mirror_update(), separate_armature_bones(), skip_fcurve_selected_data(), snap_sel_to_grid_exec(), test_constraint(), and view_lock_to_active_exec().

◆ next

struct bPoseChannel* bPoseChannel::next

Definition at line 214 of file DNA_action_types.h.

Referenced by animviz_get_object_motionpaths(), apply_armature_pose2bones_exec(), apply_targetless_ik(), armature_vert_task_with_dvert(), BKE_object_defgroup_validmap_get(), BKE_pose_channel_active_or_first_selected(), BKE_pose_channels_free_ex(), BKE_pose_channels_hash_ensure(), BKE_pose_channels_is_valid(), BKE_pose_channels_remove(), BKE_pose_copy_data_ex(), BKE_pose_copy_result(), BKE_pose_minmax(), BKE_pose_rebuild(), BKE_pose_remove_group(), BKE_pose_rest(), BKE_pose_update_constraint_flags(), BKE_pose_where_is(), blo_do_versions_250(), blo_do_versions_270(), blo_do_versions_pre250(), create_scene(), do_versions_ipos_to_animato(), draw_armature_pose(), ED_armature_bone_rename(), ED_object_constraint_list_from_constraint(), ED_pose_clear_paths(), ED_pose_deselect_all(), getTransformOrientation_ex(), iksolver_initialize_tree(), itasc_initialize_tree(), joined_armature_fix_links(), lib_override_linked_group_tag_clear_boneshapes_objects(), minmax_armature(), object_test_constraint(), object_test_constraints(), pose_clear_user_transforms_exec(), pose_foreachScreenBone(), pose_grab_with_ik(), pose_grab_with_ik_clear(), pose_paste_exec(), pose_select_hierarchy_exec(), pose_select_mirror_exec(), separate_armature_bones(), separated_armature_fix_links(), set_pose_keys(), snap_curs_to_sel_ex(), snap_sel_to_grid_exec(), snap_selected_to_location(), special_aftertrans_update__pose(), splineik_init_tree(), text_refresh_pyconstraints_exec(), transform_autoik_update(), and transform_convert_pose_transflags_update().

◆ orig_pchan

struct bPoseChannel* bPoseChannel::orig_pchan

Points to an original pose channel.

Definition at line 348 of file DNA_action_types.h.

Referenced by BKE_pose_bone_done(), BKE_pose_eval_bbone_segments(), constraint_find_original(), and pose_channel_flush_to_orig_if_needed().

◆ parent

struct bPoseChannel* bPoseChannel::parent

◆ pose_head

float bPoseChannel::pose_head[3]

◆ pose_mat

float bPoseChannel::pose_mat[4][4]

Constraints accumulate here. in the end, pose_mat = bone->arm_mat * chan_mat this matrix is object space.

Definition at line 300 of file DNA_action_types.h.

Referenced by add_hook_object(), add_pose_transdata(), apply_armature_pose2bones_exec(), apply_targetless_ik(), applyarmature_process_selected_recursive(), armdef_get_tarmat(), base_callback(), bc_bone_matrix_local_get(), BKE_bone_parent_transform_calc_from_pchan(), BKE_camera_object_dof_distance(), BKE_constraint_apply_for_pose(), BKE_constraint_target_matrix_get(), BKE_constraints_clear_evalob(), BKE_constraints_make_evalob(), BKE_gpencil_layer_transform_matrix_get(), BKE_gpencil_update_layer_transforms(), BKE_object_modifier_gpencil_hook_reset(), BKE_object_modifier_hook_reset(), BKE_pchan_bbone_spline_params_get(), BKE_pose_bone_done(), BKE_pose_copy_pchan_result(), BKE_pose_eval_bone(), BKE_pose_where_is(), BKE_pose_where_is_bone(), BKE_pose_where_is_bone_tail(), constraint_target_to_mat4(), convert_pose(), convert_tree(), deformStroke(), deformVerts_do(), draw_axes(), draw_bone_degrees_of_freedom(), draw_bone_update_disp_matrix_bbone(), draw_bone_update_disp_matrix_custom(), draw_bone_update_disp_matrix_default(), ED_gpencil_reset_layers_parent(), execute_posetree(), execute_scene(), getTransformOrientation_ex(), gimbal_axis_pose(), make_dmats(), matrix_from_obj_pchan(), MOD_get_texture_coords(), ob_parbone(), pose_channel_flush_to_orig_if_needed(), snap_sel_to_grid_exec(), snap_selected_to_location(), splineik_evaluate_bone(), target_callback(), view3d_viewmatrix_set(), visualkey_get_values(), and where_is_ik_bone().

◆ pose_tail

float bPoseChannel::pose_tail[3]

◆ prev

struct bPoseChannel * bPoseChannel::prev

Definition at line 214 of file DNA_action_types.h.

Referenced by rebuild_pose_bone().

◆ prop

IDProperty* bPoseChannel::prop

◆ protectflag

short bPoseChannel::protectflag

◆ quat

float bPoseChannel::quat[4]

◆ roll1

float bPoseChannel::roll1

◆ roll2

float bPoseChannel::roll2

◆ rotAngle

float bPoseChannel::rotAngle

◆ rotAxis

float bPoseChannel::rotAxis[3]

◆ rotmode

short bPoseChannel::rotmode

◆ runtime

struct bPoseChannel_Runtime bPoseChannel::runtime

◆ scale_in

float bPoseChannel::scale_in[3]

◆ scale_out

float bPoseChannel::scale_out[3]

◆ selectflag

char bPoseChannel::selectflag

Copy of bone flag, so you can work with library armatures, not for runtime use.

Definition at line 235 of file DNA_action_types.h.

◆ siktree

struct ListBase bPoseChannel::siktree

Spline-IK "trees" - only while evaluating pose.

Definition at line 245 of file DNA_action_types.h.

Referenced by splineik_execute_tree(), and splineik_init_tree_from_pchan().

◆ size

float bPoseChannel::size[3]

◆ stiffness

float bPoseChannel::stiffness[3]

DOF stiffness.

Definition at line 319 of file DNA_action_types.h.

Referenced by BKE_pose_channel_copy_data(), BKE_pose_channel_ensure(), convert_tree(), and execute_posetree().

◆ temp

void* bPoseChannel::temp

Use for outliner.

Definition at line 343 of file DNA_action_types.h.

Referenced by outliner_add_object_contents().


The documentation for this struct was generated from the following file: