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.

reusable()

reusable(): this

Marks this object as reusable. Reusable objects retain their shapes when consumed by features (e.g., extrude, revolve), allowing multiple features to reference the same source geometry. Use remove(obj) to force-remove shapes from a reusable object.

Methods

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)[]): SceneObject

Selects faces on the first profile plane of the loft.

Returns: SceneObject

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

endFaces()

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

Selects faces on the last profile plane of the loft.

Returns: SceneObject

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

sideFaces()

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

Selects the lateral faces generated between loft profiles.

Returns: SceneObject

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

startEdges()

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

Selects edges on the first profile plane of the loft.

Returns: SceneObject

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

endEdges()

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

Selects edges on the last profile plane of the loft.

Returns: SceneObject

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

sideEdges()

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

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

Returns: SceneObject

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)[]): SceneObject

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

Returns: SceneObject

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

internalEdges()

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

Selects edges bounding the internal geometry created during loft.

Returns: SceneObject

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

capFaces()

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

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: SceneObject

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

capEdges()

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

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

Returns: SceneObject

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