Blender  V3.3
Classes
graph_edit.c File Reference
#include <float.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
#include "BLI_utildefines.h"
#include "DNA_anim_types.h"
#include "DNA_scene_types.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "RNA_enum_types.h"
#include "RNA_prototypes.h"
#include "BLT_translation.h"
#include "BKE_animsys.h"
#include "BKE_context.h"
#include "BKE_fcurve.h"
#include "BKE_global.h"
#include "BKE_nla.h"
#include "BKE_report.h"
#include "DEG_depsgraph_build.h"
#include "UI_interface.h"
#include "UI_view2d.h"
#include "ED_anim_api.h"
#include "ED_keyframes_edit.h"
#include "ED_keyframing.h"
#include "ED_markers.h"
#include "ED_screen.h"
#include "ED_transform.h"
#include "WM_api.h"
#include "WM_types.h"
#include "graph_intern.h"

Go to the source code of this file.

Classes

struct  tEulerFilter
 

Functions

Click-Insert Keyframes Operator
static int graphkeys_click_insert_exec (bContext *C, wmOperator *op)
 
static int graphkeys_click_insert_invoke (bContext *C, wmOperator *op, const wmEvent *event)
 
void GRAPH_OT_click_insert (wmOperatorType *ot)
 
Copy/Paste Keyframes Operator
Note
the back-end code for this is shared with the dope-sheet editor.
static short copy_graph_keys (bAnimContext *ac)
 
static eKeyPasteError paste_graph_keys (bAnimContext *ac, const eKeyPasteOffset offset_mode, const eKeyMergeMode merge_mode, bool flip)
 
static int graphkeys_copy_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_copy (wmOperatorType *ot)
 
static int graphkeys_paste_exec (bContext *C, wmOperator *op)
 
static char * graphkeys_paste_description (bContext *UNUSED(C), wmOperatorType *UNUSED(op), PointerRNA *ptr)
 
void GRAPH_OT_paste (wmOperatorType *ot)
 
Duplicate Keyframes Operator
static bool duplicate_graph_keys (bAnimContext *ac)
 
static int graphkeys_duplicate_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_duplicate (wmOperatorType *ot)
 
Delete Keyframes Operator
static bool delete_graph_keys (bAnimContext *ac)
 
static int graphkeys_delete_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_delete (wmOperatorType *ot)
 
Clean Keyframes Operator
static void clean_graph_keys (bAnimContext *ac, float thresh, bool clean_chan)
 
static int graphkeys_clean_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_clean (wmOperatorType *ot)
 
Bake F-Curve Operator

This operator bakes the data of the selected F-Curves to F-Points.

static void bake_graph_curves (bAnimContext *ac, int start, int end)
 
static int graphkeys_bake_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_bake (wmOperatorType *ot)
 
Un-Bake F-Curve Operator

This operator un-bakes the data of the selected F-Points to F-Curves.

static void unbake_graph_curves (bAnimContext *ac, int start, int end)
 
static int graphkeys_unbake_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_unbake (wmOperatorType *ot)
 
static int graphkeys_sound_bake_exec (bContext *UNUSED(C), wmOperator *op)
 
static int graphkeys_sound_bake_invoke (bContext *C, wmOperator *op, const wmEvent *event)
 
void GRAPH_OT_sound_bake (wmOperatorType *ot)
 
Sample Keyframes Operator

This operator 'bakes' the values of the curve into new keyframes between pairs of selected keyframes. It is useful for creating keyframes for tweaking overlap.

static void sample_graph_keys (bAnimContext *ac)
 
static int graphkeys_sample_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_sample (wmOperatorType *ot)
 
Set Interpolation-Type Operator
static void setipo_graph_keys (bAnimContext *ac, short mode)
 
static int graphkeys_ipo_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_interpolation_type (wmOperatorType *ot)
 
Set Easing Operator
static void seteasing_graph_keys (bAnimContext *ac, short mode)
 
static int graphkeys_easing_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_easing_type (wmOperatorType *ot)
 
Set Handle-Type Operator
static void sethandles_graph_keys (bAnimContext *ac, short mode)
 
static int graphkeys_handletype_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_handle_type (wmOperatorType *ot)
 
Jump to Selected Frames Operator
static bool graphkeys_framejump_poll (bContext *C)
 
