Loading 3D…
Wintergarden Workplace
Wintergarden Workplace: 179 source entities compile into 807 solids, 11 coordinated views and 3 discipline sheets. Every view below is regenerated from that same source model.
Generated views
The model, rendered
Generated from the compiled model, each at a camera the interactive view above already offers. Not photographs — this building does not exist.
Coordinated plans
Every floor, from the same model
These are BIM cuts, not generated illustrations. Rooms, walls, openings, stairs and furniture stay tied to the model shown above.
Continue elsewhere
Model files
Take the same compiled building into an editor, a BIM workflow, or a realtime 3D scene.
NDJSON
The authored model. Edit it, diff it, or feed it to an agent.
-
bimtex
IFC 4
Buildings, storeys, walls, openings, rooms, slabs and roofs.
-
SketchUp
-
Revit
-
AutoCAD Arch.
GLB
PBR geometry ready for Three.js and other glTF viewers.
-
SketchUp
-
Three.js
-
Blender
OBJ
Metre-based, z-up geometry with named objects; no MTL or BIM data.
-
Blender
-
Revit
Site plan
Parcel, grade, setbacks, paving, landscape, fences and streets are compiled beside the building rather than by a separate site renderer.
The rest of the set
The same model also produced 6 further drawings, indexed here the way a construction set indexes its sheets. Open any drawing on this page — plate or thumbnail — to read it at full size and download it in every format it exports.
1 plan · 2 egress plans · 3 issued sheets
One model, so the views cannot disagree
Move a slider. The model recompiles in this browser and both views redraw from the result. Push the storey height beyond a valid configuration and the real validator turns the verdict red.
Plan · live cut
The model
// Wintergarden Workplace — a two-storey industrial workplace conversion.
// A regular brick window grid carries a flat perimeter roof and five north-light
// monitors, matching the defining hierarchy of the authored rendering.
{"t":"project","id":"wintergarden-workplace","name":"Wintergarden Workplace","summary":"A two-storey brick industrial workplace conversion under five north-light roof monitors.","unit":"m","typology":"office","frontSide":"south","light":"golden-hour"}
{"t":"parcel","id":"office-plot","x":0,"y":0,"w":56,"d":44,"address":"Synthetic adaptive workplace study","frontage":"south"}
{"t":"grade","id":"grade","elev":0}
{"t":"setback","id":"office-setback","all":4}
{"t":"footprint","id":"office-fp","label":"WINTERGARDEN WORKPLACE","x":8,"y":6,"w":36,"d":22}
{"t":"level","id":"g","name":"Ground Floor","elev":0,"height":4,"ceiling":3.55}
{"t":"level","id":"l1","name":"Studio Floor","elev":4,"height":4,"ceiling":3.45}
// The ground floor is three bands: project studio, compact core, and social hub.
// The wintergarden is deliberately double-height and cuts the upper floor. A
// protected stair at the south-west corner gives both storeys a remote exit.
{"t":"room","id":"g-studio","label":"Project Studio","use":"office","level":"g","x":0.3,"y":0.3,"w":13.7,"d":13.2}
{"t":"room","id":"g-project-workshop","label":"Project Workshop","use":"office","level":"g","x":3.5,"y":13.5,"w":10.5,"d":8.2}
{"t":"room","id":"g-secondary-stair","label":"Protected Stair 2","use":"circulation","level":"g","x":0.3,"y":13.5,"w":3.2,"d":8.2}
{"t":"room","id":"g-core","label":"Stair + Lift Core","use":"circulation","level":"g","x":14,"y":0.3,"w":8,"d":8.2}
{"t":"room","id":"g-core-lobby","label":"Lobby","use":"circulation","level":"g","x":14,"y":8.5,"w":4.5,"d":3.5}
{"t":"room","id":"g-accessible-wc","label":"Accessible WC","use":"bathroom","level":"g","x":18.5,"y":8.5,"w":3.5,"d":3.5}
{"t":"room","id":"g-wintergarden","label":"Wintergarden Forum","use":"assembly","level":"g","x":14,"y":12,"w":8,"d":9.7,"height":8}
{"t":"room","id":"g-social","label":"Social Hub + Café","use":"assembly","level":"g","x":22,"y":0.3,"w":13.7,"d":21.4}
{"t":"room","id":"l1-west","label":"West Workroom","use":"office","level":"l1","x":0.3,"y":0.3,"w":13.7,"d":13.2}
{"t":"room","id":"l1-west-project","label":"West Project Room","use":"office","level":"l1","x":3.5,"y":13.5,"w":10.5,"d":8.2}
{"t":"room","id":"l1-secondary-stair","label":"Protected Stair 2","use":"circulation","level":"l1","x":0.3,"y":13.5,"w":3.2,"d":8.2}
{"t":"room","id":"l1-core","label":"Stair + Lift Core","use":"circulation","level":"l1","x":14,"y":0.3,"w":8,"d":8.2}
{"t":"room","id":"l1-core-lobby","label":"Core Lobby","use":"circulation","level":"l1","x":14,"y":8.5,"w":4.5,"d":3.5}
{"t":"room","id":"l1-accessible-wc","label":"Accessible WC","use":"bathroom","level":"l1","x":18.5,"y":8.5,"w":3.5,"d":3.5}
{"t":"room","id":"l1-east","label":"East Workroom","use":"office","level":"l1","x":22,"y":0.3,"w":13.7,"d":21.4}
// Concrete floor plates fill the two brick wings and stop only at the wintergarden void.
{"t":"slab","id":"slab-g","level":"g","x":0,"y":0,"w":36,"d":22,"thickness":0.3,"material":"concrete"}
{"t":"slab","id":"slab-l1-west","level":"l1","x":0,"y":0,"w":14,"d":22,"thickness":0.3,"material":"concrete"}
{"t":"slab","id":"slab-l1-core","level":"l1","x":14,"y":0,"w":8,"d":12,"thickness":0.3,"material":"concrete"}
{"t":"slab","id":"slab-l1-east","level":"l1","x":22,"y":0,"w":14,"d":22,"thickness":0.3,"material":"concrete"}
{"t":"void","id":"stair-void","level":"l1","x":14.65,"y":1.2,"w":2.1,"d":7.2}
{"t":"void","id":"secondary-stair-void","level":"l1","x":0.65,"y":13.5,"w":1.9,"d":8.2}
// Ground envelope: tactile brick piers with generous punched glazing.
{"t":"wall","id":"g-n","level":"g","side":"north","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"g-s","level":"g","side":"south","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"g-e","level":"g","side":"east","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"g-w","level":"g","side":"west","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"g-west-spine","level":"g","from":[14,0],"to":[14,22],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"g-east-spine","level":"g","from":[22,0],"to":[22,22],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"g-core-s","level":"g","from":[14,12],"to":[22,12],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"g-core-divider","level":"g","from":[14,8.5],"to":[22,8.5],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"g-wc-west","level":"g","from":[18.5,8.5],"to":[18.5,12],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"g-secondary-stair-n","level":"g","from":[0,13.5],"to":[3.5,13.5],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"g-secondary-stair-e","level":"g","from":[3.5,13.5],"to":[3.5,22],"type":"partition","thickness":0.16,"material":"wp-partition"}
// Upper storey continues the same full brick industrial envelope as the ground floor.
{"t":"wall","id":"l1-n","level":"l1","side":"north","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"l1-w","level":"l1","side":"west","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"l1-e","level":"l1","side":"east","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"l1-s","level":"l1","side":"south","type":"exterior","thickness":0.3,"material":"wp-brick"}
{"t":"wall","id":"l1-west-core","level":"l1","from":[14,0],"to":[14,12],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"l1-east-core","level":"l1","from":[22,0],"to":[22,12],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"l1-atrium-west","level":"l1","from":[14,12],"to":[14,22],"type":"exterior","thickness":0.12,"material":"wp-bronze"}
{"t":"wall","id":"l1-atrium-east","level":"l1","from":[22,12],"to":[22,22],"type":"exterior","thickness":0.12,"material":"wp-bronze"}
{"t":"wall","id":"l1-core-s","level":"l1","from":[14,12],"to":[22,12],"type":"exterior","thickness":0.12,"material":"wp-bronze"}
{"t":"wall","id":"l1-core-divider","level":"l1","from":[14,8.5],"to":[22,8.5],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"l1-wc-west","level":"l1","from":[18.5,8.5],"to":[18.5,12],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"l1-secondary-stair-n","level":"l1","from":[0,13.5],"to":[3.5,13.5],"type":"partition","thickness":0.16,"material":"wp-partition"}
{"t":"wall","id":"l1-secondary-stair-e","level":"l1","from":[3.5,13.5],"to":[3.5,22],"type":"partition","thickness":0.16,"material":"wp-partition"}
// The long façade is a two-storey grid of broad black-framed industrial windows.
// The timber entrance canopy occupies one bay without breaking the cadence.
{"t":"opening","id":"main-entry","on":"g-s","kind":"portal","at":12.8,"width":3.2,"head":3.25,"leaves":2,"room":"g-wintergarden","glass":"wp-glass"}
{"t":"opening","id":"secondary-exit","on":"g-s","kind":"door","operation":"swing","hinge":"west","at":1.5,"width":1,"head":2.4,"room":"g-secondary-stair"}
{"t":"opening","id":"studio-south-window-run","on":"g-s","kind":"window","operation":"fixed","at":4.2,"width":3,"sill":0.5,"head":3.15,"repeat":{"count":2,"spacing":4},"glass":"wp-glass"}
{"t":"opening","id":"social-south-window-run","on":"g-s","kind":"window","operation":"fixed","at":18.4,"width":4.4,"sill":0.5,"head":3.15,"repeat":{"count":3,"spacing":5.8},"glass":"wp-glass"}
{"t":"opening","id":"studio-north-light","on":"g-n","kind":"window","at":2.2,"width":8.8,"sill":0.75,"head":3.05,"glass":"wp-glass"}
{"t":"opening","id":"core-north-light","on":"g-n","kind":"window","at":15.2,"width":5.6,"sill":1.1,"head":3.05,"glass":"wp-glass"}
{"t":"opening","id":"social-north-light","on":"g-n","kind":"window","at":24.8,"width":8.8,"sill":0.75,"head":3.05,"glass":"wp-glass"}
{"t":"opening","id":"west-window-run","on":"g-w","kind":"window","at":2,"width":4,"sill":0.75,"head":3.05,"repeat":{"count":4,"spacing":4.7},"glass":"wp-glass"}
{"t":"opening","id":"east-window-run","on":"g-e","kind":"window","at":2,"width":4,"sill":0.75,"head":3.05,"repeat":{"count":4,"spacing":4.7},"glass":"wp-glass"}
// Interior thresholds keep circulation wrapped around the social heart.
{"t":"opening","id":"studio-core-door","on":"g-west-spine","kind":"door","at":6.8,"width":1.2,"between":["g-studio","g-core"]}
{"t":"opening","id":"studio-forum-opening","on":"g-west-spine","kind":"opening","at":15,"width":3.2,"head":2.8,"between":["g-project-workshop","g-wintergarden"]}
{"t":"opening","id":"social-core-door","on":"g-east-spine","kind":"door","at":6.8,"width":1.2,"between":["g-core","g-social"]}
{"t":"opening","id":"social-forum-opening","on":"g-east-spine","kind":"opening","at":15,"width":3.2,"head":2.8,"between":["g-wintergarden","g-social"]}
{"t":"opening","id":"core-lobby-door","on":"g-core-divider","kind":"door","operation":"swing","at":16.6,"width":1.2,"between":["g-core","g-core-lobby"],"swingInto":"g-core-lobby"}
{"t":"opening","id":"g-accessible-wc-door","on":"g-wc-west","kind":"door","operation":"sliding","at":10.1,"width":1,"between":["g-core-lobby","g-accessible-wc"]}
{"t":"opening","id":"core-forum-opening","on":"g-core-s","kind":"opening","at":14.7,"width":2.4,"head":2.8,"between":["g-core-lobby","g-wintergarden"]}
{"t":"opening","id":"g-secondary-stair-door","on":"g-secondary-stair-e","kind":"door","operation":"swing","at":16.2,"width":1,"between":["g-project-workshop","g-secondary-stair"],"swingInto":"g-secondary-stair"}
// Upper glazing repeats the ground-floor bay spacing on every visible façade.
{"t":"opening","id":"l1-north-window-run","on":"l1-n","kind":"window","operation":"fixed","at":1,"width":4.4,"sill":0.5,"head":3.15,"repeat":{"count":6,"spacing":5.8},"glass":"wp-glass"}
{"t":"opening","id":"l1-south-window-run","on":"l1-s","kind":"window","operation":"fixed","at":1,"width":4.4,"sill":0.5,"head":3.15,"repeat":{"count":6,"spacing":5.8},"glass":"wp-glass"}
{"t":"opening","id":"l1-west-window-run","on":"l1-w","kind":"window","operation":"fixed","at":1,"width":4.2,"sill":0.5,"head":3.15,"repeat":{"count":4,"spacing":5.2},"glass":"wp-glass"}
{"t":"opening","id":"l1-east-window-run","on":"l1-e","kind":"window","operation":"fixed","at":1,"width":4.2,"sill":0.5,"head":3.15,"repeat":{"count":4,"spacing":5.2},"glass":"wp-glass"}
{"t":"opening","id":"atrium-west-glass","on":"l1-atrium-west","kind":"window","at":12.6,"width":4.6,"sill":0.4,"head":3.2,"glass":"wp-glass"}
{"t":"opening","id":"atrium-east-glass","on":"l1-atrium-east","kind":"window","at":12.6,"width":4.6,"sill":0.4,"head":3.2,"glass":"wp-glass"}
{"t":"opening","id":"bridge-glass","on":"l1-core-s","kind":"window","at":15,"width":6,"sill":0.4,"head":3.2,"glass":"wp-glass"}
{"t":"opening","id":"west-core-opening","on":"l1-west-core","kind":"opening","at":6.5,"width":2.2,"head":2.7,"between":["l1-west","l1-core"]}
{"t":"opening","id":"east-core-opening","on":"l1-east-core","kind":"opening","at":6.5,"width":2.2,"head":2.7,"between":["l1-core","l1-east"]}
{"t":"opening","id":"l1-core-lobby-door","on":"l1-core-divider","kind":"door","operation":"swing","at":16.6,"width":1.2,"between":["l1-core","l1-core-lobby"],"swingInto":"l1-core-lobby"}
{"t":"opening","id":"l1-accessible-wc-door","on":"l1-wc-west","kind":"door","operation":"sliding","at":10.1,"width":1,"between":["l1-core-lobby","l1-accessible-wc"]}
{"t":"opening","id":"l1-secondary-stair-door","on":"l1-secondary-stair-e","kind":"door","operation":"swing","at":16.2,"width":1,"between":["l1-west-project","l1-secondary-stair"],"swingInto":"l1-secondary-stair"}
// The reference's projecting timber entrance and dark roof edge are primary façade parts.
{"t":"canopy","id":"entry-canopy","on":"main-entry","width":5.2,"depth":2.2,"base":3.15,"thickness":0.34,"supports":false,"material":"wp-canopy"}
{"t":"asset","id":"entry-canopy-cheeks","class":"timber canopy cheeks","material":"wp-canopy","parts":[{"x":19.8,"y":28.15,"w":0.38,"d":2.05,"z0":0,"z1":3.15},{"x":24.62,"y":28.15,"w":0.38,"d":2.05,"z0":0,"z1":3.15}]}
{"t":"parapet","id":"south-roof-edge","on":"l1-s","offset":0,"length":36,"height":0.42,"thickness":0.24,"material":"wp-roof"}
{"t":"parapet","id":"north-roof-edge","on":"l1-n","offset":0,"length":36,"height":0.42,"thickness":0.24,"material":"wp-roof"}
{"t":"parapet","id":"west-roof-edge","on":"l1-w","offset":0,"length":22,"height":0.42,"thickness":0.24,"material":"wp-roof"}
{"t":"parapet","id":"east-roof-edge","on":"l1-e","offset":0,"length":22,"height":0.42,"thickness":0.24,"material":"wp-roof"}
// Vertical circulation sits on the north bridge and overlooks the forum.
{"t":"stair","id":"core-stair","from":"g","to":"l1","x":14.7,"y":1.4,"width":1.6,"run":6.6,"dir":"south","steps":22}
{"t":"stair","id":"secondary-stair","from":"g","to":"l1","x":0.8,"y":18.4,"width":1.6,"run":6.4,"dir":"north","steps":24,"landings":[{"at":3.2,"length":1.6,"turn":"straight"}]}
{"t":"lift","id":"core-lift","from":"g","to":"l1","x":18.4,"y":3.5,"w":1.8,"d":1.8,"dir":"south"}
// A flat perimeter roof carries five equal, parallel north-light sheds. Narrow,
// steep glazed planes alternate with broad dark roof valleys. The axonometric
// renderer supplies their opaque end cheeks, so the authored surfaces retain
// five continuous glazed slopes rather than fragmenting into decorative panels.
{"t":"roof","id":"perimeter-flat-roof","level":"l1","type":"flat","pitch":0.01,"overhang":0.08,"eave":8.05,"x":8,"y":6,"w":36,"d":22,"material":"wp-roof"}
{"t":"roof","id":"northlight-01","level":"l1","type":"shed","ridgeAxis":"y","pitch":0.6,"overhang":0,"eave":8.18,"x":10.5,"y":8.4,"w":3.15,"d":17.2,"material":"wp-monitor-glass"}
{"t":"roof","id":"northlight-02","level":"l1","type":"shed","ridgeAxis":"y","pitch":0.6,"overhang":0,"eave":8.18,"x":17,"y":8.4,"w":3.15,"d":17.2,"material":"wp-monitor-glass"}
{"t":"roof","id":"northlight-03","level":"l1","type":"shed","ridgeAxis":"y","pitch":0.6,"overhang":0,"eave":8.18,"x":23.5,"y":8.4,"w":3.15,"d":17.2,"material":"wp-monitor-glass"}
{"t":"roof","id":"northlight-04","level":"l1","type":"shed","ridgeAxis":"y","pitch":0.6,"overhang":0,"eave":8.18,"x":30,"y":8.4,"w":3.15,"d":17.2,"material":"wp-monitor-glass"}
{"t":"roof","id":"northlight-05","level":"l1","type":"shed","ridgeAxis":"y","pitch":0.6,"overhang":0,"eave":8.18,"x":36.5,"y":8.4,"w":3.15,"d":17.2,"material":"wp-monitor-glass"}
// Work settings: fewer desks, more variety, and the wintergarden as daily workspace.
{"t":"furniture","id":"g-project-tables","type":"conference-table","level":"g","x":4.4,"y":2.8,"w":4.2,"d":1.4,"height":0.74,"rows":3,"gapY":2.8,"material":"wp-oak"}
{"t":"furniture","id":"g-pinup","type":"shelving","level":"g","x":4.5,"y":19.2,"w":6,"d":0.45,"height":1.8,"material":"wp-oak"}
{"t":"furniture","id":"social-counter","type":"counter","level":"g","x":23,"y":1,"w":6,"d":0.75,"height":0.92,"material":"wp-oak"}
{"t":"furniture","id":"social-island","type":"island","level":"g","x":24.5,"y":4,"w":3.6,"d":1.1,"height":0.92,"material":"wp-oak"}
{"t":"furniture","id":"social-tables","type":"round-table-4","level":"g","x":24,"y":9,"w":1.2,"d":1.2,"height":0.74,"cols":2,"rows":3,"gapX":3,"gapY":2.6,"material":"wp-oak"}
{"t":"furniture","id":"forum-reception","type":"checkout","level":"g","x":15,"y":18.8,"w":3.4,"d":0.9,"height":1.02,"material":"wp-oak"}
{"t":"furniture","id":"forum-sofa-a","type":"sofa","level":"g","x":14.8,"y":14,"w":2.4,"d":0.9,"height":0.78}
{"t":"furniture","id":"forum-sofa-b","type":"sofa","level":"g","x":19.8,"y":14,"w":0.9,"d":2.4,"height":0.78}
{"t":"furniture","id":"g-wc-toilet","type":"toilet","level":"g","x":20.8,"y":10.95,"w":0.42,"d":0.72,"rot":180}
{"t":"furniture","id":"g-wc-sink","type":"sink","level":"g","x":21.2,"y":9.05,"rot":90}
{"t":"furniture","id":"g-wc-turning-circle","type":"turning-circle","label":"1.5 m clear","level":"g","x":19,"y":9,"w":1.5,"d":1.5,"height":0.01}
{"t":"tree","id":"forum-tree","x":26,"y":22.3,"canopy":3.2,"species":"olive"}
{"t":"furniture","id":"west-workstations","type":"desk","level":"l1","x":1.5,"y":2,"w":1.6,"d":0.8,"height":0.74,"cols":4,"rows":4,"gapX":1.1,"gapY":2.6,"material":"wp-oak"}
{"t":"furniture","id":"east-workstations","type":"desk","level":"l1","x":23.5,"y":2,"w":1.6,"d":0.8,"height":0.74,"cols":4,"rows":4,"gapX":1.1,"gapY":2.6,"material":"wp-oak"}
{"t":"furniture","id":"west-project-table","type":"conference-table","level":"l1","x":5,"y":16.8,"w":5,"d":1.3,"height":0.74,"material":"wp-oak"}
{"t":"furniture","id":"east-project-table","type":"conference-table","level":"l1","x":25.5,"y":14.2,"w":5,"d":1.3,"height":0.74,"material":"wp-oak"}
{"t":"furniture","id":"l1-wc-toilet","type":"toilet","level":"l1","x":20.8,"y":10.95,"w":0.42,"d":0.72,"rot":180}
{"t":"furniture","id":"l1-wc-sink","type":"sink","level":"l1","x":21.2,"y":9.05,"rot":90}
{"t":"furniture","id":"l1-wc-turning-circle","type":"turning-circle","label":"1.5 m clear","level":"l1","x":19,"y":9,"w":1.5,"d":1.5,"height":0.01}
// Forecourt, cycle parking, rain gardens, and a compact parking court.
{"t":"paving","id":"entry-forecourt","label":"WINTERGARDEN FORECOURT","use":"walkway","x":15,"y":28,"w":22,"d":5,"material":"wp-paving"}
{"t":"paving","id":"west-terrace-stair","use":"walkway","x":9.5,"y":27.8,"w":5.5,"d":1.6,"material":"wp-paving"}
{"t":"paving","id":"east-terrace-stair","use":"walkway","x":41.5,"y":27.8,"w":2.5,"d":1.6,"material":"wp-paving"}
{"t":"parking","id":"visitor-parking","x":8,"y":35,"along":"x","count":10,"accessible":2,"required":10}
{"t":"road","id":"parking-access","use":"shared access aisle","width":6,"from":[5,42],"path":[{"to":[51,42]},{"to":[51,35]}],"material":"asphalt"}
// The authored rendering shows the parking court empty, so the foreground stays
// as pale bays and wheel stops rather than competing vehicle colours and sheds.
{"t":"landscape","id":"north-meadow","x":8,"y":0,"w":36,"d":6,"planting":{"species":"native meadow","count":48}}
{"t":"landscape","id":"west-rain-garden","x":0,"y":6,"w":8,"d":20,"planting":{"species":"rain-garden grasses","count":32}}
{"t":"landscape","id":"east-rain-garden","x":44,"y":6,"w":12,"d":20,"planting":{"species":"rain-garden grasses","count":42}}
{"t":"landscape","id":"forecourt-bed-west","x":8,"y":28,"w":7,"d":5,"planting":{"species":"ornamental grasses","count":14}}
{"t":"landscape","id":"forecourt-bed-east","x":37,"y":28,"w":11,"d":5,"planting":{"species":"ornamental grasses","count":22}}
{"t":"tree","id":"tree-nw","x":5,"y":5,"canopy":4.2,"species":"honey locust"}
{"t":"tree","id":"tree-ne","x":49,"y":6,"canopy":4.2,"species":"honey locust"}
{"t":"tree","id":"tree-west","x":4,"y":20,"canopy":3.5,"species":"serviceberry"}
{"t":"curb","id":"front-curb","from":[0,44],"to":[56,44]}
{"t":"materialdef","id":"wp-brick","of":"masonry","value":58,"accent":"#9b503c","hatch":"masonry","body":{"roughness":0.9}}
{"t":"materialdef","id":"wp-bronze","of":"steel","value":42,"accent":"#756552","body":{"roughness":0.42,"metalness":0.55}}
{"t":"materialdef","id":"wp-glass","of":"glass","value":42,"body":{"type":"MeshPhysicalMaterial","transmission":0.78,"ior":1.5,"roughness":0.12,"thickness":0.08}}
{"t":"materialdef","id":"wp-monitor-glass","of":"glass","value":58,"body":{"type":"MeshPhysicalMaterial","transmission":0.72,"ior":1.5,"roughness":0.12,"thickness":0.08}}
{"t":"materialdef","id":"wp-frame","of":"steel","value":20,"accent":"#20272d","body":{"roughness":0.38,"metalness":0.45}}
{"t":"materialdef","id":"wp-partition","of":"render","value":92,"hatch":"concrete","body":{"roughness":0.88}}
{"t":"materialdef","id":"wp-roof","of":"membrane","value":42,"body":{"roughness":0.86}}
{"t":"materialdef","id":"wp-paving","of":"paving","value":80,"accent":"#c8b99c","body":{"roughness":0.92}}
{"t":"materialdef","id":"wp-oak","of":"timber","value":58,"hatch":"timber","body":{"roughness":0.68}}
{"t":"materialdef","id":"wp-canopy","of":"timber","value":58,"accent":"#a66d3f","hatch":"timber","body":{"roughness":0.64}}
// A broad industrial opening reads through its repeated mullion grid, not as a
// single pale glass rectangle. The body is fitted into every fixed window's
// compiled opening bounds, so the same cadence survives around the corners.
{"t":"lookdef","id":"wp-industrial-grid-window","for":"opening:fixed","slots":{"frame":"wp-frame","glass":"wp-glass"},"body":{"type":"Group","scale":[0.96,1,0.18],"children":[{"type":"Mesh","material":"$glass","geometry":{"type":"BoxGeometry","width":0.9,"height":0.86,"depth":0.035},"position":[0,0.5,0.08]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.055,"height":1,"depth":0.12},"position":[-0.4725,0.5,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.055,"height":1,"depth":0.12},"position":[0.4725,0.5,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.9,"height":0.055,"depth":0.12},"position":[0,0.9725,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.9,"height":0.055,"depth":0.12},"position":[0,0.0275,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.026,"height":0.88,"depth":0.1},"position":[-0.3,0.5,0.1]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.026,"height":0.88,"depth":0.1},"position":[-0.1,0.5,0.1]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.026,"height":0.88,"depth":0.1},"position":[0.1,0.5,0.1]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.026,"height":0.88,"depth":0.1},"position":[0.3,0.5,0.1]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.9,"height":0.03,"depth":0.1},"position":[0,0.5,0.1]}]}}
{"t":"look","id":"use-wp-industrial-grid-window","for":"opening:fixed","use":"wp-industrial-grid-window"}
// The def layer, lifted verbatim from packs/parking.ndjson — bimtex has no
// include: a model that wants a pack element carries its definition, which is
// what the element page's copy button hands a reader.
{"t":"materialdef","id":"pack-car-silver","of":"car-paint","value":72,"accent":"#c3c8ce","body":{"type":"MeshPhysicalMaterial"}}
{"t":"materialdef","id":"pack-car-slate","of":"car-paint","value":42,"accent":"#3f5d86","body":{"type":"MeshPhysicalMaterial"}}
{"t":"materialdef","id":"pack-car-oxide","of":"car-paint","value":42,"accent":"#a33f2c","body":{"type":"MeshPhysicalMaterial"}}
{"t":"materialdef","id":"pack-car-glass","of":"glass","value":20,"body":{"type":"MeshPhysicalMaterial","roughness":0.08,"metalness":0.1,"transmission":0.62,"ior":1.46,"thickness":0.02}}
{"t":"materialdef","id":"pack-tyre","of":"rubber","value":20,"accent":"#212428","body":{"roughness":0.96}}
{"t":"materialdef","id":"pack-rim","of":"steel","value":80,"accent":"#c6c9cc","body":{"roughness":0.3,"metalness":0.8}}
{"t":"materialdef","id":"pack-head-lamp","of":"paint","value":92,"accent":"#fdf6de","body":{"emissive":"#fdf6de","emissiveIntensity":1.6,"roughness":0.2}}
{"t":"materialdef","id":"pack-tail-lamp","of":"paint","value":20,"accent":"#8d2a24","body":{"emissive":"#a32a20","emissiveIntensity":1.1,"roughness":0.3}}
{"t":"materialdef","id":"pack-pole-grey","of":"steel","value":42,"accent":"#53585c","body":{"roughness":0.44,"metalness":0.55}}
{"t":"materialdef","id":"pack-luminaire","of":"paint","value":92,"accent":"#fbf4dd","body":{"emissive":"#fbf4dd","emissiveIntensity":2.4,"roughness":0.18}}
{"t":"materialdef","id":"pack-enclosure-block","of":"masonry","value":72,"accent":"#a9a49a","body":{"roughness":0.92}}
{"t":"materialdef","id":"pack-bin-body","of":"paint","value":42,"accent":"#33463a","body":{"roughness":0.78}}
{"t":"materialdef","id":"pack-bin-lid","of":"paint","value":20,"accent":"#26332b","body":{"roughness":0.8}}
{"t":"materialdef","id":"pack-car-graphite","of":"car-paint","value":20,"accent":"#33383d","body":{"type":"MeshPhysicalMaterial"}}
{"t":"look","id":"use-saloon-car-2","for":"asset:car","use":"saloon-car-2"}
{"t":"look","id":"use-compact-suv-2","for":"asset:car-suv","use":"compact-suv-2"}
{"t":"look","id":"use-panel-van-2","for":"asset:van","use":"panel-van-2"}
{"t":"look","id":"use-twin-head-light-column","for":"asset:light-column","use":"twin-head-light-column"}
{"t":"look","id":"use-gated-refuse-enclosure-2","for":"asset:refuse-enclosure","use":"gated-refuse-enclosure-2"}
// The work settings above were placed but never dressed. These are the bodies
// the office furniture resolves to, lifted from packs/.
{"t":"materialdef","id":"pack-int-linen","of":"cloth","value":72,"body":{"sheen":0.7,"sheenRoughness":0.6}}
{"t":"materialdef","id":"pack-int-linen-soft","of":"cloth","value":80,"body":{"sheenRoughness":0.55}}
{"t":"materialdef","id":"pack-int-oak","of":"timber","value":58,"hatch":"timber","body":{"roughness":0.62}}
{"t":"materialdef","id":"pack-int-clay","of":"plaster","value":72,"body":{"roughness":0.86}}
{"t":"materialdef","id":"pack-int-stone","of":"stone","value":86,"body":{"roughness":0.3}}
{"t":"materialdef","id":"pack-int-black","of":"membrane","value":20,"body":{"roughness":0.44,"metalness":0.3}}
{"t":"materialdef","id":"pack-int-brass","of":"brass","value":58,"accent":"#b08d52","body":{"metalness":0.75}}
{"t":"materialdef","id":"pack-int-screen","of":"membrane","value":20,"body":{"roughness":0.14,"metalness":0.2}}
{"t":"look","id":"use-base-run-2","for":"furniture:counter","use":"base-run-2"}
{"t":"look","id":"use-pos-checkout-2","for":"furniture:checkout","use":"pos-checkout-2"}
{"t":"look","id":"use-two-cushion-lounge-sofa","for":"furniture:sofa","use":"two-cushion-lounge-sofa"}
{"t":"look","id":"use-three-bay-kitchen-island","for":"furniture:island","use":"three-bay-kitchen-island"}
{"t":"look","id":"use-oak-trestle-writing-desk","for":"furniture:desk","use":"oak-trestle-writing-desk"}
{"t":"look","id":"use-open-shelf-unit","for":"furniture:shelving","use":"open-shelf-unit"}
{"t":"look","id":"use-four-top-round-table","for":"furniture:round-table-4","use":"four-top-round-table"}
{"t":"look","id":"use-wall-hung-wc-2","for":"furniture:toilet","use":"wall-hung-wc-2"}
{"t":"look","id":"use-wall-basin","for":"furniture:sink","use":"wall-basin"}
{"t":"materialdef","id":"pack-ash","of":"timber","value":80,"accent":"#cbbfa9"}
{"t":"look","id":"use-boat-conference-table-2","for":"furniture:conference-table","use":"boat-conference-table-2"}
- ✓ storeys stack without gaps; mezzanines fit their host
- ✓ every opening fits inside its wall, in length and height
- ✓ upper-storey walls have support below
- ✓ rooms stay inside the footprint and do not overlap
- ✓ stairs clear walls, land in circulation, and have a void above
- ✓ risers stay within the schema limits
- ✓ footprint clears setbacks; fences stay on the parcel