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(extend=False, column=False, curves=False)

Select keyframes by clicking on them

Parameters:
  • extend (boolean, (optional)) – Extend Select, Toggle keyframe selection instead of leaving newly selected keyframes only
  • 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 [-500000, 500000], (optional)) – Frame
  • value (float in [-inf, inf], (optional)) – Value
bpy.ops.graph.delete()

Remove all selected keyframes

bpy.ops.graph.driver_variables_copy()

Copy the driver variables of the active F-Curve

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'], (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 keyframes
  • TRANSFORM_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', 'VECTOR', 'ALIGNED', 'AUTO', 'AUTO_CLAMPED'], (optional)) –

Type

  • FREE Free.
  • VECTOR Vector.
  • ALIGNED Aligned.
  • AUTO Automatic.
  • AUTO_CLAMPED Auto Clamped, Auto handles clamped to not overshoot.
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.properties()

Toggle the properties region visibility

bpy.ops.graph.reveal()

Make previously hidden curves visible again in Graph Editor view

bpy.ops.graph.sample()

Add keyframes on every frame between the selected keyframes

bpy.ops.graph.select_all_toggle(invert=False)

Toggle selection of all keyframes

Parameters:invert (boolean, (optional)) – Invert
bpy.ops.graph.select_border(gesture_mode=0, xmin=0, xmax=0, ymin=0, ymax=0, extend=True, axis_range=False, include_handles=False)

Select all keyframes within the specified region

Parameters:
  • gesture_mode (int in [-inf, inf], (optional)) – Gesture Mode
  • 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
  • extend (boolean, (optional)) – Extend, Extend selection instead of deselecting everything first
  • axis_range (boolean, (optional)) – Axis Range
  • include_handles (boolean, (optional)) – Include Handles, Are handles tested individually against the selection criteria
bpy.ops.graph.select_circle(x=0, y=0, radius=1, gesture_mode=0)

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
  • gesture_mode (int in [-inf, inf], (optional)) – Event Type
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, deselect=False, extend=True)

Select keyframe points using lasso selection

Parameters:
  • path (bpy_prop_collection of OperatorMousePath, (optional)) – Path
  • deselect (boolean, (optional)) – Deselect, Deselect rather than select items
  • extend (boolean, (optional)) – Extend, Extend selection instead of deselecting everything first
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_btx=False, filter_collada=False, filter_alembic=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_btx (boolean, (optional)) – Filter btx files
  • filter_collada (boolean, (optional)) – Filter COLLADA files
  • filter_alembic (boolean, (optional)) – Filter Alembic 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_SHORT', 'LIST_LONG', 'THUMBNAIL'], (optional)) –

    Display Type

    • DEFAULT Default, Automatically determine display type for files.
    • LIST_SHORT Short List, Display files as short list.
    • LIST_LONG 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 Sort alphabetically, Sort the file list alphabetically.
    • FILE_SORT_EXTENSION Sort by extension, Sort the file list by extension/type.
    • FILE_SORT_TIME Sort by time, Sort files by modification time.
    • FILE_SORT_SIZE Sort by 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()

Reset viewable area to show range around current frame

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