View & accessibility
Thumbnails
Motion
Bforartists
5.1
Editors

Curve

Curve nodes: Read, Sample, Write, Operations, Primitives, Topology.

19
 min read
Up to date for 
5.1
draft

Read

Add - Curve - Read

Add - Curve - Read
Add - Curve - Read

Here you find curve related nodes.

Curve Handle Positions

Curve Handle Positions

Get the position of the left or right handle of a curve point.

EntryWhat it does
InputsRelative: Output the handle positions relative to the corresponding control point instead of the local space of the geometry.
OutputsLeft: The left handle of the curve point. · Right: The right handle of the curve point.

Cuve Length

Cuve Length

Retreives the length of all splines added together.

EntryWhat it does
InputsCurve: The input curve.
OutputsLength: The length of the curve.

Curve Tangent

Curve Tangent

Retreive the tangent direction of a curve. The output values are normalized vectors.

Note that for NURBS and Bézier spline curves the value retrieved from this node is the value at every control point, which may not correspond to the visible evaluated points. For NURBS splines the difference may be even more pronounced and the result may not be as expected. A Resample Curve Node node can be used to create a poly spline, where there is a control point for every evaluated point.

Outputs
Factor

The vector of the tangent.

Curve Tilt

Curve Tilt

Outputs the angle used to turn the curve normal around the direction of the curve tangent in its evaluated points.

The output is per control point. For NURBS and Bézier splines, the values will be interpolated to the final evaluated points.

Outputs
Tilt

The tilt angle for the normal in radians.

Endpoint Selection

Endpoint Selection

The Endpoint Selection node allows for the Selection of an aribitrary
number of endpoints from each spline in a curve. The start and end
inputs are evaluated on the spline domain. The result is outputted
as a boolean field on the point domain.

EntryWhat it does
InputStart Size: The start point of the spline. · End Size: The end point of the spline.
OutputsSelection: Selection output.

Handle Type Selection

Handle Type Selection

Creates a selection based on the handle types of the control points.

Properties
Left / Right

Wether to check for the type of handles.

Handle Type
Handle Type

What handle type to compare.

Output
Selection

The selection.

Is Spline Cyclic

Is Spline Cyclic

Retreive if the curve is set to cyclic.

Outputs
Cyclic

If the spline is cyclic or not.

Spline Length

Spline Length

Retreive the total length of each spline in a curve.

Outputs
EntryWhat it does
LengthThe length of each spline in the curve.
Point CountInteger Field input of the number of control points on each spline in the spline domain. Or in the point domain, it is the number of points on the spline that contains the given control point.

Spline Parameter

Spline Parameter

The Curve Parameter node outputs how far along each spline a control point is, with a value between zero and one. The output is different from dividing the index by the total number of control points, because the control points might not be equally spaced along the curve.

The first value is zero, so the output corresponds to the length at the control point rather than including the length of the following segment.

When used on the spline domain, the node outputs the portion of the total length of the curve (including all splines) has been traversed at the start of each spline. The order of the curve’s splines is visible in the Spreadsheet Editor.

Note that for NURBS and Bézier spline curves the value retrieved from this node is the value at every control point, which may not correspond to the visible evaluated points. For NURBS splines the difference may be even more pronounced and the result may not be as expected. A Resample Curve Node node can be used to create a poly spline, where there is a control point for every evaluated point.

Outputs
EntryWhat it does
FactorThe factor of the curve.
LengthThe length of the curve.
IndexThe index of the curve.

Spline Resolution

Spline Resolution

Retreive the curve resolution. Means the number of spline points.

Outputs
Resolution

The spline resolution.

Sample

Add - Curve - Sample

Add - Curve - Sample
Add - Curve - Sample

Here you find curve related nodes.

Sample Curve

Sample Curve

Calculates a point on a curve at a certain distance from the start of the curve, specified by the length or factor inputs. It also outputs data retrieved from that position on the curve.

The sampled values are linearly interpolated from the values at the evaluated curve points at each side of the sampled point.

In case that the curve contains multiple splines, the sample position is found based on the total accumulated length, including the lengths of all previous splines. The order of the splines is the same order as displayed in the Spreadsheet Editor.

