Skip to main content
Attach it to a wall and the wall gets a real opening.

Import

Example

Notes

  • Dimensions are in metres. Swing angles are in degrees.
  • doorQuadrant sets the hinge side and the swing side, relative to the direction of the wall. Values 1 and 3 put the hinge at the near jamb. Values 2 and 4 put it at the far jamb. Change 1 to 3, or 2 to 4, to swing to the other side.
  • baseHeight is the height above the base of the host wall.
  • After you attach or change a door on a live wall, call wall.commitOpeningCuts(). This call cuts the wall.
  • setOPConfig needs the full options. Copy getOPConfig(), change one field and pass the copy.
  • Start the geometry kernel before you create this object. See Floorkit.
  • This object is live geometry. To save a building, write it in a building model.
Inheritance: extends Opening<ElementType.DOOR> implements IShape, PlanVectorExportable

Constructor

StationLocal
{ width: number; thickness: number; }
{ width: number; thickness: number; }
thickness is the across-wall depth used only when the door is unhosted; when hosted, the lining auto-matches the host wall’s thickness.
DoorType
number
number
DoorMaterialType
number
number
number
Which way the door swings, as a 2x2 of hinge side x swing face.
number
0 = closed, 90 = fully open. Applied to both 2D and 3D.
string
string
ElementType.DOOR
string
number
number
number
THE vertical authority: the bottom of the rough opening, measured above the host wall’s base. Never a world Y — the host frame’s origin supplies the storey elevation, so world.y = frame.origin.y + baseHeight. Without a host or free placement, the identity frame makes baseHeight world Y.
number
[number, number][]
PropertySets

Properties

DoorOptions
boolean
string | null
StationLocal
number
Read-only. Station-based: the authored position along the host wall.
string
string | undefined
number
number
number
number
number
number
number
number
number
number
boolean
boolean
Opening
Read-only. At runtime Door IS an Opening; this getter is kept for wall attachers that expect an Opening handle. After making Opening generic over its discriminator, the cast is structural and clean.
Vector3[]
Read-only. Plan-view hole loop (Vector3[] at Y=0). The 1 µm across-wall inset (HOLE_2D_TOLERANCE) keeps hole edges strictly inside the outer polygon so the WASM triangulator handles them correctly.

Methods

editableSchema

getPhysicalParts

Borrow actual material parts; descriptors contain no seeds, cutters or symbols.

anchorSpace

A world-space station handle.

getEditAnchors

applyEditAnchor

move

A door is positioned by its station, not by a centreline, so the base Opening.move (which walks points) does not apply.

getAnalyticCutBounds

Exact station/elevation rectangle used by analytic wall subtraction.

getOPConfig

setOPConfig

dispose

setOPGeometry

getExportRoots

Vector-export roots (RFC §7).

toDrawing

Produce the door’s plan symbol as standardized primitives: jamb frames and the leaf as regions, and the swing as a true DrawingArc (not a tessellated polyline) — read directly from the authored 2D geometry.

setOPMaterial

Types

DoorOptions

PhysicalElementPart

Borrowed material body.

StationLocal

Horizontal position of an opening on its host wall.

AnalyticOpeningCutBounds

DoorType

DoorMaterialType

PhysicalPartRole

Semantic part identity is recorded when physical geometry is constructed.
Last modified on October 6, 2026