Curve Operators¶
-
bpy.ops.curve.
cyclic_toggle
(direction='CYCLIC_U')¶ Make active spline closed/opened loop
- Parameters
direction (enum in ['CYCLIC_U', 'CYCLIC_V'], (optional)) – Direction, Direction to make surface cyclic in
-
bpy.ops.curve.
de_select_first
()¶ (De)select first of visible part of each NURBS
-
bpy.ops.curve.
de_select_last
()¶ (De)select last of visible part of each NURBS
-
bpy.ops.curve.
decimate
(ratio=1.0)¶ Simplify selected curves
- Parameters
ratio (float in [0, 1], (optional)) – Ratio
-
bpy.ops.curve.
delete
(type='VERT')¶ Delete selected control points or segments
- Parameters
type (enum in ['VERT', 'SEGMENT'], (optional)) – Type, Which elements to delete
-
bpy.ops.curve.
dissolve_verts
()¶ Delete selected control points, correcting surrounding handles
-
bpy.ops.curve.
draw
(error_threshold=0.0, fit_method='REFIT', corner_angle=1.22173, use_cyclic=True, stroke=None, wait_for_input=True)¶ Draw a freehand spline
- Parameters
error_threshold (float in [0, 10], (optional)) – Error, Error distance threshold (in object units)
fit_method (enum in ['REFIT', 'SPLIT'], (optional)) –
Fit Method
REFIT
Refit, Incrementally re-fit the curve (high quality).SPLIT
Split, Split the curve until the tolerance is met (fast).
corner_angle (float in [0, 3.14159], (optional)) – Corner Angle
use_cyclic (boolean, (optional)) – Cyclic
stroke (
bpy_prop_collection
ofOperatorStrokeElement
, (optional)) – Strokewait_for_input (boolean, (optional)) – Wait for Input
-
bpy.ops.curve.
duplicate
()¶ Duplicate selected control points
-
bpy.ops.curve.
duplicate_move
(CURVE_OT_duplicate=None, TRANSFORM_OT_translate=None)¶ Duplicate curve and move
- Parameters
CURVE_OT_duplicate (
CURVE_OT_duplicate
, (optional)) – Duplicate Curve, Duplicate selected control pointsTRANSFORM_OT_translate (
TRANSFORM_OT_translate
, (optional)) – Move, Move selected items
-
bpy.ops.curve.
extrude
(mode='TRANSLATION')¶ Extrude selected control point(s)
- 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.curve.
extrude_move
(CURVE_OT_extrude=None, TRANSFORM_OT_translate=None)¶ Extrude curve and move result
- Parameters
CURVE_OT_extrude (
CURVE_OT_extrude
, (optional)) – Extrude, Extrude selected control point(s)TRANSFORM_OT_translate (
TRANSFORM_OT_translate
, (optional)) – Move, Move selected items
-
bpy.ops.curve.
handle_type_set
(type='AUTOMATIC')¶ Set type of handles for selected control points
- Parameters
type (enum in ['AUTOMATIC', 'VECTOR', 'ALIGNED', 'FREE_ALIGN', 'TOGGLE_FREE_ALIGN'], (optional)) – Type, Spline type
-
bpy.ops.curve.
hide
(unselected=False)¶ Hide (un)selected control points
- Parameters
unselected (boolean, (optional)) – Unselected, Hide unselected rather than selected
-
bpy.ops.curve.
make_segment
()¶ Join two curves by their selected ends
-
bpy.ops.curve.
match_texture_space
()¶ Match texture space to object’s bounding box
-
bpy.ops.curve.
normals_make_consistent
(calc_length=False)¶ Recalculate the direction of selected handles
- Parameters
calc_length (boolean, (optional)) – Length, Recalculate handle length
-
bpy.ops.curve.
primitive_bezier_circle_add
(radius=1.0, enter_editmode=False, align='WORLD', location=0.0, 0.0, 0.0, rotation=0.0, 0.0, 0.0, scale=0.0, 0.0, 0.0)¶ Construct a Bezier Circle
- Parameters
radius (float in [0, inf], (optional)) – Radius
enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this object
align (enum in ['WORLD', 'VIEW', 'CURSOR'], (optional)) –
Align, The alignment of the new object
WORLD
World, Align the new object to the world.VIEW
View, Align the new object to the view.CURSOR
3D Cursor, Use the 3D cursor orientation for the new object.
location (float array of 3 items in [-inf, inf], (optional)) – Location, Location for the newly added object
rotation (float array of 3 items in [-inf, inf], (optional)) – Rotation, Rotation for the newly added object
scale (float array of 3 items in [-inf, inf], (optional)) – Scale, Scale for the newly added object
-
bpy.ops.curve.
primitive_bezier_curve_add
(radius=1.0, enter_editmode=False, align='WORLD', location=0.0, 0.0, 0.0, rotation=0.0, 0.0, 0.0, scale=0.0, 0.0, 0.0)¶ Construct a Bezier Curve
- Parameters
radius (float in [0, inf], (optional)) – Radius
enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this object
align (enum in ['WORLD', 'VIEW', 'CURSOR'], (optional)) –
Align, The alignment of the new object
WORLD
World, Align the new object to the world.VIEW
View, Align the new object to the view.CURSOR
3D Cursor, Use the 3D cursor orientation for the new object.
location (float array of 3 items in [-inf, inf], (optional)) – Location, Location for the newly added object
rotation (float array of 3 items in [-inf, inf], (optional)) – Rotation, Rotation for the newly added object
scale (float array of 3 items in [-inf, inf], (optional)) – Scale, Scale for the newly added object
-
bpy.ops.curve.
primitive_nurbs_circle_add
(radius=1.0, enter_editmode=False, align='WORLD', location=0.0, 0.0, 0.0, rotation=0.0, 0.0, 0.0, scale=0.0, 0.0, 0.0)¶ Construct a Nurbs Circle
- Parameters
radius (float in [0, inf], (optional)) – Radius
enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this object
align (enum in ['WORLD', 'VIEW', 'CURSOR'], (optional)) –
Align, The alignment of the new object
WORLD
World, Align the new object to the world.VIEW
View, Align the new object to the view.CURSOR
3D Cursor, Use the 3D cursor orientation for the new object.
location (float array of 3 items in [-inf, inf], (optional)) – Location, Location for the newly added object
rotation (float array of 3 items in [-inf, inf], (optional)) – Rotation, Rotation for the newly added object
scale (float array of 3 items in [-inf, inf], (optional)) – Scale, Scale for the newly added object
-
bpy.ops.curve.
primitive_nurbs_curve_add
(radius=1.0, enter_editmode=False, align='WORLD', location=0.0, 0.0, 0.0, rotation=0.0, 0.0, 0.0, scale=0.0, 0.0, 0.0)¶ Construct a Nurbs Curve
- Parameters
radius (float in [0, inf], (optional)) – Radius
enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this object
align (enum in ['WORLD', 'VIEW', 'CURSOR'], (optional)) –
Align, The alignment of the new object
WORLD
World, Align the new object to the world.VIEW
View, Align the new object to the view.CURSOR
3D Cursor, Use the 3D cursor orientation for the new object.
location (float array of 3 items in [-inf, inf], (optional)) – Location, Location for the newly added object
rotation (float array of 3 items in [-inf, inf], (optional)) – Rotation, Rotation for the newly added object
scale (float array of 3 items in [-inf, inf], (optional)) – Scale, Scale for the newly added object
-
bpy.ops.curve.
primitive_nurbs_path_add
(radius=1.0, enter_editmode=False, align='WORLD', location=0.0, 0.0, 0.0, rotation=0.0, 0.0, 0.0, scale=0.0, 0.0, 0.0)¶ Construct a Path
- Parameters
radius (float in [0, inf], (optional)) – Radius
enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this object
align (enum in ['WORLD', 'VIEW', 'CURSOR'], (optional)) –
Align, The alignment of the new object
WORLD
World, Align the new object to the world.VIEW
View, Align the new object to the view.CURSOR
3D Cursor, Use the 3D cursor orientation for the new object.
location (float array of 3 items in [-inf, inf], (optional)) – Location, Location for the newly added object
rotation (float array of 3 items in [-inf, inf], (optional)) – Rotation, Rotation for the newly added object
scale (float array of 3 items in [-inf, inf], (optional)) – Scale, Scale for the newly added object
-
bpy.ops.curve.
radius_set
(radius=1.0)¶ Set per-point radius which is used for bevel tapering
- Parameters
radius (float in [0, inf], (optional)) – Radius
-
bpy.ops.curve.
reveal
(select=True)¶ Reveal hidden control points
- Parameters
select (boolean, (optional)) – Select
-
bpy.ops.curve.
select_all
(action='TOGGLE')¶ (De)select all control points
- 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.curve.
select_less
()¶ Deselect control points at the boundary of each selection region
-
bpy.ops.curve.
select_linked
()¶ Select all control points linked to the current selection
-
bpy.ops.curve.
select_linked_pick
(deselect=False)¶ Select all control points linked to already selected ones
- Parameters
deselect (boolean, (optional)) – Deselect, Deselect linked control points rather than selecting them
-
bpy.ops.curve.
select_more
()¶ Select control points at the boundary of each selection region
-
bpy.ops.curve.
select_next
()¶ Select control points following already selected ones along the curves
-
bpy.ops.curve.
select_nth
(skip=1, nth=1, offset=0)¶ Deselect every Nth point starting from the active one
- Parameters
skip (int in [1, inf], (optional)) – Deselected, Number of deselected elements in the repetitive sequence
nth (int in [1, inf], (optional)) – Selected, Number of selected elements in the repetitive sequence
offset (int in [-inf, inf], (optional)) – Offset, Offset from the starting point
-
bpy.ops.curve.
select_previous
()¶ Select control points preceding already selected ones along the curves
-
bpy.ops.curve.
select_random
(percent=50.0, seed=0, action='SELECT')¶ Randomly select some control points
- Parameters
percent (float in [0, 100], (optional)) – Percent, Percentage of objects to select randomly
seed (int in [0, inf], (optional)) – Random Seed, Seed for the random number generator
action (enum in ['SELECT', 'DESELECT'], (optional)) –
Action, Selection action to execute
SELECT
Select, Select all elements.DESELECT
Deselect, Deselect all elements.
-
bpy.ops.curve.
select_row
()¶ Select a row of control points including active one
-
bpy.ops.curve.
select_similar
(type='WEIGHT', compare='EQUAL', threshold=0.1)¶ Select similar curve points by property type
- Parameters
type (enum in ['TYPE', 'RADIUS', 'WEIGHT', 'DIRECTION'], (optional)) – Type
compare (enum in ['EQUAL', 'GREATER', 'LESS'], (optional)) – Compare
threshold (float in [0, inf], (optional)) – Threshold
-
bpy.ops.curve.
separate
()¶ Separate selected points from connected unselected points into a new object
-
bpy.ops.curve.
shade_flat
()¶ Set shading to flat
-
bpy.ops.curve.
shade_smooth
()¶ Set shading to smooth
-
bpy.ops.curve.
shortest_path_pick
()¶ Select shortest path between two selections
-
bpy.ops.curve.
smooth
()¶ Flatten angles of selected points
-
bpy.ops.curve.
smooth_radius
()¶ Interpolate radii of selected points
-
bpy.ops.curve.
smooth_tilt
()¶ Interpolate tilt of selected points
-
bpy.ops.curve.
smooth_weight
()¶ Interpolate weight of selected points
-
bpy.ops.curve.
spin
(center=0.0, 0.0, 0.0, axis=0.0, 0.0, 0.0)¶ Extrude selected boundary row around pivot point and current view axis
- Parameters
center (float array of 3 items in [-inf, inf], (optional)) – Center, Center in global view space
axis (float array of 3 items in [-1, 1], (optional)) – Axis, Axis in global view space
-
bpy.ops.curve.
spline_type_set
(type='POLY', use_handles=False)¶ Set type of active spline
- Parameters
type (enum in ['POLY', 'BEZIER', 'NURBS'], (optional)) – Type, Spline type
use_handles (boolean, (optional)) – Handles, Use handles when converting bezier curves into polygons
-
bpy.ops.curve.
spline_weight_set
(weight=1.0)¶ Set softbody goal weight for selected points
- Parameters
weight (float in [0, 1], (optional)) – Weight
-
bpy.ops.curve.
split
()¶ Split off selected points from connected unselected points
-
bpy.ops.curve.
subdivide
(number_cuts=1)¶ Subdivide selected segments
- Parameters
number_cuts (int in [1, 1000], (optional)) – Number of cuts
-
bpy.ops.curve.
switch_direction
()¶ Switch direction of selected splines
-
bpy.ops.curve.
tilt_clear
()¶ Clear the tilt of selected control points
-
bpy.ops.curve.
vertex_add
(location=0.0, 0.0, 0.0)¶ Add a new control point (linked to only selected end-curve one, if any)
- Parameters
location (float array of 3 items in [-inf, inf], (optional)) – Location, Location to add new vertex at