Use city bounding box from API and accumulate metadata regions#10
Use city bounding box from API and accumulate metadata regions#10swhitt wants to merge 4 commits into
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||||
User description
Inspired by #4. Two changes:
PR Type
Enhancement, Tests
Description
Use actual city bounding box from Nominatim API instead of center point with buffer
Add tqdm progress bar for tile download tracking with detailed statistics
Implement DownloadStatus enum to track downloaded, cached, and failed tiles
Accumulate metadata regions instead of overwriting, supporting multiple cities
Improve progress reporting with elapsed time and per-tile status breakdown
Diagram Walkthrough
File Walkthrough
meshtastic_tiles.py
Add bounding box API support and metadata accumulationmeshtastic_tiles.py
DownloadStatusenum to track tile download states (DOWNLOADED,CACHED, FAILED)
get_coordinates()to extract and return bounding boxcoordinates (north, south, east, west) from Nominatim API
get_bounding_box_for_cities()to use actual city boundariesinstead of center point with buffer
generate_tiles()with real-timestatistics for new, cached, and failed tiles
generate_metadata()to accumulate regions in metadata.jsonwith support for updating existing regions and expanding bounds/zoom
ranges
README.md
Update dependencies and remove completed taskREADME.md
tqdmto pip install dependenciesimplemented