static KeyframeEditData sum_selected_keyframes (bAnimContext *ac)
 
static int graphkeys_framejump_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_frame_jump (wmOperatorType *ot)
 
static int graphkeys_snap_cursor_value_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_snap_cursor_value (wmOperatorType *ot)
 
Smooth Keyframes Operator
static int graphkeys_smooth_exec (bContext *C, wmOperator *UNUSED(op))
 
void GRAPH_OT_smooth (wmOperatorType *ot)
 
Add F-Modifier Operator
static const EnumPropertyItemgraph_fmodifier_itemf (bContext *C, PointerRNA *UNUSED(ptr), PropertyRNA *UNUSED(prop), bool *r_free)
 
static int graph_fmodifier_add_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_fmodifier_add (wmOperatorType *ot)
 
Copy F-Modifiers Operator
static int graph_fmodifier_copy_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_fmodifier_copy (wmOperatorType *ot)
 
Paste F-Modifiers Operator
static int graph_fmodifier_paste_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_fmodifier_paste (wmOperatorType *ot)
 
Copy Driver Variables Operator
static int graph_driver_vars_copy_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_driver_variables_copy (wmOperatorType *ot)
 
Paste Driver Variables Operator
static int graph_driver_vars_paste_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_driver_variables_paste (wmOperatorType *ot)
 
Delete Invalid Drivers Operator
static int graph_driver_delete_invalid_exec (bContext *C, wmOperator *op)
 
static bool graph_driver_delete_invalid_poll (bContext *C)
 
void GRAPH_OT_driver_delete_invalid (wmOperatorType *ot)
 

Set Extrapolation-Type Operator

#define MAKE_CYCLIC_EXPO   -1
 
#define CLEAR_CYCLIC_EXPO   -2
 
static const EnumPropertyItem prop_graphkeys_expo_types []
 
static void setexpo_graph_keys (bAnimContext *ac, short mode)
 
static int graphkeys_expo_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_extrapolation_type (wmOperatorType *ot)
 

Insert Keyframes Operator

enum  eGraphKeys_InsertKey_Types { GRAPHKEYS_INSERTKEY_ALL = (1 << 0) , GRAPHKEYS_INSERTKEY_SEL = (1 << 1) , GRAPHKEYS_INSERTKEY_CURSOR = (1 << 2) , GRAPHKEYS_INSERTKEY_ACTIVE = (1 << 3) }
 
typedef enum eGraphKeys_InsertKey_Types eGraphKeys_InsertKey_Types
 
static const EnumPropertyItem prop_graphkeys_insertkey_types []
 
static void insert_graph_keys (bAnimContext *ac, eGraphKeys_InsertKey_Types mode)
 
static int graphkeys_insertkey_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_keyframe_insert (wmOperatorType *ot)
 

'Euler Filter' Operator

Euler filter tools (as seen in Maya), are necessary for working with 'baked' rotation curves (with Euler rotations). The main purpose of such tools is to resolve any discontinuities that may arise in the curves due to the clamping of values to -180 degrees to 180 degrees.

typedef struct tEulerFilter tEulerFilter
 
static bool keyframe_time_differs (BezTriple *keyframes[3])
 
static ListBase euler_filter_group_channels (const ListBase *anim_data, ReportList *reports, int *r_num_groups)
 
static bool euler_filter_multi_channel (tEulerFilter *euf, ReportList *reports)
 
static bool euler_filter_single_channel (FCurve *fcu)
 
static void euler_filter_perform_filter (ListBase *eulers, ReportList *reports, int *r_curves_filtered, int *r_curves_seen)
 
static int graphkeys_euler_filter_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_euler_filter (wmOperatorType *ot)
 

Snap Keyframes Operator

static const EnumPropertyItem prop_graphkeys_snap_types []
 
static void snap_graph_keys (bAnimContext *ac, short mode)
 
static int graphkeys_snap_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_snap (wmOperatorType *ot)
 

Equalize Handles Operator

static const EnumPropertyItem prop_graphkeys_equalize_handles_sides []
 
static void equalize_graph_keys (bAnimContext *ac, int mode, float handle_length, bool flatten)
 
static int graphkeys_equalize_handles_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_equalize_handles (wmOperatorType *ot)
 

