discontinuedPackage jet_cad_floor_plan has been discontinued and replaced by jet_cad_2d_plan.

WallFaces class final

The shell-owned cache of the face runs and their neighbours (spec 09c D3, D4, S-8), shared by the placement tool (D6) and the move resolver (D8).

Built from bands' live walls (WallBands.liveWalls, which keeps WallBands.generation current), the host predicate accept (the shell passes isUsableHost: a hidden or locked wall hosts nothing) and the document. The runs, the neighbours and the boxes of the document's definitions are rebuilt only when the document or the bands' generation changes; a query over a cached set (attach) is O(runs) and allocates O(1).

Constructors

WallFaces(WallBands bands, {bool accept(DraftDocument, Handle)?})

Properties

bands → WallBands
The shell's bands, shared with the Wall and Opening tools.
final
builds → int
How many times the runs and neighbours were rebuilt: once per document and bands generation, never per query.
no setter
hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

attach(DraftDocument doc, SymbolBox box, Vector2 p, double captureWorld, {required bool mirrored, required double edgeCaptureWorld, Handle? exclude, Transform2? keep}) → WallAttachment?
attachToWall over doc's cached runs and neighbours, exclude (the instance a move carries, D8) not a neighbour, keeping keep's linear part when given (F-7).
boxOf(DraftDocument doc, Handle definition) → SymbolBox?
The local box of doc's definition definition, memoised until the next rebuild (spec D2: per definition handle, cleared on a document change); null when it does not attach.
neighboursOf(DraftDocument doc) → List<List<FaceNeighbour>>
Parallel to runsOf: the neighbours (spec D4) standing against each run.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
runsOf(DraftDocument doc) → List<FaceRun>
The face runs of doc's accepted live walls, ascending by wall handle (each wall's left face's runs, then its right face's).
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited