On This Page
Introduction
What you will build
By following this guide, you'll produce a complete BIM model comparable to what a junior architect would build in 3–6 hours — including the design decisions, constraints, schedules, and design book sheets. No reverse-engineering required.
This guide uses the Office Building template as the reference project (5-story, 40×25m footprint, curtain wall facade). The same workflow applies to all three template typologies.
Your workflow
Prerequisites
- Browser-based — no install required
- Basic BIM knowledge (what a wall, column, level means)
- No Atlantist-specific training needed
Step 1
Levels & Elevations
Levels are the binding reference for every other element. Change a level elevation → the DAG recalculates all hosted elements. Spend time getting this right upfront.
How to add a level
+ Level in the toolbarIn the Level modal, enter the Name (e.g., "Level 2") and Elevation in meters above ground floor.
For a typical office building, use 4.0m between levels. For residential, 3.0m. Document your standard in the project settings.
Level bindings explained
| Element | Level Binding | What happens on elevation change |
|---|---|---|
| Walls | base_level_id + top_level_id | Wall height recalculates. Top follows upper level if bound. |
| Doors / Windows | Host wall's levels | Openings stay at same relative position on wall face. |
| Floors | base_level_id (bottom face) | Floor slab elevation moves with the level. |
| Stairs | base_level_id + top_level_id | Riser count and tread geometry recalculate. |
| Columns | base_level_id + top_level_id | Column height adjusts — all 3D views update instantly. |
? → Load Demo) to see how 10 building levels with consistent inter-floor heights bind to walls and stairs.
Step 2
Walls
Walls are placed by defining two XY coordinates in the plan view. Each wall type has a multi-layer construction — changing the type propagates through all instances via the DAG.
How to place a wall
Open Projects → Templates → Office Building and inspect the pre-configured curtain wall. Or choose from these types:
Curtain Wall Aluminum 250mm
Double-glazed, thermal break. Standard for commercial facades. Aluminum mullion structure.
CommercialExterior Brick 8"
100mm brick + 50mm mineral wool insulation. Load-bearing, typically 200mm CMU backup.
ResidentialCMU 8" Load-Bearing
Concrete masonry unit. Used for cores, shear walls, stair/elevator shafts.
Multi-UnitTilt-Up Concrete Panel 200mm
Single-layer tilt-up panel. Fast erection, common in warehouse/industrial.
IndustrialWood Frame 2×6 Exterior
Fiber cement cladding, 140mm mineral wool. Standard for residential light-frame.
ResidentialFire-Rated Gypsum 2-Hour
Dual Type X 25mm gypsum board on metal stud. Used for stairwell enclosures.
Life SafetyWall layer system
Every wall is built from ordered layers. The layer system drives the wall assembly in the design book output (finish schedule):
| Layer Function | Examples | Display in 3D |
|---|---|---|
structure | Concrete, CMU, Wood Stud, Aluminum Mullion | Structural core — full height |
finish | Gypsum Board, Brick, Stucco, Tile | Interior face only |
insulation | Mineral Wool, XPS Board | Hidden (energy model) |
air | Air Gap 50mm | Hidden (thermal) |
membrane | Housewrap, Damp-Proof Course | Hidden |
Wall parameter reference
| Parameter | Description | Example |
|---|---|---|
startCoord | XY plan coordinates for wall start point | {"x":0,"y":25} |
endCoord | XY plan coordinates for wall end point | {"x":40,"y":25} |
thickness | Total wall thickness (meters) | 0.250 |
loadBearing | Whether wall carries structural loads | true / false |
glazing | For curtain walls: single / double / triple | "double" |
thermalBreak | Polyamide thermal break in mullion | true |
Step 3
Floors & Roofs
Floors are horizontal elements bound to a base_level_id. They have multi-layer construction (structure/finish/insulation). Roofs are flat floors at the top level.
Floor type catalog
Composite Steel Deck 130mm
Steel deck + concrete topping. Standard for commercial steel-frame. 4" deck + 2.5" concrete.
Commercial / SteelFlat Plate Concrete 200mm
Two-way flat plate. No beams. Typical for residential with drop panels at columns.
ResidentialWaffle Slab 300mm
Two-way joist system. 300mm total with 75mm topping. Used for long-span commercial.
CommercialTPO Flat Roof
Single-ply TPO membrane, tapered insulation to drains. Standard low-slope roof.
All TypesGreen Roof
Vegetated roof assembly. Structural slab + waterproofing + growing medium + vegetation.
SustainableWood Frame Floor 300mm
2×10 or 2×12 LVL beams at 16" OC. Standard residential floor. Deflection governs span.
Residential / WoodHow to add a floor
In the 3D View, click + Floor in the toolbar. The floor inherits its elevation from the base_level_id. The boundary polygon is drawn in plan view.
base_level_id pointing to that level update their Z position instantly across all three views. No manual repositioning needed.
Roof types
Roofs use the same floor system but are marked as the top level (no top_level_id binding). Curved roof surfaces (barrel vault, hip, gambrel) are created using the Curved Surfaces primitive system (Phase 22).
Adding a curved roof
- Click + Curved in the toolbar
- Select surface type: Barrel Vault, Hip, Gambrel, Hyperboloid, etc.
- Set the base elevation and profile parameters (rise, span, radius)
- The roof mesh is generated parametrically — change the rise, the roof updates
- IFC export: revolution surfaces become
IfcBuildingElementProxy, NURBS becomeIfcBSplineSurfaceWithKnots
Step 4
Doors & Windows
Doors and windows are family instances hosted on wall faces. Placement auto-cuts wall geometry to match the family dimensions — no manual cutting required.
How to place a door
Click a wall in plan view to select it. The wall highlights in yellow.
+ Door in the toolbarThe Door modal opens. Choose a type and set host_face_u (0.0 = start of wall, 1.0 = end of wall). The opening appears at that normalized position.
Door type catalog
| Type | Width | Height | Fire Rating | Use Case |
|---|---|---|---|---|
| Hollow Metal Single | 36" (914mm) | 84" (2134mm) | 90 min | Stairwell, corridor |
| Hollow Metal Double | 60" (1524mm) | 80" (2032mm) | 90 min | Entry, suite entry |
| Wood Flush Single | 36" (914mm) | 80" (2032mm) | 20 min | Interior, residential |
| Fire-Rated 45min Single | 36" (914mm) | 84" (2134mm) | 45 min | Mechanical room |
| Overhead Door 10'×12' | 3048mm | 3658mm | None | Loading dock |
| Automatic Sliding 72"×84" | 1829mm | 2134mm | 20 min | ADA main entry |
Window type catalog
| Type | Width | Height | Sill Height | Use Case |
|---|---|---|---|---|
| Curtain Wall 72"×60" | 1829mm | 1524mm | 900mm | Commercial facade |
| Storefront 10'×96" | 3048mm | 2438mm | 0 | Ground floor retail |
| Double Hung 36"×72" | 914mm | 1829mm | 900mm | Residential |
| Sliding 72"×48" | 1829mm | 1219mm | 900mm | Balcony door, patio |
| Clerestory 60"×36" | 1524mm | 914mm | 9000mm | Warehouse high sills |
| Fixed 48"×72" High-Rise | 1219mm | 1829mm | 1000mm | High-rise triple-glazed |
Auto-cut geometry
When you place a door or window, the wall's parameters.cutOpenings JSON records the opening dimensions. The Three.js mesh builder subtracts this geometry from the wall mesh, leaving a clean rectangular void with a frame.
Step 5
Stairs & Railings
Stairs are parametric elements — you set base/top levels and the DAG computes riser height, tread depth, and total run. All values are IBC 1011-compliant by default.
How to add a stair
Choose from: Straight, L-Shaped (90° with landing), U-Shaped (180° switchback), Spiral, Circular.
The stair auto-computes: riser_height = total_rise / number_of_risers. IBC max 7" (178mm) for commercial, 7.87" (200mm) for industrial.
Stair type catalog (IBC Table 1011.2)
| Type | Rise | Run | Width | Use Case |
|---|---|---|---|---|
| Residential Straight 7"/11" | ≤178mm (7") | ≥279mm (11") | 914mm | Single-family, duplex |
| Commercial Straight 7"/10" | ≤178mm (7") | ≥254mm (10") | 1120mm | Office, multifamily |
| L-Shaped 7"/11" w/ Landing | ≤178mm (7") | ≥279mm (11") | 1120mm | Multifamily, common area |
| U-Shaped 7"/11" w/ Landing | ≤178mm (7") | ≥279mm (11") | 1120mm | Commercial, dense |
| Spiral 7" Rise | ≤178mm (7") | ≥191mm at 30" | 1520mm min | Secondary egress, tight |
Railings
Railings are created after the stair. They bind to the stair via host_stair_id and are placed on the left/right side. IBC requires 42" guards on open sides, 34"–38" handrails.
Railing type catalog
| Type | Height | Baluster Spacing | Use Case |
|---|---|---|---|
| IBC Guardrail 42" Aluminum | 1067mm | 100mm (4" max sphere) | Commercial open floor |
| IBC Guardrail 42" Steel | 1067mm | 100mm | Industrial, heavy duty |
| Glass Panel Guard 42" | 1067mm | N/A (full panel) | Modern, architectural |
| IBC Handrail 34"–38" Aluminum | 864mm | N/A | Per IBC 1014.1 |
| Wood Handrail 34"–38" | 864mm | N/A | Residential |
| Monolithic Concrete 42" | 1067mm | N/A | Parking garage, exterior |
Step 6
Structural Members
Columns are placed at grid intersections. Beams run between columns. Both are bound to levels — changing a level height updates all connected structural members.
Column types
W14x48
AISC wide-flange. 14" nominal depth. Primary structural column for multi-story office.
Steel / CommercialW12x26
Light wide-flange. 12" nominal depth. Secondary columns, shorter spans.
SteelHSS 6×6×3/8
Square hollow structural section. Architectural exposed columns. Fire-rated when required.
Steel / ExposedPipe Column 6" STD
Standard weight pipe column. Compact, used where HSS isn't available.
SteelConcrete Column 500×500
500mm square reinforced concrete column. Used in concrete frame buildings.
ConcreteStructural grids
The grid system places columns at defined spacing. For the office template, the grid is 8m × 5m. Columns are bound to the grid intersection coordinates — move a grid line and all columns update.
Beam types (AISC W-shapes)
| Section | Depth | Weight | Typical Use |
|---|---|---|---|
W16x31 | 16" | 31 lb/ft | Long-span roof beam, 40ft+ clear |
W14x30 | 14" | 30 lb/ft | Primary girder in multi-story |
W12x26 | 12" | 26 lb/ft | Floor beam, 20–30ft spans |
W8x18 | 8" | 18 lb/ft | Roof purlin, short spans |
Double LVL 2×10 | 10" | 5.1 kg/m | Residential floor beam, 24" OC |
Step 7
MEP Stubs
Place MEP fixture stubs (VAV boxes, diffusers, sprinkler heads, electrical panels) to enable HVAC, plumbing, and electrical simulation. Stubs are bound to levels and rooms.
MEP fixture catalog
| Fixture | Discipline | Default Size | Use Case |
|---|---|---|---|
| VAV Terminal 3×3 | HVAC | 900×450×450mm | Variable Air Volume — office zones |
| 4-Pipe Fan Coil Unit | HVAC | 600×250×200mm | Bedroom or perimeter zone |
| Ceiling Diffuser 24×24" | HVAC | 600×50×600mm | Supply air diffuser, 400 CFM |
| ESFR Sprinkler Head | Fire Protection | 100×150×100mm | Warehouse ceiling — high challenge |
| Pendent Sprinkler | Fire Protection | 75×100×75mm | Office / residential standard |
| Panel Board 200A | Electrical | 600×1200×150mm | Service entrance panel |
| 6" Pipe Sch 40 | Plumbing | 168mm OD | Main riser |
Running HVAC simulation
After placing VAV stubs and diffusers, open MEP → HVAC Run. The simulation computes:
- Zone loads from wall geometry + level spans
- 1 zone per ~1500m² of floor area
- CFM from cooling Btu/h (1 ton = 12000 Btu/h, 400 CFM/ton)
- Duct sizing from zone peak CFM
- Airflow particles for visualization
Step 8
Energy Zones & Simulation
Rooms become energy zones. Assign room boundary polygons and run a simulation to generate gbXML + EN-001 to EN-008 compliance output.
How to set up energy simulation
Each room needs: area_sqm, volume_cum, floor_finish, wall_finish, ceiling_finish. These drive the energy model envelope properties.
Go to MEP → Energy. The engine uses ASHRAE 90.1 baseline. Output includes:
- gbXML — for EnergyPlus, Trane TRACE, IES VE
- IDF text — direct EnergyPlus input
- EN-001 to EN-008 — NYC DOB compliance forms (auto-populated from model geometry)
- Year Viz — hourly energy chart + heatmap (12 months, hourly granularity)
area_sqm = 0, it won't appear in the simulation. Check the Room Schedule tab to verify all rooms have area data before running.
Step 9
Design Book Output
The design book auto-generates sheets from model data. No manual annotation required post-modeling.
What auto-populates
- Floor Plans — from element geometry + structural grid
- Elevations — N↑ S↑ E→ W← orthographic views (A-200 / A-201 / A-202 / A-203)
- Door Schedule (A-400) — from family_instance parametric data: mark, type, width, height, fire rating, material
- Window Schedule (A-400) — from family_instance: mark, type, width, height, sill height, glazing
- Room Schedule — from rooms table: number, name, area_sqm, floor/ceiling finish
- Finish Schedule — from wall_layers: material, function, thickness
- Material Takeoff — aggregate wall layer volumes
- Section Cuts — draw section lines on plan → elevation view auto-generates
Creating section cuts
- Click Section in the toolbar
- Click two points on the plan view to define the cut plane
- The section camera moves perpendicular to the line, showing the elevation at that cut
- Use elevation buttons (N↑ S↑ E→ W←) to switch to fixed orthographic views
- Export any sheet as PDF or CSV
Step 10
Parametric Constraints & DAG
The DAG (Directed Acyclic Graph) constraint solver propagates every parameter change instantly across all bound elements. This is what makes Atlantist parametric — not just a 3D viewer.
Constraint chain example
Event Ledger (audit trail)
Every parameter change is recorded in the event_ledger with: actor, timestamp, before/after values. This enables per-element revert: open the History panel, find the event, click Revert. A new shadow page event is written and the scene reloads for all collaborators.
Group rotation
Select multiple elements (Ctrl+click) and press Space or click ↻ Rotate 45°. All selected elements rotate 45° CW around the selection barycenter in a single atomic undo. Live sync to collaborators via WebSocket.
Step 11
Export (IFC / DWG)
Atlantist exports industry-standard BIM formats that open in Revit, ArchiCAD, and other tools.
IFC Export (IFC 2x3)
Click IFC Export in the toolbar. The exporter generates a valid IFC 2x3 STEP file with:
IfcWallStandardCasewith ExtrudedAreaSolid geometryIfcColumnwith structural section profileIfcDoorandIfcWindowwith hosted opening geometryIfcBuildingStorey(levels) as IfcBuildingElementDecompositionIfcBSplineSurfaceWithKnotsfor NURBS curved surfacesIfcBuildingElementProxyfor revolution/sweep surfaces
IFC Import
Click IFC Import → drag-and-drop a STEP file. The parser extracts IfcWallStandardCase, IfcColumn, IfcDoor, IfcWindow, IfcBuildingStorey entities and maps them to Atlantist elements. Progress shown in real time.
DWG Export
Click DWG Export for AutoCAD-compatible output. Generates DXF R14/2000 text with:
- Wall polylines with layer naming (A-WALL, A-DOOR, A-WINDOW)
- Grid lines on dedicated layer (A-GRID)
- Room boundary polygons (A-AREA)
- Dimension text (A-DIMS)
Quick-Start
Template Projects
Don't start from scratch. The template projects are pre-built scaffolds — levels, walls, floors, stairs, MEP stubs, and energy zones already configured. Instantiate one and modify it.
🏢 Office Building 5-Story
5-story, 40×25m footprint, curtain wall facade, composite steel framing, VAV HVAC. 6 levels (Ground + 4 typical + Roof).
Commercial🏠 Residential Multi-Unit 4-Story
4-story, wood-frame + CMU core, 3 apartments per floor (12 total). Sprinklered per NFPA 13R.
Residential🏭 Warehouse / Industrial
Single-story, 60×50m, tilt-up concrete, 12m clear height. 2 loading docks, mezzanine office.
IndustrialHow to use a template
- Open Projects → click the Templates tab
- Click a template card to preview: level count, element count, construction type, floor height
- Enter a project name and click Use This Template
- A new project is created — modify, extend, delete anything
- All elements are live-parametric — no lock-in
Reference
Gotchas & Known Issues
IfcBSplineSurfaceWithKnots. Revit reads these natively. ArchiCAD reads them as mesh objects.number_of_risers until the computed riser height is ≤ 178mm.