Mirror Keyframes Operator

static const EnumPropertyItem prop_graphkeys_mirror_types []
 
static void mirror_graph_keys (bAnimContext *ac, short mode)
 
static int graphkeys_mirror_exec (bContext *C, wmOperator *op)
 
void GRAPH_OT_mirror (wmOperatorType *ot)
 

Detailed Description

Insert duplicate and bake keyframes.

Definition in file graph_edit.c.

Macro Definition Documentation

◆ CLEAR_CYCLIC_EXPO

#define CLEAR_CYCLIC_EXPO   -2

Definition at line 1341 of file graph_edit.c.

◆ MAKE_CYCLIC_EXPO

#define MAKE_CYCLIC_EXPO   -1

Definition at line 1340 of file graph_edit.c.

Typedef Documentation

◆ eGraphKeys_InsertKey_Types

◆ tEulerFilter

typedef struct tEulerFilter tEulerFilter

Enumeration Type Documentation

◆ eGraphKeys_InsertKey_Types

Enumerator
GRAPHKEYS_INSERTKEY_ALL 
GRAPHKEYS_INSERTKEY_SEL 
GRAPHKEYS_INSERTKEY_CURSOR 
GRAPHKEYS_INSERTKEY_ACTIVE 

Definition at line 64 of file graph_edit.c.

Function Documentation

◆ bake_graph_curves()

static void bake_graph_curves ( bAnimContext ac,
int  start,
int  end 
)
static

◆ clean_graph_keys()

static void clean_graph_keys ( bAnimContext ac,
float  thresh,
bool  clean_chan 
)
static

◆ copy_graph_keys()

static short copy_graph_keys ( bAnimContext ac)
static

◆ delete_graph_keys()

static bool delete_graph_keys ( bAnimContext ac)
static

◆ duplicate_graph_keys()

static bool duplicate_graph_keys ( bAnimContext ac)
static

◆ equalize_graph_keys()

static void equalize_graph_keys ( bAnimContext ac,
int  mode,
float  handle_length,
bool  flatten 
)
static

◆ euler_filter_group_channels()

static ListBase euler_filter_group_channels ( const ListBase anim_data,
ReportList reports,
int *  r_num_groups 
)
static

◆ euler_filter_multi_channel()

static bool euler_filter_multi_channel ( tEulerFilter euf,
ReportList reports 
)
static

◆ euler_filter_perform_filter()

static void euler_filter_perform_filter ( ListBase eulers,
ReportList reports,
int *  r_curves_filtered,
int *  r_curves_seen 
)
static

◆ euler_filter_single_channel()

static bool euler_filter_single_channel ( FCurve fcu)
static

◆ graph_driver_delete_invalid_exec()

static int graph_driver_delete_invalid_exec ( bContext C,
wmOperator op 
)
static

◆ graph_driver_delete_invalid_poll()

static bool graph_driver_delete_invalid_poll ( bContext C)
static

◆ graph_driver_vars_copy_exec()

static int graph_driver_vars_copy_exec ( bContext C,
wmOperator op 
)
static

◆ graph_driver_vars_paste_exec()

static int graph_driver_vars_paste_exec ( bContext C,
wmOperator op 
)
static

◆ graph_fmodifier_add_exec()

static int graph_fmodifier_add_exec ( bContext C,
wmOperator op 
)
static

◆ graph_fmodifier_copy_exec()

static int graph_fmodifier_copy_exec ( bContext C,
wmOperator op 
)
static

◆ graph_fmodifier_itemf()

static const EnumPropertyItem* graph_fmodifier_itemf ( bContext C,
PointerRNA UNUSEDptr,
PropertyRNA UNUSEDprop,
bool r_free 
)
static

◆ graph_fmodifier_paste_exec()

static int graph_fmodifier_paste_exec ( bContext C,
wmOperator op 
)
static

◆ GRAPH_OT_bake()

void GRAPH_OT_bake ( wmOperatorType ot)

◆ GRAPH_OT_clean()

void GRAPH_OT_clean ( wmOperatorType ot)

◆ GRAPH_OT_click_insert()

void GRAPH_OT_click_insert ( wmOperatorType ot)

◆ GRAPH_OT_copy()