Input
EntryWhat it does
CurveThe input geometry.
ValueInput Value.
Mode FactorFactor: The resample amount with method Factor. · Curve Index: The curve index.
Mode FactorFactor: The resample amount with method Factor.
LengthThe resample amount with method Length.
Properties
Data Type
Data Type

What data to calculate.

EntryWhat it does
Sample Curve ModeHow to calculate the curve. By a factor, or by its length.
All CurvesSample lengths based on the length of all curves.
Output
EntryWhat it does
ValueOutput Value.
PositionThe position at the sample along the spline.
TangentThe normalized curve tangent at the sample.
NormalThe normalized curve normal at the sample.

Write

Add - Curve - Write

Add - Curve - Write
Add - Curve - Write

Here you find curve related nodes.

Set Curve Normal

Set Curve Normal

Set the evaluation mode for curve normals.

Input
EntryWhat it does
CurveThe input curve.
SelectionA selection of the input curve.
Mode
Mode

The evaluation mode for the curve normals.

Outputs
Curve

The curve output.

Set Curve Radius

Set Curve Radius

Set the curve radius.

EntryWhat it does
InputGeometry: The input curve. · Selection: A selection of the input curve. · Radius: The radius to set.
OutputsGeometry: Standard geometry output.

Set Curve Tilt

Set Curve Tilt

Controls the tilt angle at each curve control point.

EntryWhat it does
InputGeometry: The input curve. · Selection: Whether or not to change the value on each control point. True values mean the value will be changed, false values mean the value will remain the same. · Tilt: The tilt rotation.
OutputsCurve: Standard geometry output.

Set Handle Positions

Set Handle Positions

Set the handle positions of bezier curves

EntryWhat it does
InputGeometry: The input curve. · Selection: A selection of the input curve. · Position: The position of the handle. · Offset: A vector 3 offset for the handles.
PropertiesMode: Left or right handles.
OutputsGeometry: Standard geometry output.

Set Handle Type

Set Handle Type

Sets a handle type for the curve points of a bezier curve. Handle types determines how the interpolation before and after the curve point happens.

Input
EntryWhat it does
CurveThe input curve.
SelectionA selection of the input curve.
Properties
Mode

Left or right handles.

Handle Type
Handle Type

The different available handle types.

Free
Free

The handles can be adjusted individually.

Auto
Auto

The left and the right handle will always point to each other. The length of the handles will start in equal size.

Vector
Vector

The handles can be adjusted individually.

Aligned
Aligned

The left and the right handle will always point to each other.

Output
Curve

Standard geometry output.

Set Spline cyclic

Set Spline cyclic

Sets the spline cyclic. Means looping.

EntryWhat it does
InputGeometry: The input curve. · Selection: A selection of the input curve. · Cyclic: Cyclic or not
OutputsGeometry: Standard geometry output.

Set Spline Resolution

Set Spline Resolution

Sets the resolution of the spline. Means how many evaluated points should be generated on the curve for each control point.

EntryWhat it does
InputGeometry: The input curve. · Selection: A selection of the input curve. · Resolution: The resolution of the spline.
OutputsGeometry: Standard geometry output.

Set Spline Type

Set Spline Type

Change the curve spline type.

Input
EntryWhat it does
CurveThe input curve.
SelectionA selection of the input curve.
Properties
Spline Type
Spline Type

The spline type to set the curve to.

Note that when converting from a NURBS spline to a Bézier spline, at least six points are needed. When the number of points is not a multiple of three a full conversion is not possible and the spline has to be truncated.

Output
Curve

Standard geometry output.

Operations

Add - Curve

Add - Curve

Here you find curve related nodes.

Cuve to Mesh

Cuve to Mesh

Converts a curve object to a mesh object. Optionally, a profile curve can be provided to give the curve a custom shape.

EntryWhat it does
InputsCurve: The input curve. · Profile Curve: If a profile curve is provided, it will be extruded along all splines. Otherwise the generated mesh will just be a chain of edges. · Scale: Scale of the profile at each point. · Fill Caps: For cyclic profile curve. Fill the ends of the generated mesh for each spline combination with an N-gon. The resulting mesh is Manifold, the two new faces for each spline are simply connected to existing edges.
OutputsMesh: Standard mesh output.

