Back to planner

Stack decks at different elevations — ground, mezzanine, top — using a Decks panel that's separate from layers.

Multi-deck layouts

The planner can stack decks at different heights so you can plan a layout with a ground-level loop and an elevated subway, an over-and-under figure-8, or a shelf bench with a return loop on a second tier.

Decks vs. layers

Two distinct concepts. They look similar in the inspector but mean different things:

DecksLayers
What it meansPhysical Z height of the pieces.Organisational tag for visibility / colour coding.
How many per pieceExactly one.Zero or many.
Effect on the canvasPieces stack at the deck's elevation in 3D.Toggling a layer hides every piece tagged with it.
Typical namesGround, Mezzanine, Top, Hidden staging.Mainline, Yard, WIP, Scenic, To-do.

Both surfaces are accordions in the inspector. The Decks panel has a mm input next to each row — that's the deck's elevation. The Layers panel has visibility, colour-coding, and multi-membership tags — no elevation field.

A single piece can be on the Mezzanine deck and tagged with the Mainline layer. The two are independent.

Working with decks

Each layout starts with a single Ground deck at 0 mm. To add a second deck:

  1. Open the Decks accordion in the inspector.
  2. Click + New deck. Name it something memorable ("Mezzanine") and set its elevation (say, 80 mm).
  3. The new deck becomes the active deck — the orange dot moves to it — so the next piece you place lands at 80 mm.
  4. Click an existing deck row to make it the active deck instead.

Editing a deck's elevation moves every piece on that deck in one undo step. So if you start building a Mezzanine deck at 80 mm, then realise you want it at 90 mm, just change the value — the entire deck lifts. Press Ctrl/Cmd+Z to revert both the deck value and every piece's Z in lockstep.

Deleting a deck reassigns its pieces to the layout's first remaining deck (and drops their Z accordingly). The planner refuses to delete the last deck — at least one is always needed for new placements.

Viewing the stack

Switch to 3D mode (camera toggle in the top-right of the canvas) to see decks at their real heights. The orthographic 2D mode is still the right place to place pieces — it shows everything top-down regardless of elevation — but only the 3D mode reveals the vertical relationships between decks.

Cross-deck connections (ramps)

The catalogue now ships ramp pieces — straight track that rises along its length. Connector A sits at the lower deck's elevation; connector B is lifted by the piece's rise so it can snap to a piece on a higher deck without any special handling on the user's part.

To use a ramp:

  1. Make sure your decks' elevations agree with a ramp you have in the catalogue. A 50 mm ramp connects decks 50 mm apart; a 30 mm ramp connects decks 30 mm apart.
  2. Switch the active deck to the lower of the two decks you're bridging.
  3. Place the ramp at the edge of the lower deck. Its A end lands at the active deck's elevation; its B end automatically projects 50 mm (or whatever the rise is) above.
  4. Snap a piece from the higher deck to the ramp's B connector — same drag / snap workflow as anywhere else on the layout.

Descending ramps work via rotation: the same piece rotated 180° (with R) descends from B (now at z=0 in placement coords) back down to A. Place the rotated ramp on the upper deck and its (originally-A, now-rotated) end falls to the lower deck.

The Properties accordion on a selected ramp shows length, rise, grade %, and pitch in degrees. Grades over 3% read in orange — a real reference train won't usually pull a long train up that slope, though the planner doesn't block placement.

v1 ships a single proof-of-concept ramp in the Hornby Setrack catalogue (LCDX-RAMP-50, 672 mm long, 50 mm rise, ~7.4% grade). Real-world ramp data (Hornby R658 inclined pier set, Kato riser sets) lands as a follow-up. Curved-rise pieces (helixes) are a separate roadmap item.

Known limitations

  • Clearance validation doesn't fully understand ramps yet. A Mezzanine piece sitting directly above the high end of a ramp won't get flagged as a tight-clearance warning, because the ramp's bounding box in the clearance check is currently centred on its lower-deck elevation rather than spanning A→B in Z. Grade-aware validation (the next roadmap item after ramps) closes this gap.
  • 2D top-down view shows ramps as plain straights, identical to a flat piece of the same length. The rise only shows in 3D. A chevron / arrow indicator on the 2D view is a planned polish.

Caveats

  • The .trackplan format bumped to v3 to carry decks as a top-level concept. Files exported now will be refused by pre-decks planner versions (preventing silent data loss). Older .trackplan files (v1, v2) still open fine; v2 layer-elevations migrate into derived decks of the same elevation.
  • Grade validation (warning about steep grades or abrupt transitions) is a separate roadmap item.
  • All elevation is per-deck. Climbing tracks (graded pieces that rise along their length) aren't modeled yet.
View on roadmap: Advanced Layouts

Last updated: 2026-05-28