|
Blender V5.0
|
#include "BKE_nla.hh"#include "BLI_sys_types.h"#include "BLI_utildefines.h"#include "DNA_screen_types.h"#include "DNA_space_types.h"#include <optional>Go to the source code of this file.
Classes | |
| struct | bAnimContext |
| struct | bAnimListElem |
| struct | bAnimChannelType |
Namespaces | |
| namespace | blender |
| namespace | blender::animrig |
Macros | |
Flag Checking Macros | |
| #define | SEL_SCEC(sce) |
| #define | EXPANDED_SCEC(sce) |
| #define | FILTER_WOR_SCED(wo) |
| #define | FILTER_LS_SCED(linestyle) |
| #define | SEL_OBJC(base) |
| #define | EXPANDED_OBJC(ob) |
| #define | FILTER_SKE_OBJD(key) |
| #define | FILTER_MAT_OBJD(ma) |
| #define | FILTER_LAM_OBJD(la) |
| #define | FILTER_CAM_OBJD(ca) |
| #define | FILTER_CACHEFILE_OBJD(cf) |
| #define | FILTER_CUR_OBJD(cu) |
| #define | FILTER_PART_OBJD(part) |
| #define | FILTER_MBALL_OBJD(mb) |
| #define | FILTER_ARM_OBJD(arm) |
| #define | FILTER_MESH_OBJD(me) |
| #define | FILTER_LATTICE_OBJD(lt) |
| #define | FILTER_SPK_OBJD(spk) |
| #define | FILTER_CURVES_OBJD(ha) |
| #define | FILTER_POINTS_OBJD(pt) |
| #define | FILTER_VOLUME_OBJD(vo) |
| #define | FILTER_LIGHTPROBE_OBJD(probe) |
| #define | FILTER_NTREE_DATA(ntree) |
| #define | FILTER_TEX_DATA(tex) |
| #define | SEL_ACTC(actc) |
| #define | EXPANDED_ACTC(actc) |
| #define | EXPANDED_DRVD(adt) |
| #define | EXPANDED_ADT(adt) |
| #define | EDITABLE_AGRP(agrp) |
| #define | EXPANDED_AGRP(ac, agrp) |
| #define | SEL_AGRP(agrp) |
| #define | EDITABLE_FCU(fcu) |
| #define | SEL_FCU(fcu) |
| #define | EDITABLE_SHAPEKEY(kb) |
| #define | SEL_SHAPEKEY(kb) |
| #define | EXPANDED_GPD(gpd) |
| #define | EDITABLE_GPL(gpl) |
| #define | SEL_GPL(gpl) |
| #define | EXPANDED_MASK(mask) |
| #define | EDITABLE_MASK(masklay) |
| #define | SEL_MASKLAY(masklay) |
| #define | SEL_NLT(nlt) |
| #define | EDITABLE_NLT(nlt) |
| #define | EXPANDED_MCLIP(clip) |
| #define | EXPANDED_PALETTE(palette) |
| #define | SEL_ANIMDATA(adt) |
NLA Track Defines | |
| #define | NLATRACK_FIRST_TOP(ac) |
| #define | NLATRACK_HEIGHT(snla) |
| #define | NLATRACK_SKIP (0.1f * U.widget_unit) |
| #define | NLATRACK_STEP(snla) |
| #define | NLATRACK_TOT_HEIGHT(ac, item_amount) |
| #define | NLATRACK_NAMEWIDTH (10 * U.widget_unit) |
Utility macros | |
| #define | ACHANNEL_SET_FLAG(channel, smode, sflag) |
| #define | ACHANNEL_SET_FLAG_NEG(channel, smode, sflag) |
Enumerations | |
Context | |
| enum | eAnimCont_Types { ANIMCONT_NONE = 0 , ANIMCONT_ACTION = 1 , ANIMCONT_SHAPEKEY = 2 , ANIMCONT_GPENCIL = 3 , ANIMCONT_DOPESHEET = 4 , ANIMCONT_FCURVES = 5 , ANIMCONT_DRIVERS = 6 , ANIMCONT_NLA = 7 , ANIMCONT_CHANNEL = 8 , ANIMCONT_MASK = 9 , ANIMCONT_TIMELINE = 10 } |
Drawing TypeInfo | |
| enum | eAnimChannel_Role { ACHANNEL_ROLE_EXPANDER = -1 , ACHANNEL_ROLE_CHANNEL = 1 } |
| enum | eAnimChannels_SetFlag { ACHANNEL_SETFLAG_CLEAR = 0 , ACHANNEL_SETFLAG_ADD = 1 , ACHANNEL_SETFLAG_INVERT = 2 , ACHANNEL_SETFLAG_TOGGLE = 3 , ACHANNEL_SETFLAG_EXTEND_RANGE = 4 } |
| enum | eAnimChannel_Settings { ACHANNEL_SETTING_SELECT = 0 , ACHANNEL_SETTING_PROTECT = 1 , ACHANNEL_SETTING_MUTE = 2 , ACHANNEL_SETTING_EXPAND = 3 , ACHANNEL_SETTING_VISIBLE = 4 , ACHANNEL_SETTING_SOLO = 5 , ACHANNEL_SETTING_PINNED = 6 , ACHANNEL_SETTING_MOD_OFF = 7 , ACHANNEL_SETTING_ALWAYS_VISIBLE = 8 } |
Filtering | |
| enum | eAnimFilter_Flags { ANIMFILTER_DATA_VISIBLE = (1 << 0) , ANIMFILTER_LIST_VISIBLE = (1 << 1) , ANIMFILTER_CURVE_VISIBLE = (1 << 2) , ANIMFILTER_LIST_CHANNELS = (1 << 3) , ANIMFILTER_ACTIVE = (1 << 4) , ANIMFILTER_ACTGROUPED = (1 << 5) , ANIMFILTER_SEL = (1 << 6) , ANIMFILTER_UNSEL = (1 << 7) , ANIMFILTER_FOREDIT = (1 << 8) , ANIMFILTER_SELEDIT = (1 << 9) , ANIMFILTER_ANIMDATA = (1 << 10) , ANIMFILTER_NODUPLIS = (1 << 11) , ANIMFILTER_FCURVESONLY = (1 << 12) , ANIMFILTER_TMP_PEEK = (1 << 30) , ANIMFILTER_TMP_IGNORE_ONLYSEL = (1u << 31) } |
| ENUM_OPERATORS (eAnimFilter_Flags, ANIMFILTER_TMP_IGNORE_ONLYSEL) | |
Current Frame Drawing | |
Main call to draw current-frame indicator in an Animation Editor. | |
| enum | eAnimEditDraw_CurrentFrame { DRAWCFRA_UNIT_SECONDS = (1 << 0) , DRAWCFRA_WIDE = (1 << 1) } |
| void | ANIM_draw_cfra (const bContext *C, View2D *v2d, short flag) |
Unit Conversion Mappings | |
| enum | eAnimUnitConv_Flags { ANIM_UNITCONV_NONE = 0 , ANIM_UNITCONV_RESTORE = (1 << 0) , ANIM_UNITCONV_ONLYKEYS = (1 << 1) , ANIM_UNITCONV_ONLYSEL = (1 << 2) , ANIM_UNITCONV_SELVERTS = (1 << 3) , ANIM_UNITCONV_NORMALIZE = (1 << 5) , ANIM_UNITCONV_NORMALIZE_FREEZE = (1 << 6) } |
| short | ANIM_get_normalization_flags (SpaceLink *space_link) |
| float | ANIM_unit_mapping_get_factor (Scene *scene, ID *id, FCurve *fcu, short flag, float *r_offset) |
UI Panel Drawing | |
| using | PanelTypePollFn = bool (*)(const bContext *C, PanelType *pt) |
| using | uiListPanelIDFromDataFunc = void (*)(void *data_link, char *r_idname) |
| bool | ANIM_nla_context_track_ptr (const bContext *C, PointerRNA *r_ptr) |
| bool | ANIM_nla_context_strip_ptr (const bContext *C, PointerRNA *r_ptr) |
| NlaTrack * | ANIM_nla_context_track (const bContext *C) |
| NlaStrip * | ANIM_nla_context_strip (const bContext *C) |
| FCurve * | ANIM_graph_context_fcurve (const bContext *C) |
| void | ANIM_fmodifier_panels (const bContext *C, ID *owner_id, ListBase *fmodifiers, uiListPanelIDFromDataFunc panel_id_fn) |
| void | ANIM_modifier_panels_register_graph_and_NLA (ARegionType *region_type, const char *modifier_panel_prefix, PanelTypePollFn poll_function) |
| void | ANIM_modifier_panels_register_graph_only (ARegionType *region_type, const char *modifier_panel_prefix, PanelTypePollFn poll_function) |
| #define ACHANNEL_SET_FLAG | ( | channel, | |
| smode, | |||
| sflag ) |
Set/Clear/Toggle macro.
| channel | Channel with a 'flag' member that we're setting. |
| smode | 0=clear, 1=set, 2=invert. |
| sflag | bit-flag to set. |
Definition at line 1136 of file ED_anim_api.hh.
Referenced by anim_channels_select_set(), ANIM_set_active_channel(), box_select_anim_channels(), box_select_nla_strips(), deselect_nla_strips(), mouse_nla_strips(), and nlaedit_select_leftright().
| #define ACHANNEL_SET_FLAG_NEG | ( | channel, | |
| smode, | |||
| sflag ) |
Set/Clear/Toggle macro, where the flag is negative.
| channel | channel with a 'flag' member that we're setting. |
| smode | 0=clear, 1=set, 2=invert. |
| sflag | Bit-flag to set. |
Definition at line 1156 of file ED_anim_api.hh.
| #define ANIM_UPDATE_DEFAULT (ANIM_UPDATE_DEPS | ANIM_UPDATE_ORDER | ANIM_UPDATE_HANDLES) |
Definition at line 275 of file ED_anim_api.hh.
Referenced by ANIM_animdata_keyframe_callback(), apply_fcu_segment_function(), blend_to_default_graph_keys(), btw_smooth_graph_keys(), btw_smooth_modal_update(), clean_action_keys(), clean_graph_keys(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), duplicate_action_keys(), duplicate_graph_keys(), ease_graph_keys(), equalize_graph_keys(), euler_filter_group_channels(), gaussian_smooth_graph_keys(), gaussian_smooth_modal_update(), graphkeys_smooth_exec(), insert_graph_keys(), match_slope_graph_keys(), mirror_action_keys(), mirror_graph_keys(), paste_animedit_keys(), scale_from_neighbor_graph_keys(), setexpo_action_keys(), sethandles_action_keys(), sethandles_graph_keys(), shear_graph_keys(), snap_action_keys(), and snap_graph_keys().
| #define ANIM_UPDATE_DEFAULT_NOHANDLES (ANIM_UPDATE_DEFAULT & ~ANIM_UPDATE_HANDLES) |
Definition at line 276 of file ED_anim_api.hh.
Referenced by seteasing_graph_keys(), and setipo_graph_keys().
| #define EDITABLE_AGRP | ( | agrp | ) |
Action Channel Group.
Definition at line 479 of file ED_anim_api.hh.
Referenced by animfilter_act_group().
| #define EDITABLE_FCU | ( | fcu | ) |
F-Curve Channels.
Definition at line 485 of file ED_anim_api.hh.
Referenced by animfilter_fcurve_next().
| #define EDITABLE_GPL | ( | gpl | ) |
Grease Pencil Layer settings.
Definition at line 496 of file ED_anim_api.hh.
Referenced by animdata_filter_gpencil_layers_data_legacy().
| #define EDITABLE_MASK | ( | masklay | ) |
Grease Pencil Layer settings.
Definition at line 503 of file ED_anim_api.hh.
Referenced by animdata_filter_mask_data().
| #define EDITABLE_NLT | ( | nlt | ) |
Definition at line 508 of file ED_anim_api.hh.
Referenced by animfilter_nla().
| #define EDITABLE_SHAPEKEY | ( | kb | ) |
Definition at line 489 of file ED_anim_api.hh.
Referenced by animdata_filter_shapekey().
| #define EXPANDED_ACTC | ( | actc | ) |
Definition at line 472 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obanim(), and animdata_filter_ds_scene().
| #define EXPANDED_ADT | ( | adt | ) |
Definition at line 475 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obanim(), and animdata_filter_ds_scene().
| #define EXPANDED_AGRP | ( | ac, | |
| agrp ) |
Definition at line 480 of file ED_anim_api.hh.
Referenced by animfilter_act_group(), and rearrange_action_channels().
| #define EXPANDED_DRVD | ( | adt | ) |
Definition at line 474 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obanim(), animdata_filter_ds_scene(), and rearrange_driver_channels().
| #define EXPANDED_GPD | ( | gpd | ) |
Grease Pencil data-block settings.
Definition at line 494 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_gpencil(), and make_new_animlistelem().
| #define EXPANDED_MASK | ( | mask | ) |
Grease Pencil data-block settings.
Definition at line 501 of file ED_anim_api.hh.
Referenced by animdata_filter_mask().
| #define EXPANDED_MCLIP | ( | clip | ) |
Definition at line 511 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_movieclip(), and make_new_animlistelem().
| #define EXPANDED_OBJC | ( | ob | ) |
Definition at line 443 of file ED_anim_api.hh.
Referenced by animdata_filter_dopesheet_ob().
| #define EXPANDED_PALETTE | ( | palette | ) |
Definition at line 514 of file ED_anim_api.hh.
| #define EXPANDED_SCEC | ( | sce | ) |
Definition at line 437 of file ED_anim_api.hh.
Referenced by animdata_filter_dopesheet_scene().
| #define FILTER_ARM_OBJD | ( | arm | ) |
Definition at line 456 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_CACHEFILE_OBJD | ( | cf | ) |
Definition at line 450 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_cachefile(), and make_new_animlistelem().
| #define FILTER_CAM_OBJD | ( | ca | ) |
Definition at line 449 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_CUR_OBJD | ( | cu | ) |
Definition at line 452 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_CURVES_OBJD | ( | ha | ) |
Definition at line 460 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_LAM_OBJD | ( | la | ) |
Definition at line 448 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_LATTICE_OBJD | ( | lt | ) |
Definition at line 458 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_LIGHTPROBE_OBJD | ( | probe | ) |
Definition at line 463 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_LS_SCED | ( | linestyle | ) |
Definition at line 440 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_linestyle(), and make_new_animlistelem().
| #define FILTER_MAT_OBJD | ( | ma | ) |
Definition at line 447 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_material(), and make_new_animlistelem().
| #define FILTER_MBALL_OBJD | ( | mb | ) |
Definition at line 455 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata().
| #define FILTER_MESH_OBJD | ( | me | ) |
Definition at line 457 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_NTREE_DATA | ( | ntree | ) |
Definition at line 466 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_nodetree_group(), and make_new_animlistelem().
| #define FILTER_PART_OBJD | ( | part | ) |
Definition at line 453 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_particles(), and make_new_animlistelem().
| #define FILTER_POINTS_OBJD | ( | pt | ) |
Definition at line 461 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_SKE_OBJD | ( | key | ) |
Definition at line 446 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_keyanim(), and make_new_animlistelem().
| #define FILTER_SPK_OBJD | ( | spk | ) |
Definition at line 459 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_TEX_DATA | ( | tex | ) |
Definition at line 468 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_texture(), and make_new_animlistelem().
| #define FILTER_VOLUME_OBJD | ( | vo | ) |
Definition at line 462 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_obdata(), and make_new_animlistelem().
| #define FILTER_WOR_SCED | ( | wo | ) |
Definition at line 439 of file ED_anim_api.hh.
Referenced by animdata_filter_ds_world(), and make_new_animlistelem().
| #define NLATRACK_FIRST_TOP | ( | ac | ) |
NLA track heights
Definition at line 526 of file ED_anim_api.hh.
Referenced by animchannels_channel_get(), box_select_anim_channels(), box_select_nla_strips(), draw_nla_main_data(), draw_nla_track_list(), nla_tracks_get_selected_extents(), nlaedit_strip_at_region_position(), and nlatracks_mouseclick_invoke().
| #define NLATRACK_HEIGHT | ( | snla | ) |
Definition at line 528 of file ED_anim_api.hh.
Referenced by box_select_nla_strips(), draw_nla_main_data(), draw_nla_track_list(), and nla_tracks_get_selected_extents().
| #define NLATRACK_NAMEWIDTH (10 * U.widget_unit) |
Track widths
Definition at line 538 of file ED_anim_api.hh.
Referenced by animchannels_channel_get(), and nlatracks_mouseclick_invoke().
| #define NLATRACK_SKIP (0.1f * U.widget_unit) |
Definition at line 531 of file ED_anim_api.hh.
Referenced by acf_nlaaction_backdrop(), ANIM_channel_draw(), and draw_nla_main_data().
| #define NLATRACK_STEP | ( | snla | ) |
Definition at line 532 of file ED_anim_api.hh.
Referenced by animchannels_channel_get(), box_select_anim_channels(), box_select_nla_strips(), blender::ed::transform::createTransNlaData(), draw_nla_main_data(), draw_nla_track_list(), nla_track_region_draw(), nla_tracks_get_selected_extents(), nlaedit_strip_at_region_position(), nlatracks_mouseclick_invoke(), and blender::ed::transform::recalcData_nla().
| #define NLATRACK_TOT_HEIGHT | ( | ac, | |
| item_amount ) |
Additional offset to give some room at the end.
Definition at line 534 of file ED_anim_api.hh.
Referenced by draw_nla_main_data(), and nla_track_region_draw().
| #define SEL_ACTC | ( | actc | ) |
Definition at line 471 of file ED_anim_api.hh.
| #define SEL_AGRP | ( | agrp | ) |
Definition at line 483 of file ED_anim_api.hh.
Referenced by animfilter_act_group(), rearrange_animchannel_add_to_islands(), rearrange_layered_action_channel_groups(), and rearrange_layered_action_fcurves().
| #define SEL_ANIMDATA | ( | adt | ) |
Definition at line 517 of file ED_anim_api.hh.
Referenced by animdata_filter_shapekey(), and animfilter_block_data().
| #define SEL_FCU | ( | fcu | ) |
Definition at line 486 of file ED_anim_api.hh.
Referenced by animfilter_fcurve_next(), rearrange_animchannel_add_to_islands(), and rearrange_layered_action_fcurves().
| #define SEL_GPL | ( | gpl | ) |
Definition at line 497 of file ED_anim_api.hh.
Referenced by animdata_filter_gpencil_layers_data_legacy(), and rearrange_animchannel_add_to_islands().
| #define SEL_MASKLAY | ( | masklay | ) |
Definition at line 504 of file ED_anim_api.hh.
Referenced by animdata_filter_mask_data().
| #define SEL_NLT | ( | nlt | ) |
Definition at line 507 of file ED_anim_api.hh.
Referenced by animfilter_nla(), and rearrange_animchannel_add_to_islands().
| #define SEL_OBJC | ( | base | ) |
Definition at line 442 of file ED_anim_api.hh.
| #define SEL_SCEC | ( | sce | ) |
Definition at line 436 of file ED_anim_api.hh.
| #define SEL_SHAPEKEY | ( | kb | ) |
Definition at line 490 of file ED_anim_api.hh.
Referenced by animdata_filter_shapekey().
| using PanelTypePollFn = bool (*)(const bContext *C, PanelType *pt) |
Needed for abstraction between the graph editor and the NLA editor.
Definition at line 936 of file ED_anim_api.hh.
| using uiListPanelIDFromDataFunc = void (*)(void *data_link, char *r_idname) |
Avoid including UI_interface.hh here.
Definition at line 938 of file ED_anim_api.hh.
| enum eAnim_ChannelType |
Some types for easier type-testing
Definition at line 175 of file ED_anim_api.hh.
| enum eAnim_KeyType |
Types of keyframe data in bAnimListElem.
Definition at line 239 of file ED_anim_api.hh.
| enum eAnim_Update_Flags |
Flags for specifying the types of updates (i.e. recalculation/refreshing) that needs to be performed to the data contained in a channel following editing. For use with ANIM_animdata_update()
| Enumerator | |
|---|---|
| ANIM_UPDATE_DEPS | Referenced data and dependencies get refreshed. |
| ANIM_UPDATE_ORDER | Keyframes need to be sorted. |
| ANIM_UPDATE_HANDLES | Recalculate handles. |
Definition at line 264 of file ED_anim_api.hh.
| enum eAnimChannel_Role |
Role or level of anim-channel in the hierarchy.
Definition at line 636 of file ED_anim_api.hh.
| Enumerator | |
|---|---|
| ACHANNEL_SETTING_SELECT | |
| ACHANNEL_SETTING_PROTECT | WARNING: for drawing UI's, need to check if this is off (maybe inverse this later). |
| ACHANNEL_SETTING_MUTE | |
| ACHANNEL_SETTING_EXPAND | |
| ACHANNEL_SETTING_VISIBLE | only for Graph Editor |
| ACHANNEL_SETTING_SOLO | only for NLA Tracks |
| ACHANNEL_SETTING_PINNED | only for NLA Actions |
| ACHANNEL_SETTING_MOD_OFF | |
| ACHANNEL_SETTING_ALWAYS_VISIBLE | channel is pinned and always visible |
Definition at line 660 of file ED_anim_api.hh.
Definition at line 646 of file ED_anim_api.hh.
| enum eAnimCont_Types |
Main Data container types.
| Enumerator | |
|---|---|
| ANIMCONT_NONE | Invalid or no data. |
| ANIMCONT_ACTION | Action (bAction). |
| ANIMCONT_SHAPEKEY | Shape-key (Key). |
| ANIMCONT_GPENCIL | Grease pencil (screen). |
| ANIMCONT_DOPESHEET | Dope-sheet (#bDopesheet). |
| ANIMCONT_FCURVES | Animation F-Curves (#bDopesheet). |
| ANIMCONT_DRIVERS | Drivers (#bDopesheet). |
| ANIMCONT_NLA | NLA (#bDopesheet). |
| ANIMCONT_CHANNEL | Animation channel (bAnimListElem). |
| ANIMCONT_MASK | Mask dope-sheet. |
| ANIMCONT_TIMELINE | "timeline" editor (bDopeSheet). |
Definition at line 72 of file ED_anim_api.hh.
| Enumerator | |
|---|---|
| DRAWCFRA_UNIT_SECONDS | Plain time indicator with no special indicators. Time indication in seconds or frames. |
| DRAWCFRA_WIDE | Draw indicator extra wide (for timeline). |
Definition at line 867 of file ED_anim_api.hh.
| enum eAnimFilter_Flags |
| Enumerator | |
|---|---|
| ANIMFILTER_DATA_VISIBLE | Data which channel represents is fits the dope-sheet filters (i.e. scene visibility criteria). XXX: it's hard to think of any examples where this ISN'T the case... perhaps becomes implicit? |
| ANIMFILTER_LIST_VISIBLE | channel is visible within the channel-list hierarchy (i.e. F-Curves within Groups in ActEdit) |
| ANIMFILTER_CURVE_VISIBLE | channel has specifically been tagged as visible in Graph Editor (* Graph Editor Only) |
| ANIMFILTER_LIST_CHANNELS | include summary channels and "expanders" (for drawing/mouse-selection in channel list) |
| ANIMFILTER_ACTIVE | for its type, channel should be "active" one |
| ANIMFILTER_ACTGROUPED | channel is a child of the active group (* Actions specialty) |
| ANIMFILTER_SEL | channel must be selected/not-selected, but both must not be set together |
| ANIMFILTER_UNSEL | |
| ANIMFILTER_FOREDIT | editability status - must be editable to be included |
| ANIMFILTER_SELEDIT | only selected animchannels should be considerable as editable - mainly for Graph Editor's option for keys on select curves only |
| ANIMFILTER_ANIMDATA | Flags used to enforce certain data types.
|
| ANIMFILTER_NODUPLIS | duplicate entries for animation data attached to multi-user blocks must not occur |
| ANIMFILTER_FCURVESONLY | Avoid channels that don't have any F-curve data under them. Note that this isn't just direct fcurve channels, but also includes e.g. channel groups with fcurve channels as members. |
| ANIMFILTER_TMP_PEEK | for checking if we should keep some collapsed channel around (internal use only!) |
| ANIMFILTER_TMP_IGNORE_ONLYSEL | Ignore ONLYSEL flag from bDopeSheet.filterflag (internal use only!) |
Definition at line 366 of file ED_anim_api.hh.
| enum eAnimUnitConv_Flags |
Flags for conversion mapping.
| Enumerator | |
|---|---|
| ANIM_UNITCONV_NONE | |
| ANIM_UNITCONV_RESTORE | Restore to original internal values. |
| ANIM_UNITCONV_ONLYKEYS | Ignore handles (i.e. only touch main keyframes). |
| ANIM_UNITCONV_ONLYSEL | Only touch selected BezTriples. |
| ANIM_UNITCONV_SELVERTS | Only touch selected vertices. |
| ANIM_UNITCONV_NORMALIZE | Scale FCurve i a way it fits to -1..1 space. |
| ANIM_UNITCONV_NORMALIZE_FREEZE | Only when normalization is used: use scale factor from previous run, prevents curves from jumping all over the place when tweaking them. |
Definition at line 1095 of file ED_anim_api.hh.
| enum eAnimvizCalcRange |
Definition at line 1259 of file ED_anim_api.hh.
| bAction * ANIM_active_action_from_area | ( | Scene * | scene, |
| ViewLayer * | view_layer, | ||
| const ScrArea * | area, | ||
| ID ** | r_action_user = nullptr ) |
Definition at line 107 of file anim_filter.cc.
References AnimData::action, Key::adt, Object::adt, BKE_key_from_object(), BKE_view_layer_active_object_get(), BKE_view_layer_synced_ensure(), BLI_assert_unreachable, ListBase::first, Key::id, Object::id, SpaceAction::mode, SACTCONT_ACTION, SACTCONT_CACHEFILE, SACTCONT_DOPESHEET, SACTCONT_GPENCIL, SACTCONT_MASK, SACTCONT_SHAPEKEY, SACTCONT_TIMELINE, SPACE_ACTION, ScrArea::spacedata, and ScrArea::spacetype.
Referenced by act_markers_make_local_exec(), act_markers_make_local_poll(), actedit_get_context(), ED_scene_markers_get_from_area(), and slot_channels_move_to_new_action_poll().
| void ANIM_anim_channels_select_set | ( | bAnimContext * | ac, |
| eAnimChannels_SetFlag | sel ) |
Set selection state of all animation channels in the context.
Definition at line 824 of file anim_channels_edit.cc.
References ANIM_animdata_freelist(), anim_channels_for_selection(), and anim_channels_select_set().
Referenced by animchannels_box_select_exec(), animchannels_selectall_exec(), click_select_channel_action_slot(), click_select_channel_dummy(), click_select_channel_fcurve(), click_select_channel_gplayer(), click_select_channel_grease_pencil_layer(), click_select_channel_group(), click_select_channel_masklayer(), click_select_channel_object(), click_select_channel_shapekey(), drivers_editor_show_exec(), mouse_action_keys(), mouse_graph_keys(), mouse_nla_strips(), and mouse_nla_tracks().
| void ANIM_anim_channels_select_toggle | ( | bAnimContext * | ac | ) |
Toggle selection state of all animation channels in the context.
Definition at line 831 of file anim_channels_edit.cc.
References ANIM_animdata_freelist(), anim_channels_for_selection(), anim_channels_select_set(), and anim_channels_selection_flag_for_toggle().
Referenced by animchannels_selectall_exec().
| bool ANIM_animdata_can_have_greasepencil | ( | const eAnimCont_Types | type | ) |
Check if the given animation container can contain grease pencil layer keyframes.
Definition at line 450 of file anim_filter.cc.
References ANIMCONT_DOPESHEET, ANIMCONT_GPENCIL, ANIMCONT_TIMELINE, and ELEM.
Referenced by action_circle_select_exec(), actkeys_box_select_exec(), actkeys_columnselect_exec(), actkeys_deselectall_exec(), actkeys_lassoselect_exec(), actkeys_select_less_exec(), actkeys_select_linked_exec(), and actkeys_select_more_exec().
| bool ANIM_animdata_context_getdata | ( | bAnimContext * | ac | ) |
Obtain current anim-data context, given that context info from Blender context has already been set:
Definition at line 363 of file anim_filter.cc.
References actedit_get_context(), bAnimContext::data, graphedit_get_context(), nlaedit_get_context(), bAnimContext::sl, SPACE_ACTION, SPACE_CLIP, SPACE_CONSOLE, SPACE_EMPTY, SPACE_FILE, SPACE_GRAPH, SPACE_IMAGE, SPACE_INFO, SPACE_NLA, SPACE_NODE, SPACE_OUTLINER, SPACE_PROPERTIES, SPACE_SCRIPT, SPACE_SEQ, SPACE_SPREADSHEET, SPACE_STATUSBAR, SPACE_TEXT, SPACE_TOPBAR, SPACE_USERPREF, SPACE_VIEW3D, and bAnimContext::spacetype.
Referenced by ANIM_animdata_get_context(), blender::ed::transform::recalcData_actedit(), and blender::ed::transform::recalcData_graphedit().
| size_t ANIM_animdata_filter | ( | bAnimContext * | ac, |
| ListBase * | anim_data, | ||
| eAnimFilter_Flags | filter_mode, | ||
| void * | data, | ||
| eAnimCont_Types | datatype ) |
This function filters the active data source to leave only animation channels suitable for usage by the caller. It will return the length of the list
| anim_data | Is a pointer to a ListBase, to which the filtered animation channels will be placed for use. |
| filter_mode | how should the data be filtered - bit-mapping accessed flags. |
Definition at line 3987 of file anim_filter.cc.
References AnimData::action, bAnimContext::ads, SpaceAction::ads, Key::adt, Object::adt, ANIMCHANNEL_NEW_CHANNEL, ANIMCONT_ACTION, ANIMCONT_CHANNEL, ANIMCONT_DOPESHEET, ANIMCONT_DRIVERS, ANIMCONT_FCURVES, ANIMCONT_GPENCIL, ANIMCONT_MASK, ANIMCONT_NLA, ANIMCONT_NONE, ANIMCONT_SHAPEKEY, ANIMCONT_TIMELINE, animdata_filter_animchan(), animdata_filter_dopesheet(), animdata_filter_dopesheet_summary(), animdata_filter_grease_pencil(), animdata_filter_mask(), animdata_filter_remove_duplis(), animdata_filter_remove_invalid(), animdata_filter_shapekey(), animfilter_action(), ANIMFILTER_ANIMDATA, ANIMFILTER_NODUPLIS, ANIMTYPE_ANIMDATA, BLI_assert, BLI_assert_msg, bAnimContext::bmain, data, LIKELY, bAnimContext::obact, printf, bAnimContext::sl, AnimData::slot_handle, UNLIKELY, UNUSED_VARS_NDEBUG, and wrap().
Referenced by achannel_setting_flush_widget_cb(), action_channel_region_draw(), action_main_region_draw(), actkeys_channels_get_selected_extents(), actkeys_find_list_element_at_position(), actkeys_framejump_exec(), actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), actkeys_select_linked_exec(), ANIM_animdata_keyframe_callback(), anim_channels_for_selection(), ANIM_deselect_keys_in_animation_editors(), ANIM_editkeyframes_refresh(), ANIM_frame_channel_y_extents(), ANIM_set_active_channel(), ANIM_sync_animchannels_to_data(), animchannels_clean_empty_exec(), animchannels_delete_containers(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_group_channels(), animchannels_group_exec(), animchannels_rearrange_exec(), animchannels_ungroup_exec(), append_nla_strip_snap_target(), apply_fcu_segment_function(), bake_action_keys(), bake_graph_keys(), blend_to_default_graph_keys(), box_select_action(), box_select_anim_channels(), box_select_elem(), box_select_nla_strips(), btw_smooth_allocate_operator_data(), btw_smooth_graph_keys(), cachefile_to_keylist(), channels_bake_exec(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), columnselect_graph_keys(), convert_keys_to_samples(), convert_samples_to_keys(), copy_action_keys(), copy_graph_keys(), count_fcurves_hidden_by_filter(), create_ghost_curves(), blender::ed::transform::createTransActionData(), blender::ed::transform::createTransGraphEditData(), blender::ed::transform::createTransNlaData(), debug_channel_list_exec(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), deselect_all_fcurves(), deselect_graph_keys(), deselect_nla_strips(), draw_nla_main_data(), duplicate_action_keys(), duplicate_graph_keys(), ease_graph_keys(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_nla_postop_refresh(), ensure_change_frame_keylist(), equalize_graph_keys(), gaussian_smooth_allocate_operator_data(), gaussian_smooth_graph_keys(), get_active_fcurve_channel(), blender::ed::graph::get_editable_fcurves(), get_graph_keyframe_extents(), get_keyframe_extents(), get_nearest_fcurve_verts_list(), get_nlastrip_extents(), graph_channel_region_draw(), graph_draw_curves(), graph_driver_delete_invalid_exec(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graph_has_selected_control_points(), graph_refresh_fcurve_colors(), graphkeys_channel_view_pick_invoke(), graphkeys_euler_filter_exec(), graphkeys_mselect_column(), graphkeys_select_key_handles(), graphkeys_select_leftright(), graphkeys_select_linked_exec(), graphkeys_smooth_exec(), graphkeys_view_selected_channels_exec(), graphop_editable_keyframes_poll(), graphop_selected_fcurve_poll(), graphop_visible_keyframes_poll(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), blender::ed::greasepencil::grease_pencil_copy_keyframes(), blender::ed::greasepencil::grease_pencil_paste_keyframes(), initialize_box_select_anim_data(), insert_action_keys(), insert_graph_keys(), markers_selectkeys_between(), markers_selectkeys_between(), match_slope_graph_keys(), mirror_action_keys(), mirror_graph_keys(), mouse_anim_channels(), mouse_nla_tracks(), nla_fmodifier_add_exec(), nla_fmodifier_copy_exec(), nla_fmodifier_paste_exec(), nla_panel_context(), nla_track_region_draw(), nla_tracks_get_selected_extents(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_add_transition_exec(), nlaedit_apply_scale_exec(), nlaedit_clear_scale_exec(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_duplicate_exec(), nlaedit_enable_tweakmode_exec(), nlaedit_get_editable_tracks(), nlaedit_make_single_user_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_remove_meta_exec(), nlaedit_select_leftright(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_strip_at_region_position(), nlaedit_swap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), blender::ed::transform::nlatrack_truncate_temporary_tracks(), nlatracks_pushdown_exec(), ob_keyframes_loop(), ob_to_keylist(), paste_action_keys(), paste_graph_keys(), blender::ed::transform::posttrans_action_clean(), rearrange_animchannels_filter_visible(), rearrange_gpencil_channels(), rearrange_grease_pencil_channels(), blender::ed::transform::recalcData_actedit(), blender::ed::transform::recalcData_graphedit(), region_select_action_keys(), region_select_elem(), rename_anim_channels(), reset_bezts(), scale_from_neighbor_graph_keys(), scene_keyframes_loop(), scene_to_keylist(), screen_ctx_active_editable_fcurve(), screen_ctx_sel_actions_impl(), screen_ctx_sel_edit_fcurves_(), screen_ctx_selected_editable_keyframes(), screen_ctx_selected_nla_strips(), select_anim_channel_keys(), select_moreless_action_keys(), select_moreless_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), setflag_anim_channels(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), shear_graph_keys(), slot_channels_move_to_new_action_exec(), snap_action_keys(), snap_graph_keys(), blender::ed::transform::special_aftertrans_update__actedit(), blender::ed::transform::special_aftertrans_update__graph(), blender::ed::transform::special_aftertrans_update__nla(), store_original_bezt_arrays(), sum_selected_keyframes(), summary_keyframes_loop(), summary_to_keylist(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), and update_depsgraph().
| void ANIM_animdata_freelist | ( | ListBase * | anim_data | ) |
Definition at line 463 of file anim_deps.cc.
References BLI_assert, BLI_freelistN(), BLI_listbase_clear(), ListBase::first, MEM_freeN(), bAnimListElem::next, and bAnimListElem::update.
Referenced by achannel_setting_flush_widget_cb(), action_channel_region_draw(), action_slot_summary_to_keylist(), actkeys_channels_get_selected_extents(), actkeys_find_list_element_at_position(), actkeys_framejump_exec(), actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), actkeys_select_linked_exec(), ANIM_anim_channels_select_set(), ANIM_anim_channels_select_toggle(), ANIM_animdata_keyframe_callback(), ANIM_deselect_keys_in_animation_editors(), ANIM_editkeyframes_refresh(), ANIM_frame_channel_y_extents(), ANIM_set_active_channel(), ANIM_sync_animchannels_to_data(), animchannel_has_active_of_type(), animchannel_select_range(), animchannels_clean_empty_exec(), animchannels_delete_containers(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_group_channels(), animchannels_group_exec(), animchannels_rearrange_exec(), animchannels_ungroup_exec(), append_nla_strip_snap_target(), apply_fcu_segment_function(), bake_action_keys(), bake_graph_keys(), blend_to_default_graph_keys(), box_select_action(), box_select_anim_channels(), box_select_elem(), box_select_graphcurves(), box_select_graphkeys(), box_select_nla_strips(), btw_smooth_free_operator_data(), btw_smooth_graph_keys(), cachefile_to_keylist(), channels_bake_exec(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), columnselect_graph_keys(), convert_keys_to_samples(), convert_samples_to_keys(), copy_action_keys(), copy_graph_keys(), count_fcurves_hidden_by_filter(), create_ghost_curves(), blender::ed::transform::createTransActionData(), blender::ed::transform::createTransGraphEditData(), blender::ed::transform::createTransNlaData(), debug_channel_list_exec(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), deselect_all_fcurves(), deselect_graph_keys(), deselect_nla_strips(), draw_channel_strips(), draw_nla_main_data(), duplicate_action_keys(), duplicate_graph_keys(), ease_graph_keys(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_nla_postop_refresh(), ensure_change_frame_keylist(), equalize_graph_keys(), gaussian_smooth_free_operator_data(), gaussian_smooth_graph_keys(), get_active_fcurve_channel(), get_graph_keyframe_extents(), get_keyframe_extents(), get_nearest_fcurve_verts_list(), get_nlastrip_extents(), graph_channel_region_draw(), graph_draw_curves(), graph_driver_delete_invalid_exec(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graph_has_selected_control_points(), graph_refresh_fcurve_colors(), graphkeys_channel_view_pick_invoke(), graphkeys_euler_filter_exec(), graphkeys_mselect_column(), graphkeys_select_key_handles(), graphkeys_select_leftright(), graphkeys_select_linked_exec(), graphkeys_smooth_exec(), graphkeys_view_selected_channels_exec(), graphop_editable_keyframes_poll(), graphop_selected_fcurve_poll(), graphop_visible_keyframes_poll(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), blender::ed::greasepencil::grease_pencil_copy_keyframes(), blender::ed::greasepencil::grease_pencil_paste_keyframes(), insert_action_keys(), keylist_from_graph_editor(), markers_selectkeys_between(), markers_selectkeys_between(), match_slope_graph_keys(), mirror_action_keys(), mirror_graph_keys(), mouse_anim_channels(), mouse_nla_tracks(), nla_fmodifier_add_exec(), nla_fmodifier_copy_exec(), nla_fmodifier_paste_exec(), nla_panel_context(), nla_track_region_draw(), nla_tracks_get_selected_extents(), nlaedit_add_actionclip_exec(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_add_transition_exec(), nlaedit_apply_scale_exec(), nlaedit_clear_scale_exec(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_duplicate_exec(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_remove_meta_exec(), nlaedit_select_leftright(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_strip_at_region_position(), nlaedit_swap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), blender::ed::transform::nlatrack_truncate_temporary_tracks(), nlatracks_pushdown_exec(), ob_keyframes_loop(), ob_to_keylist(), paste_action_keys(), paste_graph_keys(), blender::ed::transform::posttrans_action_clean(), rearrange_gpencil_channels(), blender::ed::transform::recalcData_actedit(), blender::ed::transform::recalcData_graphedit(), region_select_action_keys(), region_select_elem(), rename_anim_channels(), reset_bezts(), scale_from_neighbor_graph_keys(), scene_keyframes_loop(), scene_to_keylist(), screen_ctx_active_editable_fcurve(), screen_ctx_sel_actions_impl(), screen_ctx_sel_edit_fcurves_(), screen_ctx_selected_editable_keyframes(), screen_ctx_selected_nla_strips(), select_anim_channel_keys(), select_moreless_action_keys(), select_moreless_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), setflag_anim_channels(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), shear_graph_keys(), slot_channels_move_to_new_action_exec(), snap_action_keys(), snap_graph_keys(), blender::ed::transform::special_aftertrans_update__actedit(), blender::ed::transform::special_aftertrans_update__graph(), blender::ed::transform::special_aftertrans_update__nla(), store_original_bezt_arrays(), sum_selected_keyframes(), summary_keyframes_loop(), summary_to_keylist(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), and update_depsgraph().
| bool ANIM_animdata_get_context | ( | const bContext * | C, |
| bAnimContext * | ac ) |
Obtain current anim-data context from Blender Context info
Definition at line 411 of file anim_filter.cc.
References ANIM_animdata_context_getdata(), bAnimContext::area, BKE_view_layer_active_object_get(), BKE_view_layer_synced_ensure(), bAnimContext::bmain, C, CTX_data_depsgraph_pointer(), CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_area(), CTX_wm_region(), CTX_wm_space_data(), bAnimContext::depsgraph, bAnimContext::markers, Scene::markers, bAnimContext::obact, bAnimContext::region, ARegion::regiontype, bAnimContext::regiontype, bAnimContext::scene, bAnimContext::sl, bAnimContext::spacetype, ScrArea::spacetype, and bAnimContext::view_layer.
Referenced by achannel_setting_flush_widget_cb(), action_channel_region_draw(), action_circle_select_exec(), action_header_region_draw(), action_main_region_draw(), actkeys_bake_exec(), actkeys_box_select_exec(), actkeys_box_select_invoke(), actkeys_clean_exec(), actkeys_clickselect_exec(), actkeys_columnselect_exec(), actkeys_copy_exec(), actkeys_delete_exec(), actkeys_deselectall_exec(), actkeys_duplicate_exec(), actkeys_easing_exec(), actkeys_expo_exec(), actkeys_framejump_exec(), actkeys_handletype_exec(), actkeys_insertkey_exec(), actkeys_ipo_exec(), actkeys_keytype_exec(), actkeys_lassoselect_exec(), actkeys_mirror_exec(), actkeys_paste_exec(), actkeys_previewrange_exec(), actkeys_select_leftright_exec(), actkeys_select_leftright_invoke(), actkeys_select_less_exec(), actkeys_select_linked_exec(), actkeys_select_more_exec(), actkeys_snap_exec(), actkeys_viewall(), ANIM_deselect_keys_in_animation_editors(), ANIM_sync_animchannels_to_data(), animchannels_box_select_exec(), animchannels_channel_select_keys_invoke(), animchannels_clean_empty_exec(), animchannels_collapse_exec(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_expand_exec(), animchannels_group_exec(), animchannels_mouseclick_invoke(), animchannels_rearrange_exec(), animchannels_rename_invoke(), animchannels_select_filter_modal(), animchannels_selectall_exec(), animchannels_setflag_exec(), animchannels_ungroup_exec(), append_nla_strip_snap_target(), blend_offset_exec(), blend_to_default_exec(), blend_to_ease_exec(), blend_to_neighbor_exec(), breakdown_exec(), btw_smooth_exec(), btw_smooth_modal_update(), channels_bake_exec(), blender::ed::transform::createTransActionData(), blender::ed::transform::createTransGraphEditData(), blender::ed::transform::createTransNlaData(), debug_channel_list_exec(), decimate_exec(), drivers_editor_show_exec(), ease_exec(), ed_marker_select_leftright_exec(), ED_scene_markers_get(), ensure_change_frame_keylist(), gaussian_smooth_exec(), gaussian_smooth_modal_update(), graph_channel_region_draw(), graph_circle_select_exec(), graph_driver_delete_invalid_exec(), graph_driver_delete_invalid_poll(), graph_fmodifier_add_exec(), graph_fmodifier_copy_exec(), graph_fmodifier_paste_exec(), graph_has_selected_control_points(), graph_main_region_draw(), graph_panel_context(), graph_refresh_fcurve_colors(), graph_slider_invoke(), graphkeys_bake_exec(), graphkeys_box_select_exec(), graphkeys_box_select_invoke(), graphkeys_channel_view_pick_invoke(), graphkeys_clean_exec(), graphkeys_clear_ghostcurves_exec(), graphkeys_click_insert_exec(), graphkeys_click_insert_invoke(), graphkeys_clickselect_exec(), graphkeys_columnselect_exec(), graphkeys_copy_exec(), graphkeys_create_ghostcurves_exec(), graphkeys_delete_exec(), graphkeys_deselectall_exec(), graphkeys_duplicate_exec(), graphkeys_easing_exec(), graphkeys_equalize_handles_exec(), graphkeys_euler_filter_exec(), graphkeys_expo_exec(), graphkeys_framejump_exec(), graphkeys_handletype_exec(), graphkeys_insertkey_exec(), graphkeys_ipo_exec(), graphkeys_keys_to_samples_exec(), graphkeys_lassoselect_exec(), graphkeys_mirror_exec(), graphkeys_paste_exec(), graphkeys_previewrange_exec(), graphkeys_samples_to_keys_exec(), graphkeys_select_key_handles_exec(), graphkeys_select_leftright_exec(), graphkeys_select_leftright_invoke(), graphkeys_select_less_exec(), graphkeys_select_linked_exec(), graphkeys_select_more_exec(), graphkeys_smooth_exec(), graphkeys_snap_cursor_value_exec(), graphkeys_snap_exec(), graphkeys_sound_to_samples_invoke(), graphkeys_view_selected_channels_exec(), graphkeys_viewall(), graphop_active_fcurve_poll(), graphop_editable_keyframes_poll(), graphop_selected_fcurve_poll(), graphop_visible_keyframes_poll(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), keylist_from_dopesheet(), keylist_from_graph_editor(), match_slope_exec(), nla_fmodifier_add_exec(), nla_fmodifier_copy_exec(), nla_fmodifier_paste_exec(), nla_main_region_draw(), nla_panel_context(), nla_track_region_draw(), nlaedit_add_actionclip_exec(), nlaedit_add_actionclip_invoke(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_exec(), nlaedit_add_transition_exec(), nlaedit_apply_scale_exec(), nlaedit_box_select_exec(), nlaedit_box_select_invoke(), nlaedit_clear_scale_exec(), nlaedit_clickselect_exec(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_deselectall_exec(), nlaedit_disable_tweakmode_exec(), nlaedit_duplicate_exec(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_objects_add_exec(), nlaedit_previewrange_exec(), nlaedit_remove_meta_exec(), nlaedit_select_leftright_exec(), nlaedit_select_leftright_invoke(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_swap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), nlaedit_viewall(), nlatracks_mouseclick_invoke(), nlatracks_pushdown_exec(), push_pull_exec(), scale_average_exec(), scale_from_neighbor_exec(), screen_animation_region_tag_redraw(), screen_ctx_active_editable_fcurve(), screen_ctx_sel_actions_impl(), screen_ctx_sel_edit_fcurves_(), screen_ctx_selected_editable_keyframes(), screen_ctx_selected_nla_strips(), shear_exec(), slot_channels_move_to_new_action_exec(), blender::ed::transform::special_aftertrans_update__actedit(), blender::ed::transform::special_aftertrans_update__graph(), blender::ed::transform::special_aftertrans_update__nla(), time_offset_exec(), and view_curve_in_graph_editor_exec().
| void ANIM_animdata_update | ( | bAnimContext * | ac, |
| ListBase * | anim_data ) |
Acts on bAnimListElem eAnim_Update_Flags.
Definition at line 356 of file anim_deps.cc.
References ALE_FCURVE, ALE_MASKLAY, ANIM_list_elem_update(), ANIM_UPDATE_DEPS, ANIM_UPDATE_HANDLES, ANIM_UPDATE_ORDER, ANIMTYPE_ANIMDATA, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, BKE_fcurve_handles_recalc(), BKE_gpencil_layer_frames_sort(), BLI_assert, bAnimContext::bmain, ELEM, G, G_DEBUG, LISTBASE_FOREACH, printf, bAnimContext::scene, and sort_time_fcurve().
Referenced by actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), ANIM_animdata_keyframe_callback(), ANIM_editkeyframes_refresh(), animchannels_delete_exec(), animchannels_enable_exec(), apply_fcu_segment_function(), bake_action_keys(), bake_graph_keys(), blend_to_default_graph_keys(), box_select_action(), box_select_elem(), btw_smooth_graph_keys(), btw_smooth_modal_update(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), convert_keys_to_samples(), convert_samples_to_keys(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), duplicate_action_keys(), duplicate_graph_keys(), ease_graph_keys(), ED_nla_postop_refresh(), equalize_graph_keys(), gaussian_smooth_graph_keys(), gaussian_smooth_modal_update(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graphkeys_click_insert_exec(), graphkeys_euler_filter_exec(), graphkeys_smooth_exec(), insert_action_keys(), markers_selectkeys_between(), match_slope_graph_keys(), mirror_action_keys(), mirror_graph_keys(), mouse_action_keys(), mouse_nla_tracks(), nla_fmodifier_add_exec(), nla_fmodifier_paste_exec(), nlaedit_add_meta_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_apply_scale_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_remove_meta_exec(), nlaedit_snap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), paste_animedit_keys(), region_select_action_keys(), region_select_elem(), scale_from_neighbor_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), shear_graph_keys(), snap_action_keys(), and snap_graph_keys().
| size_t ANIM_animfilter_action_slot | ( | bAnimContext * | ac, |
| ListBase * | anim_data, | ||
| blender::animrig::Action & | action, | ||
| blender::animrig::Slot & | slot, | ||
| eAnimFilter_Flags | filter_mode, | ||
| ID * | animated_id ) |
Add the channel and sub-channels for an Action Slot to anim_data, filtered according to filter_mode.
| action | the action containing the slot to generate the channels for. |
| slot | the slot to generate the channels for. |
| filter_mode | the filters to use for deciding what channels get included. |
| animated_id | the particular animated ID that the slot channels are being generated for. This is needed for filtering channels based on bone selection, and also for resolving the names of animated properties. This should never be null, but it's okay(ish) if it's an ID not actually animated by the slot, in which case it will act as a fallback in case an ID actually animated by the slot can't be found. |
Definition at line 1615 of file anim_filter.cc.
References blender::animrig::action_slot_get_id_best_guess(), ANIMCHANNEL_NEW_CHANNEL, animfilter_act_group(), ANIMFILTER_ACTGROUPED, animfilter_fcurves_span(), ANIMFILTER_FOREDIT, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_SEL, ANIMFILTER_UNSEL, ANIMTYPE_ACTION_SLOT, BLI_assert, bAnimContext::bmain, blender::animrig::Channelbag::channel_groups(), blender::animrig::channelbag_for_action_slot(), bAnimContext::dopesheet_mode, bActionGroup::fcurve_range_length, bActionGroup::fcurve_range_start, blender::animrig::Channelbag::fcurves(), ActionSlot::handle, bAction::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, blender::animrig::Slot::is_expanded(), blender::animrig::Slot::is_selected(), SACTCONT_ACTION, SPACE_ACTION, and bAnimContext::spacetype.
Referenced by action_slot_summary_to_keylist(), animfilter_action(), and animfilter_action_slots().
| void ANIM_center_frame | ( | bContext * | C, |
| int | smooth_viewtx ) |
Definition at line 768 of file anim_draw.cc.
References ATTR_FALLTHROUGH, BLI_rctf_size_x(), C, RenderData::cfra, CTX_data_scene(), CTX_wm_region(), View2D::cur, find_prev_next_keyframes(), Scene::r, U, UI_view2d_smooth_view(), ARegion::v2d, w(), rctf::xmax, rctf::xmin, rctf::ymax, rctf::ymin, ZOOM_FRAME_MODE_KEEP_RANGE, ZOOM_FRAME_MODE_KEYFRAMES, and ZOOM_FRAME_MODE_SECONDS.
Referenced by actkeys_view_frame_exec(), graphkeys_view_frame_exec(), nlaedit_viewframe_exec(), and blender::ed::vse::sequencer_view_frame_exec().
| bAction * ANIM_channel_action_get | ( | const bAnimListElem * | ale | ) |
Retrieves the Action associated with this animation channel.
Definition at line 4888 of file anim_channels_defines.cc.
References ALE_ACT, ANIMTYPE_FCURVE, ANIMTYPE_GROUP, bAnimListElem::datatype, ELEM, bAnimListElem::fcurve_owner_id, GS, ID_AC, bAnimListElem::key_data, ID::name, and bAnimListElem::type.
Referenced by draw_channel_action_ranges(), and screen_ctx_sel_actions_impl().
| void ANIM_channel_debug_print_info | ( | bAnimContext & | ac, |
| bAnimListElem * | ale, | ||
| short | indent_level ) |
Print debug info string for the given channel.
Definition at line 4809 of file anim_channels_defines.cc.
References ACHANNEL_SETTING_ALWAYS_VISIBLE, ACHANNEL_SETTING_EXPAND, ACHANNEL_SETTING_MOD_OFF, ACHANNEL_SETTING_MUTE, ACHANNEL_SETTING_PINNED, ACHANNEL_SETTING_PROTECT, ACHANNEL_SETTING_SELECT, ACHANNEL_SETTING_SOLO, ACHANNEL_SETTING_VISIBLE, ANIM_CHAN_NAME_SIZE, ANIM_channel_get_typeinfo(), as_int(), BLI_assert_unreachable, BLI_str_tolower_ascii(), bAnimChannelType::channel_type_name, bAnimChannelType::has_setting, bAnimChannelType::name, name, printf, bAnimChannelType::setting_flag, setting_name(), bAnimChannelType::setting_ptr, STRNCPY_UTF8, and bAnimListElem::type.
Referenced by debug_channel_list_exec().
| void ANIM_channel_draw | ( | bAnimContext * | ac, |
| bAnimListElem * | ale, | ||
| float | yminc, | ||
| float | ymaxc, | ||
| size_t | channel_index ) |
Draw the given channel.
Definition at line 5179 of file anim_channels_defines.cc.
References acf_show_channel_colors(), achannel_is_being_renamed(), achannel_is_broken(), achannel_is_part_of_disconnected_slot(), ACHANNEL_SETTING_ALWAYS_VISIBLE, ACHANNEL_SETTING_EXPAND, ACHANNEL_SETTING_MOD_OFF, ACHANNEL_SETTING_MUTE, ACHANNEL_SETTING_PINNED, ACHANNEL_SETTING_PROTECT, ACHANNEL_SETTING_SELECT, ACHANNEL_SETTING_SOLO, ACHANNEL_SETTING_VISIBLE, ANIM_CHAN_NAME_SIZE, ANIM_channel_get_typeinfo(), ANIM_channel_setting_get(), ANIM_UI_get_channel_button_width(), ANIMTYPE_DSGPENCIL, ANIMTYPE_FCURVE, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_GROUP, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_SHAPEKEY, BLI_assert_unreachable, BLI_rcti_size_x(), CHANNEL_COLOR_RECT_MARGIN, CHANNEL_COLOR_RECT_WIDTH, col, FCurve::color, View2D::cur, bAnimListElem::data, bAnimChannelType::draw_backdrop, ELEM, EXTRA_SCROLL_PAD, FCURVE_VISIBLE, FCurve::flag, SpaceAction::flag, SpaceGraph::flag, bAnimChannelType::get_backdrop_color, bAnimChannelType::get_offset, GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_line_width(), GPU_PRIM_LINES, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), GRAPH_COLOR_BAND_WIDTH, GRAPH_ICON_VISIBILITY_OFFSET, bAnimChannelType::has_setting, bAnimChannelType::icon, ICON_WIDTH, immBegin(), immBindBuiltinProgram(), immEnd(), immRectf(), immUnbindProgram(), immUniformColor3f(), immUniformColor3fv(), immUniformColor3fvAlpha(), immVertex2f(), immVertexFormat(), View2D::mask, bAnimChannelType::name, name, NLATRACK_SKIP, pos, bAnimContext::region, SACTION_SLIDERS, SIPO_SLIDERS, bAnimContext::sl, SLIDER_WIDTH, SPACE_ACTION, SPACE_GRAPH, SPACE_NLA, bAnimContext::spacetype, TH_TEXT, TH_TEXT_HI, bAnimListElem::type, U, UI_fontstyle_draw_simple(), UI_FSTYLE_WIDGET, UI_GetThemeColor4ubv(), UI_icon_draw(), ARegion::v2d, V2D_SCROLL_WIDTH, rctf::xmax, and y.
Referenced by draw_channel_names(), draw_nla_track_list(), and graph_draw_channel_names().
| void ANIM_channel_draw_widgets | ( | const bContext * | C, |
| bAnimContext * | ac, | ||
| bAnimListElem * | ale, | ||
| uiBlock * | block, | ||
| const rctf * | rect, | ||
| size_t | channel_index ) |
Draw UI widgets the given channel.
Definition at line 6084 of file anim_channels_defines.cc.
References acf_action_slot_idtype_icon(), acf_show_channel_colors(), achannel_is_being_renamed(), ACHANNEL_SETTING_ALWAYS_VISIBLE, ACHANNEL_SETTING_EXPAND, ACHANNEL_SETTING_MOD_OFF, ACHANNEL_SETTING_MUTE, ACHANNEL_SETTING_PINNED, ACHANNEL_SETTING_PROTECT, achannel_setting_slider_cb(), achannel_setting_slider_nla_curve_cb(), achannel_setting_slider_shapekey_cb(), ACHANNEL_SETTING_SOLO, ACHANNEL_SETTING_VISIBLE, AnimData::action, bAnimContext::ads, bAnimListElem::adt, ADT_NLA_EDIT_ON, ANIM_channel_get_typeinfo(), ANIM_UI_get_channel_button_width(), ANIMTYPE_ACTION_SLOT, ANIMTYPE_FCURVE, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_SHAPEKEY, FCurve::array_index, FCurve::bezt, BKE_keyblock_curval_rnapath_get(), BLI_assert_unreachable, BLI_rctf_cent_y(), BLI_rctf_size_y(), BLI_rcti_size_x(), But, C, CHANNEL_COLOR_RECT_MARGIN, CHANNEL_COLOR_RECT_WIDTH, bAnimListElem::data, draw_grease_pencil_layer_widgets(), draw_setting_widget(), ELEM, blender::ui::Emboss, AnimData::flag, bGPdata::flag, SpaceAction::flag, SpaceGraph::flag, bAnimChannelType::get_channel_color, bAnimChannelType::get_offset, GP_DATA_ANNOTATIONS, GP_LAYER_ONIONSKIN, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), GRAPH_ICON_VISIBILITY_OFFSET, bAnimChannelType::has_setting, bAnimChannelType::icon, ICON_WIDTH, bAnimListElem::id, immBindBuiltinProgram(), immRectf(), immUnbindProgram(), immUniformColor3ubv(), blender::wm::InvokeDefault, View2D::mask, NA_RENAME, bAnimChannelType::name_prop, NC_ANIMATION, ND_ANIMCHAN, blender::ui::None, bGPDlayer::onion_flag, bAnimListElem::owner, pos, PROP_ENUM, ptr, rect_width(), bAnimContext::region, RENAME_TEXT_MIN_WIDTH, bDopeSheet::renameIndex, RNA_id_pointer_create(), RNA_int_set(), FCurve::rna_path, RNA_path_from_ID_to_property(), RNA_path_resolve_property(), RNA_pointer_create_discrete(), RNA_property_identifier(), RNA_property_type(), RNA_struct_find_property(), round_fl_to_int(), SACTION_SLIDERS, SIPO_SLIDERS, bAnimContext::sl, SLIDER_WIDTH, SPACE_ACTION, SPACE_GRAPH, SPACE_NLA, bAnimContext::spacetype, Text, bAnimListElem::type, UI_block_emboss_set(), UI_but_active_only(), UI_but_func_set(), UI_but_operator_ptr_ensure(), UI_icon_draw(), UI_SCALE_FAC, UI_UNIT_X, uiDefAutoButR(), uiDefButR(), uiDefIconButO(), ARegion::v2d, ARegion::winx, WM_event_add_notifier(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by draw_channel_names(), draw_nla_track_list(), and graph_draw_channel_names().
| const bAnimChannelType * ANIM_channel_get_typeinfo | ( | const bAnimListElem * | ale | ) |
Get type info from given channel type.
Definition at line 4763 of file anim_channels_defines.cc.
References ANIM_init_channel_typeinfo_data(), animchannelTypeInfo, ANIMTYPE_NUM_TYPES, BLI_assert, and bAnimListElem::type.
Referenced by acf_generic_basic_offset(), acf_generic_channel_backdrop(), acf_generic_channel_color(), acf_generic_dataexpand_backdrop(), acf_generic_root_backdrop(), acf_group_backdrop(), acf_nla_controls_backdrop(), acf_nlaaction_backdrop(), acf_summary_backdrop(), achannel_setting_widget_cb(), actkeys_channels_get_selected_extents(), ale_name_matches_dopesheet_filter(), ANIM_channel_debug_print_info(), ANIM_channel_draw(), ANIM_channel_draw_widgets(), ANIM_channel_setting_get(), ANIM_channel_setting_set(), anim_flush_channel_setting_down(), anim_flush_channel_setting_up(), ANIM_flush_setting_anim_channels(), draw_backdrops(), graph_panel_properties(), nla_tracks_get_selected_extents(), rename_anim_channels(), and skip_fcurve_with_name().
| short ANIM_channel_setting_get | ( | bAnimContext * | ac, |
| bAnimListElem * | ale, | ||
| eAnimChannel_Settings | setting ) |
Check if some setting for a channel is enabled Returns: 1 = On, 0 = Off, -1 = Invalid.
Definition at line 4907 of file anim_channels_defines.cc.
References ANIM_channel_get_typeinfo(), flag, bAnimChannelType::has_setting, ptr, bAnimChannelType::setting_flag, and bAnimChannelType::setting_ptr.
Referenced by acf_generic_root_backdrop(), acf_group_backdrop(), acf_nla_controls_backdrop(), acf_summary_color(), achannel_setting_flush_widget_cb(), actkeys_channels_get_selected_extents(), ANIM_channel_draw(), draw_backdrops(), draw_setting_widget(), graphview_curves_reveal_exec(), nla_tracks_get_selected_extents(), screen_ctx_sel_actions_impl(), and setflag_anim_channels().
| void ANIM_channel_setting_set | ( | bAnimContext * | ac, |
| bAnimListElem * | ale, | ||
| eAnimChannel_Settings | setting, | ||
| eAnimChannels_SetFlag | mode ) |
Change value of some setting for a channel.
Definition at line 4989 of file anim_channels_defines.cc.
References ACF_SETTING_SET, ANIM_channel_get_typeinfo(), BLI_assert, bAnimContext::bmain, flag, bAnimChannelType::has_setting, ptr, bAnimChannelType::setting_flag, bAnimChannelType::setting_post_update, and bAnimChannelType::setting_ptr.
Referenced by anim_flush_channel_setting_down(), anim_flush_channel_setting_up(), animchannel_select_range(), box_select_anim_channels(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), and setflag_anim_channels().
| void ANIM_deselect_keys_in_animation_editors | ( | bContext * | C | ) |
Deselects the keys displayed within the open animation editors. Depending on the display settings of those editors, the keys may not be from an action of the selected objects.
Definition at line 478 of file anim_deps.cc.
References blender::animrig::action_deselect_keys(), Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, bScreen::areabase, BKE_area_find_region_type(), BKE_workspace_active_screen_get(), C, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), CTX_wm_window_set(), bAnimContext::data, bAnimContext::datatype, ELEM, filter, LISTBASE_FOREACH, RGN_TYPE_WINDOW, SPACE_ACTION, and SPACE_GRAPH.
Referenced by actkeys_insertkey_exec(), graphkeys_insertkey_exec(), insert_key_button_exec(), insert_key_exec(), keyframe_insert_with_keyingset_exec(), blender::ed::object::object_clear_transform_generic_exec(), snap_sel_to_grid_exec(), snap_selected_to_location_rotation(), blender::ed::transform::special_aftertrans_update__object(), blender::ed::transform::special_aftertrans_update__pose(), and WM_gizmo_target_property_anim_autokey().
| void ANIM_draw_action_framerange | ( | AnimData * | adt, |
| bAction * | action, | ||
| View2D * | v2d, | ||
| float | ymin, | ||
| float | ymax ) |
Draw manually set intended playback frame range guides for the action in the background. Allows specifying a subset of the Y range of the view.
Definition at line 207 of file anim_draw.cc.
References ACT_FRAME_RANGE, BKE_nla_tweakedit_remap(), CLAMP_MAX, CLAMP_MIN, View2D::cur, bAction::flag, bAction::frame_end, bAction::frame_start, GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_line_width(), GPU_PRIM_LINES, GPU_SHADER_2D_DIAG_STRIPES, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBegin(), immBindBuiltinProgram(), immEnd(), immRectf(), immUnbindProgram(), immUniform1i(), immUniform4f(), immUniformThemeColorShade(), immVertex2f(), immVertexFormat(), NLATIME_CONVERT_MAP, pos, TH_BACK, UI_GetThemeColorShadeAlpha4fv(), UI_SCALE_FAC, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by action_main_region_draw(), draw_channel_action_ranges(), and draw_nla_main_data().
General call for drawing current frame indicator in animation editor.
Definition at line 54 of file anim_draw.cc.
References C, RenderData::cfra, CTX_data_scene(), View2D::cur, DRAWCFRA_WIDE, flag, float, RenderData::framelen, GPU_line_width(), GPU_PRIM_LINES, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBegin(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immUniformThemeColor(), immVertex2f(), immVertexFormat(), pos, Scene::r, RenderData::subframe, TH_CFRAME, x, rctf::ymax, and rctf::ymin.
Referenced by dopesheet_region_draw(), and graph_region_draw().
Draw frame range guides (for scene frame range) in background.
Definition at line 171 of file anim_draw.cc.
References View2D::cur, RenderData::efra, GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_PRIM_LINES, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBegin(), immBindBuiltinProgram(), immEnd(), immRectf(), immUnbindProgram(), immUniformThemeColorShade(), immUniformThemeColorShadeAlpha(), immVertex2f(), immVertexFormat(), pos, Scene::r, RenderData::sfra, TH_BACK, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by action_main_region_draw(), clip_draw_dopesheet_main(), clip_draw_graph(), graph_main_region_draw(), and nla_main_region_draw().
Draw preview range 'curtains' for highlighting where the animation data is.
Definition at line 82 of file anim_draw.cc.
References View2D::cur, GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBindBuiltinProgram(), immRectf(), immUnbindProgram(), immUniformThemeColorShadeAlpha(), immVertexFormat(), RenderData::pefra, pos, PRVRANGEON, RenderData::psfra, Scene::r, TH_ANIM_PREVIEW_RANGE, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by action_main_region_draw(), clip_draw_dopesheet_main(), clip_draw_graph(), blender::ed::vse::draw_timeline_seq(), graph_main_region_draw(), and nla_main_region_draw().
Draw range of the current sequencer scene strip when using scene time syncing.
Definition at line 113 of file anim_draw.cc.
References ADS_OVERLAY_SHOW_OVERLAYS, ADS_SHOW_SCENE_STRIP_FRAME_RANGE, C, CTX_wm_space_action(), CTX_wm_workspace(), View2D::cur, SpaceActionOverlays::flag, WorkSpace::flags, blender::ed::vse::get_scene_strip_for_time_sync(), blender::seq::give_frame_index(), GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBindBuiltinProgram(), immRectf(), immUnbindProgram(), immUniformThemeColorShadeAlpha(), immVertexFormat(), SpaceAction::overlays, pos, Scene::r, Strip::scene, WorkSpace::sequencer_scene, RenderData::sfra, TH_ANIM_SCENE_STRIP_RANGE, blender::seq::time_left_handle_frame_get(), blender::seq::time_right_handle_frame_get(), WORKSPACE_SYNC_SCENE_TIME, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by action_main_region_draw().
| void ANIM_flush_setting_anim_channels | ( | bAnimContext * | ac, |
| ListBase * | anim_data, | ||
| bAnimListElem * | ale_setting, | ||
| eAnimChannel_Settings | setting, | ||
| eAnimChannels_SetFlag | mode ) |
Flush visibility (for Graph Editor) changes up/down hierarchy for changes in the given setting
Definition at line 954 of file anim_channels_edit.cc.
References ACHANNEL_SETTING_ALWAYS_VISIBLE, ANIM_channel_get_typeinfo(), anim_flush_channel_setting_down(), anim_flush_channel_setting_up(), bAnimListElem::data, ELEM, ListBase::first, bAnimChannelType::get_offset, bAnimListElem::id, LISTBASE_FOREACH, printf, and bAnimListElem::type.
Referenced by achannel_setting_flush_widget_cb(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), and setflag_anim_channels().
| void ANIM_fmodifier_panels | ( | const bContext * | C, |
| ID * | owner_id, | ||
| ListBase * | fmodifiers, | ||
| uiListPanelIDFromDataFunc | panel_id_fn ) |
Checks if the panels match the active strip / curve, rebuilds them if they don't.
Definition at line 875 of file fmodifier_ui.cc.
References BLI_assert, C, CTX_wm_region(), ListBase::first, PanelType::flag, LISTBASE_FOREACH, MAX_NAME, Panel::next, PANEL_TYPE_INSTANCED, ARegion::panels, RNA_pointer_create_discrete(), Panel::type, UI_panel_add_instanced(), UI_panel_custom_data_set(), UI_panel_list_matches_data(), and UI_panels_free_instanced().
Referenced by graph_panel_modifiers(), and nla_panel_modifiers().
| bool ANIM_fmodifiers_copy_to_buf | ( | ListBase * | modifiers, |
| bool | active ) |
Copy the given F-Modifiers to the buffer, returning whether anything was copied or not assuming that the buffer has been cleared already with ANIM_fmodifiers_copybuf_free()
| active | Only copy the active modifier. |
Definition at line 956 of file fmodifier_ui.cc.
References active, BLI_addtail(), copy_fmodifier(), copy_fmodifiers(), ELEM, find_active_fmodifier(), ListBase::first, and fmodifier_copypaste_buf.
Referenced by graph_fmodifier_copy_exec(), and nla_fmodifier_copy_exec().
| void ANIM_fmodifiers_copybuf_free | ( | ) |
Free the copy/paste buffer.
Definition at line 950 of file fmodifier_ui.cc.
References fmodifier_copypaste_buf, and free_fmodifiers().
Referenced by graph_fmodifier_copy_exec(), nla_fmodifier_copy_exec(), and WM_exit_ex().
'Paste' the F-Modifier(s) from the buffer to the specified list
| replace | Free all the existing modifiers to leave only the pasted ones. |
Definition at line 985 of file fmodifier_ui.cc.
References BKE_fcurve_handles_recalc(), BKE_fcurve_is_cyclic(), BLI_addtail(), copy_fmodifier(), FModifier::curve, FModifier::flag, fmodifier_copypaste_buf, FMODIFIER_FLAG_ACTIVE, free_fmodifiers(), and LISTBASE_FOREACH.
Referenced by graph_fmodifier_paste_exec(), and nla_fmodifier_paste_exec().
| void ANIM_frame_channel_y_extents | ( | bContext * | C, |
| bAnimContext * | ac ) |
Definition at line 1007 of file anim_channels_edit.cc.
References add_region_padding(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMFILTER_CURVE_VISIBLE, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, bAnimContext::area, BKE_area_find_region_type(), BLI_rctf_is_valid(), BLI_rctf_union(), bounds(), C, View2D::cur, bAnimContext::data, bAnimContext::datatype, filter, RenderData::flag, FLT_MAX, get_channel_bounds(), LISTBASE_FOREACH, RenderData::pefra, RenderData::psfra, Scene::r, RGN_TYPE_WINDOW, bAnimContext::scene, SCER_PRV_RANGE, ARegion::v2d, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Add horizontal margin to the rectangle.
This function assumes that the X-min/X-max are set to a frame range to show.
Definition at line 811 of file anim_draw.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), View2D::mask, UI_SCALE_FAC, rctf::xmax, and rctf::xmin.
Referenced by actkeys_viewall(), graphkeys_viewall(), and scene_range_frame_exec().
| short ANIM_get_normalization_flags | ( | SpaceLink * | space_link | ) |
Get flags used for normalization in ANIM_unit_mapping_get_factor.
Definition at line 415 of file anim_draw.cc.
References ANIM_UNITCONV_NORMALIZE, ANIM_UNITCONV_NORMALIZE_FREEZE, SpaceGraph::flag, SIPO_NORMALIZE, SIPO_NORMALIZE_FREEZE, SPACE_GRAPH, and SpaceLink::spacetype.
Referenced by create_ghost_curves(), blender::ed::transform::createTransGraphEditData(), draw_fcurve(), draw_fcurve_curve(), draw_fcurve_curve_keys(), draw_fcurve_curve_samples(), get_graph_keyframe_extents(), get_nearest_fcurve_verts_list(), get_normalized_fcurve_bounds(), graph_draw_driver_debug(), graphkeys_click_insert_exec(), initialize_box_select_key_editing_data(), insert_graph_keys(), mirror_graph_keys(), snap_graph_keys(), and sum_selected_keyframes().
Definition at line 96 of file graph_buttons.cc.
References C, and graph_panel_context().
Referenced by fmodifier_get_pointers(), and fmodifier_list_space_specific().
Tags the given ID block for refreshes (if applicable) due to Animation Editor editing.
Definition at line 103 of file anim_deps.cc.
References DEG_id_tag_update_ex(), ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, and ID_RECALC_TRANSFORM.
Referenced by convert_action_exec(), merge_actions_selection_exec(), blender::ed::transform::recalcData_actedit(), and blender::ed::transform::recalcData_nla().
| bool ANIM_is_active_channel | ( | bAnimListElem * | ale | ) |
Return whether channel is active.
Definition at line 416 of file anim_channels_edit.cc.
References bAnimListElem::adt, ADT_UI_ACTIVE, AGRP_ACTIVE, ANIMTYPE_ACTION_SLOT, ANIMTYPE_ANIMDATA, ANIMTYPE_DSARM, ANIMTYPE_DSCACHEFILE, ANIMTYPE_DSCAM, ANIMTYPE_DSCUR, ANIMTYPE_DSGPENCIL, ANIMTYPE_DSHAIR, ANIMTYPE_DSLAM, ANIMTYPE_DSLAT, ANIMTYPE_DSLIGHTPROBE, ANIMTYPE_DSLINESTYLE, ANIMTYPE_DSMAT, ANIMTYPE_DSMBALL, ANIMTYPE_DSMCLIP, ANIMTYPE_DSMESH, ANIMTYPE_DSNTREE, ANIMTYPE_DSPART, ANIMTYPE_DSPOINTCLOUD, ANIMTYPE_DSSKEY, ANIMTYPE_DSSPK, ANIMTYPE_DSTEX, ANIMTYPE_DSVOLUME, ANIMTYPE_DSWOR, ANIMTYPE_FCURVE, ANIMTYPE_FILLACT_LAYERED, ANIMTYPE_FILLACTD, ANIMTYPE_FILLDRIVERS, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_GROUP, ANIMTYPE_MASKDATABLOCK, ANIMTYPE_MASKLAYER, ANIMTYPE_NLAACTION, ANIMTYPE_NLACONTROLS, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, ANIMTYPE_NONE, ANIMTYPE_NUM_TYPES, ANIMTYPE_OBJECT, ANIMTYPE_PALETTE, ANIMTYPE_SCENE, ANIMTYPE_SHAPEKEY, ANIMTYPE_SPECIALDATA__UNUSED, ANIMTYPE_SUMMARY, bAnimListElem::data, FCURVE_ACTIVE, AnimData::flag, bActionGroup::flag, bGPDlayer::flag, FCurve::flag, GP_LAYER_ACTIVE, bAnimListElem::id, blender::animrig::Slot::is_active(), and bAnimListElem::type.
Referenced by animchannel_has_active_of_type(), and animchannel_select_range().
| void ANIM_list_elem_update | ( | Main * | bmain, |
| Scene * | scene, | ||
| bAnimListElem * | ale ) |
Tags the given anim list element for refreshes (if applicable) due to Animation Editor editing.
Definition at line 52 of file anim_deps.cc.
References AnimData::action, ALE_FCURVE, ANIMTYPE_ANIMDATA, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, BKE_animdata_from_id(), bAnimListElem::datatype, DEG_id_tag_update(), ELEM, bAction::id, bAnimListElem::id, ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, bAnimListElem::key_data, ptr, RNA_id_pointer_create(), FCurve::rna_path, RNA_path_resolve_property(), RNA_property_update_main(), and bAnimListElem::type.
Referenced by ANIM_animdata_update(), blender::ed::transform::recalcData_actedit(), and blender::ed::transform::recalcData_graphedit().
| void ANIM_modifier_panels_register_graph_and_NLA | ( | ARegionType * | region_type, |
| const char * | modifier_panel_prefix, | ||
| PanelTypePollFn | poll_function ) |
Definition at line 917 of file fmodifier_ui.cc.
References panel_register_envelope(), panel_register_fn_generator(), panel_register_generator(), panel_register_limits(), panel_register_noise(), and panel_register_stepped().
Referenced by graph_buttons_register(), and nla_buttons_register().
| void ANIM_modifier_panels_register_graph_only | ( | ARegionType * | region_type, |
| const char * | modifier_panel_prefix, | ||
| PanelTypePollFn | poll_function ) |
Definition at line 929 of file fmodifier_ui.cc.
References panel_register_cycles().
Referenced by graph_buttons_register().
Definition at line 222 of file nla_buttons.cc.
References ANIM_nla_context_strip_ptr(), C, and PointerRNA::data.
Referenced by fmodifier_list_space_specific().
| bool ANIM_nla_context_strip_ptr | ( | const bContext * | C, |
| PointerRNA * | r_ptr ) |
Definition at line 208 of file nla_buttons.cc.
References C, and nla_panel_context().
Referenced by ANIM_nla_context_strip(), and screen_ctx_active_nla_strip().
Definition at line 213 of file nla_buttons.cc.
References ANIM_nla_context_track_ptr(), C, and PointerRNA::data.
| bool ANIM_nla_context_track_ptr | ( | const bContext * | C, |
| PointerRNA * | r_ptr ) |
Definition at line 203 of file nla_buttons.cc.
References C, and nla_panel_context().
Referenced by ANIM_nla_context_track(), and screen_ctx_active_nla_track().
| bool ANIM_nla_mapping_allowed | ( | const bAnimListElem * | ale | ) |
Check whether NLA time remapping should be done on this bAnimListElem.
Definition at line 274 of file anim_draw.cc.
References ANIMTYPE_DSGPENCIL, ANIMTYPE_FCURVE, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_MASKDATABLOCK, ANIMTYPE_MASKLAYER, ANIMTYPE_NLACURVE, ANIMTYPE_SUMMARY, FCurve::driver, bAnimListElem::key_data, and bAnimListElem::type.
Referenced by action_slot_summary_to_keylist(), actkeys_list_element_to_keylist(), ANIM_nla_mapping_apply_if_needed_fcurve(), ANIM_nla_tweakedit_remap(), blender::ed::transform::bezt_to_transdata(), box_select_action(), cachefile_to_keylist(), draw_fcurve(), ED_add_fcurve_channel(), keylist_from_graph_editor(), ob_to_keylist(), region_select_action_keys(), scene_to_keylist(), summary_to_keylist(), and blender::ed::transform::TimeToTransData().
Apply/Unapply NLA mapping to all keyframes in the nominated F-Curve
| restore | Whether to map points back to non-mapped time. |
| only_keys | Whether to only adjust the location of the center point of beztriples. |
TODO: this is only used by fcurve_to_keylist() at this point. Perhaps with some refactoring we can make fcurve_to_keylist() use ANIM_nla_mapping_apply_if_needed_fcurve() instead, and then we can get rid of this.
Definition at line 374 of file anim_draw.cc.
References ANIM_fcurve_keyframes_loop(), bezt_nlamapping_apply(), bezt_nlamapping_restore(), BLI_listbase_is_empty(), KeyframeEditData::data, KeyframeEditData::i1, and AnimData::nla_tracks.
Referenced by ANIM_nla_mapping_apply_if_needed_fcurve(), and fcurve_to_keylist().
| void ANIM_nla_mapping_apply_if_needed_fcurve | ( | bAnimListElem * | ale, |
| FCurve * | fcu, | ||
| bool | restore, | ||
| bool | only_keys ) |
Same as above, but only if ANIM_nla_mapping_allowed(ale) returns true.
Definition at line 401 of file anim_draw.cc.
References bAnimListElem::adt, ANIM_nla_mapping_allowed(), and ANIM_nla_mapping_apply_fcurve().
Referenced by actkeys_framejump_exec(), actkeys_select_leftright(), box_select_graphkeys(), draw_fcurve(), get_nearest_fcurve_verts_list(), graphkeys_select_leftright(), markers_selectkeys_between(), markers_selectkeys_between(), mirror_action_keys(), mirror_graph_keys(), paste_animedit_keys(), blender::ed::transform::posttrans_action_clean(), snap_action_keys(), snap_graph_keys(), blender::ed::transform::special_aftertrans_update__actedit(), blender::ed::transform::special_aftertrans_update__graph(), and sum_selected_keyframes().
| float ANIM_nla_tweakedit_remap | ( | bAnimListElem * | ale, |
| float | cframe, | ||
| eNlaTime_ConvertModes | mode ) |
Do NLA time remapping, but only if ANIM_nla_mapping_allowed(ale) returns true.
Definition at line 324 of file anim_draw.cc.
References bAnimListElem::adt, ANIM_nla_mapping_allowed(), and BKE_nla_tweakedit_remap().
Referenced by actkeys_find_key_in_list_element(), actkeys_mselect_column(), bezt_to_cfraelem(), blender::ed::transform::bezt_to_transdata(), box_select_action(), channels_bake_exec(), columnselect_action_keys(), columnselect_graph_keys(), create_ghost_curves(), blender::ed::transform::createTransActionData(), blender::ed::transform::createTransGraphEditData(), draw_fcurve_modifier_controls_envelope(), get_channel_bounds(), get_graph_keyframe_extents(), get_keyframe_extents(), graphkeys_click_insert_exec(), graphkeys_mselect_column(), insert_graph_keys(), rectf_curve_intersection(), region_select_action_keys(), summary_keyframes_loop(), and blender::ed::transform::TimeToTransData().
| void ANIM_set_active_channel | ( | bAnimContext * | ac, |
| void * | data, | ||
| eAnimCont_Types | datatype, | ||
| eAnimFilter_Flags | filter, | ||
| void * | channel_data, | ||
| eAnim_ChannelType | channel_type ) |
Set the given animation-channel as the active one for the active context.
Definition at line 236 of file anim_channels_edit.cc.
References ACHANNEL_SET_FLAG, ACHANNEL_SETFLAG_CLEAR, bAnimListElem::adt, ADT_UI_ACTIVE, AGRP_ACTIVE, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMTYPE_ACTION_SLOT, ANIMTYPE_ANIMDATA, ANIMTYPE_DSARM, ANIMTYPE_DSCACHEFILE, ANIMTYPE_DSCAM, ANIMTYPE_DSCUR, ANIMTYPE_DSGPENCIL, ANIMTYPE_DSHAIR, ANIMTYPE_DSLAM, ANIMTYPE_DSLAT, ANIMTYPE_DSLIGHTPROBE, ANIMTYPE_DSLINESTYLE, ANIMTYPE_DSMAT, ANIMTYPE_DSMBALL, ANIMTYPE_DSMCLIP, ANIMTYPE_DSMESH, ANIMTYPE_DSNTREE, ANIMTYPE_DSPART, ANIMTYPE_DSPOINTCLOUD, ANIMTYPE_DSSKEY, ANIMTYPE_DSSPK, ANIMTYPE_DSTEX, ANIMTYPE_DSVOLUME, ANIMTYPE_DSWOR, ANIMTYPE_FCURVE, ANIMTYPE_FILLACT_LAYERED, ANIMTYPE_FILLACTD, ANIMTYPE_FILLDRIVERS, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_GROUP, ANIMTYPE_MASKDATABLOCK, ANIMTYPE_MASKLAYER, ANIMTYPE_NLAACTION, ANIMTYPE_NLACONTROLS, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, ANIMTYPE_NONE, ANIMTYPE_NUM_TYPES, ANIMTYPE_OBJECT, ANIMTYPE_PALETTE, ANIMTYPE_SCENE, ANIMTYPE_SHAPEKEY, ANIMTYPE_SPECIALDATA__UNUSED, ANIMTYPE_SUMMARY, BLI_listbase_is_empty(), bAnimListElem::data, data, FCURVE_ACTIVE, filter, ListBase::first, AnimData::flag, bActionGroup::flag, bGPDlayer::flag, FCurve::flag, NlaTrack::flag, GP_LAYER_ACTIVE, bAnimListElem::next, NLATRACK_ACTIVE, and bAnimListElem::type.
Referenced by box_select_graphcurves(), click_select_channel_fcurve(), click_select_channel_gplayer(), click_select_channel_group(), drivers_editor_show_exec(), mouse_action_keys(), mouse_graph_keys(), mouse_nla_strips(), and mouse_nla_tracks().
| void ANIM_sync_animchannels_to_data | ( | const bContext * | C | ) |
Main call to be exported to animation editors.
Definition at line 261 of file anim_deps.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), animchan_sync_fcurve(), animchan_sync_gplayer(), animchan_sync_group(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_NODUPLIS, ANIMTYPE_ACTION_SLOT, ANIMTYPE_ANIMDATA, ANIMTYPE_DSARM, ANIMTYPE_DSCACHEFILE, ANIMTYPE_DSCAM, ANIMTYPE_DSCUR, ANIMTYPE_DSGPENCIL, ANIMTYPE_DSHAIR, ANIMTYPE_DSLAM, ANIMTYPE_DSLAT, ANIMTYPE_DSLIGHTPROBE, ANIMTYPE_DSLINESTYLE, ANIMTYPE_DSMAT, ANIMTYPE_DSMBALL, ANIMTYPE_DSMCLIP, ANIMTYPE_DSMESH, ANIMTYPE_DSNTREE, ANIMTYPE_DSPART, ANIMTYPE_DSPOINTCLOUD, ANIMTYPE_DSSKEY, ANIMTYPE_DSSPK, ANIMTYPE_DSTEX, ANIMTYPE_DSVOLUME, ANIMTYPE_DSWOR, ANIMTYPE_FCURVE, ANIMTYPE_FILLACT_LAYERED, ANIMTYPE_FILLACTD, ANIMTYPE_FILLDRIVERS, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_GROUP, ANIMTYPE_MASKDATABLOCK, ANIMTYPE_MASKLAYER, ANIMTYPE_NLAACTION, ANIMTYPE_NLACONTROLS, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, ANIMTYPE_NONE, ANIMTYPE_NUM_TYPES, ANIMTYPE_OBJECT, ANIMTYPE_PALETTE, ANIMTYPE_SCENE, ANIMTYPE_SHAPEKEY, ANIMTYPE_SPECIALDATA__UNUSED, ANIMTYPE_SUMMARY, C, bAnimContext::data, bAnimContext::datatype, filter, and LISTBASE_FOREACH.
Referenced by action_refresh(), and graph_refresh().
| float ANIM_UI_get_channel_button_width | ( | ) |
Definition at line 5174 of file anim_channels_defines.cc.
References U.
Referenced by ANIM_channel_draw(), and ANIM_channel_draw_widgets().
| float ANIM_UI_get_channel_height | ( | ) |
Definition at line 5144 of file anim_channels_defines.cc.
References ANIM_UI_get_keyframe_scale_factor(), and U.
Referenced by actkeys_channels_get_selected_extents(), actkeys_find_key_in_list_element(), ANIM_UI_get_channel_step(), draw_backdrops(), draw_channel_names(), draw_keyframes(), and graph_draw_channel_names().
| float ANIM_UI_get_channel_name_width | ( | ) |
Definition at line 5169 of file anim_channels_defines.cc.
References U.
Referenced by animchannels_channel_get(), and animchannels_mouseclick_invoke().
| float ANIM_UI_get_channel_skip | ( | ) |
Definition at line 5149 of file anim_channels_defines.cc.
References U.
Referenced by ANIM_UI_get_channel_step(), ANIM_UI_get_first_channel_top(), and draw_channel_action_ranges().
| float ANIM_UI_get_channel_step | ( | ) |
Definition at line 5159 of file anim_channels_defines.cc.
References ANIM_UI_get_channel_height(), and ANIM_UI_get_channel_skip().
Referenced by actkeys_channels_get_selected_extents(), actkeys_find_list_element_at_position(), ANIM_UI_get_channels_total_height(), animchannels_channel_get(), animchannels_mouseclick_invoke(), box_select_action(), box_select_anim_channels(), draw_backdrops(), draw_channel_action_ranges(), draw_channel_names(), draw_keyframes(), graph_draw_channel_names(), and region_select_action_keys().
Definition at line 5164 of file anim_channels_defines.cc.
References ANIM_UI_get_channel_step(), and ANIM_UI_get_first_channel_top().
Referenced by set_v2d_height(), and set_v2d_height().
Definition at line 5154 of file anim_channels_defines.cc.
References ANIM_UI_get_channel_skip(), UI_TIME_SCRUB_MARGIN_Y, and UI_view2d_scale_get_y().
Referenced by actkeys_channels_get_selected_extents(), actkeys_find_list_element_at_position(), ANIM_UI_get_channels_total_height(), animchannels_channel_get(), animchannels_mouseclick_invoke(), box_select_action(), box_select_anim_channels(), draw_backdrops(), draw_channel_action_ranges(), draw_channel_names(), draw_keyframes(), graph_draw_channel_names(), and region_select_action_keys().
| float ANIM_UI_get_keyframe_scale_factor | ( | ) |
Definition at line 5132 of file anim_channels_defines.cc.
References ThemeSpace::keyframe_scale_fac, bTheme::space_action, and UI_GetTheme().
Referenced by ANIM_UI_get_channel_height(), and draw_keyframes().
| float ANIM_unit_mapping_get_factor | ( | Scene * | scene, |
| ID * | id, | ||
| FCurve * | fcu, | ||
| short | flag, | ||
| float * | r_offset ) |
Get unit conversion factor for given ID + F-Curve.
Definition at line 624 of file anim_draw.cc.
References ANIM_UNITCONV_NORMALIZE, ANIM_UNITCONV_RESTORE, DEG2RADF, flag, normalization_factor_get(), PROP_UNIT_ROTATION, ptr, RAD2DEGF, RNA_id_pointer_create(), FCurve::rna_path, RNA_path_resolve_property(), RNA_property_subtype(), RNA_SUBTYPE_UNIT, UnitSettings::system_rotation, Scene::unit, and USER_UNIT_ROT_RADIANS.
Referenced by box_select_graphcurves(), box_select_graphkeys(), create_ghost_curves(), blender::ed::transform::createTransGraphEditData(), draw_fcurve(), draw_fcurve_curve(), draw_fcurve_curve_keys(), draw_fcurve_curve_samples(), get_graph_keyframe_extents(), get_nearest_fcurve_verts_list(), get_normalized_fcurve_bounds(), graph_draw_driver_debug(), graphkeys_click_insert_exec(), insert_graph_keys(), mirror_graph_keys(), snap_graph_keys(), sum_selected_keyframes(), and blender::animrig::tests::TEST_F().
| void animviz_build_motionpath_targets | ( | Object * | ob, |
| blender::Vector< MPathTarget * > & | r_targets ) |
Populate the given vector with MPathTarget elements for the given object. Will look for pose bones as well. animviz_free_motionpath_targets needs to be called to free the memory allocated in this function.
Definition at line 92 of file anim_motion_paths.cc.
References ANIM_bonecoll_is_visible_pchan(), ANIMVIZ_RECALC_PATHS, blender::Vector< T, InlineBufferCapacity, Allocator >::append(), bPose::avs, Object::avs, bPose::chanbase, Object::data, LISTBASE_FOREACH, MEM_callocN(), MPathTarget::mpath, Object::mpath, MPathTarget::ob, MPathTarget::pchan, Object::pose, and bAnimVizSettings::recalc.
Referenced by ED_pose_recalculate_paths(), and blender::ed::object::motion_paths_recalc().
| void animviz_calc_motionpaths | ( | Depsgraph * | depsgraph, |
| Main * | bmain, | ||
| Scene * | scene, | ||
| blender::MutableSpan< MPathTarget * > | targets, | ||
| eAnimvizCalcRange | range, | ||
| bool | restore ) |
Definition at line 406 of file anim_motion_paths.cc.
References AnimData::action, action_group_to_keylist(), action_to_keylist(), ANIMVIZ_CALC_RANGE_CHANGED, ANIMVIZ_CALC_RANGE_CURRENT_FRAME, ANIMVIZ_CALC_RANGE_FULL, ANIMVIZ_RECALC_PATHS, animviz_target_settings_get(), bMotionPath::batch_line, bMotionPath::batch_points, BKE_action_group_find_name(), BKE_animdata_from_id(), BKE_scene_graph_update_tagged(), Scene::camera, RenderData::cfra, blender::animrig::Channelbag::channel_group_find(), blender::animrig::channelbag_for_action_slot(), bActionGroup::channels, CLOG_INFO, bAction::curves, DEG_get_evaluated(), DEG_is_active(), DEG_make_active(), DEG_make_inactive(), depsgraph, ED_keylist_create(), ED_keylist_free(), ED_keylist_prepare_for_direct_access(), GPU_BATCH_DISCARD_SAFE, GPU_VERTBUF_DISCARD_SAFE, blender::animrig::Action::is_action_layered(), blender::MutableSpan< T >::is_empty(), blender::listbase_to_vector(), LOG, max_ii(), min_ii(), motionpath_calculate_update_range(), motionpath_free_free_tree_data(), motionpath_get_global_framerange(), MOTIONPATH_VIEW_KFACT, motionpaths_calc_bake_targets(), motionpaths_calc_update_scene(), bAnimVizSettings::path_viewflag, bMotionPath::points_vbo, Scene::r, bAnimVizSettings::recalc, and AnimData::slot_handle.
Referenced by ED_pose_recalculate_paths(), and blender::ed::object::motion_paths_recalc().
| Depsgraph * animviz_depsgraph_build | ( | Main * | bmain, |
| Scene * | scene, | ||
| ViewLayer * | view_layer, | ||
| blender::Span< MPathTarget * > | targets ) |
Definition at line 69 of file anim_motion_paths.cc.
References DAG_EVAL_VIEWPORT, DEG_graph_build_from_ids(), DEG_graph_new(), depsgraph, motionpaths_calc_update_scene(), and blender::Span< T >::size().
Referenced by ED_pose_recalculate_paths(), and blender::ed::object::motion_paths_recalc().
| void animviz_free_motionpath_targets | ( | blender::Vector< MPathTarget * > & | targets | ) |
Free the elements of the vector populated with animviz_build_motionpath_targets. After this function the Vector will have a length of 0.
Definition at line 124 of file anim_motion_paths.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::clear_and_shrink(), and MEM_freeN().
Referenced by ED_pose_recalculate_paths(), and blender::ed::object::motion_paths_recalc().
Update motion path computation range (in ob.avs or armature.avs) from user choice in ob.avs.path_range or arm.avs.path_range, depending on active user mode.
| ob | Object to compute range for (must be provided) |
| scene | Used when scene range is chosen. |
Definition at line 360 of file anim_motion_paths.cc.
References AnimData::action, Object::adt, blender::animrig::legacy::assigned_action_has_keyframes(), ATTR_FALLTHROUGH, bPose::avs, Object::avs, BLI_assert_msg, ED_keylist_all_keys_frame_range(), ED_keylist_create(), ED_keylist_free(), ED_keylist_selected_keys_frame_range(), fcurve_to_keylist(), blender::animrig::legacy::fcurves_for_assigned_action(), blender::Bounds< T >::max, blender::Bounds< T >::min, Object::mode, MOTIONPATH_RANGE_KEYS_ALL, MOTIONPATH_RANGE_KEYS_SELECTED, MOTIONPATH_RANGE_MANUAL, MOTIONPATH_RANGE_SCENE, OB_MODE_POSE, bAnimVizSettings::path_ef, bAnimVizSettings::path_range, bAnimVizSettings::path_sf, PEFRA, Object::pose, and PSFRA.
Referenced by blender::ed::object::object_calculate_paths_exec(), blender::ed::object::object_update_paths_exec(), pose_calculate_paths_exec(), and pose_update_paths_exec().
Action Editor - Action Management. Helper function to find the active AnimData block from the Action Editor context.
Definition at line 53 of file action_data.cc.
References Key::adt, Object::adt, BKE_key_from_object(), C, CTX_data_active_object(), CTX_wm_space_data(), Key::id, Object::id, SpaceAction::mode, ptr, RNA_property_editable(), SACTCONT_ACTION, SACTCONT_SHAPEKEY, SPACE_ACTION, SpaceLink::spacetype, and UI_context_active_but_prop_get_templateID().
Referenced by action_new_exec(), action_pushdown_exec(), action_pushdown_poll(), action_stash_create_exec(), action_stash_create_poll(), action_stash_exec(), action_unlink_exec(), and action_unlink_poll().
| void ED_anim_ale_fcurve_delete | ( | bAnimContext & | ac, |
| bAnimListElem & | ale ) |
Delete an F-Curve from its owner.
This can delete an F-Curve from an Action (both directly assigned and via an NLA strip), Drivers, and NLA control curves.
Definition at line 2908 of file anim_channels_edit.cc.
References AnimData::action, blender::animrig::action_fcurve_remove(), bAnimListElem::adt, ANIMCONT_DRIVERS, blender::animrig::animdata_fcurve_delete(), ANIMTYPE_FCURVE, ANIMTYPE_NLACURVE, BKE_nlastrip_controlcurve_remove(), BLI_assert, BLI_assert_msg, BLI_assert_unreachable, bAnimListElem::data, bAnimContext::datatype, FCurve::driver, ELEM, bAnimListElem::fcurve_owner_id, GS, ID_AC, blender::animrig::Action::is_action_legacy(), ID::name, bAnimListElem::owner, printf, FCurve::rna_path, tag_update_animation_element(), bAnimListElem::type, UNUSED_VARS_NDEBUG, and wrap().
Referenced by animchannels_delete_exec(), and delete_action_keys().
| void ED_animedit_unlink_action | ( | bContext * | C, |
| ID * | id, | ||
| AnimData * | adt, | ||
| bAction * | act, | ||
| ReportList * | reports, | ||
| bool | force_delete ) |
Definition at line 510 of file action_data.cc.
References NlaStrip::act, ADT_NLA_EDIT_ON, BKE_nla_tweakmode_exit(), BKE_nlastrip_remove_and_free(), BKE_nlatrack_remove_and_free(), BKE_reportf(), BLI_assert, C, CTX_data_scene(), DATA_, ListBase::first, AnimData::flag, bAction::id, id_fake_user_clear(), ID::name, NlaTrack::name, NlaStrip::next, NlaTrack::next, AnimData::nla_tracks, PointerRNA_NULL, ptr, RNA_pointer_create_discrete(), RNA_property_pointer_set(), RNA_property_update(), RNA_struct_find_property(), RPT_WARNING, SCE_NLA_EDIT_ON, NlaTrack::strips, and ID::us.
Referenced by action_unlink_exec(), and nla_action_unlink_exec().
Set up UI configuration for Drivers Editor (drivers editor window) and RNA (mode switching).
Definition at line 38 of file graph_utils.cc.
References BKE_area_find_region_type(), C, View2D::cur, ED_region_visibility_change_update(), ListBase::first, ARegion::flag, SpaceGraph::mode, printf, RGN_FLAG_HIDDEN, RGN_TYPE_UI, RGN_TYPE_WINDOW, SIPO_MODE_DRIVERS, ScrArea::spacedata, View2D::tot, UI_panel_category_active_set(), ARegion::v2d, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by drivers_editor_show_exec().
| void ED_keymap_anim | ( | wmKeyConfig * | keyconf | ) |
Definition at line 1452 of file anim_ops.cc.
References RGN_TYPE_WINDOW, SPACE_EMPTY, and WM_keymap_ensure().
Referenced by ED_spacetypes_keymap().
| void ED_keymap_animchannels | ( | wmKeyConfig * | keyconf | ) |
Definition at line 5956 of file anim_channels_edit.cc.
References RGN_TYPE_WINDOW, SPACE_EMPTY, and WM_keymap_ensure().
Referenced by ED_spacetypes_keymap().
| void ED_nla_postop_refresh | ( | bAnimContext * | ac | ) |
Perform validation & auto-blending/extend refreshes after some operations
Definition at line 63 of file nla_edit.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_update(), ANIM_UPDATE_DEPS, ANIMFILTER_ANIMDATA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_FOREDIT, ANIMTYPE_ANIMDATA, BKE_nla_validate_state(), bAnimContext::data, bAnimContext::datatype, filter, and LISTBASE_FOREACH.
Referenced by nlaedit_add_actionclip_exec(), nlaedit_add_sound_exec(), nlaedit_add_transition_exec(), nlaedit_clear_scale_exec(), nlaedit_delete_exec(), nlaedit_duplicate_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_swap_exec(), and blender::ed::transform::special_aftertrans_update__nla().
| void ED_operatormacros_action | ( | ) |
Definition at line 72 of file action_ops.cc.
References OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorTypeMacro::ptr, RNA_boolean_set(), RNA_enum_set(), blender::ed::transform::TFM_TIME_TRANSLATE, WM_operatortype_append_macro(), and WM_operatortype_macro_define().
Referenced by ED_spacemacros_init().
| void ED_operatormacros_graph | ( | ) |
Definition at line 506 of file graph_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_operatormacros_nla | ( | ) |
Definition at line 142 of file nla_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_anim | ( | ) |
Definition at line 1397 of file anim_ops.cc.
References ANIM_OT_change_frame(), ANIM_OT_convert_legacy_action(), ANIM_OT_copy_driver_button(), ANIM_OT_debug_channel_list(), ANIM_OT_driver_button_add(), ANIM_OT_driver_button_edit(), ANIM_OT_driver_button_remove(), ANIM_OT_end_frame_set(), ANIM_OT_keyframe_clear_button(), ANIM_OT_keyframe_clear_v3d(), ANIM_OT_keyframe_clear_vse(), ANIM_OT_keyframe_delete(), ANIM_OT_keyframe_delete_button(), ANIM_OT_keyframe_delete_by_name(), ANIM_OT_keyframe_delete_v3d(), ANIM_OT_keyframe_delete_vse(), ANIM_OT_keyframe_insert(), ANIM_OT_keyframe_insert_button(), ANIM_OT_keyframe_insert_by_name(), ANIM_OT_keyframe_insert_menu(), ANIM_OT_keying_set_active_set(), ANIM_OT_keying_set_add(), ANIM_OT_keying_set_path_add(), ANIM_OT_keying_set_path_remove(), ANIM_OT_keying_set_remove(), ANIM_OT_keyingset_button_add(), ANIM_OT_keyingset_button_remove(), ANIM_OT_merge_animation(), ANIM_OT_paste_driver_button(), ANIM_OT_previewrange_clear(), ANIM_OT_previewrange_set(), ANIM_OT_scene_range_frame(), ANIM_OT_start_frame_set(), blender::ed::animrig::POSELIB_OT_asset_delete(), blender::ed::animrig::POSELIB_OT_asset_modify(), blender::ed::animrig::POSELIB_OT_create_pose_asset(), and WM_operatortype_append().
Referenced by ED_spacetypes_init().
| void ED_operatortypes_animchannels | ( | ) |
Definition at line 5914 of file anim_channels_edit.cc.
References ANIM_OT_channel_select_keys(), ANIM_OT_channel_view_pick(), ANIM_OT_channels_bake(), ANIM_OT_channels_clean_empty(), ANIM_OT_channels_click(), ANIM_OT_channels_collapse(), ANIM_OT_channels_delete(), ANIM_OT_channels_editable_toggle(), ANIM_OT_channels_expand(), ANIM_OT_channels_fcurves_enable(), ANIM_OT_channels_group(), ANIM_OT_channels_move(), ANIM_OT_channels_rename(), ANIM_OT_channels_select_all(), ANIM_OT_channels_select_box(), ANIM_OT_channels_select_filter(), ANIM_OT_channels_setting_disable(), ANIM_OT_channels_setting_enable(), ANIM_OT_channels_setting_toggle(), ANIM_OT_channels_ungroup(), ANIM_OT_channels_view_selected(), ANIM_OT_separate_slots(), ANIM_OT_slot_channels_move_to_new_action(), ANIM_OT_view_curve_in_graph_editor(), and WM_operatortype_append().
Referenced by ED_spacetypes_init().
| ENUM_OPERATORS | ( | eAnim_Update_Flags | , |
| ANIM_UPDATE_HANDLES | ) |
References ANIM_UPDATE_HANDLES.
| ENUM_OPERATORS | ( | eAnimFilter_Flags | , |
| ANIMFILTER_TMP_IGNORE_ONLYSEL | ) |
References ANIMFILTER_TMP_IGNORE_ONLYSEL.
| void getcolor_fcurve_rainbow | ( | int | cur, |
| int | tot, | ||
| float | out[3] ) |
Automatically determine a color for the nth F-Curve.
Definition at line 312 of file anim_ipo_utils.cc.
References float, fmod(), HSV_BANDWIDTH, hsv_to_rgb_v(), and out.
Referenced by graph_refresh_fcurve_colors().
Get icon + name for channel-list displays for F-Curve.
Write into "name" buffer, the name of the property (retrieved using RNA from the curve's settings), and return the icon used for the struct that this property refers to
Definition at line 46 of file anim_ipo_utils.cc.
References FCurve::array_index, BLI_assert, BLI_assert_unreachable, BLI_snprintf_utf8(), BLI_sprintfN(), BLI_str_quoted_substr(), BLI_strncpy_utf8(), FCURVE_DISABLED, FCurve::flag, GS, ID_NT, ID_SCE, input, MEM_freeN(), bNodeSocket::name, name, blender::bke::node_find_interface_input_by_identifier(), blender::bke::node_find_node(), NodesModifierData::node_group, ptr, RNA_id_pointer_create(), FCurve::rna_path, RNA_path_resolve_property(), RNA_property_array_check(), RNA_property_array_item_char(), RNA_property_string_get_alloc(), RNA_property_ui_name(), RNA_struct_is_a(), RNA_struct_name_property(), RNA_struct_ui_icon(), RNA_struct_ui_name(), RPT_, and SNPRINTF_UTF8.
Referenced by acf_fcurve_name(), getname_anim_fcurve_for_slot(), graph_draw_driven_property_panel(), and graph_panel_properties().
| std::string getname_anim_fcurve_for_slot | ( | Main & | bmain, |
| const blender::animrig::Slot & | slot, | ||
| FCurve & | fcurve ) |
Get the name of an F-Curve that's animating a specific slot.
This function iterates the Slot's users to find an ID that allows it to resolve its RNA path.
Definition at line 232 of file anim_ipo_utils.cc.
References FCurve::array_index, FCURVE_DISABLED, blender::StringRefBase::find(), FCurve::flag, getname_anim_fcurve(), blender::animrig::Slot::has_idtype(), StructRNA::icon, ID_code_to_RNA_type(), ActionSlot::idtype, Span< T >::is_empty(), blender::StringRefBase::not_found, FCurve::rna_path, RNA_property_array_check(), RNA_property_array_item_char(), RNA_property_ui_name(), RNA_struct_type_find_property(), and blender::animrig::Slot::users().
Referenced by acf_fcurve_name().
Get color to use for NLA Action channel's background.
Definition at line 53 of file nla_draw.cc.
References ADT_NLA_EDIT_ON, ADT_NLA_SOLO_TRACK, AnimData::flag, TH_ANIM_ACTIVE, TH_ANIM_INACTIVE, TH_NLA_TWEAK, and UI_GetThemeColor4fv().
Referenced by acf_nlaaction_backdrop(), acf_nlaaction_color(), draw_nla_main_data(), and nla_action_draw_keyframes().