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
REFITRefit, Incrementally re-fit the curve (high quality).SPLITSplit, 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_collectionofOperatorStrokeElement, (optional)) – Stroke - wait_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 points - TRANSFORM_OT_translate (
TRANSFORM_OT_translate, (optional)) – Translate, Translate (move) selected items
- CURVE_OT_duplicate (
-
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'], (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)) – Translate, Translate (move) selected items
- CURVE_OT_extrude (
-
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, view_align=False, enter_editmode=False, location=(0.0, 0.0, 0.0), rotation=(0.0, 0.0, 0.0), layers=(False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False))¶ Construct a Bezier Circle
Parameters: - radius (float in [0, inf], (optional)) – Radius
- view_align (boolean, (optional)) – Align to View, Align the new object to the view
- enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this 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
- layers (boolean array of 20 items, (optional)) – Layer
-
bpy.ops.curve.primitive_bezier_curve_add(radius=1.0, view_align=False, enter_editmode=False, location=(0.0, 0.0, 0.0), rotation=(0.0, 0.0, 0.0), layers=(False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False))¶ Construct a Bezier Curve
Parameters: - radius (float in [0, inf], (optional)) – Radius
- view_align (boolean, (optional)) – Align to View, Align the new object to the view
- enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this 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
- layers (boolean array of 20 items, (optional)) – Layer
-
bpy.ops.curve.primitive_nurbs_circle_add(radius=1.0, view_align=False, enter_editmode=False, location=(0.0, 0.0, 0.0), rotation=(0.0, 0.0, 0.0), layers=(False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False))¶ Construct a Nurbs Circle
Parameters: - radius (float in [0, inf], (optional)) – Radius
- view_align (boolean, (optional)) – Align to View, Align the new object to the view
- enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this 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
- layers (boolean array of 20 items, (optional)) – Layer
-
bpy.ops.curve.primitive_nurbs_curve_add(radius=1.0, view_align=False, enter_editmode=False, location=(0.0, 0.0, 0.0), rotation=(0.0, 0.0, 0.0), layers=(False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False))¶ Construct a Nurbs Curve
Parameters: - radius (float in [0, inf], (optional)) – Radius
- view_align (boolean, (optional)) – Align to View, Align the new object to the view
- enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this 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
- layers (boolean array of 20 items, (optional)) – Layer
-
bpy.ops.curve.primitive_nurbs_path_add(radius=1.0, view_align=False, enter_editmode=False, location=(0.0, 0.0, 0.0), rotation=(0.0, 0.0, 0.0), layers=(False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False))¶ Construct a Path
Parameters: - radius (float in [0, inf], (optional)) – Radius
- view_align (boolean, (optional)) – Align to View, Align the new object to the view
- enter_editmode (boolean, (optional)) – Enter Editmode, Enter editmode when adding this 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
- layers (boolean array of 20 items, (optional)) – Layer
-
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
TOGGLEToggle, Toggle selection for all elements.SELECTSelect, Select all elements.DESELECTDeselect, Deselect all elements.INVERTInvert, Invert selection of all elements.
-
bpy.ops.curve.select_less()¶ Reduce current selection by deselecting boundary elements
-
bpy.ops.curve.select_linked()¶ Select all control points linked to active one
-
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 directly linked to already selected ones
-
bpy.ops.curve.select_next()¶ Select control points following already selected ones along the curves
-
bpy.ops.curve.select_nth(nth=2, skip=1, offset=0)¶ Deselect every other vertex
Parameters: - nth (int in [2, inf], (optional)) – Nth Element, Skip every Nth element
- skip (int in [1, inf], (optional)) – Skip, Number of elements to skip at once
- 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
SELECTSelect, Select all elements.DESELECTDeselect, 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