Description
Follow-up tasks from the call on 2026-05-15. This issue collects the next round
of upgrades: navigation aids, richer datasets, bilingual UI, layer
hierarchy, and onboarding documentation.
Tasks
UI / navigation
New datasets / overlays
LiDAR
Documentation
Deliverables
9_viewer-expansion.md
Description
Follow-up tasks from the call on 2026-05-15. This issue collects the next round
of upgrades: navigation aids, richer datasets, bilingual UI, layer
hierarchy, and onboarding documentation.
Tasks
UI / navigation
clicked pixel
clicked pixel
list (a layer hierarchy / collapsible sections).
quartieri); selectingone highlights it in pseudo-3D (extruded block above the rest of
the map).
New datasets / overlays
Add building heights — via DSM/DTM (nDSM pipeline) or via Open Data Bologna building
Open Data Bologna building dataset
https://opendata.comune.bologna.it/explore/dataset/c_a944ctc_edifici_pl/information/?disjunctive.descrizion&disjunctive.origine
Colour the buildings by temperature (heatmap-style fill on
fill-extrusion-color).Colour the buildings and make understandable the wind direction in 3d map on
fill-extrusion-color).Noise overlay - explore:
Apply the official Bologna colour palette (Pantone references)
to the city rendering, so the visual identity matches the comune's
brand.
Bologna 3D (Comune di Bologna) ArcGIS service:
https://sitmappe.comune.bologna.it/Bologna3D/ - specifically the
CartografiaTecnica/MapServer/14layer carries the eaves height(
ALT_UV) per building. Working query example:https://sitmappe.comune.bologna.it/agsfed/rest/services/Basi/CartografiaTecnica/MapServer/14/query?f=json&where=1=1&outFields=ALT_UV,COD_DESCR,ENTE,OBJECTID&outSR=4326
https://sitmappe.comune.bologna.it/agsfed/rest/services/Basi/CartografiaTecnica/MapServer/14/query?f=json&geometry={"spatialReference"%3A{"latestWkid"%3A3857%2C"wkid"%3A102100}%2C"xmin"%3A1262739.7072677985%2C"ymin"%3A5541990.298789958%2C"xmax"%3A1263045.4553809392%2C"ymax"%3A5542296.046903098}&resultOffset=0&resultRecordCount=1000&where=1%3D1&outFields=ALT_UV%2CCOD_DESCR%2CENTE%2COBJECTID&outSR=102100&quantizationParameters={"extent"%3A{"spatialReference"%3A{"latestWkid"%3A7791%2C"wkid"%3A7791}%2C"xmin"%3A677199.381%2C"ymin"%3A4921303.674%2C"xmax"%3A693300.238%2C"ymax"%3A4936274.612}%2C"mode"%3A"view"%2C"originPosition"%3A"upperLeft"%2C"tolerance"%3A1.1943285669555674}&spatialRel=esriSpatialRelIntersects&geometryType=esriGeometryEnvelope&inSR=102100
The field
ALT_UVshould replace theDEFAULT_BUILDING_HEIGHT = 15fallback in the viewer when the DSM-derived height is unavailable.
OSM roof shapes look into
https://wiki.openstreetmap.org/wiki/Key:roof:shape
consuming the OSM
roof:shape.Ortofoto basemap option (in addition to dark/light/satellite).
Regional portal data: https://mappe.regione.emilia-romagna.it/
LiDAR
Documentation
preprocessing, viewer wiring). Goal: a future contributor can add
a new layer end-to-end without reverse-engineering the codebase.
Deliverables
9_viewer-expansion.md