93 lines
2.2 KiB
Bash
Executable file
93 lines
2.2 KiB
Bash
Executable file
#!/bin/zsh
|
|
|
|
###############################################
|
|
# CONFIG
|
|
###############################################
|
|
|
|
PYTHON="/usr/bin/python3"
|
|
|
|
TERRAIN_ROOT="/Volumes/terrain/tiles"
|
|
TILES_ROOT="/Volumes/SSD4T/tiles_italy_new"
|
|
LOG_DIR="/Volumes/SSD4T/logs_new"
|
|
RESUME_DIR="/Volumes/SSD4T/resume_new"
|
|
|
|
Z_MIN=7
|
|
Z_MAX=14
|
|
|
|
mkdir -p "$TILES_ROOT" "$LOG_DIR" "$RESUME_DIR"
|
|
|
|
|
|
###############################################
|
|
# CHECK PYTHON
|
|
###############################################
|
|
|
|
if [ ! -x "$PYTHON" ]; then
|
|
echo "[ERRORE] Python non trovato: $PYTHON"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
###############################################
|
|
# LOOP SU TUTTI I DEM ITALIANI
|
|
###############################################
|
|
|
|
DEM_LIST=$(find "$TERRAIN_ROOT" -maxdepth 1 -type d -name "Copernicus_DSM_COG_10_*_DEM" \
|
|
| grep -E "N(3[6-9]|4[0-7])_00_E(00[6-9]|0(1[0-9]))_00" \
|
|
| sort)
|
|
|
|
echo "[INFO] Trovati $(echo "$DEM_LIST" | wc -l | tr -d ' ') DEM italiani"
|
|
|
|
for DEM_DIR in $DEM_LIST; do
|
|
BASENAME=$(basename "$DEM_DIR")
|
|
TIF="$DEM_DIR/${BASENAME}_terrain_rgb.tif"
|
|
|
|
if [ ! -f "$TIF" ]; then
|
|
echo "[WARN] Nessun TIFF TerrainRGB in $DEM_DIR"
|
|
continue
|
|
fi
|
|
|
|
OUT_DIR="$TILES_ROOT/$BASENAME"
|
|
mkdir -p "$OUT_DIR"
|
|
|
|
RESUME_FILE="$RESUME_DIR/${BASENAME}.done"
|
|
LOGFILE="$LOG_DIR/${BASENAME}.log"
|
|
|
|
if [ -f "$RESUME_FILE" ]; then
|
|
echo "[SKIP] Tiles già generati per $BASENAME"
|
|
continue
|
|
fi
|
|
|
|
echo "[INFO] Genero tiles per $BASENAME"
|
|
|
|
{
|
|
echo "----------------------------------------"
|
|
echo "DEM: $BASENAME"
|
|
echo "Input: $TIF"
|
|
echo "Output: $OUT_DIR"
|
|
echo "Zoom: $Z_MIN-$Z_MAX"
|
|
echo "Start: $(date)"
|
|
echo "----------------------------------------"
|
|
|
|
CORES=$(sysctl -n hw.ncpu 2>/dev/null || echo 4)
|
|
|
|
$PYTHON terrain_rgb_to_tiles.py "$TIF" "$OUT_DIR" "$Z_MIN" "$Z_MAX" "$CORES"
|
|
STATUS=$?
|
|
|
|
echo "End: $(date)"
|
|
echo "Status: $STATUS"
|
|
echo "----------------------------------------"
|
|
|
|
} >> "$LOGFILE" 2>&1
|
|
|
|
if [ "$STATUS" -ne 0 ]; then
|
|
echo "[ERRORE] Tiles falliti per $BASENAME"
|
|
continue
|
|
fi
|
|
|
|
touch "$RESUME_FILE"
|
|
echo "[OK] Tiles creati per $BASENAME"
|
|
|
|
done
|
|
|
|
echo "[INFO] Completato!"
|
|
|