Copenhagen Phase 3: render.py -> PNG/SVG/PDF map

- render.py: parameterized CLI (--modes, --no-buses, --bus-subset,
  --max-bus-routes, --dpi, --size, --format, --out, --no-basemap, --no-labels)
- basemap: OSM standard tiles via contextily (EPSG:3857)
- two-tone lines: dark casing + colour body per route, z-order
  bus->s_tog->light_rail->regional->metro
- shapeburst fade mask outside City Pass area (distance-transform alpha)
- station labels for metro + S-tog via adjustText
- title + attribution
- styling.yaml: switch basemap to OpenStreetMap.Mapnik (CartoDB now needs API key)
- .gitignore: exclude generated outputs (regenerable via render.py)
- verified: full map, --no-buses, --bus-subset, --modes, SVG all work
This commit is contained in:
2026-09-13 01:27:55 +02:00
parent 8e32ca2b1c
commit d38c280a4e
3 changed files with 287 additions and 1 deletions
+1 -1
View File
@@ -67,7 +67,7 @@ mask:
color: white
basemap:
provider: CartoDB.PositronNoLabels
provider: OpenStreetMap.Mapnik
zoom: 14
labels: