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().
| Parameter | Type | Description |
|---|---|---|
...objects | SceneObject[] | 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.
| Parameter | Type | Description |
|---|---|---|
value | string | The 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.
| Parameter | Type | Description |
|---|---|---|
...guides | SceneObject[] | Sketches or edges forming the guide curves. (optional) |
startCondition()
startCondition(type: LoftConditionType, magnitude?: NumberParam): this
Constrains how the surface leaves the first profile.
| Parameter | Type | Description |
|---|---|---|
type | LoftConditionType | 'none', 'normal' or 'tangent' — see LoftConditionType. |
magnitude | NumberParam | Scales 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.
| Parameter | Type | Description |
|---|---|---|
type | LoftConditionType | 'none', 'normal' or 'tangent' — see LoftConditionType. |
magnitude | NumberParam | Scales 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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...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.
| Parameter | Type | Description |
|---|---|---|
offset | NumberParam | The 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.
| Parameter | Type | Description |
|---|---|---|
offset1 | NumberParam | The first wall offset distance. Positive = outward, negative = inward. |
offset2 | NumberParam | The 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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...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
| Parameter | Type | Description |
|---|---|---|
...args | (number | EdgeFilterBuilder)[] | Numeric indices or EdgeFilterBuilder instances to filter the selection. (optional) |