void GRAPH_OT_copy ( wmOperatorType ot)

◆ GRAPH_OT_delete()

void GRAPH_OT_delete ( wmOperatorType ot)

◆ GRAPH_OT_driver_delete_invalid()

void GRAPH_OT_driver_delete_invalid ( wmOperatorType ot)

◆ GRAPH_OT_driver_variables_copy()

void GRAPH_OT_driver_variables_copy ( wmOperatorType ot)

◆ GRAPH_OT_driver_variables_paste()

void GRAPH_OT_driver_variables_paste ( wmOperatorType ot)

◆ GRAPH_OT_duplicate()

void GRAPH_OT_duplicate ( wmOperatorType ot)

◆ GRAPH_OT_easing_type()

void GRAPH_OT_easing_type ( wmOperatorType ot)

◆ GRAPH_OT_equalize_handles()

void GRAPH_OT_equalize_handles ( wmOperatorType ot)

◆ GRAPH_OT_euler_filter()

void GRAPH_OT_euler_filter ( wmOperatorType ot)

◆ GRAPH_OT_extrapolation_type()

void GRAPH_OT_extrapolation_type ( wmOperatorType ot)

◆ GRAPH_OT_fmodifier_add()

void GRAPH_OT_fmodifier_add ( wmOperatorType ot)

◆ GRAPH_OT_fmodifier_copy()

void GRAPH_OT_fmodifier_copy ( wmOperatorType ot)

◆ GRAPH_OT_fmodifier_paste()

void GRAPH_OT_fmodifier_paste ( wmOperatorType ot)

◆ GRAPH_OT_frame_jump()

void GRAPH_OT_frame_jump ( wmOperatorType ot)

◆ GRAPH_OT_handle_type()

void GRAPH_OT_handle_type ( wmOperatorType ot)

◆ GRAPH_OT_interpolation_type()

void GRAPH_OT_interpolation_type ( wmOperatorType ot)

◆ GRAPH_OT_keyframe_insert()

void GRAPH_OT_keyframe_insert ( wmOperatorType ot)

◆ GRAPH_OT_mirror()

void GRAPH_OT_mirror ( wmOperatorType ot)

◆ GRAPH_OT_paste()

void GRAPH_OT_paste ( wmOperatorType ot)

◆ GRAPH_OT_sample()

void GRAPH_OT_sample ( wmOperatorType ot)

◆ GRAPH_OT_smooth()

void GRAPH_OT_smooth ( wmOperatorType ot)

◆ GRAPH_OT_snap()

void GRAPH_OT_snap ( wmOperatorType ot)

◆ GRAPH_OT_snap_cursor_value()

void GRAPH_OT_snap_cursor_value ( wmOperatorType ot)

◆ GRAPH_OT_sound_bake()

void GRAPH_OT_sound_bake ( wmOperatorType ot)

◆ GRAPH_OT_unbake()

void GRAPH_OT_unbake ( wmOperatorType ot)

◆ graphkeys_bake_exec()

static int graphkeys_bake_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ graphkeys_clean_exec()

static int graphkeys_clean_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_click_insert_exec()

static int graphkeys_click_insert_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_click_insert_invoke()

static int graphkeys_click_insert_invoke ( bContext C,
wmOperator op,
const wmEvent event 
)
static

◆ graphkeys_copy_exec()

static int graphkeys_copy_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_delete_exec()

static int graphkeys_delete_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ graphkeys_duplicate_exec()

static int graphkeys_duplicate_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ graphkeys_easing_exec()

static int graphkeys_easing_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_equalize_handles_exec()

static int graphkeys_equalize_handles_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_euler_filter_exec()

static int graphkeys_euler_filter_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_expo_exec()

static int graphkeys_expo_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_framejump_exec()

static int graphkeys_framejump_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ graphkeys_framejump_poll()

static bool graphkeys_framejump_poll ( bContext C)
static

Definition at line 2048 of file graph_edit.c.

References C, G, and graphop_visible_keyframes_poll().

Referenced by GRAPH_OT_frame_jump(), and GRAPH_OT_snap_cursor_value().

◆ graphkeys_handletype_exec()

static int graphkeys_handletype_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_insertkey_exec()

static int graphkeys_insertkey_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_ipo_exec()

