feat(ui-lvgl): vector region packs, PBF input, region list

One .vpk file per region in /vmap (header, sorted index of tiles and
points, then the data), read in place with the index in PSRAM; loose
{dz}/{x}/{y}.vt/.vp files still work. osm_vector.py writes packs
(--pack/--name), reads OSM PBF extracts for a box (--pbf/--bbox, via
pyosmium) and picks label languages (--lang). Map tools > Vector regions
lists the packs on the card: show one on the map, delete it. No
on-device download: packs are made with the tool.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Jakub
2026-09-27 13:54:25 +02:00
co-authored by Claude Opus 5.5
parent 16144bd48b
commit 002f478231
11 changed files with 509 additions and 61 deletions
+12 -2
View File
@@ -267,8 +267,18 @@ Ideas to come back to (2026-09-26):
- [x] Contours on the vector map: osm_vector.py --dem (tools/maps/dem.py,
standard library: Terrain Tiles from AWS Open Data, SRTM ~25 m,
smoothed, marching squares); 100 m lines from z12, 20 m from z15.
- [ ] Vector maps next: a PBF pipeline for regions + download on the
device, styling (anti-aliasing, dark theme).
- [x] Vector regions: a region is one pack file (/vmap/*.vpk, index +
tiles + points, read in place; osm_vector.py --pack); input from
Overpass or Geofabrik PBF extracts (--pbf, pyosmium; several across a
border) for a --bbox; --lang for names. Map tools > Vector regions
lists the packs (show, delete). No download on the device: packs are
made by the user.
- [ ] A Tools page on the solo site (meshcore-solo-site, beside the sim):
vector pack maker in the browser (pick a box on a map, Overpass +
DEM, a JS port of osm_vector.py in a worker, .vpk to save), the GPX
downloader (tools/gpx-downloader) and screenshots (tools/screenshot.py
over Web Serial).
- [ ] Vector map styling: anti-aliasing, dark theme.
User list, second batch (2026-09-26):