Skip to main content

Loft

Extends BooleanOperation

Inherited from BooleanOperation

add()​

add(): this

Additive boolean operation — fuses the result with all intersecting scene objects. Use .scope() to target specific objects.


'new'()​

'new'(): this

No boolean operation — keeps the result as a standalone shape, separate from all other scene objects.


remove()​

remove(): this

Subtractive boolean operation — cuts the result from all intersecting scene objects. Use .scope() to target specific objects.


scope()​

scope(...objects: SceneObject[]): this

Narrows the boolean operation scope to specific target objects. Must be chained after .add() or .remove().

ParameterTypeDescription
...objectsSceneObject[]The target objects to operate on. (optional)
Inherited from SceneObject

name()​

name(value: string): this

Sets a custom display name for this object, overriding the default type-based name.

ParameterTypeDescription
valuestringThe display name to assign.

Methods​

connect()​

connect(...points: (LazyVertex | PointLike)[]): this

Joins one vertex on each profile, in profile order. Repeat .connect() for additional connections. Each connection becomes an edge of the loft. Points may be world coordinates or sketch/selection point references. Requires closed, planar profiles with one region each. Full circles and ellipses must be split into arcs to supply vertices. Connections compose with start/end conditions; guides and thin walls are not yet supported.

ParameterTypeDescription
...points(LazyVertex | PointLike)[]One profile vertex per section, in the loft's profile order. (optional)

guides()​

guides(...guides: SceneObject[]): this

Adds side guide curves (rails) the loft surface must follow. Supports one or two guides in total; a single argument may carry several separate curves (e.g. a sketch holding a curve and its mirror) — each connected chain counts as one guide. Every guide must pass through every profile. Composes with start/end conditions (the condition fades out around each guide's contact point — rails win locally, the condition shapes the rest). Cannot be combined with thin mode.

ParameterTypeDescription
...guidesSceneObject[]Sketches or edges forming the guide curves. (optional)

startCondition()​

startCondition(type: LoftConditionType, magnitude?: NumberParam): this

Constrains how the surface leaves the first profile.

ParameterTypeDescription
typeLoftConditionType'none', 'normal' or 'tangent' — see LoftConditionType.
magnitudeNumberParamScales the takeoff strength; defaults to 1. Negative values flip the direction (e.g. inward instead of outward for 'tangent'). (optional)

endCondition()​

endCondition(type: LoftConditionType, magnitude?: NumberParam): this

Constrains how the surface arrives at the last profile.

ParameterTypeDescription
typeLoftConditionType'none', 'normal' or 'tangent' — see LoftConditionType.
magnitudeNumberParamScales the arrival strength; defaults to 1. Negative values flip the direction (e.g. inward instead of outward for 'tangent'). (optional)

startFaces()​

startFaces(...args: (number | FaceFilterBuilder)[]): ISelection

Selects faces on the first profile plane of the loft.

Returns: ISelection

ParameterTypeDescription
...args(number | FaceFilterBuilder)[]Numeric indices or FaceFilterBuilder instances to filter the selection. (optional)

endFaces()​

endFaces(...args: (number | FaceFilterBuilder)[]): ISelection

Selects faces on the last profile plane of the loft.

Returns: ISelection

ParameterTypeDescription
...args(number | FaceFilterBuilder)[]Numeric indices or FaceFilterBuilder instances to filter the selection. (optional)

sideFaces()​

sideFaces(...args: (number | FaceFilterBuilder)[]): ISelection

Selects the lateral faces generated between loft profiles.

Returns: ISelection

ParameterTypeDescription
...args(number | FaceFilterBuilder)[]Numeric indices or FaceFilterBuilder instances to filter the selection. (optional)

startEdges()​

startEdges(...args: (number | EdgeFilterBuilder)[]): ISelection

Selects edges on the first profile plane of the loft.

Returns: ISelection

ParameterTypeDescription
...args(number | EdgeFilterBuilder)[]Numeric indices or EdgeFilterBuilder instances to filter the selection. (optional)

endEdges()​

endEdges(...args: (number | EdgeFilterBuilder)[]): ISelection

Selects edges on the last profile plane of the loft.

Returns: ISelection

ParameterTypeDescription
...args(number | EdgeFilterBuilder)[]Numeric indices or EdgeFilterBuilder instances to filter the selection. (optional)

sideEdges()​

sideEdges(...args: (number | EdgeFilterBuilder)[]): ISelection

Selects edges on the side faces, excluding edges shared with start/end faces.

Returns: ISelection

ParameterTypeDescription
...args(number | EdgeFilterBuilder)[]Numeric indices or EdgeFilterBuilder instances to filter the selection. (optional)

thin()​

thin(offset: NumberParam): this

Enables thin loft mode — offsets the profile edges of each section to create a thin-walled shell instead of lofting filled faces. All profiles must be sketches and share the same topology. Positive values offset outward, negative offsets inward.

ParameterTypeDescription
offsetNumberParamThe wall offset distance. Positive = outward, negative = inward.

thin()​

thin(offset1: NumberParam, offset2: NumberParam): this

Enables thin loft mode with two offset directions. The two offsets must go in opposite directions. If both have the same sign, the second offset is automatically flipped.

ParameterTypeDescription
offset1NumberParamThe first wall offset distance. Positive = outward, negative = inward.
offset2NumberParamThe second wall offset distance, in the opposite direction of offset1.

internalFaces()​

internalFaces(...args: (number | FaceFilterBuilder)[]): ISelection

Selects faces created inside the solid during loft (e.g., the inner wall of a thin-walled loft from closed profiles).

Returns: ISelection

ParameterTypeDescription
...args(number | FaceFilterBuilder)[]Numeric indices or FaceFilterBuilder instances to filter the selection. (optional)

internalEdges()​

internalEdges(...args: (number | EdgeFilterBuilder)[]): ISelection

Selects edges bounding the internal geometry created during loft.

Returns: ISelection

ParameterTypeDescription
...args(number | EdgeFilterBuilder)[]Numeric indices or EdgeFilterBuilder instances to filter the selection. (optional)

capFaces()​

capFaces(...args: (number | FaceFilterBuilder)[]): ISelection

Selects the cap faces at the open ends of a thin-walled loft from open profiles. These are the small faces connecting the inner and outer walls at the profile endpoints.

Returns: ISelection

ParameterTypeDescription
...args(number | FaceFilterBuilder)[]Numeric indices or FaceFilterBuilder instances to filter the selection. (optional)

capEdges()​

capEdges(...args: (number | EdgeFilterBuilder)[]): ISelection

Selects edges on the cap faces of a thin-walled loft from open profiles.

Returns: ISelection

ParameterTypeDescription
...args(number | EdgeFilterBuilder)[]Numeric indices or EdgeFilterBuilder instances to filter the selection. (optional)