fix(geo): the three "guessed" block heights are a roof, a roof and a bus shelter #23

Merged
zwitschi merged 1 commits from scale-facade-0.1.2 into main 2026-11-08 16:20:46 +01:00
2 changed files with 13 additions and 5 deletions

No files matched your search

+10 -2
View File
@@ -45,7 +45,14 @@ def main():
continue
tag_height = tags.get("height")
levels = tags.get("building:levels")
if tag_height:
# Non-building volumes must not be extruded as two-storey blocks: a
# `building=roof` is an elevated slab and a public-transport shelter is a
# small street structure. Treating them as "2 levels x 3.2 m" produced a
# 6.4 m block for a bus shelter and a canopy.
if tags.get("building") == "roof" or tags.get("amenity") == "shelter":
kind = "roof" if tags.get("building") == "roof" else "shelter"
height, source = 0.0, f"not a building volume ({kind})"
elif tag_height:
height, source = float(tag_height), "height tag"
elif levels:
height, source = float(levels) * LEVEL_HEIGHT, f"levels x {LEVEL_HEIGHT} m"
@@ -60,7 +67,8 @@ def main():
guessed = [r for r in rows if r[5].startswith("GUESS")]
print(f"{len(rows)} buildings in the block, {len(guessed)} with a guessed height\n")
for side, setback, wid, name, height, source in rows:
flag = " <-- guessed" if source.startswith("GUESS") else ""
flag = (" <-- guessed" if source.startswith("GUESS")
else (" <-- not a building volume" if source.startswith("not a building") else ""))
print(f"{side} way {wid:>10} setback {setback:5.1f} m height {height:5.1f} m "
f"({source:26}) {name[:34]}{flag}")
+3 -3
View File
@@ -13,12 +13,12 @@ Actionable task list for this project. This file is the single, central place fo
Suggested blender skills: **references** (reference-image-match and visual-match-checklist templates — measure the guessed heights and colonnade proportions against the photographs), **archviz** (real-world scale and façade composition discipline), **camera-cinematography** (reproduce the reference camera angles when comparing renders to photos).
### Patch tasks
### Patch tasks - active - 01a1b26b-3c94-707f-9665-2f6b4a79b564 (branch `scale-facade-0.1.2`)
- [ ] Correct building scale and street proportions flagged against references.
- [ ] Refine hero façade details where reference photography shows discrepancies.
- [ ] **Replace the placeholder heights.** Three of the fifteen block buildings carry no OSM height and render at a guessed 6.4 m (`Geo/tools/block_height_report.py`). Measure them off the photographs and correct the blockout.
- [ ] Resolve the remaining unknown on the hero: the colonnade currently occupies about 45 % of the height against roughly 50–60 % in the photographs. Fix the vertical proportions.
- [x] **Replace the placeholder heights.** **Resolved 2026-11-08 — they were never unknown buildings.** The three "guessed" ways are not building volumes at all: `1360755125` and `1360755126` are `building=roof` at `layer=1` (elevated canopies) and `1417995292` is `amenity=shelter` / `shelter_type=public_transport` (a transit shelter). The report defaulted them to "2 levels × 3.2 m" and produced the bogus 6.4 m. `Geo/tools/block_height_report.py` now classifies roof/shelter explicitly and reports **0 guessed heights**: all 15 block volumes have a real `height` tag, a `building:levels` derivation, or are correctly excluded as non-building volumes. No photograph measurement was needed, and no frontage building was affected.
- [ ] Resolve the remaining unknown on the hero: the colonnade currently occupies about 45 % of the height against roughly 50–60 % in the photographs. Fix the vertical proportions. **Measured 2026-11-08 from the built mesh** (`Art/blender/hero/hero-facade-2026-11-07.blend`): envelope 0–14.50 m; stylobate 0–2.00; columns 2.00–7.95; capitals 7.95–8.90; entablature 8.90–12.30; parapet 12.30–14.50. So the colonnade (columns + capitals) is **6.90 m = 47.6 %** of the height — inside the range only at the low end. Bringing it to ~55 % needs ~+1.0 m of colonnade taken from the attic/parapet zone, which also carries the motto band and medallions, so it is a **design decision that needs the reference photographs side by side** — left open for owner visual review rather than guessed.
- [ ] Tag `v0.1.2` and write `CHANGELOG.md` entry; then remove this section.
## 0.1.3 — Packaging and setup fixes (patch)