Import
extends OPElement implements IShape, IPlaceable, PlanVectorExportable
Constructor
ElementType.BUILDING
number
Colour of the mass: of every part that has no
color of its own.string
PropertySets
number
World Y of the bottom face of the first segment.
string
BuildingUse
Programme of the whole mass; a segment or storey may override it.
boolean
Draw the storey boundaries on the solids.
MassSegment[]
required
The stack, bottom-up. Each segment extrudes from the top of the one below and carries its storeys,
which tile its height.
Properties
ElementType
string
Map<string, OPGeometry>
Map<string, OPGeometry>
boolean
boolean
boolean
number
Which segment the
profile / height / extrudeHeight accessors address.BuildingOptions
MassSegment[]
Read-only. The stack, cloned.
string | undefined
The saved id of the active segment: the part that the editor grips, a move, a turn and Delete act
on. Setting the id of a segment of this mass makes it active; any other id changes nothing. An
editor reads it when it builds its grips and sets it again when one of its gestures begins, so two
editors on one mass each edit the part whose grips they drag.
number
Read-only.
number
Read-only.
number
Read-only.
string
BuildingProfile
number
Height of the ACTIVE segment (the total is
quantities().height).number
Read-only. Local Y of the bottom of the active segment: the plane of its footprint and the base of
the push/pull grip, which for an upper segment is the top of the segments below it.
number
Push/pull alias for the GUIEditor — the extrude dimension is the active segment’s height.
BuildingUse
boolean
number
number
boolean
boolean
boolean
Methods
editableSchema
setSegment
selectPart
object the active segment, so that the editor grips, a move and a turn, and Delete act on that part.
storeyElevations
quantities
options.grade is the world Y of the site grade (default 0).
move
delta (world-space, meters).
rotate
angleDeg around axis (default Y-up), pivoted at anchor (default the element’s own centroid).
setOPGeometry
getExportRoots
toDrawing
"{n}F · {use}" label at the top segment’s centroid.
setOPMaterial
getOPConfig
setOPConfig
dispose
Types
BuildingOptions
MassSegment
string
required
string
PolygonProfile
required
Footprint in the world XZ plane; holes are courtyards.
number
required
Extrusion height, metres. Always equals the sum of
storeys[].height.BuildingUse
number
Colour of this part,
0xrrggbb; absent draws it in the colour of the mass.MassStorey[]
required
Explicit storeys, bottom-up, tiling
height exactly.BuildingUse
Programme of a mass, a segment, or a storey.MassQuantities
number
required
Qto_BuildingBaseQuantities.FootPrintArea — net area of the ground segment.number
required
Qto_BuildingBaseQuantities.GrossFloorArea — Σ storey plates.Record<string, number>
required
Record<AreaKind, number>
required
number
required
Qto_BuildingBaseQuantities.GrossVolume — Σ netArea × segment height.number
required
Qto_BuildingBaseQuantities.Height — top of the stack minus elevation.number
required
Pset_BuildingCommon.NumberOfStoreys.number
required
Σ (outer + hole perimeters) × height per segment — every face is vertical.
StoreyQuantity[]
required
BuildingProfile
Polygon profile for a Building — alias of PolygonProfile.StoreyQuantity
string
required
string
required
number
required
World Y of the storey’s floor.
number
required
BuildingUse
AreaKind
required
number
required
Net plate area (footprint minus courtyards), m².
number
required
Outer footprint perimeter, m.