# Mondo usando pmtiles mappa con terrain 3D, hillshade e curve di livello ## Come è composto ``` pmtiles ├── backup │   ├── default.conf │   ├── docker-compose.yml │   ├── Dockerfile │   └── index_ok.html ├── data │   ├── planet.pmtiles │   ├── terrain.pmtiles │   └── terrain_terrarium.pmtiles ├── docker-compose.yml ├── Dockerfile ├── nginx │   └── default.conf ├── public │   ├── assets │   │   ├── basemaps │   │   │   └── basemaps.js │   │   ├── maplibre │   │   │   ├── maplibre-gl.css │   │   │   └── maplibre-gl.js │   │   ├── pmtiles │   │   │   └── pmtiles.js │   │   └── terrain │   ├── index(1).html │   ├── index.html │   ├── index_ok_completo.html │   ├── index_ok.html │   └── tiles ├── README.md └── readme.txt ``` ## Download i file pmtiles (non inclusi nel git) inserire i files pmtlies in data per il 2D nel sito protomaps scaricare ``` wget -c https://build.protomaps.com/20260217.pmtiles ``` per il terrain 3D e hillshade ``` wget -c https://download.mapterhorn.com/planet.pmtiles ``` ### Download parziale per esempio ``` pmtiles extract https://build.protomaps.com/20260217.pmtiles my_area.pmtiles --bbox=4.742883,51.830755,5.552837,52.256198 ``` per scaricare 3d solo alpi ``` pmtiles extract \ --bbox=7.51,45.90,7.80,46.05 \ https://download.mapterhorn.com/planet.pmtiles \ public/assets/terrain/w_alps.pmtiles ``` ### altri files che sono già inclusi nel git dentro project/public/assets MapLibre GL JS + CSS ``` curl -L https://unpkg.com/maplibre-gl@3.6.2/dist/maplibre-gl.js -o maplibre/maplibre-gl.js curl -L https://unpkg.com/maplibre-gl@3.6.2/dist/maplibre-gl.css -o maplibre/maplibre-gl.css ``` PMTiles JS ``` curl -L https://unpkg.com/pmtiles@4.4.0/dist/pmtiles.js -o pmtiles/pmtiles.js ``` Protomaps basemaps (solo JS runtime per generare i layers) ``` curl -L https://unpkg.com/@protomaps/basemaps@5/dist/basemaps.js -o basemaps/basemaps.js ``` Glyphs + sprites dal repo ufficiale (ZIP) Apri https://protomaps.github.io/basemaps-assets/ e scarica lo ZIP; ``` wget https://github.com/protomaps/basemaps-assets/archive/refs/heads/main.zip unzip main.zip ``` poi estrai in public/assets/fonts e public/assets/sprites/v4 - fonts/{fontstack}/{range}.pbf - sprites/v4/light.png, light.json, light@2x.png, light@2x.json font Noto Sans da scaricare da ``` https://fonts.google.com/ ``` in quanto manca la versione Bold poi andare in ``` https://maplibre.org/font-maker/ ``` convertire solo il font Noto Sans Bold che manca e metterlo in public/assets/fonts ## Avviare nella dir principale ``` sudo docker compose up --build -d ``` se si modifica ``` sudo docker compose down ```