Sweep
Sweep a 2D profile along Z (Linear), around an axis (Revolve), along an input curve (Path), or as a tube wrapping an input curve (Tube / Polywire).
What it does
Sweep turns a 2D profile into a 3D shape. Mode drives the build: Linear pushes the profile straight out along Z, Revolve spins it around an axis into a lathe, Path drags a cross-section along an input curve, and Tube wraps an automatic N-sided pipe around an input curve with no profile at all.
Every mode can come out as an analytic shape, crisp at any zoom, ray-marched, and suited to flat 2D-feeling results, or as a tessellated triangle mesh for the conventional 3D pipeline: shadows, mesh operations, subdivision downstream. Analytical toggles between them. Revolve is the exception and always produces an analytic shape today.
When to use it
A flat outline turned into a solid: a logo, a badge, or a UI icon extruded into a 3D slab (Linear)
A lathe-style object spun from a cross-section profile: a bottle, a wheel, a vase (Revolve)
A cross-section following a curve: a moulding, a rail, a custom-profile pipe (Path)
A round tube or cable wrapped around a curve with no profile authoring: wiring, rope, piping (Tube)
| Parameter | Type | Default |
|---|---|---|
profile | OneOf([CollectionOf(Crc), Curve]) | — |
path | OneOf([Curve, CollectionOf(Crc)]) | — |
scale | Any | 1 |
mode | String | "Linear" |
depth | Number | 50 |
rounding | Number | 0 |
center | Boolean | true |
cap | Boolean | true |
segments | Number | 32 |
profile_tolerance | Number | 0.500 |
twist | Any | 0 |
revolve_angle | Number | 360 |
revolve_offset | Number | 0 |
revolve_axis | String | "Y" |
radius | Any | 5 |
sides | Number | 8 |
analytical | Boolean | false |
strength | Number | 1 |
Gotchas
Revolve always outputs an analytic shape. The Analytical toggle has no effect there, since no mesh path is wired for revolve yet, so turning it off is silently ignored.
On Tube with Analytical on, the output is the variable-radius analytic tube, and Twist and Cap stop doing anything. A swept circle is the same shape at every twist angle, and the analytic tube always renders its own end caps. Both only matter with Analytical off, on the tessellated mesh path.
Scale, Twist, and Radius each accept more than a number. Leave one as a plain number for a uniform value, or wire in an easing curve or number array for a per-ring profile along the sweep: a taper, a gradual twist, a radius profile. A per-point width or scale channel on the curve being swept along rides along too and combines with whatever is wired in.
Radius behaves differently by source: a wired curve or array multiplies the slider value, while a width channel authored on the input curve is treated as an absolute radius and replaces the slider outright.
Worked example
Add a Sweep and wire a 2D profile (from Circle, Rectangle, or Pen) into Profile.
Leave Mode on Linear and raise Depth to push the profile into a solid. Turn on Center to straddle the origin rather than run from 0 forward.
Switch Mode to Path, wire a curve into Path, and the profile follows it. Raise Segments for a smoother sweep on tight curves.
Try Tube mode instead: remove the profile, wire only a curve, and adjust Radius and Sides for a pipe or cable with no profile authoring.
Toggle Analytical to compare the ray-marched shape against the tessellated mesh, and pick whichever suits your downstream needs (mesh operations against crisp analytic edges).
See also
Circle · Pen · Mesh · Geometry (meshes)