Skip to content

Drawings — BIM Knowledge Graph

Route: /graph

Drawings is the live BIM element store for each project. Every building element — room, wall, column, beam, door, MEP system — is a node in the project's knowledge graph. Relationships (adjacency, support, containment) are edges. The graph is live, multi-tenant, queryable via AI and algorithms, and persistent across sessions.


Element Types

TypeKey Properties
site / buildinglocation, boundary, climate, elevation
storey / levelelevation, gross_area, height
space / zonename, area_sqm, function, occupancy
wallthickness, height, material, load_bearing
slab / roofthickness, span, pitch, u_value
column / beamsection, material, height, load
foundationtype, depth, bearing_capacity
door / windowwidth, height, fire_rating, acoustic_rating
stair / ramprisers, treads, slope, width
system / equipmenttype (HVAC / plumbing / electrical), capacity
materialdensity, embodied_carbon, thermal_conductivity
documentsource, type, status, url
annotationtext, author, timestamp, type

Creating Elements

  1. Click + in the left panel header
  2. Select the element type from the dropdown (Wall / Door / Window / Room / etc.)
  3. Fill the typed form:
    • Wall: origin coordinates, width, height
    • Door / Window: select the host wall, position along wall (metres from wall start); dimensions are inferred by type (door: 0.9 × 2.1 m, window: 1.2 × 1.2 m)
    • Room / Space: x/y origin, width, length, area_sqm
  4. Click Create — the element appears in the left tree and in the 2D viewport

2D Viewport

The viewport renders elements spatially in plan view.

  • Set explicit coordinates in the properties form (x, y, width, height in metres)
  • Without coordinates the viewport auto-arranges elements
  • Select mode: hover an element → trash icon appears → click to delete (with confirmation, cache invalidated)
  • Walls render with thickness; doors and windows render with their architectural symbols (swing arc for doors, glazing bar for windows)

Live Compass + GPS in Viewport

The Drawings viewport has the same solar orientation tools as Canvas:

  • 📍 GPS — tap once to use device location for accurate sun path angles (session-local)
  • 🧭 Compass — live device magnetometer drives the compass rose and sun path orientation in real time (iOS + Android)

Compliance Tab

Click Compliance in the right panel to run regulatory checks against the current element graph.

Supported jurisdictions:

  • UK Building Regulations: Part A (Structure), Part B (Fire safety), Part E (Sound), Part L (Energy efficiency), Part M (Accessible design)
  • IBC 2021 (International Building Code)
  • NBC India (National Building Code)
  • AS NCC (Australian National Construction Code)

The jurisdiction is set in the Project settings (Projects → Edit → Jurisdiction).

Results show per-regulation pass/fail with the specific clause reference, actual value, required value, and a plain-language fix suggestion.


BOM Tab

Click BOM to generate a Bill of Materials from the current graph.

ColumnSource
ElementNode name + type
QuantityFrom element properties (area_sqm, length_m, count)
Unit costRICS BCIS 2025 regional rates (30+ markets)
Total costQuantity × unit cost (computed Python-side)

Summary KPIs at the top:

  • Total cost — sum of all line items in USD (converted at current rates) and project local currency
  • Cost / m² — amber warning badge when > $3,000/m² (RICS typical-build benchmark)
  • Embodied carbon — RICS proxy estimate (cost × 0.85 kgCO₂e / 1,000), labelled as an estimate
  • Net Leasable Area — sum of area_sqm for all space elements

Feasibility Metrics Tab

Click Metrics in the right panel for four live KPIs derived from BOM data:

KPIHow it's calculated
Total costBOM.totalCostUsd
Embodied carboncost × 0.85 kgCO₂e / 1,000 (RICS proxy, labelled estimate)
Net Leasable AreaSum of area_sqm for all space elements
Cost / m²Total cost ÷ NLA — amber badge when > $3,000/m²

Element Properties Panel

Click any element in the left tree to open the Properties panel (replaces the tab strip):

  • Identity data: element ID, project ID, created date, IFC entity type
  • Dimensions: area, estimated W×D, volume (area × height), height, length, thickness
  • Construction: material, level
  • Custom properties: all other key/value pairs
  • LOD Readiness: green dot (LOD 200 — area defined, ready for IFC export) or grey dot (LOD 100 — add area_sqm to advance)

Click or deselect to return to the Compliance / BOM / Metrics tab strip.


IFC Round-Trip

Import IFC

Drop zone is in the Drawings page header, or use the API directly:

POST /api/v1/graph/{projectId}/import/ifc-step
Content-Type: multipart/form-data
Authorization: Bearer <token>

Supported IFC classes (12): IfcWall, IfcColumn, IfcBeam, IfcSlab, IfcWindow, IfcDoor, IfcStair, IfcRamp, IfcDuctSegment, IfcPipeSegment, IfcSpace, IfcZone

Response 201:

json
{
  "projectId": "...",
  "sourceFile": "building.ifc",
  "importedElements": 142,
  "importedSpaces": 18,
  "failed": 0,
  "skipped": 3,
  "totalCreated": 160
}
  • 400 — invalid / unparseable IFC
  • 501 — ifcopenshell not available in this deployment
  • 503 — graph unavailable

Export IFC

GET /api/v1/graph/{projectId}/export/ifc-step
Authorization: Bearer <token>

Downloads purple8-ifc-{projectId}.json — IFC 4.3 JSON-LD with @context pointing to buildingsmart.org vocabulary. Full IFC 4.3 STEP binary export is planned.


AI Chat Integration

From AI Chat, refer to any element by name — e.g. "Is the Living Room 1A compliant with Part M?" — and the AI queries the Drawings graph in real time via the spatial_graph tool. The response includes:

  • Graph traversal result (adjacency, containment)
  • Compliance check against the project's jurisdiction
  • Next-algorithm suggestions (Phase 8.x) in the source-context panel
  • Material schedule
  • Elemental cost benchmarks (from P8G cost database)
  • Export to CSV

Purple8 AI Architect is proprietary software. All rights reserved.