Action Operators¶
-
bpy.ops.action.
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.action.
clickselect
(wait_to_deselect_others=False, mouse_x=0, mouse_y=0, extend=False, deselect_all=False, column=False, channel=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
channel (boolean, (optional)) – Only Channel, Select all the keyframes in the channel under the mouse
-
bpy.ops.action.
copy
()¶ Copy selected keyframes to the copy/paste buffer
-
bpy.ops.action.
delete
()¶ Remove all selected keyframes
-
bpy.ops.action.
duplicate
()¶ Make a copy of all selected keyframes
-
bpy.ops.action.
duplicate_move
(ACTION_OT_duplicate=None, TRANSFORM_OT_transform=None)¶ Make a copy of all selected keyframes and move them
- Parameters
ACTION_OT_duplicate (
ACTION_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.action.
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.action.
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.action.
frame_jump
()¶ Set the current frame to the average frame value of selected keyframes
-
bpy.ops.action.
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.action.
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.action.
keyframe_insert
(type='ALL')¶ Insert keyframes for the specified channels
- Parameters
type (enum in ['ALL', 'SEL', 'GROUP'], (optional)) – Type
-
bpy.ops.action.
keyframe_type
(type='KEYFRAME')¶ Set type of keyframe for the selected keyframes
- Parameters
type (enum in ['KEYFRAME', 'BREAKDOWN', 'MOVING_HOLD', 'EXTREME', 'JITTER'], (optional)) –
Type
KEYFRAME
Keyframe, Normal keyframe - e.g. for key poses.BREAKDOWN
Breakdown, A breakdown pose - e.g. for transitions between key poses.MOVING_HOLD
Moving Hold, A keyframe that is part of a moving hold.EXTREME
Extreme, An ‘extreme’ pose, or some other purpose as needed.JITTER
Jitter, A filler or baked keyframe for keying on ones, or some other purpose as needed.
-
bpy.ops.action.
layer_next
()¶ Switch to editing action in animation layer above the current action in the NLA Stack
-
bpy.ops.action.
layer_prev
()¶ Switch to editing action in animation layer below the current action in the NLA Stack
-
bpy.ops.action.
markers_make_local
()¶ Move selected scene markers to the active Action as local ‘pose’ markers
-
bpy.ops.action.
mirror
(type='CFRA')¶ Flip selected keyframes over the selected mirror line
- Parameters
type (enum in ['CFRA', 'XAXIS', 'MARKER'], (optional)) –
Type
CFRA
By Times Over Current Frame, Flip times of selected keyframes using the current frame as the mirror line.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.action.
new
()¶ Create new action
-
bpy.ops.action.
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.action.
previewrange_set
()¶ Set Preview Range based on extents of selected Keyframes
-
bpy.ops.action.
push_down
()¶ Push action down on to the NLA stack as a new strip
-
bpy.ops.action.
sample
()¶ Add keyframes on every frame between the selected keyframes
-
bpy.ops.action.
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.action.
select_box
(axis_range=False, xmin=0, xmax=0, ymin=0, ymax=0, wait_for_input=True, mode='SET', tweak=False)¶ Select all keyframes within the specified region
- Parameters
axis_range (boolean, (optional)) – Axis Range
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.
tweak (boolean, (optional)) – Tweak, Operator has been activated using a tweak event
-
bpy.ops.action.
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.action.
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.action.
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.action.
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.action.
select_less
()¶ Deselect keyframes on ends of selection islands
-
bpy.ops.action.
select_linked
()¶ Select keyframes occurring in the same F-Curves as selected ones
-
bpy.ops.action.
select_more
()¶ Select keyframes beside already selected ones
-
bpy.ops.action.
snap
(type='CFRA')¶ Snap selected keyframes to the times specified
- Parameters
type (enum in ['CFRA', 'NEAREST_FRAME', 'NEAREST_SECOND', 'NEAREST_MARKER'], (optional)) –
Type
CFRA
Current Frame, Snap selected keyframes to the current frame.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.
-
bpy.ops.action.
stash
(create_new=True)¶ Store this action in the NLA stack as a non-contributing strip for later use
- Parameters
create_new (boolean, (optional)) – Create New Action, Create a new action once the existing one has been safely stored
-
bpy.ops.action.
stash_and_create
()¶ Store this action in the NLA stack as a non-contributing strip for later use, and create a new action
-
bpy.ops.action.
unlink
(force_delete=False)¶ Unlink this action from the active action slot (and/or exit Tweak Mode)
- Parameters
force_delete (boolean, (optional)) – Force Delete, Clear Fake User and remove copy stashed in this data-block’s NLA stack
-
bpy.ops.action.
view_all
()¶ Reset viewable area to show full keyframe range
-
bpy.ops.action.
view_frame
()¶ Move the view to the current frame
-
bpy.ops.action.
view_selected
()¶ Reset viewable area to show selected keyframes range