Graph Operators¶
-
bpy.ops.graph.
bake
()¶ Bake selected F-Curves to a set of sampled points defining a similar curve
-
bpy.ops.graph.
clean
(threshold=0.001, channels=False)¶ Simplify F-Curves by removing closely spaced keyframes
- Parameters
threshold (float in [0, inf], (optional)) – Threshold
channels (boolean, (optional)) – Channels
-
bpy.ops.graph.
click_insert
(frame=1.0, value=1.0, extend=False)¶ Insert new keyframe at the cursor position for the active F-Curve
- Parameters
frame (float in [-inf, inf], (optional)) – Frame Number, Frame to insert keyframe on
value (float in [-inf, inf], (optional)) – Value, Value for keyframe on
extend (boolean, (optional)) – Extend, Extend selection instead of deselecting everything first
-
bpy.ops.graph.
clickselect
(wait_to_deselect_others=False, mouse_x=0, mouse_y=0, extend=False, deselect_all=False, column=False, curves=False)¶ Select keyframes by clicking on them
- Parameters
wait_to_deselect_others (boolean, (optional)) – Wait to Deselect Others
mouse_x (int in [-inf, inf], (optional)) – Mouse X
mouse_y (int in [-inf, inf], (optional)) – Mouse Y
extend (boolean, (optional)) – Extend Select, Toggle keyframe selection instead of leaving newly selected keyframes only
deselect_all (boolean, (optional)) – Deselect On Nothing, Deselect all when nothing under the cursor
column (boolean, (optional)) – Column Select, Select all keyframes that occur on the same frame as the one under the mouse
curves (boolean, (optional)) – Only Curves, Select all the keyframes in the curve
-
bpy.ops.graph.
copy
()¶ Copy selected keyframes to the copy/paste buffer
-
bpy.ops.graph.
cursor_set
(frame=0.0, value=0.0)¶ Interactively set the current frame and value cursor
- Parameters
frame (float in [-1.04857e+06, 1.04857e+06], (optional)) – Frame
value (float in [-inf, inf], (optional)) – Value
-
bpy.ops.graph.
decimate
(mode='RATIO', remove_ratio=0.333333, remove_error_margin=0.0)¶ Decimate F-Curves by removing keyframes that influence the curve shape the least
- Parameters
mode (enum in ['RATIO', 'ERROR'], (optional)) –
Mode, Which mode to use for decimation
RATIO
Ratio, Use a percentage to specify how many keyframes you want to remove.ERROR
Error Margin, Use an error margin to specify how much the curve is allowed to deviate from the original path.
remove_ratio (float in [0, 1], (optional)) – Remove, The percentage of keyframes to remove
remove_error_margin (float in [0, inf], (optional)) – Max Error Margin, How much the new decimated curve is allowed to deviate from the original
-
bpy.ops.graph.
delete
()¶ Remove all selected keyframes
-
bpy.ops.graph.
driver_delete_invalid
()¶ Delete all visible drivers considered invalid
-
bpy.ops.graph.
driver_variables_copy
()¶ Copy the driver variables of the active driver
-
bpy.ops.graph.
driver_variables_paste
(replace=False)¶ Add copied driver variables to the active driver
- Parameters
replace (boolean, (optional)) – Replace Existing, Replace existing driver variables, instead of just appending to the end of the existing list
-
bpy.ops.graph.
duplicate
(mode='TRANSLATION')¶ Make a copy of all selected keyframes
- Parameters
mode (enum in ['INIT', 'DUMMY', 'TRANSLATION', 'ROTATION', 'RESIZE', 'SKIN_RESIZE', 'TOSPHERE', 'SHEAR', 'BEND', 'SHRINKFATTEN', 'TILT', 'TRACKBALL', 'PUSHPULL', 'CREASE', 'MIRROR', 'BONE_SIZE', 'BONE_ENVELOPE', 'BONE_ENVELOPE_DIST', 'CURVE_SHRINKFATTEN', 'MASK_SHRINKFATTEN', 'GPENCIL_SHRINKFATTEN', 'BONE_ROLL', 'TIME_TRANSLATE', 'TIME_SLIDE', 'TIME_SCALE', 'TIME_EXTEND', 'BAKE_TIME', 'BWEIGHT', 'ALIGN', 'EDGESLIDE', 'SEQSLIDE', 'GPENCIL_OPACITY'], (optional)) – Mode
-
bpy.ops.graph.
duplicate_move
(GRAPH_OT_duplicate=None, TRANSFORM_OT_transform=None)¶ Make a copy of all selected keyframes and move them
- Parameters
GRAPH_OT_duplicate (
GRAPH_OT_duplicate
, (optional)) – Duplicate Keyframes, Make a copy of all selected keyframesTRANSFORM_OT_transform (
TRANSFORM_OT_transform
, (optional)) – Transform, Transform selected items by mode type
-
bpy.ops.graph.
easing_type
(type='AUTO')¶ Set easing type for the F-Curve segments starting from the selected keyframes
- Parameters
type (enum in ['AUTO', 'EASE_IN', 'EASE_OUT', 'EASE_IN_OUT'], (optional)) –
Type
AUTO
Automatic Easing, Easing type is chosen automatically based on what the type of interpolation used (e.g. ‘Ease In’ for transitional types, and ‘Ease Out’ for dynamic effects).EASE_IN
Ease In, Only on the end closest to the next keyframe.EASE_OUT
Ease Out, Only on the end closest to the first keyframe.EASE_IN_OUT
Ease In and Out, Segment between both keyframes.
-
bpy.ops.graph.
euler_filter
()¶ Fix large jumps and flips in the selected Euler Rotation F-Curves arising from rotation values being clipped when baking physics
-
bpy.ops.graph.
extrapolation_type
(type='CONSTANT')¶ Set extrapolation mode for selected F-Curves
- Parameters
type (enum in ['CONSTANT', 'LINEAR', 'MAKE_CYCLIC', 'CLEAR_CYCLIC'], (optional)) –
Type
CONSTANT
Constant Extrapolation, Values on endpoint keyframes are held.LINEAR
Linear Extrapolation, Straight-line slope of end segments are extended past the endpoint keyframes.MAKE_CYCLIC
Make Cyclic (F-Modifier), Add Cycles F-Modifier if one doesn’t exist already.CLEAR_CYCLIC
Clear Cyclic (F-Modifier), Remove Cycles F-Modifier if not needed anymore.
-
bpy.ops.graph.
fmodifier_add
(type='NULL', only_active=True)¶ Add F-Modifier to the active/selected F-Curves
- Parameters
type (enum in ['NULL', 'GENERATOR', 'FNGENERATOR', 'ENVELOPE', 'CYCLES', 'NOISE', 'LIMITS', 'STEPPED'], (optional)) –
Type
NULL
Invalid.GENERATOR
Generator, Generate a curve using a factorized or expanded polynomial.FNGENERATOR
Built-In Function, Generate a curve using standard math functions such as sin and cos.ENVELOPE
Envelope, Reshape F-Curve values - e.g. change amplitude of movements.CYCLES
Cycles, Cyclic extend/repeat keyframe sequence.NOISE
Noise, Add pseudo-random noise on top of F-Curves.LIMITS
Limits, Restrict maximum and minimum values of F-Curve.STEPPED
Stepped Interpolation, Snap values to nearest grid-step - e.g. for a stop-motion look.
only_active (boolean, (optional)) – Only Active, Only add F-Modifier to active F-Curve
-
bpy.ops.graph.
fmodifier_copy
()¶ Copy the F-Modifier(s) of the active F-Curve
-
bpy.ops.graph.
fmodifier_paste
(only_active=True, replace=False)¶ Add copied F-Modifiers to the selected F-Curves
- Parameters
only_active (boolean, (optional)) – Only Active, Only paste F-Modifiers on active F-Curve
replace (boolean, (optional)) – Replace Existing, Replace existing F-Modifiers, instead of just appending to the end of the existing list
-
bpy.ops.graph.
frame_jump
()¶ Place the cursor on the midpoint of selected keyframes
-
bpy.ops.graph.
ghost_curves_clear
()¶ Clear F-Curve snapshots (Ghosts) for active Graph Editor
-
bpy.ops.graph.
ghost_curves_create
()¶ Create snapshot (Ghosts) of selected F-Curves as background aid for active Graph Editor
-
bpy.ops.graph.
handle_type
(type='FREE')¶ Set type of handle for selected keyframes
- Parameters
type (enum in ['FREE', 'ALIGNED', 'VECTOR', 'AUTO', 'AUTO_CLAMPED'], (optional)) –
Type
FREE
Free, Completely independent manually set handle.ALIGNED
Aligned, Manually set handle with rotation locked together with its pair.VECTOR
Vector, Automatic handles that create straight lines.AUTO
Automatic, Automatic handles that create smooth curves.AUTO_CLAMPED
Auto Clamped, Automatic handles that create smooth curves which only change direction at keyframes.
-
bpy.ops.graph.
hide
(unselected=False)¶ Hide selected curves from Graph Editor view
- Parameters
unselected (boolean, (optional)) – Unselected, Hide unselected rather than selected curves
-
bpy.ops.graph.
interpolation_type
(type='CONSTANT')¶ Set interpolation mode for the F-Curve segments starting from the selected keyframes
- Parameters
type (enum in ['CONSTANT', 'LINEAR', 'BEZIER', 'SINE', 'QUAD', 'CUBIC', 'QUART', 'QUINT', 'EXPO', 'CIRC', 'BACK', 'BOUNCE', 'ELASTIC'], (optional)) –
Type
CONSTANT
Constant, No interpolation, value of A gets held until B is encountered.LINEAR
Linear, Straight-line interpolation between A and B (i.e. no ease in/out).BEZIER
Bezier, Smooth interpolation between A and B, with some control over curve shape.SINE
Sinusoidal, Sinusoidal easing (weakest, almost linear but with a slight curvature).QUAD
Quadratic, Quadratic easing.CUBIC
Cubic, Cubic easing.QUART
Quartic, Quartic easing.QUINT
Quintic, Quintic easing.EXPO
Exponential, Exponential easing (dramatic).CIRC
Circular, Circular easing (strongest and most dynamic).BACK
Back, Cubic easing with overshoot and settle.BOUNCE
Bounce, Exponentially decaying parabolic bounce, like when objects collide.ELASTIC
Elastic, Exponentially decaying sine wave, like an elastic band.
-
bpy.ops.graph.
keyframe_insert
(type='ALL')¶ Insert keyframes for the specified channels
- Parameters
type (enum in ['ALL', 'SEL', 'CURSOR_ACTIVE', 'CURSOR_SEL'], (optional)) –
Type
ALL
All Channels, Insert a keyframe on all visible and editable F-Curves using each curve’s current value.SEL
Only Selected Channels, Insert a keyframe on selected F-Curves using each curve’s current value.CURSOR_ACTIVE
Active Channels At Cursor, Insert a keyframe for the active F-Curve at the cursor point.CURSOR_SEL
Selected Channels At Cursor, Insert a keyframe for selected F-Curves at the cursor point.
-
bpy.ops.graph.
mirror
(type='CFRA')¶ Flip selected keyframes over the selected mirror line
- Parameters
type (enum in ['CFRA', 'VALUE', 'YAXIS', 'XAXIS', 'MARKER'], (optional)) –
Type
CFRA
By Times Over Current Frame, Flip times of selected keyframes using the current frame as the mirror line.VALUE
By Values Over Cursor Value, Flip values of selected keyframes using the cursor value (Y/Horizontal component) as the mirror line.YAXIS
By Times Over Time=0, Flip times of selected keyframes, effectively reversing the order they appear in.XAXIS
By Values Over Value=0, Flip values of selected keyframes (i.e. negative values become positive, and vice versa).MARKER
By Times Over First Selected Marker, Flip times of selected keyframes using the first selected marker as the reference point.
-
bpy.ops.graph.
paste
(offset='START', merge='MIX', flipped=False)¶ Paste keyframes from copy/paste buffer for the selected channels, starting on the current frame
- Parameters
offset (enum in ['START', 'END', 'RELATIVE', 'NONE'], (optional)) –
Offset, Paste time offset of keys
START
Frame Start, Paste keys starting at current frame.END
Frame End, Paste keys ending at current frame.RELATIVE
Frame Relative, Paste keys relative to the current frame when copying.NONE
No Offset, Paste keys from original time.
merge (enum in ['MIX', 'OVER_ALL', 'OVER_RANGE', 'OVER_RANGE_ALL'], (optional)) –
Type, Method of merging pasted keys and existing
MIX
Mix, Overlay existing with new keys.OVER_ALL
Overwrite All, Replace all keys.OVER_RANGE
Overwrite Range, Overwrite keys in pasted range.OVER_RANGE_ALL
Overwrite Entire Range, Overwrite keys in pasted range, using the range of all copied keys.
flipped (boolean, (optional)) – Flipped, Paste keyframes from mirrored bones if they exist
-
bpy.ops.graph.
previewrange_set
()¶ Automatically set Preview Range based on range of keyframes
-
bpy.ops.graph.
reveal
(select=True)¶ Make previously hidden curves visible again in Graph Editor view
- Parameters
select (boolean, (optional)) – Select
-
bpy.ops.graph.
sample
()¶ Add keyframes on every frame between the selected keyframes
-
bpy.ops.graph.
select_all
(action='TOGGLE')¶ Toggle selection of all keyframes
- Parameters
action (enum in ['TOGGLE', 'SELECT', 'DESELECT', 'INVERT'], (optional)) –
Action, Selection action to execute
TOGGLE
Toggle, Toggle selection for all elements.SELECT
Select, Select all elements.DESELECT
Deselect, Deselect all elements.INVERT
Invert, Invert selection of all elements.
-
bpy.ops.graph.
select_box
(axis_range=False, include_handles=True, tweak=False, xmin=0, xmax=0, ymin=0, ymax=0, wait_for_input=True, mode='SET')¶ Select all keyframes within the specified region
- Parameters
axis_range (boolean, (optional)) – Axis Range
include_handles (boolean, (optional)) – Include Handles, Are handles tested individually against the selection criteria
tweak (boolean, (optional)) – Tweak, Operator has been activated using a tweak event
xmin (int in [-inf, inf], (optional)) – X Min
xmax (int in [-inf, inf], (optional)) – X Max
ymin (int in [-inf, inf], (optional)) – Y Min
ymax (int in [-inf, inf], (optional)) – Y Max
wait_for_input (boolean, (optional)) – Wait for Input
mode (enum in ['SET', 'ADD', 'SUB'], (optional)) –
Mode
SET
Set, Set a new selection.ADD
Extend, Extend existing selection.SUB
Subtract, Subtract existing selection.
-
bpy.ops.graph.
select_circle
(x=0, y=0, radius=25, wait_for_input=True, mode='SET')¶ Select keyframe points using circle selection
- Parameters
x (int in [-inf, inf], (optional)) – X
y (int in [-inf, inf], (optional)) – Y
radius (int in [1, inf], (optional)) – Radius
wait_for_input (boolean, (optional)) – Wait for Input
mode (enum in ['SET', 'ADD', 'SUB'], (optional)) –
Mode
SET
Set, Set a new selection.ADD
Extend, Extend existing selection.SUB
Subtract, Subtract existing selection.
-
bpy.ops.graph.
select_column
(mode='KEYS')¶ Select all keyframes on the specified frame(s)
- Parameters
mode (enum in ['KEYS', 'CFRA', 'MARKERS_COLUMN', 'MARKERS_BETWEEN'], (optional)) – Mode
-
bpy.ops.graph.
select_lasso
(path=None, mode='SET')¶ Select keyframe points using lasso selection
- Parameters
path (
bpy_prop_collection
ofOperatorMousePath
, (optional)) – Pathmode (enum in ['SET', 'ADD', 'SUB'], (optional)) –
Mode
SET
Set, Set a new selection.ADD
Extend, Extend existing selection.SUB
Subtract, Subtract existing selection.
-
bpy.ops.graph.
select_leftright
(mode='CHECK', extend=False)¶ Select keyframes to the left or the right of the current frame
- Parameters
mode (enum in ['CHECK', 'LEFT', 'RIGHT'], (optional)) – Mode
extend (boolean, (optional)) – Extend Select
-
bpy.ops.graph.
select_less
()¶ Deselect keyframes on ends of selection islands
-
bpy.ops.graph.
select_linked
()¶ Select keyframes occurring in the same F-Curves as selected ones
-
bpy.ops.graph.
select_more
()¶ Select keyframes beside already selected ones
-
bpy.ops.graph.
smooth
()¶ Apply weighted moving means to make selected F-Curves less bumpy
-
bpy.ops.graph.
snap
(type='CFRA')¶ Snap selected keyframes to the chosen times/values
- Parameters
type (enum in ['CFRA', 'VALUE', 'NEAREST_FRAME', 'NEAREST_SECOND', 'NEAREST_MARKER', 'HORIZONTAL'], (optional)) –
Type
CFRA
Current Frame, Snap selected keyframes to the current frame.VALUE
Cursor Value, Set values of selected keyframes to the cursor value (Y/Horizontal component).NEAREST_FRAME
Nearest Frame, Snap selected keyframes to the nearest (whole) frame (use to fix accidental sub-frame offsets).NEAREST_SECOND
Nearest Second, Snap selected keyframes to the nearest second.NEAREST_MARKER
Nearest Marker, Snap selected keyframes to the nearest marker.HORIZONTAL
Flatten Handles, Flatten handles for a smoother transition.
-
bpy.ops.graph.
sound_bake
(filepath="", filter_blender=False, filter_backup=False, filter_image=False, filter_movie=True, filter_python=False, filter_font=False, filter_sound=True, filter_text=False, filter_archive=False, filter_btx=False, filter_collada=False, filter_alembic=False, filter_usd=False, filter_volume=False, filter_folder=True, filter_blenlib=False, filemode=9, show_multiview=False, use_multiview=False, display_type='DEFAULT', sort_method='FILE_SORT_ALPHA', low=0.0, high=100000.0, attack=0.005, release=0.2, threshold=0.0, use_accumulate=False, use_additive=False, use_square=False, sthreshold=0.1)¶ Bakes a sound wave to selected F-Curves
- Parameters
filepath (string, (optional, never None)) – File Path, Path to file
filter_blender (boolean, (optional)) – Filter .blend files
filter_backup (boolean, (optional)) – Filter .blend files
filter_image (boolean, (optional)) – Filter image files
filter_movie (boolean, (optional)) – Filter movie files
filter_python (boolean, (optional)) – Filter python files
filter_font (boolean, (optional)) – Filter font files
filter_sound (boolean, (optional)) – Filter sound files
filter_text (boolean, (optional)) – Filter text files
filter_archive (boolean, (optional)) – Filter archive files
filter_btx (boolean, (optional)) – Filter btx files
filter_collada (boolean, (optional)) – Filter COLLADA files
filter_alembic (boolean, (optional)) – Filter Alembic files
filter_usd (boolean, (optional)) – Filter USD files
filter_volume (boolean, (optional)) – Filter OpenVDB volume files
filter_folder (boolean, (optional)) – Filter folders
filter_blenlib (boolean, (optional)) – Filter Blender IDs
filemode (int in [1, 9], (optional)) – File Browser Mode, The setting for the file browser mode to load a .blend file, a library or a special file
show_multiview (boolean, (optional)) – Enable Multi-View
use_multiview (boolean, (optional)) – Use Multi-View
display_type (enum in ['DEFAULT', 'LIST_VERTICAL', 'LIST_HORIZONTAL', 'THUMBNAIL'], (optional)) –
Display Type
DEFAULT
Default, Automatically determine display type for files.LIST_VERTICAL
Short List, Display files as short list.LIST_HORIZONTAL
Long List, Display files as a detailed list.THUMBNAIL
Thumbnails, Display files as thumbnails.
sort_method (enum in ['FILE_SORT_ALPHA', 'FILE_SORT_EXTENSION', 'FILE_SORT_TIME', 'FILE_SORT_SIZE'], (optional)) –
File sorting mode
FILE_SORT_ALPHA
Name, Sort the file list alphabetically.FILE_SORT_EXTENSION
Extension, Sort the file list by extension/type.FILE_SORT_TIME
Modified Date, Sort files by modification time.FILE_SORT_SIZE
Size, Sort files by size.
low (float in [0, 100000], (optional)) – Lowest frequency, Cutoff frequency of a high-pass filter that is applied to the audio data
high (float in [0, 100000], (optional)) – Highest frequency, Cutoff frequency of a low-pass filter that is applied to the audio data
attack (float in [0, 2], (optional)) – Attack time, Value for the hull curve calculation that tells how fast the hull curve can rise (the lower the value the steeper it can rise)
release (float in [0, 5], (optional)) – Release time, Value for the hull curve calculation that tells how fast the hull curve can fall (the lower the value the steeper it can fall)
threshold (float in [0, 1], (optional)) – Threshold, Minimum amplitude value needed to influence the hull curve
use_accumulate (boolean, (optional)) – Accumulate, Only the positive differences of the hull curve amplitudes are summarized to produce the output
use_additive (boolean, (optional)) – Additive, The amplitudes of the hull curve are summarized (or, when Accumulate is enabled, both positive and negative differences are accumulated)
use_square (boolean, (optional)) – Square, The output is a square curve (negative values always result in -1, and positive ones in 1)
sthreshold (float in [0, 1], (optional)) – Square Threshold, Square only: all values with an absolute amplitude lower than that result in 0
-
bpy.ops.graph.
view_all
(include_handles=True)¶ Reset viewable area to show full keyframe range
- Parameters
include_handles (boolean, (optional)) – Include Handles, Include handles of keyframes when calculating extents
-
bpy.ops.graph.
view_frame
()¶ Move the view to the playhead
-
bpy.ops.graph.
view_selected
(include_handles=True)¶ Reset viewable area to show selected keyframe range
- Parameters
include_handles (boolean, (optional)) – Include Handles, Include handles of keyframes when calculating extents