Understanding Distance
The --distance (or -d) flag controls the map radius in meters from the center point. This determines how much of the city is visible on your poster.
python create_map_poster.py -c "Paris" -C "France" -d 10000
Default: 18,000 meters (18km radius)
The distance represents the radius from the center point, not the diameter. The actual coverage area is a circle with this radius.
Quick Reference
| Distance Range | Best For | Example Cities |
|---|
| 4,000-6,000m | Small cities, dense centers, high detail | Venice, Marrakech medina, Amsterdam center |
| 8,000-12,000m | Medium cities, downtown focus, iconic districts | Paris, Barcelona, Manhattan |
| 15,000-20,000m | Large metros, full city view, sprawling layout | Tokyo, Mumbai, Los Angeles |
Distance by City Type
Small / Dense Cities (4,000-6,000m)
Perfect for capturing intricate street patterns in compact areas.
python create_map_poster.py \
-c "Venice" -C "Italy" \
-t blueprint -d 4000
# Captures the entire historic center with canal detail
Why small distances?
- Captures fine-grained street patterns
- Shows architectural details
- Perfect for walkable historic centers
- Emphasizes unique urban layouts
Medium Cities (8,000-12,000m)
Ideal for focused downtown areas and iconic districts.
python create_map_poster.py \
-c "Paris" -C "France" \
-t pastel_dream -d 10000
# Shows the radial Haussmann street pattern
Why medium distances?
- Balances coverage with detail
- Shows recognizable landmarks and districts
- Captures the “heart” of major cities
- Good for cities with distinct downtown cores
Large Metropolitan Areas (15,000-20,000m)
For sprawling cities and comprehensive coverage.
python create_map_poster.py \
-c "Tokyo" -C "Japan" \
-t japanese_ink -d 15000
# Shows the vast, organic street network
Why large distances?
- Shows the full scale of megacities
- Captures multiple districts at once
- Reveals overall urban morphology
- Good for cities without a single center
Distance by Urban Pattern
Grid Pattern Cities
Cities with regular street grids look great at medium distances.
# Manhattan, NYC - Iconic grid
python create_map_poster.py -c "New York" -C "USA" -t noir -d 12000
# Barcelona - Eixample district
python create_map_poster.py -c "Barcelona" -C "Spain" -t warm_beige -d 8000
# Chicago - Urban grid
python create_map_poster.py -c "Chicago" -C "USA" -t contrast_zones -d 12000
Recommended: 8,000-12,000m
Radial Pattern Cities
Cities with star/radial patterns shine at medium distances.
# Paris - Haussmann boulevards radiating from Arc de Triomphe
python create_map_poster.py -c "Paris" -C "France" -t pastel_dream -d 10000
# Moscow - Ring road system
python create_map_poster.py -c "Moscow" -C "Russia" -t noir -d 12000
# Washington DC - L'Enfant Plan
python create_map_poster.py -c "Washington" -C "USA" -t blueprint -d 10000
Recommended: 8,000-12,000m
Organic / Historic Cities
Cities with medieval or organic layouts need smaller distances for detail.
# Rome - Ancient street layout
python create_map_poster.py -c "Rome" -C "Italy" -t warm_beige -d 8000
# Marrakech - Medina maze
python create_map_poster.py -c "Marrakech" -C "Morocco" -t terracotta -d 5000
# Jerusalem - Old City
python create_map_poster.py -c "Jerusalem" -C "Israel" -t blueprint -d 6000
Recommended: 4,000-8,000m
Waterfront Cities
Coastal and river cities benefit from distances that capture the water interface.
# Venice - Canal network
python create_map_poster.py -c "Venice" -C "Italy" -t blueprint -d 4000
# Amsterdam - Concentric canals
python create_map_poster.py -c "Amsterdam" -C "Netherlands" -t ocean -d 6000
# Sydney - Harbour city
python create_map_poster.py -c "Sydney" -C "Australia" -t ocean -d 12000
# San Francisco - Bay and peninsula
python create_map_poster.py -c "San Francisco" -C "USA" -t sunset -d 10000
Recommended: 4,000-12,000m (depends on city size)
River Cities
Cities bisected by rivers need enough distance to show both banks.
# London - Thames curves
python create_map_poster.py -c "London" -C "UK" -t noir -d 15000
# Budapest - Danube split
python create_map_poster.py -c "Budapest" -C "Hungary" -t copper_patina -d 8000
# Paris - Seine bends
python create_map_poster.py -c "Paris" -C "France" -t pastel_dream -d 10000
Recommended: 8,000-15,000m
Fine-Tuning Distance
Start with Defaults
If unsure, start with the city-type default:
# Small/dense city - try 5000m
python create_map_poster.py -c "Venice" -C "Italy" -d 5000
# Medium city - try 10000m
python create_map_poster.py -c "Paris" -C "France" -d 10000
# Large city - try 18000m (default)
python create_map_poster.py -c "Tokyo" -C "Japan"
Iterative Adjustment
- Generate a test poster
- Evaluate coverage:
- Too zoomed out? Reduce distance by 2,000-4,000m
- Too zoomed in? Increase distance by 2,000-4,000m
- Regenerate and compare
Generate multiple posters with different distances using --all-themes to compare quickly:# Generate at 8km
python create_map_poster.py -c "Paris" -C "France" -d 8000 -t noir
# Generate at 12km
python create_map_poster.py -c "Paris" -C "France" -d 12000 -t noir
Override Center Point
For precise control, manually set the center coordinates:
# Focus on Central Park, NYC
python create_map_poster.py \
-c "New York" -C "USA" \
-lat 40.776676 -long -73.971321 \
-d 8000
# Focus on Eiffel Tower, Paris
python create_map_poster.py \
-c "Paris" -C "France" \
-lat 48.8584 -long 2.2945 \
-d 6000
Geocoding services may not always return the ideal center point. Use coordinate overrides for precision.
Distance Comparison Examples
Same city, different distances to show the effect:
Paris
python create_map_poster.py \
-c "Paris" -C "France" \
-d 6000
# Shows central arrondissements only
New York
python create_map_poster.py \
-c "New York" -C "USA" \
-d 8000
# Shows Manhattan core
Common Distance Values
Frequently used distance presets:
| Distance | Coverage | Typical Use |
|---|
| 3,000m | 3km radius | Neighborhoods, small districts |
| 5,000m | 5km radius | Historic centers, old towns |
| 8,000m | 8km radius | Downtown cores, central districts |
| 10,000m | 10km radius | Full city centers |
| 12,000m | 12km radius | Extended metropolitan core |
| 15,000m | 15km radius | Major cities, full coverage |
| 18,000m | 18km radius | Default - Large city overview |
| 20,000m | 20km radius | Megacity sprawl, maximum coverage |
Technical Notes
Distance Compensation
The tool automatically compensates for aspect ratio by fetching slightly more data than requested:
compensated_dist = dist * (max(height, width) / min(height, width)) / 4
This ensures the specified distance is fully covered regardless of poster dimensions.
Data Fetching
Larger distances mean:
- Longer download times (more OSM data)
- Higher memory usage (more features to process)
- Larger cache files (data is cached locally)
Very large distances (>25km) may cause:
- Slow performance
- Memory issues
- Overpass API timeouts
Stay within the recommended 4,000-20,000m range for best results.
See Also
Basic Usage
Common commands and usage patterns
Command Reference
Complete flag documentation
Resolution Guide
Configure output dimensions
Examples
City-specific examples and recommendations