Cuve to Points

Cuve to Points

Converts a curve object to a Point cloud.

Inputs
Curve

The input curve.

Properties
Mode
Mode

How to generate points from the input curve.

Evaluated
Evaluated

Create points from the evaluation points of the curve. This is based on the resolution attribute for nurbs and bezier splines.

Count
Count

Sample each spline by evenly distributing the specified number of points along the spline.

Count Input

The number of points to distribute along the spline.

Length
Length

Sample each spline by splitting the spline into segments by the specified length.

Length Input

The length of the single segments.

Outputs
EntryWhat it does
PointGenerated point cloud.
TangentThe normalized curve tangent at the sampled position, or the direct evaluated normal in Evaluated mode.
NormalThe normal value from the evaluated curve at each result point. This is the same value from the Normal Node at those positions.
Rotation—

Cuves to Grease Pencil

Cuves to Grease Pencil
Cuves to Grease Pencil

Converts a curve object to a mesh object. Optionally, a profile curve can be provided to give the curve a custom shape.

EntryWhat it does
InputsCurves: The input curves. · Selection: A selection of the curve · Instances as Layers: Create separate layers for each instance.
OutputsGrease Pencil: Standard output. The Euler rotation build from the Tangent and Normal outputs.

Deform Curves on Surface

Deform Curves on Surface
Deform Curves on Surface

Curves that are attached to a surface can follow the surface at modification.

EntryWhat it does
InputsCurves: The input curve.
OutputsCurves: The output curve.

Fill Curve

Fill Curve

Fills the curve with mesh geometry. The mesh is only generated flat with a local Z of 0.

Inputs
EntryWhat it does
CurveThe input curve.
Group InputAn index used to rgoup curves together. Filling is done separately for each group.
Mode
Mode
Triangles or N-gons

Fill the curve with either triangles, or use N-Gon geometry.

Outputs
Mesh

The output as mesh.

Fillet Curve

Fillet Curve

The Fillet Curve rounds corners on curve control points, similar to the effect of the Bevel Modifier on a 2D mesh.

A key difference is that the rounded portions created by the Fillet Curve node are always portions of a circle.

Input
EntryWhat it does
CurveThe input curve.
CountPolymode. Define the number of vertices that are created.
RadiusThe radius of the arc
Limit RadiusPrevent overlapping when the defined radius exceeds the maximum possible radius for a given point.
Mode
Mode
EntryWhat it does
BezierCreates a circular arc at vertices by changing handle lengths (applicable only for Bezier splines).
PolyCreates a circular arc by creating vertices (as many as defined by the Count fields input) along the arc (applicable for all spline types).
Outputs
Curve

Standard geometry input with a curve component.

Interpolate Curves

Interpolate Curves

Generates new curve parts by interpolating between existing curves.

Input
EntryWhat it does
Guide CurvesThe base curves to interpolate from.
Guide UpAn optional up vector that is typically a surface normal. Providing this up vector can improve the quality of the interpolation. This up direction can be retrieved with a combination of the Sample UV Surface Node using the same geometry that the points were distributed on, and the Normal Node.
Guide Group IDSplits guides into separate groups. New curves interpolate existing curves from a single group.
PointsThe positions of the first root control points of the newly generated interpolated curves.
Points UpOptional up vector that is typically a surface normal.
Point Group IDThe curve group to interpolate in.
Max NeighborMaximum amount of close guide curves that are taken into account for interpolation.
Outputs
EntryWhat it does
CurvesThe new curve.
Closest IndexIndex of the closest guide curve for each generated curve. Note that internally this node mixes the data from multiple guide curves, with the maximum number of sources depending on the Max Neighbor input. This output is only the index of the curve with the largest weight.
Closest WeightWeight of the closest guide curve for each generated curve.

Resample curve

Resample curve

Creates a poly spline for each input spline. In the Count and Length modes, the control points of the new poly splines will have uniform spacing.

Input
EntryWhat it does
CurveThe input geometry.
SelectionA selection of the input geometry
LengthThe approximate length between the control points of the new splines.
Mode
Mode

The resample mode.

