spatial-monorepo / wayfinding/src / GridLadderOptions
Interface: GridLadderOptions
Defined in: packages/wayfinding/src/grid-types.ts:258
blockedUnitIds/preserveUnitIds are computed per-rung by findGridRouteWithLadder itself (restricted units, avoidance zones, and the origin/destination container) — excluded here so passing them is a type error instead of a silently-discarded no-op.
Extends
Omit`<OccupancyGridOptions,"blockedUnitIds"|"preserveUnitIds">.[JumpPointSearchOptions`](JumpPointSearchOptions.md)
Extended by
Properties
accessible?
optionalaccessible?:boolean
Defined in: packages/wayfinding/src/grid-types.ts:263
Hard accessibility filter: units whose accessibility list includes 'not_accessible' are blocked at every rung (never relaxed). Default false.
avoidanceZones?
optionalavoidanceZones?:AvoidanceZone[]
Defined in: packages/wayfinding/src/grid-types.ts:271
Zones of units to avoid. Unlike the centroid-graph engine's cost-multiplier semantics (DirectionOptions.avoidanceZones), the grid engine is a binary walkable/blocked grid, so avoidance here maps onto the relaxation ladder: strict rungs block every unit named by any zone, looser rungs stop blocking them (issue #477 acceptance criteria).
cellsPerMetre?
optionalcellsPerMetre?:number
Defined in: packages/wayfinding/src/grid-types.ts:21
Resolution in cells per metre. Default 5 — the Haltian Empathic Building reference constant.
Inherited from
OccupancyGridOptions.cellsPerMetre
diagonalMovement?
optionaldiagonalMovement?:DiagonalMovementMode
Defined in: packages/wayfinding/src/grid-types.ts:134
Default 'only-when-no-obstacles': diagonal steps are only allowed when neither orthogonal neighbour is blocked, so a path can never cut through a wall corner. Loosening this can shorten routes visually but risks corner-cutting through thin walls at low grid resolutions.
Inherited from
JumpPointSearchOptions.diagonalMovement
fixtures?
optionalfixtures?:IMDFFeature`<ObstacleFootprintProps>`[]
Defined in: packages/wayfinding/src/grid-types.ts:40
Fixture/kiosk footprint features (already filtered to the level being rasterized) stamped as solid obstacles, upscaled about their own centroid by fixtureUpscale — cheap obstacle buffer per the Wayfinding v2 plan §3.3 ("desk/locker upscale 1.4-1.8x"). Geometry may be Polygon or MultiPolygon; see extractFootprintRings. Default: none.
Inherited from
fixtureUpscale?
optionalfixtureUpscale?:number
Defined in: packages/wayfinding/src/grid-types.ts:42
Upscale factor applied to each fixture footprint about its own centroid. Default 1.6.
Inherited from
OccupancyGridOptions.fixtureUpscale
ladder?
optionalladder?:RelaxationRung[]
Defined in: packages/wayfinding/src/grid-types.ts:273
Ordered rung list. Default DEFAULT_RELAXATION_LADDER.
memoryBudgetCells?
optionalmemoryBudgetCells?:number
Defined in: packages/wayfinding/src/grid-types.ts:30
Memory budget in cells before the resolution auto-derates. Default ~4,000,000 (≈4 MB for a Uint8Array grid). See deriveGridResolution for the derate ladder.
Inherited from
OccupancyGridOptions.memoryBudgetCells
minDoorGapWidthM?
optionalminDoorGapWidthM?:number
Defined in: packages/wayfinding/src/grid-types.ts:25
Minimum door-gap width in metres, applied even when the source Opening geometry is shorter. Default 0.9.
Inherited from
OccupancyGridOptions.minDoorGapWidthM
now?
optionalnow?:Date
Defined in: packages/wayfinding/src/grid-types.ts:282
Evaluation instant for restrictionSchedule. Defaults to new Date().
restrictionSchedule?
optionalrestrictionSchedule?:RestrictionSchedule
Defined in: packages/wayfinding/src/grid-types.ts:280
Venue-profile after-hours/restricted-hours schedule (issue #473). See RelaxationRung.blockRestricted's doc comment and schedule.ts's isRestrictionActiveNow. Omitted: unchanged pre-#473 behaviour (any non-null restriction is always blockable on rungs with blockRestricted).
spiralSearchMaxRadiusM?
optionalspiralSearchMaxRadiusM?:number
Defined in: packages/wayfinding/src/grid-types.ts:289
Max spiral-search radius (metres) used to snap a blocked origin/destination cell to the nearest walkable cell after every rung has failed. Default 5. Replaces (and, per the Wayfinding v2 plan §3 point 5, improves on) HEB's "punch a free circle" fallback with an actual nearest-cell search.
wallStrokeWidthCells?
optionalwallStrokeWidthCells?:number
Defined in: packages/wayfinding/src/grid-types.ts:23
Wall boundary stroke thickness in cells. Default 2.
Inherited from
OccupancyGridOptions.wallStrokeWidthCells
wallVertexClearanceM?
optionalwallVertexClearanceM?:number
Defined in: packages/wayfinding/src/grid-types.ts:48
Clearance disc radius (metres) stamped at every unit-polygon boundary vertex that is NOT classified as an opening endpoint — the HEB column_size analogue (Wayfinding v2 plan §3.3). Default 0 (no discs — preserves pre-#477 rasterization exactly when unset).
Inherited from
OccupancyGridOptions.wallVertexClearanceM
wallVertexClearanceOpeningM?
optionalwallVertexClearanceOpeningM?:number
Defined in: packages/wayfinding/src/grid-types.ts:54
Clearance disc radius (metres) at wall vertices classified as an opening endpoint (a doorway jamb) — smaller than wallVertexClearanceM so corner clearance doesn't reseal the door. The HEB column_opening_size analogue. Default 0.
Inherited from
OccupancyGridOptions.wallVertexClearanceOpeningM
wallVertexOpeningMatchToleranceM?
optionalwallVertexOpeningMatchToleranceM?:number
Defined in: packages/wayfinding/src/grid-types.ts:60
How close (metres) a unit-ring vertex must be to a computed door-gap endpoint to be classified as an opening-endpoint vertex (smaller clearance) rather than a normal corner (larger clearance). Default 1.0.
