Deploy web Studio / deploy (push) Successful in 4m31s
Roads take sidewalks (none, both, left, right): 12 cm high paving with kerb faces drawn where they face the viewer. Road curve (radius, angle, left/right) carries a street round a bend; centre lines are true arcs when cut and offset, so curve joints are seamless. A road ending on another road's centre line opens that road's kerb and sidewalk (T junction); two roads ending at one corner close it. Roundabout: ring radius and width, one or two lanes, up to four arms with flared kerbs, splitter islands, give-way lines on the entry side (traffic on the left or right) and a central island with apron. Studio: a road run drawn corner by corner gets a curve in each corner (prefab meta `corner`). Tooltips list the streets each one meets. Engine: open `polyline` primitive (Prim::Poly open) so dashes run on round curves. examples/streets and a Streets demo in the web Studio; MCP guidance, docs. ROADMAP: backlog 5-7 done; multi-select and the hosted copy marked done. Tests: Rust 72, Studio 113, web 95.
30 lines
740 B
TOML
30 lines
740 B
TOML
# isokit streets demo: roads with sidewalks, a rounded corner, junctions and a roundabout.
|
|
# Open it with `isokit studio examples/streets`.
|
|
title = "isokit streets"
|
|
note = "Streets drawn along their centre lines: curves carry them round corners, side streets open the sidewalks they join, and the roundabout's kerbs flare into its arms. Tap a street for its numbers. Drag to pan, Ctrl + wheel or pinch to zoom."
|
|
default_level = "site"
|
|
default_rotation = 1
|
|
prelude = []
|
|
theme = []
|
|
|
|
[[level]]
|
|
id = "site"
|
|
label = "Site"
|
|
title = "A town quarter"
|
|
|
|
[[param]]
|
|
name = "labels"
|
|
type = "bool"
|
|
default = true
|
|
label = "Labels"
|
|
|
|
[[param]]
|
|
name = "running"
|
|
type = "bool"
|
|
default = true
|
|
label = "Animation"
|
|
|
|
[build]
|
|
out = "dist/index.html"
|
|
budget = 6000
|