static int graphkeys_ipo_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_mirror_exec()

static int graphkeys_mirror_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_paste_description()

static char* graphkeys_paste_description ( bContext UNUSEDC,
wmOperatorType UNUSEDop,
PointerRNA ptr 
)
static

Definition at line 578 of file graph_edit.c.

References BLI_strdup(), NULL, ptr, RNA_boolean_get(), and TIP_.

Referenced by GRAPH_OT_paste().

◆ graphkeys_paste_exec()

static int graphkeys_paste_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_sample_exec()

static int graphkeys_sample_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ graphkeys_smooth_exec()

static int graphkeys_smooth_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ graphkeys_snap_cursor_value_exec()

static int graphkeys_snap_cursor_value_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ graphkeys_snap_exec()

static int graphkeys_snap_exec ( bContext C,
wmOperator op 
)
static

◆ graphkeys_sound_bake_exec()

static int graphkeys_sound_bake_exec ( bContext UNUSEDC,
wmOperator op 
)
static

Definition at line 1142 of file graph_edit.c.

References BKE_report(), OPERATOR_CANCELLED, wmOperator::reports, and RPT_ERROR.

Referenced by GRAPH_OT_sound_bake().

◆ graphkeys_sound_bake_invoke()

static int graphkeys_sound_bake_invoke ( bContext C,
wmOperator op,
const wmEvent event 
)
static

Definition at line 1151 of file graph_edit.c.

References ANIM_animdata_get_context(), C, OPERATOR_CANCELLED, and WM_operator_filesel().

Referenced by GRAPH_OT_sound_bake().

◆ graphkeys_unbake_exec()

static int graphkeys_unbake_exec ( bContext C,
wmOperator UNUSEDop 
)
static

◆ insert_graph_keys()

static void insert_graph_keys ( bAnimContext ac,
eGraphKeys_InsertKey_Types  mode 
)
static

◆ keyframe_time_differs()

static bool keyframe_time_differs ( BezTriple keyframes[3])
static

Definition at line 1730 of file graph_edit.c.

References e, and fabs().

Referenced by euler_filter_multi_channel().

◆ mirror_graph_keys()

static void mirror_graph_keys ( bAnimContext ac,
short  mode 
)
static

◆ paste_graph_keys()

static eKeyPasteError paste_graph_keys ( bAnimContext ac,
const eKeyPasteOffset  offset_mode,
const eKeyMergeMode  merge_mode,
bool  flip 
)
static

◆ sample_graph_keys()

static void sample_graph_keys ( bAnimContext ac)
static

◆ seteasing_graph_keys()

static void seteasing_graph_keys ( bAnimContext ac,
short  mode 
)
static

◆ setexpo_graph_keys()

static void setexpo_graph_keys ( bAnimContext ac,
short  mode 
)
static

◆ sethandles_graph_keys()

static void sethandles_graph_keys ( bAnimContext ac,
short  mode 
)
static

◆ setipo_graph_keys()

static void setipo_graph_keys ( bAnimContext ac,
short  mode 
)
static

◆ snap_graph_keys()

static void snap_graph_keys ( bAnimContext ac,
short  mode 
)
static

◆ sum_selected_keyframes()

static KeyframeEditData sum_selected_keyframes ( bAnimContext ac)
static

◆ unbake_graph_curves()

static void unbake_graph_curves ( bAnimContext ac,
int  start,
int  end 
)
static

Variable Documentation

◆ prop_graphkeys_equalize_handles_sides

const EnumPropertyItem prop_graphkeys_equalize_handles_sides[]
static
Initial value:
= {
{GRAPHKEYS_EQUALIZE_LEFT, "LEFT", 0, "Left", "Equalize selected keyframes' left handles"},
{GRAPHKEYS_EQUALIZE_RIGHT, "RIGHT", 0, "Right", "Equalize selected keyframes' right handles"},
{GRAPHKEYS_EQUALIZE_BOTH, "BOTH", 0, "Both", "Equalize both of a keyframe's handles"},
{0, NULL, 0, NULL, NULL},
}
@ GRAPHKEYS_EQUALIZE_RIGHT
Definition: graph_intern.h:153
@ GRAPHKEYS_EQUALIZE_BOTH
Definition: graph_intern.h:154
@ GRAPHKEYS_EQUALIZE_LEFT
Definition: graph_intern.h:152

