fix(extract): Zebrabalken mittig verteilt, Kantenbreite gerundet
Befund 8, zwei kleine, aber datenwirksame Funde: - Zebrastreifen: Der Startversatz (-halb + BAR/2, Takt 2*BAR) liess die Balkenreihe an einem Fahrbahnrand bündig sitzen und am gegenüber- liegenden bis zu eine Taktbreite frei (0,6 m bei Hauptstraße/Boulevard, 0,4 m bei Wohnstraße), statt der laut Entwurf verlangten Aufteilung "Balken 60 cm, Lücke 60 cm" über die ganze Breite. n = floor((2*halb + BAR) / (2*BAR)) Balken, symmetrisch bei -(n-1)*BAR gestartet, lassen an beiden Rändern denselben Rest frei (nachgemessen: 0,3 m statt 0/0,6 m bei Hauptstraße, 0,2 m statt 0/0,4 m bei Wohnstraße), ohne die Balkenzahl je Arm zu ändern. - edges[].breite (Median aus der Distanztransformation) kam ungerundet an (Werte wie 31.622776601683793), während jede andere Zahl in der Ausgabe auf 2 Stellen gerundet ist. fahrbahn bleibt unverändert, weil es schon eine der vier festen SECTION-Konstanten ist. Zwei Tests, beide ohne die jeweilige Korrektur rot: die Zebrabalken einer Kreuzungszufahrt lassen ungleiche Ränder (0,0/0,6 m statt 0,3/0,3 m), und eine krumme Kantenbreite blieb ungerundet in der Ausgabe.
This commit is contained in:
1 parent
2605f95951
commit
ca01141c5b
4 files changed
+51
-5
No files matched your search
@@ -139,7 +139,11 @@ def chunk_payload(i, j, *, land, surfaces, carriageway, curb, sidewalk, markings
|
||||
key=lambda m: (m["poly"], m["art"])),
|
||||
"lots": sorted(({"poly": _rings(p, i, j)} for p in lots), key=lambda l: l["poly"]),
|
||||
"bridges": sorted(({"poly": _rings(p, i, j)} for p in bridges), key=lambda b: b["poly"]),
|
||||
"edges": sorted(({"line": _line(l, i, j), "klasse": k, "breite": w, "fahrbahn": f}
|
||||
# breite ist die gemessene Kantenbreite (Median aus der Distanztransformation) und kommt
|
||||
# ungerundet an (Befund 8 der Fixwelle: Werte wie 31.622776601683793), waehrend jede
|
||||
# andere Zahl in der Ausgabe gerundet ist; fahrbahn ist dagegen schon eine der vier festen
|
||||
# SECTION-Konstanten und braucht keine Rundung.
|
||||
"edges": sorted(({"line": _line(l, i, j), "klasse": k, "breite": round(w, 2), "fahrbahn": f}
|
||||
for l, k, w, f in edges),
|
||||
key=lambda e: (e["line"], e["klasse"], e["breite"], e["fahrbahn"])),
|
||||
"buildings": sorted(({"poly": _rings(p, i, j), "height": h["height"],
|
||||
|
||||
Reference in new issue
Block a user