EntryWhat it does
EvaluatedUse the resolution attribute for spline and bezier curves.
CountUse the count of the curve points.
LengthUse the length of the curve.
Count

The number of control points on the new splines.

Output
Curve

Standard geometry output.

Reverse Curve

Reverse Curve

Reverses the direction of the spline. The start point becomes the end point and vice versa. The shape of the spline is not modified.

EntryWhat it does
InputsCurve: The input curve. · Selection: An optional selection attribute to determine which part of the spline should be reversed.
OutputsCurve: Standard geometry output.

Subdivide Curve

Subdivide Curve

Subdivides the curve. The shape is not changed.

EntryWhat it does
InputsGeometry: The input curve. · Cuts: The number of cuts per segment.
OutputsGeometry: Standard geometry output.

Trim Curve

Trim Curve

The Curve Trim node shortens each spline in the curve by removing sections at the start and end of each spline.

Bézier splines will still output as Bézier splines. The first and last control point and its handles will be moved as necessary to preserve the shape. But NURBS splines will be transformed into poly splines in order to be trimmed.

Cyclic splines are currently not supported.

Note that if the Start input is larger than the End, then the resulting spline will have a single point, located at the sample location of the Start value.

Inputs
EntryWhat it does
CurveThe input curve.
SelectionA selection of the curve.
StartThe start point of the spline, as a factor.
EndThe end point of the spline, as a factor.
Properties
Mode

How to find endpoint positions for the trimmed spline.

EntryWhat it does
FactorThe endpoint positions of each spline’s length is determined by a factor. The input values should be between 0 or 1.
LengthThe endpoint positions of each spline is determined by a length from the start of each spline. The input values should be between 0 and the length of the splines.
Outputs
Curve

Standard geometry output.

Primitives

Add menu - Curve Primitives

Add menu - Curve Primitives
Add menu - Curve Primitives

Add curve primitives in different shapes.

Arc

Arc
Arc

Adds a bezier curve segment in the shape of an arc

Inputs
EntryWhat it does
ResolutionThe number of edges on the curve.
in Radius modeRadius: Just Radius mode. The radius of the arc. · Start Angle: Just Radius mode. The start angle of the arc. · Sweep Angle: Just Radius mode. The sweep angle of the arc.
In Points ModeStart: The start point vector of the ark. · Middle: The middle point vector of the ark. · End: The end point vector of the ark. · Offset Angle: The offset angle of the ark.
Connect CenterConnect the start and endpoins to the center.
Invert ArcInverts the arc.
Properties
Mode

Point or Radius mode.

Radius mode (default): Generates a fixed radius arc on XY plane with controls for Angle, Sweep and Invert.

Points mode: Generates a three point curve arc from Start to End via Middle with an Angle Offset and option to invert the arc. There are also outputs for arc center, radius and normal direction relative to the Z-axis.

Outputs
EntryWhat it does
CurveCurve output.
In Points ModeCenter: The center vector of the arc. · Normal: The normal of the arc. · Radius: The radius of the arc.

Bezier Segment

Bezier Segment

Adds a bezier curve segment.

Inputs
EntryWhat it does
ResolutionThe number of edges on the curve.
Start, EndPositions of the start and end control point of the curve.
Start Handle, End HandlePositions of the handles used to define the shape of the curve.
Properties
Mode
EntryWhat it does
PositionThe handle inputs are the absolute positions of the handles in 3D space.
OffsetThe handle positions are relative to the control point on the curve. The handle inputs give the offset from the control points.
Outputs
Curve

Bezier spline generated from the inputs.

Curve Circle

Curve Circle

Adds a curve in circle shape.

Inputs
Resolution

Number of edges on the circle.

Radius
Radius

The radius of the circle.

Point 1, Point 2, Point 3

Appears when you change the method to Points. Defines three points on the circle. The order of the points determines the direction (clockwise or counterclockwise) of the circle.

Note that because of the finite resolution, the three points do not necessarily lie on the generated curve.

Properties
Mode
EntryWhat it does
PointsThe position and radius of the circle is defined by three points. The center of the circle is also given as an output. If the three points lie on one line, no geometry is generated.
RadiusThe circle is defined by the radius.
Outputs
EntryWhat it does
CurvePoly spline generated from the inputs.
CenterAppears when you change the method to Points. The center of the circle defined by the three points.