Definition at line 2362 of file graph_edit.c.

Referenced by GRAPH_OT_equalize_handles().

◆ prop_graphkeys_expo_types

const EnumPropertyItem prop_graphkeys_expo_types[]
static
Initial value:
= {
"CONSTANT",
0,
"Constant Extrapolation",
"Values on endpoint keyframes are held"},
"LINEAR",
0,
"Linear Extrapolation",
"Straight-line slope of end segments are extended past the endpoint keyframes"},
"MAKE_CYCLIC",
0,
"Make Cyclic (F-Modifier)",
"Add Cycles F-Modifier if one doesn't exist already"},
"CLEAR_CYCLIC",
0,
"Clear Cyclic (F-Modifier)",
"Remove Cycles F-Modifier if not needed anymore"},
{0, NULL, 0, NULL, NULL},
}
@ FCURVE_EXTRAPOLATE_CONSTANT
@ FCURVE_EXTRAPOLATE_LINEAR
#define MAKE_CYCLIC_EXPO
Definition: graph_edit.c:1340
#define CLEAR_CYCLIC_EXPO
Definition: graph_edit.c:1341

Definition at line 1344 of file graph_edit.c.

Referenced by GRAPH_OT_extrapolation_type().

◆ prop_graphkeys_insertkey_types

const EnumPropertyItem prop_graphkeys_insertkey_types[]
static
Initial value:
= {
"ALL",
0,
"All Channels",
"Insert a keyframe on all visible and editable F-Curves using each curve's current value"},
"SEL",
0,
"Only Selected Channels",
"Insert a keyframe on selected F-Curves using each curve's current value"},
"CURSOR_ACTIVE",
0,
"Active Channels at Cursor",
"Insert a keyframe for the active F-Curve at the cursor point"},
"CURSOR_SEL",
0,
"Selected Channels at Cursor",
"Insert a keyframe for selected F-Curves at the cursor point"},
{0, NULL, 0, NULL, NULL},
}
@ GRAPHKEYS_INSERTKEY_CURSOR
Definition: graph_edit.c:67
@ GRAPHKEYS_INSERTKEY_ACTIVE
Definition: graph_edit.c:68
@ GRAPHKEYS_INSERTKEY_ALL
Definition: graph_edit.c:65
@ GRAPHKEYS_INSERTKEY_SEL
Definition: graph_edit.c:66

Definition at line 72 of file graph_edit.c.

Referenced by GRAPH_OT_keyframe_insert().

◆ prop_graphkeys_mirror_types

const EnumPropertyItem prop_graphkeys_mirror_types[]
static
Initial value:
= {
"CFRA",
0,
"By Times Over Current Frame",
"Flip times of selected keyframes using the current frame as the mirror line"},
"VALUE",
0,
"By Values Over Cursor Value",
"Flip values of selected keyframes using the cursor value (Y/Horizontal component) as the "
"mirror line"},
"YAXIS",
0,
"By Times Over Zero Time",
"Flip times of selected keyframes, effectively reversing the order they appear in"},
"XAXIS",
0,
"By Values Over Zero Value",
"Flip values of selected keyframes (i.e. negative values become positive, and vice versa)"},
"MARKER",
0,
"By Times Over First Selected Marker",
"Flip times of selected keyframes using the first selected marker as the reference point"},
{0, NULL, 0, NULL, NULL},
}
@ GRAPHKEYS_MIRROR_XAXIS
Definition: graph_intern.h:163
@ GRAPHKEYS_MIRROR_CFRA
Definition: graph_intern.h:161
@ GRAPHKEYS_MIRROR_VALUE
Definition: graph_intern.h:165
@ GRAPHKEYS_MIRROR_YAXIS
Definition: graph_intern.h:162
@ GRAPHKEYS_MIRROR_MARKER
Definition: graph_intern.h:164

Definition at line 2459 of file graph_edit.c.

Referenced by GRAPH_OT_mirror().

◆ prop_graphkeys_snap_types

const EnumPropertyItem prop_graphkeys_snap_types[]
static

Definition at line 2206 of file graph_edit.c.

Referenced by GRAPH_OT_snap().