From 2e457cc57ce8c2e70de797756eb896120de68a82 Mon Sep 17 00:00:00 2001 From: echo6-autocommit Date: Wed, 22 Apr 2026 18:00:06 +0000 Subject: [PATCH] auto: docs sync 2026-04-22T18:00:06+00:00 Files changed: docs/software/geo-tools.md --- docs/software/geo-tools.md | 47 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 docs/software/geo-tools.md diff --git a/docs/software/geo-tools.md b/docs/software/geo-tools.md new file mode 100644 index 0000000..798ee3c --- /dev/null +++ b/docs/software/geo-tools.md @@ -0,0 +1,47 @@ +# Geo Processing Tools — Cortex + +## Overview + +DEM processing, vector tile generation, and PMTiles manipulation tools installed on cortex for compute-tier geospatial batch jobs. Cortex is compute-only — no persistent operational data lives here. Data flows: pi-nas (archive) → cortex (compute) → pi-nas + VM 1130 (outputs). + +## Installed Tools + +| Tool | Version | Package | Purpose | +|------|---------|---------|---------| +| gdal_contour | GDAL 3.8.4 | gdal-bin (apt) | Generate contour lines from DEM rasters | +| gdalinfo | GDAL 3.8.4 | gdal-bin (apt) | Raster metadata inspection | +| gdal_translate | GDAL 3.8.4 | gdal-bin (apt) | Raster format conversion | +| gdalbuildvrt | GDAL 3.8.4 | gdal-bin (apt) | Virtual raster mosaics | +| ogr2ogr | GDAL 3.8.4 | gdal-bin (apt) | Vector format conversion | +| tippecanoe | v2.49.0 | tippecanoe (apt) | GeoJSON → vector tiles (MBTiles/PMTiles) | +| pmtiles | v1.30.2 | go-pmtiles (binary) | PMTiles inspection, conversion, tile extraction | + +Installed: 2026-04-22 + +## Ephemeral Scratch Convention + +All temporary/staging data goes in `/home/zvx/scratch/`. This directory is cleaned after batch jobs complete. Never treat scratch as persistent storage. + +Typical layout: +``` +/home/zvx/scratch/ +└── nav-processing/ # Current: staged DEM for contour generation + └── hillshade-na.pmtiles # 93 GB terrarium DEM (from pi-nas archive) +``` + +## Terrarium DEM Decode + +The Mapzen Terrarium format encodes elevation in RGB PNG tiles: +``` +elevation_meters = (R * 256 + G + B/256) - 32768 +``` + +To use with GDAL: decode RGB → Float32 elevation array → write as GeoTIFF via VRT with `subClass="VRTRawRasterBand"`. + +## Data Tier Architecture + +| Tier | Host | Role | Example | +|------|------|------|---------| +| Archive | pi-nas (192.168.1.245) | Source of truth, recovery | `/export/data/nav/hillshade-na.pmtiles` | +| Compute | cortex (192.168.1.150) | Batch processing, scratch | `/home/zvx/scratch/nav-processing/` | +| Operational | VM 1130 (192.168.1.130) | Serving tiles via nginx | `/mnt/nav/tiles/` |