Curve Line

Curve Line

Adds a curve in the shape of a straight line.

Properties
Points

Calculates the curve by a start and end point.

EntryWhat it does
StartThe start point of the curve.
EndThe end point of the curve.
Direction
Direction

Calculates the curve by a start point, a direction vector and the length of the curve.

EntryWhat it does
StartThe start point of the curve.
DirectionThe direction vector.
LengthThe length of the curve.
Outputs
Curve

The created curve.

Spiral

Spiral

Adds a curve in spiral shape. By default the spiral twists clockwise.

EntryWhat it does
InputsResolution: Number of edges for each full rotation. · Rotations: Number of times the spiral makes a full rotation. · Start Radius, End Radius: Radius of the start point and end point of the spiral. The radius of the spiral changes linearly between the two values over the whole spiral. · Height: Height of the spiral. · Reverse: Boolean value that changes the direction from clockwise to counterclockwise when turned on.
OutputsCurve: Poly spline generated from the inputs.

Quadratic Bezier

Quadratic Bezier

Adds a curve from the given control points. The generated shape is a parabola.

EntryWhat it does
InputsResolution: The number of edges on the curve. · Start, Middle, End: Positions of the three control points. The generated curve passes through the two end points, and is tangent to the lines between the middle point and the two end points.
OutputsCurve: Poly spline generated from the inputs.

Quadrilateral

Quadrilateral

Adds a curve in different geometric shapes.

Note that the names does not necessarily fit to the generated geometry.

Input

The input nodes may vary. See Properties.

Properties
Mode
Mode
Rectangle
Rectangle
Rectangle

creates a straight line in y direction.

Width

The length of the straight line.

Parallelogram
Parallelogram
Parallelogram

Creates a straight line that is adjustable in x and y direction.

EntryWhat it does
HeightThe height of the line.
OffsetThe width of the line.
Trapezoid
Trapezoid
Trapezoid
EntryWhat it does
HeightThe height of the trapez.
Bottom WidthThe width of the bottom line of the trapez.
Top WidthThe width of the top line of the trapez.
OffsetThe offset of the top line of the trapez.
Kite
Kite
Kite

creates a straight line in y direction. The curve end points are separately adjustable

EntryWhat it does
Bottom HeightThe length of the bottom part of the line.
Top HeightThe length of the top part of the line.
Points
Points
Points

Creates a rectangle. Each point of the rectangle is independantly adjustable in x, y and z position.

Star

Star

Adds a curve in star shape.

This is done by connecting alternating points of two circles. The points on the inner circle are offset by a rotation so that they lie in between the points on the outer circle. This offset can be changed with the twist input.

EntryWhat it does
InputsPoints: Number of points on each of the circles. · Inner Radius, Outer Radius: Radii of the two circles. The inner radius can be bigger than the outer radius. · Twist: Angle offset of the inner circle. The twist value rotates the points on the circle corresponding with the inner radius counterclockwise by the given angle.
OutputsCurve: Poly spline generated from the inputs.

Topology

Add menu - Curve Topology

Add menu - Curve Topology
Add menu - Curve Topology

Curve topology related nodes.

Curve of Point

Curve of Point

Retrieve the curve of which the control point is part of.

EntryWhat it does
InputsPoint Index: The point index of the curve. · Offset: Offset of the point index.
OutputsCurve Index: The curve of which the control point is part of. · Index in Curve: How far along the curve the control point is.

Offset Points in Curve

Offset Points in Curve
Offset Points in Curve

Offset a control point index in the curve.

EntryWhat it does
InputsPoint Index: The point index of the curve. · Offset: Offset of the point index.
OutputsIs Valid Offset: Outputs true if the evaluated controlpoint plus the offset is a valid index. · Point Index: The index of the control point plus the offset.

Points of Curve

Points of Curve

Retreive a point index within a curve.

EntryWhat it does
InputsCurve Index: The curve to retreive the data from · Weights: Values to sort the curve points. · Sort Index: The point to output.
OutputsPoint Index: The output point. · Total: The number of points in the curve.