Hospital Evacuation & Route Egress Rules (HOSP-EVAC)

In acute healthcare facilities, life safety relies on Progressive Horizontal Evacuation (PHE). Rather than immediately evacuating patients down vertical stairwells, non-ambulant and intensive-care patients are moved horizontally through fire sub-compartment barriers into adjoining safe refuges on the same floor. Evacuation routes, doors, and corridors must accommodate rapid bed transport and continuous clinical life support.


1. HOSP-EVAC-001: Clinical Door Clear Width ("The 900mm Illusion")

Statutory Standard & Intent

"The 900mm Illusion" Explained

A critical defect in digital engineering is relying naively on nominal door frame or catalog widths. When an architect specifies a standard $915\text{ mm}$ door leaf:

$W_{\text{effective}} = W_{\text{nominal}} - (t_{\text{frameStop}} + t_{\text{leaf}})$

Where:

$W_{\text{effective}} = 915\text{ mm} - 30\text{ mm} - 44\text{ mm} = \mathbf{841\text{ mm}} ; (0.841\text{ m})$

For double doors: $W_{\text{effective, double}} = W_{\text{nominal}} - (t_{\text{frameStop}} + 2 \times t_{\text{leaf}})$ $W_{\text{activeLeaf}} = \left(\frac{W_{\text{nominal}}}{2}\right) - (t_{\text{frameStop}} + t_{\text{leaf}})$

The modeled door provides only $841\text{ mm}$ of unobstructed opening—violating the statutory $900\text{ mm}$ wheelchair requirement and critically failing the $1,200\text{ mm}$ acute bed transfer requirement.

5-Tier Nominal Width Extraction Cascade

DoorClearWidthHandler resolves nominal dimensions through a robust, deterministic hierarchy:

  1. Direct ECSQL Properties: ClearWidth or OverallWidth populated on the element row.
  2. Surfaced IFC Aspect Dimensions: IFCDynamic.ifcAspect_Dimensions (ifcWidth, ifcHeight, ifcThickness, ifcTrim_Width, ifcTrim_Projection_Int, ifcTrim_Projection_Ext) queried from the door instance or its TypeDefinition.Id.
  3. Dynamic Aspect: IFCDynamic.IfcDoor (ClearWidth, OverallWidth, OperationType).
  4. Regex Matching against Family/Type Name: Detects dimensions embedded in text (e.g. "0915 x 2032mm", "1730 x 2134mm", "0813mm").
  5. Local Bounding Box Fallback: $\max(\Delta x, \Delta y)$ from BBoxLow and BBoxHigh.

Clinical Context Detection

The handler queries bis.SpatialLocationElement spaces to determine which room the door connects to. If the door center falls within or adjacent to an acute clinical space (ICU, OR, OPERATING, THEATRE, SURGERY, WARD, IN-PATIENT, BEDROOM, EMERGENCY), it automatically enforces bedDoorThreshold: 1.20m; otherwise, it enforces general access 0.90m.

Obstacle Encroachment & 3D Validation Geometry

The handler harvests columns and railings (%Column%, %Railing%, %Handrail%) to evaluate swing obstructions, and emits DOOR_SWING_ENVELOPE validation geometry displaying nominal width, effective clear width, and clinical context.

Rule Parameters

{
  "nominalThreshold": 0.90,
  "bedDoorThreshold": 1.20,
  "frameStopDeduction": 0.030,
  "openLeafThicknessDeduction": 0.044,
  "checkSwingClash": true,
  "unit": "m",
  "comparisonOperator": ">="
}

2. HOSP-EVAC-002: Hospital In-Patient Corridor Clear Circulation Width

Statutory Standard & Intent

Analytical Detection: True-Geometry Spatial Bottleneck Analysis

Rather than relying on simple bounding boxes, BIM Checker evaluates the true 2D cross-section polygon of the circulation space. The analytical engine identifies localized pinch points caused by structural columns, railings, and wall recesses along the passage.

When the clear circulation width drops below the statutory 2.00 m threshold, the system flags a statutory defect and displays a 3D PINCH_SEGMENT across the bottleneck in the viewport alongside the bounded FOOTPRINT_POLYGON.

Client-Configurable Parameters

{
  "nominalThreshold": 2.00,
  "unit": "m",
  "comparisonOperator": ">=",
  "checkObstacleEncroachment": true
}

Defect Message

