# AWS Dem Terrain Tiles

> Descarga tiles DEM Terrarium de AWS con bbox y zooms.

- Skill: `ntizar/aws-dem-terrain-tiles` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ntizar/aws-dem-terrain-tiles`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ntizar/aws-dem-terrain-tiles/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- License: MIT
- Author: ntizar (https://skillmd.com/u/ntizar)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ntizar/aws-dem-terrain-tiles

---

# AWS Terrarium DEM Tile Downloader

## Resumen
CLI Python que descarga y verifica tiles de elevación (Digital Elevation Model) con codificación **Terrarium** del dataset **AWS Open Data Terrain Tiles**. Define el área y los niveles de zoom y genera los tiles en estructura estándar `z/x/y` más un `tiles.json` listo para proyectos de mapas. Requiere Python 3.7+.

## Instalación
```bash
git clone <repo-url> && cd AWS-Dem-Downloader
python3 -m venv venv
source venv/bin/activate          # En Windows: venv\Scripts\activate
pip install -r requirements.txt
chmod +x terrain_cli.py           # Linux/macOS (opcional)
```

## Uso (CLI real)
```bash
./terrain_cli.py [OPTIONS] COMMAND [ARGS]...
./terrain_cli.py download [OPTIONS] -- <min_lon,min_lat,max_lon,max_lat>
```
- **Importante**: el `--` antes del BBOX es **obligatorio** si tu longitud mínima (`min_lon`) es negativa — indica que es argumento, no opción.
- **Argumento** `<min_lon,min_lat,max_lon,max_lat>`: bounding box WGS84.
- **Opciones**:
  - `-z, --zoom-range <min,max>`: niveles de zoom (ej. `10,14`). Default: `10,15`. Max: `15`.
  - `-o, --output-dir <dir>`: dónde guardar tiles. Default: `terrain_tiles`.
  - `-c, --concurrency <int>`: hilos de descarga. Default: `10`.
  - `--only-missing`: modo inteligente — descarga solo los tiles que faltan.
- Opciones globales: `-h, --help`, `--version`.

## Patrones / Arquitectura
- Descarga de precisión por bounding box.
- Control de zoom (0-15).
- Descarga concurrente multihilo.
- Verificación de integridad del caché (chequeo dimensional básico de tiles corruptos/faltantes).
- Genera `tiles.json` metadata compatible con MapLibre GL JS, Leaflet, Mapbox GL JS, etc.
- Informes JSON detallados del estado de descarga/verificación, incluyendo fallos.

## Pitfalls
- Omitir el `--` delante de un bbox con longitud negativa rompe el parseo.
- `--only-missing` ahorra tiempo/ancho de banda al reutilizar caché.

## Verificación
- Descargar un bbox pequeño, confirmar estructura `z/x/y`, `tiles.json` y el informe JSON sin fallos.

## Referencia
- Repo: https://github.com/orcunkok/AWS-Dem-Downloader (MIT). Fuente de datos: AWS Open Data Terrain Tiles (codificación Terrarium).

