feat(extract): Parkdatei für Flamingo Park lesen und prüfen

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
knsoandClaude Sonnet 5 committed 2026-09-16 06:35:15 +02:00
1 parent 3d4d8380c8
commit 1b0011874e
3 files changed
+343

No files matched your search

+56
View File
@@ -0,0 +1,56 @@
# Flamingo Park nach OpenStreetMap: echte Wege, Felder, Plätze, Pool, Parkplatz und Gebäude im Park
# J6 bis K8, dazu die Jefferson Avenue als gerade Verlängerung nach Süden.
# Spec: docs/superpowers/specs/2026-09-15-flamingo-park-design.md
# Welt-x/Welt-y wie auf der Minimap; echte Punkte als [Breite, Länge].
osm = "osm/flamingo-park.json"
[fit]
# Innenkante des echten Parks zwischen Michigan Ave, Meridian Ave, 11th Street und der Feldkante im
# Norden. Die Umrechnung ist affin über diese drei Ecken (Variante D).
real = { sw = [25.781905, -80.138373], se = [25.781960, -80.136373], nw = [25.786524, -80.138527] }
# Innenkante der vier Straßen um den Park im Spiel, gemessen an map.png.
game = { sw = [1418.3, 658.6], se = [1661.5, 672.8], ne = [1626.0, 1096.0], nw = [1382.1, 1074.2] }
scale_u = 1.0 # quer wie in echt
offset_u = 6.25 # Meter vom Westrand: echte Tribüne 1,19 m, echte Kleinbauten 1,21 m neben den Orten
[[anchor]] # Prüfung der Einpassung, höchstens 1,5 m Abweichung (tests/test_park_fit.py)
name = "Tribüne"
real = [25.786336, -80.138358] # Mitte von OSM way 436030691
game = [1405.0, 1058.6] # Mitte der echten Tribüne im Spiel laut Tribünen-Spec
[[anchor]]
name = "Hood Yard"
real = [25.786407, -80.137540] # Übergang Container/Schuppen laut Hood-Yard-Spec
game = [1489.0, 1067.5]
# Sperrflächen: Außenmaße der Orte aus src/world/places.js (tests/parkData.test.js vergleicht beide).
[[keepout]]
name = "hood-yard"
at = [1489.0, 1067.5]
rotation = 0
bounds = { min_x = -17.15, max_x = 17.0, min_z = -13.4, max_z = 8.6 }
[[keepout]]
name = "tribuene"
at = [1409.9, 1051.1]
rotation = 45
bounds = { min_x = -20.8, max_x = 20.8, min_z = -14.82, max_z = 0.8 }
[paths]
main_width = 6.0 # "Flamingo Park Path (13th St)" und "Flamingo Park Path (Jefferson Ave)"
width = 3.0 # alle übrigen Fußwege
service_width = 6.0 # Parkplatzgasse und Zufahrt
[buildings]
default_height = 4.0 # wenn OpenStreetMap keine Höhe kennt
[street] # Jefferson Avenue südlich des Parks, bis zur Querstraße bei y ≈ 332
from = [1516.5, 664.0]
to = [1545.2, 334.2]
width = 12.0
remove_buildings = [[1513.0, 628.0], [1532.0, 426.0]]
# Gassenstreifen zwischen 11th Street (Fahrbahnkante y 644,5–645,5) und der Querstraße (Fahrbahnkante
# y 339,5). Die ausgerundeten Ecken bleiben bis auf je 1–3 m stehen, die Fahrbahnen berührt es nicht.
alley_cut = [[1470, 644], [1496, 644], [1500, 600], [1506, 540], [1514, 460], [1520, 380], [1520, 340.5],
[1497, 340.5], [1486, 380], [1480, 460], [1474, 540], [1468, 600]]