"Corridor clear passage width 1.74m fails to meet statutory 2.00m requirement per NHS HBN 00-04. (True-geometry bottleneck detected at pinch point)."


3. HOSP-EVAC-003: Hospital Egress Travel Distance (Progressive Horizontal Evacuation)

Statutory Standard & Intent

Geodesic Shortest-Path Evacuation Engine

BIM Checker constructs a floor-level walkable space network across room and corridor boundaries, routing the shortest compliant egress path around physical wall and shaft obstructions to the nearest protected exit door or staircore per NHS HTM 05-02.

Paths exceeding statutory limits ($\le 30.0\text{ m}$ direct / $\le 15.0\text{ m}$ dead-end) are highlighted in the 3D viewport with interactive ESCAPE_ROUTE_PATH geometry.

Client-Configurable Parameters

{
  "nominalThreshold": 30.0,
  "maxDirectDistance": 30.0,
  "maxDeadEndDistance": 15.0,
  "unit": "m",
  "comparisonOperator": "<="
}

Defect Message

"Escape travel distance of 34.20m exceeds limit of 30.00m to nearest protected stair 'STAIR-CORE-02' on Level 2 (direct distance 28.10m)."


4. HOSP-EVAC-004: Hospital Evacuation Stair Width & Pitch

Statutory Standard & Intent

Analytical Detection: True 3D Flight Geometry

BIM Checker evaluates flight clear width and pitch using 3D solid stair geometry, verifying unobstructed walking width against structural encroachments while accounting for flight rotation in the floor plan. Integral stair components (such as handrails and stringers) are intelligently recognized to prevent false positive obstructions.

Violations exceeding statutory pitch (

gt; 33^\circ$) or falling below clear width (
lt; 1.20\text{ m}$) are flagged with 3D validation geometry.

Client-Configurable Parameters

{
  "nominalThreshold": 1.20,
  "maxPitch": 33.0,
  "unit": "m",
  "comparisonOperator": ">="
}

What Must Be in the iModel (Revit & IFC Data Requirements)

Discipline Element Category Parameter / Property Set Expected Value / Type Evaluated In
Architectural Doors (OST_Doors / IfcDoor) Width, Frame Width, Thickness Positive dimensions in meters or mm HOSP-EVAC-001
Architectural Doors (OST_Doors / IfcDoor) Pset_DoorCommon.ClearWidth Clear passage width dimension HOSP-EVAC-001
Architectural Doors (OST_Doors / IfcDoor) Pset_DoorCommon.IsExternal true for final discharge / exterior doors HOSP-EVAC-003
Architectural Corridors (OST_Rooms / IfcSpace) Name Contains Corridor, Circulation, Passage, or Hallway HOSP-EVAC-002
Structural Columns (OST_StructuralColumns / IfcColumn) 3D Solid Geometry (BBoxLow, BBoxHigh) True physical bounding volume HOSP-EVAC-002, HOSP-EVAC-004
Architectural Walls (OST_Walls / IfcWall) 3D Solid Geometry Uninterrupted boundary geometry HOSP-EVAC-003
Circulation Stairs (OST_Stairs / IfcStairFlight) 3D Solid Geometry (BBoxLow, BBoxHigh) Solid flight with valid rise and run HOSP-EVAC-004, HOSP-EVAC-003

Pre-Flight ECSQL Diagnostic Queries

1. Verify Door Clear Widths and External Discharge Tags

SELECT 
  d.ECInstanceId AS doorId,
  d.UserLabel AS doorLabel,
  d.CodeValue AS doorCode,
  ext.ifcIsExternal AS isExternal
FROM bis.GeometricElement3d d
LEFT JOIN IFCDynamic.ifcAspect_Pset_DoorCommon ext ON ext.Element.Id = d.ECInstanceId
WHERE (ec_className(d.ECClassId, 's.c') LIKE '%Door%' OR d.UserLabel LIKE '%Door%')

2. Verify Stair Flight Geometry and Bounding Intervals

SELECT 
  s.ECInstanceId AS stairId,
  s.UserLabel AS stairLabel,
  ec_className(s.ECClassId, 's.c') AS ecClass,
  s.BBoxLow,
  s.BBoxHigh
FROM bis.GeometricElement3d s
WHERE (ec_className(s.ECClassId, 's.c') LIKE '%Stair%' OR s.UserLabel LIKE '%Stair%')