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
@@ -174,6 +174,20 @@ def test_neue_schichten_stehen_im_chunk():
|
||||
assert "roads" not in payload and "centerlines" not in payload
|
||||
|
||||
|
||||
def test_edges_breite_wird_gerundet():
|
||||
"""Befund 8 der Fixwelle: breite ist die gemessene Kantenbreite (Median aus der
|
||||
Distanztransformation) und kommt deshalb ungerundet an - am echten Netz Werte wie
|
||||
31.622776601683793 -, während jede andere Zahl in der Ausgabe auf 2 Stellen gerundet ist.
|
||||
fahrbahn bleibt unverändert: Es ist schon eine der vier festen SECTION-Konstanten."""
|
||||
from shapely.geometry import LineString
|
||||
payload = chunk_payload(0, 0, land=[], surfaces=[], carriageway=[], curb=[], sidewalk=[],
|
||||
markings=[], lots=[], bridges=[],
|
||||
edges=[(LineString([(0, 2400), (10, 2400)]), "wohnstrasse",
|
||||
31.622776601683793, 7.0)],
|
||||
buildings=[], palms=[])
|
||||
assert payload["edges"][0]["breite"] == 31.62
|
||||
|
||||
|
||||
def test_neue_schichten_sind_lauf_stabil():
|
||||
"""Zwei Aufrufe mit vertauschter Eingabe liefern dieselbe Ausgabe (Fixrunde 3 aus Teil 1)."""
|
||||
from shapely.geometry import LineString, box
|
||||
|
||||
Reference in new issue
Block a user