|
Blender
V3.3
|
#include "BLI_range.h"Go to the source code of this file.
Classes | |
| struct | ActKeyBlockInfo |
| struct | ActKeyColumn |
Typedefs | |
| typedef struct ActKeyBlockInfo | ActKeyBlockInfo |
| typedef struct ActKeyColumn | ActKeyColumn |
| typedef enum eActKeyBlock_Hold | eActKeyBlock_Flag |
| typedef enum eKeyframeShapeDrawOpts | eKeyframeShapeDrawOpts |
| typedef enum eKeyframeHandleDrawOpts | eKeyframeHandleDrawOpts |
| typedef enum eKeyframeExtremeDrawOpts | eKeyframeExtremeDrawOpts |
Enumerations | |
| enum | eActKeyBlock_Hold { ACTKEYBLOCK_FLAG_MOVING_HOLD = (1 << 0) , ACTKEYBLOCK_FLAG_STATIC_HOLD = (1 << 1) , ACTKEYBLOCK_FLAG_ANY_HOLD = (1 << 2) , ACTKEYBLOCK_FLAG_NON_BEZIER = (1 << 3) , ACTKEYBLOCK_FLAG_GPENCIL = (1 << 4) } |
| enum | eKeyframeShapeDrawOpts { KEYFRAME_SHAPE_FRAME = 0 , KEYFRAME_SHAPE_INSIDE , KEYFRAME_SHAPE_BOTH } |
| enum | eKeyframeHandleDrawOpts { KEYFRAME_HANDLE_NONE = 0 , KEYFRAME_HANDLE_AUTO_CLAMP , KEYFRAME_HANDLE_AUTO , KEYFRAME_HANDLE_VECTOR , KEYFRAME_HANDLE_ALIGNED , KEYFRAME_HANDLE_FREE } |
| enum | eKeyframeExtremeDrawOpts { KEYFRAME_EXTREME_NONE = 0 , KEYFRAME_EXTREME_MIN = (1 << 0) , KEYFRAME_EXTREME_MAX = (1 << 1) , KEYFRAME_EXTREME_MIXED = (1 << 2) , KEYFRAME_EXTREME_FLAT = (1 << 3) } |
Functions | |
| struct AnimKeylist * | ED_keylist_create (void) |
| void | ED_keylist_free (struct AnimKeylist *keylist) |
| void | ED_keylist_prepare_for_direct_access (struct AnimKeylist *keylist) |
| const struct ActKeyColumn * | ED_keylist_find_exact (const struct AnimKeylist *keylist, float cfra) |
| const struct ActKeyColumn * | ED_keylist_find_next (const struct AnimKeylist *keylist, float cfra) |
| const struct ActKeyColumn * | ED_keylist_find_prev (const struct AnimKeylist *keylist, float cfra) |
| const struct ActKeyColumn * | ED_keylist_find_any_between (const struct AnimKeylist *keylist, const Range2f frame_range) |
| bool | ED_keylist_is_empty (const struct AnimKeylist *keylist) |
| const struct ListBase * | ED_keylist_listbase (const struct AnimKeylist *keylist) |
| bool | ED_keylist_all_keys_frame_range (const struct AnimKeylist *keylist, Range2f *r_frame_range) |
| bool | ED_keylist_selected_keys_frame_range (const struct AnimKeylist *keylist, Range2f *r_frame_range) |
| const ActKeyColumn * | ED_keylist_array (const struct AnimKeylist *keylist) |
| int64_t | ED_keylist_array_len (const struct AnimKeylist *keylist) |
| void | fcurve_to_keylist (struct AnimData *adt, struct FCurve *fcu, struct AnimKeylist *keylist, int saction_flag) |
| void | agroup_to_keylist (struct AnimData *adt, struct bActionGroup *agrp, struct AnimKeylist *keylist, int saction_flag) |
| void | action_to_keylist (struct AnimData *adt, struct bAction *act, struct AnimKeylist *keylist, int saction_flag) |
| void | ob_to_keylist (struct bDopeSheet *ads, struct Object *ob, struct AnimKeylist *keylist, int saction_flag) |
| void | cachefile_to_keylist (struct bDopeSheet *ads, struct CacheFile *cache_file, struct AnimKeylist *keylist, int saction_flag) |
| void | scene_to_keylist (struct bDopeSheet *ads, struct Scene *sce, struct AnimKeylist *keylist, int saction_flag) |
| void | summary_to_keylist (struct bAnimContext *ac, struct AnimKeylist *keylist, int saction_flag) |
| void | gpencil_to_keylist (struct bDopeSheet *ads, struct bGPdata *gpd, struct AnimKeylist *keylist, bool active) |
| void | gpl_to_keylist (struct bDopeSheet *ads, struct bGPDlayer *gpl, struct AnimKeylist *keylist) |
| void | mask_to_keylist (struct bDopeSheet *ads, struct MaskLayer *masklay, struct AnimKeylist *keylist) |
| bool | actkeyblock_is_valid (const ActKeyColumn *ac) |
| int | actkeyblock_get_valid_hold (const ActKeyColumn *ac) |
| typedef struct ActKeyBlockInfo ActKeyBlockInfo |
| typedef struct ActKeyColumn ActKeyColumn |
| typedef enum eActKeyBlock_Hold eActKeyBlock_Flag |
| typedef enum eKeyframeExtremeDrawOpts eKeyframeExtremeDrawOpts |
| typedef enum eKeyframeHandleDrawOpts eKeyframeHandleDrawOpts |
| typedef enum eKeyframeShapeDrawOpts eKeyframeShapeDrawOpts |
| enum eActKeyBlock_Hold |
| Enumerator | |
|---|---|
| ACTKEYBLOCK_FLAG_MOVING_HOLD | |
| ACTKEYBLOCK_FLAG_STATIC_HOLD | |
| ACTKEYBLOCK_FLAG_ANY_HOLD | |
| ACTKEYBLOCK_FLAG_NON_BEZIER | |
| ACTKEYBLOCK_FLAG_GPENCIL | |
Definition at line 73 of file ED_keyframes_keylist.h.
| Enumerator | |
|---|---|
| KEYFRAME_EXTREME_NONE | |
| KEYFRAME_EXTREME_MIN | |
| KEYFRAME_EXTREME_MAX | |
| KEYFRAME_EXTREME_MIXED | |
| KEYFRAME_EXTREME_FLAT | |
Definition at line 111 of file ED_keyframes_keylist.h.
| Enumerator | |
|---|---|
| KEYFRAME_HANDLE_NONE | |
| KEYFRAME_HANDLE_AUTO_CLAMP | |
| KEYFRAME_HANDLE_AUTO | |
| KEYFRAME_HANDLE_VECTOR | |
| KEYFRAME_HANDLE_ALIGNED | |
| KEYFRAME_HANDLE_FREE | |
Definition at line 99 of file ED_keyframes_keylist.h.
| Enumerator | |
|---|---|
| KEYFRAME_SHAPE_FRAME | |
| KEYFRAME_SHAPE_INSIDE | |
| KEYFRAME_SHAPE_BOTH | |
Definition at line 89 of file ED_keyframes_keylist.h.
| void action_to_keylist | ( | struct AnimData * | adt, |
| struct bAction * | act, | ||
| struct AnimKeylist * | keylist, | ||
| int | saction_flag | ||
| ) |
Definition at line 1089 of file keyframes_keylist.cc.
References bAction::curves, fcurve_to_keylist(), and LISTBASE_FOREACH.
Referenced by actkeys_list_element_to_keylist(), animviz_calc_motionpaths(), ED_keylist_draw_list_elem_build_keylist(), nla_action_draw_keyframes(), and poselib_sanitize_exec().
| int actkeyblock_get_valid_hold | ( | const ActKeyColumn * | ac | ) |
Checks if ActKeyColumn can be used as a block (i.e. drawn/used to detect "holds").
Definition at line 874 of file keyframes_keylist.cc.
References ACTKEYBLOCK_FLAG_ANY_HOLD, ACTKEYBLOCK_FLAG_STATIC_HOLD, actkeyblock_is_valid(), ActKeyColumn::block, ActKeyBlockInfo::conflict, and ActKeyBlockInfo::flag.
Referenced by draw_keylist_block(), and pose_propagate_get_boneHoldEndFrame().
| bool actkeyblock_is_valid | ( | const ActKeyColumn * | ac | ) |
Checks if ActKeyColumn has any block data.
Definition at line 869 of file keyframes_keylist.cc.
References ActKeyColumn::next, and ActKeyColumn::totblock.
Referenced by actkeyblock_get_valid_hold(), and draw_keylist_block().
| void agroup_to_keylist | ( | struct AnimData * | adt, |
| struct bActionGroup * | agrp, | ||
| struct AnimKeylist * | keylist, | ||
| int | saction_flag | ||
| ) |
Definition at line 1073 of file keyframes_keylist.cc.
References bActionGroup::channels, fcurve_to_keylist(), and LISTBASE_FOREACH.
Referenced by actkeys_list_element_to_keylist(), animviz_calc_motionpaths(), and ED_keylist_draw_list_elem_build_keylist().
| void cachefile_to_keylist | ( | struct bDopeSheet * | ads, |
| struct CacheFile * | cache_file, | ||
| struct AnimKeylist * | keylist, | ||
| int | saction_flag | ||
| ) |
Definition at line 996 of file keyframes_keylist.cc.
References bAnimContext::ads, bAnimListElem::adt, CacheFile::adt, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMCONT_CHANNEL, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMTYPE_DSCACHEFILE, bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, fcurve_to_keylist(), filter(), bAnimListElem::id, CacheFile::id, LISTBASE_FOREACH, and bAnimListElem::type.
| bool ED_keylist_all_keys_frame_range | ( | const struct AnimKeylist * | keylist, |
| Range2f * | r_frame_range | ||
| ) |
Definition at line 321 of file keyframes_keylist.cc.
References BLI_assert, ActKeyColumn::cfra, ED_keylist_is_empty(), keylist_first_last(), Range2f::max, and Range2f::min.
Referenced by animviz_motionpath_compute_range(), and nla_action_draw_keyframes().
| const ActKeyColumn* ED_keylist_array | ( | const struct AnimKeylist * | keylist | ) |
Definition at line 281 of file keyframes_keylist.cc.
References BLI_assert_msg, AnimKeylist::is_runtime_initialized, AnimKeylist::key_columns, and AnimKeylist::runtime.
Referenced by ED_keylist_draw_list_elem_draw_blocks(), and ED_keylist_draw_list_elem_draw_keys().
| int64_t ED_keylist_array_len | ( | const struct AnimKeylist * | keylist | ) |
Definition at line 289 of file keyframes_keylist.cc.
References AnimKeylist::column_len.
Referenced by ED_keylist_draw_list_elem_draw_blocks(), and ED_keylist_draw_list_elem_draw_keys().
| struct AnimKeylist* ED_keylist_create | ( | void | ) |
Definition at line 96 of file keyframes_keylist.cc.
Referenced by actkeys_find_key_in_list_element(), animviz_calc_motionpaths(), animviz_motionpath_compute_range(), blender::editor::animation::tests::create_test_keylist(), ed_keylist_draw_list_add_elem(), find_prev_next_keyframes(), keyframe_jump_exec(), motionpath_calculate_update_range(), nla_action_draw_keyframes(), pose_propagate_get_boneHoldEndFrame(), pose_slide_init(), and poselib_sanitize_exec().
| const struct ActKeyColumn* ED_keylist_find_any_between | ( | const struct AnimKeylist * | keylist, |
| const Range2f | frame_range | ||
| ) |
| const struct ActKeyColumn* ED_keylist_find_exact | ( | const struct AnimKeylist * | keylist, |
| float | cfra | ||
| ) |
| const struct ActKeyColumn* ED_keylist_find_next | ( | const struct AnimKeylist * | keylist, |
| float | cfra | ||
| ) |
| const struct ActKeyColumn* ED_keylist_find_prev | ( | const struct AnimKeylist * | keylist, |
| float | cfra | ||
| ) |
| void ED_keylist_free | ( | struct AnimKeylist * | keylist | ) |
Definition at line 102 of file keyframes_keylist.cc.
References BLI_assert.
Referenced by actkeys_find_key_in_list_element(), animviz_calc_motionpaths(), animviz_motionpath_compute_range(), ED_keylist_draw_list_free(), find_prev_next_keyframes(), keyframe_jump_exec(), motionpath_calculate_update_range(), motionpath_free_free_tree_data(), nla_action_draw_keyframes(), pose_propagate_get_boneHoldEndFrame(), pose_slide_exit(), poselib_sanitize_exec(), and blender::editor::animation::tests::TEST().
| bool ED_keylist_is_empty | ( | const struct AnimKeylist * | keylist | ) |
Definition at line 294 of file keyframes_keylist.cc.
References AnimKeylist::column_len.
Referenced by ED_keylist_add_or_update_column(), ED_keylist_all_keys_frame_range(), ED_keylist_find_any_between(), ED_keylist_find_exact(), ED_keylist_find_exact_or_neighbor_column(), ED_keylist_find_lower_bound(), ED_keylist_find_next(), ED_keylist_find_prev(), ED_keylist_find_upper_bound(), ED_keylist_runtime_init_listbase(), ED_keylist_selected_keys_frame_range(), nla_action_draw_keyframes(), and pose_slide_invoke_common().
| const struct ListBase* ED_keylist_listbase | ( | const struct AnimKeylist * | keylist | ) |
| void ED_keylist_prepare_for_direct_access | ( | struct AnimKeylist * | keylist | ) |
Definition at line 160 of file keyframes_keylist.cc.
References ED_keylist_runtime_init(), and AnimKeylist::is_runtime_initialized.
Referenced by actkeys_find_key_in_list_element(), animviz_calc_motionpaths(), blender::editor::animation::tests::create_test_keylist(), ED_keylist_draw_list_elem_prepare_for_drawing(), find_prev_next_keyframes(), keyframe_jump_exec(), motionpath_calculate_update_range(), pose_propagate_get_boneHoldEndFrame(), and pose_slide_invoke_common().
| bool ED_keylist_selected_keys_frame_range | ( | const struct AnimKeylist * | keylist, |
| Range2f * | r_frame_range | ||
| ) |
Definition at line 338 of file keyframes_keylist.cc.
References BLI_assert, ActKeyColumn::cfra, ED_keylist_is_empty(), keylist_first_last(), Range2f::max, Range2f::min, ActKeyColumn::next, ActKeyColumn::prev, ActKeyColumn::sel, and SELECT.
Referenced by animviz_motionpath_compute_range().
| void fcurve_to_keylist | ( | struct AnimData * | adt, |
| struct FCurve * | fcu, | ||
| struct AnimKeylist * | keylist, | ||
| int | saction_flag | ||
| ) |
Definition at line 1031 of file keyframes_keylist.cc.
References add_bezt_to_keycolumns_list(), ANIM_nla_mapping_apply_fcurve(), FCurve::bezt, BKE_fcurve_is_cyclic(), BezTripleChain::cur, ED_keylist_reset_last_accessed(), is_cyclic(), BezTripleChain::next, BezTripleChain::prev, SACTION_SHOW_EXTREMES, FCurve::totvert, update_keyblocks(), and v.
Referenced by action_to_keylist(), actkeys_list_element_to_keylist(), agroup_to_keylist(), animviz_motionpath_compute_range(), cachefile_to_keylist(), blender::editor::animation::tests::create_test_keylist(), ED_keylist_draw_list_elem_build_keylist(), motionpath_calculate_update_range(), ob_to_keylist(), pose_propagate_get_boneHoldEndFrame(), pose_slide_invoke_common(), scene_to_keylist(), and summary_to_keylist().
| void gpencil_to_keylist | ( | struct bDopeSheet * | ads, |
| struct bGPdata * | gpd, | ||
| struct AnimKeylist * | keylist, | ||
| bool | active | ||
| ) |
Definition at line 1099 of file keyframes_keylist.cc.
References blender::compositor::active, GP_LAYER_HIDE, GP_LAYER_SELECT, gpl_to_keylist(), bGPdata::layers, and LISTBASE_FOREACH_BACKWARD.
Referenced by find_prev_next_keyframes(), and keyframe_jump_exec().
| void gpl_to_keylist | ( | struct bDopeSheet * | ads, |
| struct bGPDlayer * | gpl, | ||
| struct AnimKeylist * | keylist | ||
| ) |
| void mask_to_keylist | ( | struct bDopeSheet * | ads, |
| struct MaskLayer * | masklay, | ||
| struct AnimKeylist * | keylist | ||
| ) |
| void ob_to_keylist | ( | struct bDopeSheet * | ads, |
| struct Object * | ob, | ||
| struct AnimKeylist * | keylist, | ||
| int | saction_flag | ||
| ) |
Definition at line 959 of file keyframes_keylist.cc.
References bAnimContext::ads, bAnimListElem::adt, Object::adt, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMCONT_CHANNEL, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMTYPE_OBJECT, bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, fcurve_to_keylist(), filter(), bAnimListElem::id, Object::id, LISTBASE_FOREACH, Base::object, and bAnimListElem::type.
Referenced by actkeys_list_element_to_keylist(), ED_keylist_draw_list_elem_build_keylist(), find_prev_next_keyframes(), and keyframe_jump_exec().
| void scene_to_keylist | ( | struct bDopeSheet * | ads, |
| struct Scene * | sce, | ||
| struct AnimKeylist * | keylist, | ||
| int | saction_flag | ||
| ) |
Definition at line 924 of file keyframes_keylist.cc.
References bAnimContext::ads, bAnimListElem::adt, Scene::adt, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMCONT_CHANNEL, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMTYPE_SCENE, bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, fcurve_to_keylist(), filter(), bAnimListElem::id, Scene::id, LISTBASE_FOREACH, and bAnimListElem::type.
Referenced by actkeys_list_element_to_keylist(), ED_keylist_draw_list_elem_build_keylist(), find_prev_next_keyframes(), and keyframe_jump_exec().
| void summary_to_keylist | ( | struct bAnimContext * | ac, |
| struct AnimKeylist * | keylist, | ||
| int | saction_flag | ||
| ) |
Definition at line 887 of file keyframes_keylist.cc.
References bAnimContext::ads, ALE_FCURVE, ALE_GPFRAME, ALE_MASKLAY, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMFILTER_DATA_VISIBLE, bAnimContext::data, bAnimContext::datatype, fcurve_to_keylist(), filter(), gpl_to_keylist(), LISTBASE_FOREACH, and mask_to_keylist().
Referenced by actkeys_list_element_to_keylist(), and ED_keylist_draw_list_elem_build_keylist().