feat(geo): adopt Mapbox building calibration (3.1 m per level) #26

Merged
zwitschi merged 2 commits from mapbox-adopt-0.1.2 into main 2026-11-08 16:38:29 +01:00
Owner

Summary

Owner decision: adopt Mapbox — both findings from the cross-check are applied.

Calibration adopted

  • LEVEL_HEIGHT 3.2 → 3.1 m in Geo/tools/block_height_report.py, and the Blosm --level-height default in Art/blender/blockout/blosm_blockout.py.
  • HEIGHT_OVERRIDES for the three rear building=yes/apartments structures (ways 1490910971, 1492058875, 1492747608) at 3.0 m, where our 2-level fallback rendered 6.4 m blocks.
  • classify_height(tags, level_height, way_id) takes the way id so overrides apply; mapbox_buildings.py passes it, so table and cross-check now agree: 66 match, 6 non-building, 0 close/disagree.

Geometry follows the data

  • Blockout regenerated at 3.1 m. Object names are preserved, so the frontage exporter still maps element.020 / element / element.019 / named buildings — 6/6 exported.
  • Frontage re-imported, DemoMap rebuilt, packaged Development build EXIT=0; -qaselftest all PASS (walk 761 cm, reset, pause, transect 1456 samples / 0 holes, wall probe 0/35).
  • Measured effect: 6922 42.1 → 39.1 m, El Capitan Theatre 20.0 → 20.5 m — both now ~1.9 m above their table height, which is Blosm's roof mass (levels × 3.1 = 37.2 / 18.6), documented in Art/blender/README.md.

Docs

Art/blender/README.md scale table + calibration/roof-mass note; TODO.md scale item closed; MEMORY.md records the decision and the gotcha that blockout regeneration must re-verify the element.* frontage mapping.

Verification: 29 tool tests OK; prettier --check clean.

## Summary Owner decision: **adopt Mapbox** — both findings from the cross-check are applied. ### Calibration adopted - **`LEVEL_HEIGHT` 3.2 → 3.1 m** in `Geo/tools/block_height_report.py`, and the Blosm `--level-height` default in `Art/blender/blockout/blosm_blockout.py`. - **`HEIGHT_OVERRIDES`** for the three rear `building=yes`/`apartments` structures (ways 1490910971, 1492058875, 1492747608) at **3.0 m**, where our 2-level fallback rendered 6.4 m blocks. - `classify_height(tags, level_height, way_id)` takes the way id so overrides apply; `mapbox_buildings.py` passes it, so table and cross-check now agree: **66 match, 6 non-building, 0 close/disagree**. ### Geometry follows the data - Blockout regenerated at 3.1 m. Object names are preserved, so the frontage exporter still maps `element.020` / `element` / `element.019` / named buildings — **6/6 exported**. - Frontage re-imported, DemoMap rebuilt, packaged Development build `EXIT=0`; `-qaselftest` all PASS (walk 761 cm, reset, pause, transect 1456 samples / 0 holes, wall probe 0/35). - Measured effect: **6922 42.1 → 39.1 m**, **El Capitan Theatre 20.0 → 20.5 m** — both now ~1.9 m above their table height, which is Blosm's roof mass (`levels × 3.1` = 37.2 / 18.6), documented in `Art/blender/README.md`. ### Docs `Art/blender/README.md` scale table + calibration/roof-mass note; `TODO.md` scale item closed; `MEMORY.md` records the decision and the gotcha that blockout regeneration must re-verify the `element.*` frontage mapping. Verification: 29 tool tests OK; `prettier --check` clean.
zwitschi added 2 commits 2026-11-08 16:38:25 +01:00
Owner decision: adopt the two findings from the Mapbox cross-check.

- LEVEL_HEIGHT 3.2 -> 3.1 m in block_height_report.py and the Blosm
  --level-height default; every levels-derived building drops ~0.6 m per 6
  levels, matching Mapbox.
- HEIGHT_OVERRIDES for the three rear building=yes/apartments structures that
  Mapbox gives as single storey (3.0 m) where our 2-level fallback rendered
  6.4 m blocks.
- classify_height() takes an optional way_id so overrides apply; the Mapbox
  cross-check passes it and now reports 66 match / 6 non-building / 0 disagree.
- Geometry follows: blockout regenerated at 3.1 (frontage object names
  preserved, 6/6 exported), frontage re-imported, DemoMap rebuilt, packaged
  -qaselftest PASS (walk, reset, pause, transect 0 holes, wall probe 0/35).
- Docs: Art/blender/README scale table + a note that Blosm adds ~1.9 m roof mass
  above levels x levelHeight; TODO item closed; MEMORY records the gotcha that
  blockout regeneration must re-verify the element.* frontage mapping.
zwitschi merged commit 5ffe62f6aa into main 2026-11-08 16:38:29 +01:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: zwitschi/gig-line#26