Fix Agency cadastral WMS coordinate system

This commit is contained in:
livio committed 2026-09-11 20:57:15 +02:00
1 parent abc9516a0d
commit ab43c5ca30
4 files changed
+31 -8

No files matched your search

+2 -2
View File
@@ -28,8 +28,8 @@
<ApplicationId>com.companyname.lmemappecatastaliapp</ApplicationId> <ApplicationId>com.companyname.lmemappecatastaliapp</ApplicationId>
<!-- Versions --> <!-- Versions -->
<ApplicationDisplayVersion>0.2.5</ApplicationDisplayVersion> <ApplicationDisplayVersion>0.2.6</ApplicationDisplayVersion>
<ApplicationVersion>9</ApplicationVersion> <ApplicationVersion>10</ApplicationVersion>
<!-- To develop, package, and publish an app to the Microsoft Store, see: https://aka.ms/MauiTemplateUnpackaged --> <!-- To develop, package, and publish an app to the Microsoft Store, see: https://aka.ms/MauiTemplateUnpackaged -->
<WindowsPackageType>None</WindowsPackageType> <WindowsPackageType>None</WindowsPackageType>
+1
View File
@@ -29,6 +29,7 @@ App .NET MAUI Blazor Hybrid per Android, iOS, Mac Catalyst e Windows, pensata pe
- Comandi separati per rimuovere le particelle selezionate o pulire importazioni, disegni, POI e traccia GPS. - Comandi separati per rimuovere le particelle selezionate o pulire importazioni, disegni, POI e traccia GPS.
- Anteprima WMS ufficiale mostrata dentro l'app senza aprire una nuova finestra Android. - Anteprima WMS ufficiale mostrata dentro l'app senza aprire una nuova finestra Android.
- Confini delle particelle selezionate e della particella GPS sovrapposti anche all'anteprima WMS corrente. - Confini delle particelle selezionate e della particella GPS sovrapposti anche all'anteprima WMS corrente.
- Richieste WMS catastali in EPSG:4258 compatibili con il servizio AdE; i numeri particella sono visibili alle scale di dettaglio consentite dal servizio (circa zoom 17 o superiore).
- Collegamenti separati al Geoportale pubblico e all'Area riservata AdE per CAPTCHA, SPID/CIE e download ufficiali. - Collegamenti separati al Geoportale pubblico e all'Area riservata AdE per CAPTCHA, SPID/CIE e download ufficiali.
## Limite ufficiale AdE da considerare ## Limite ufficiale AdE da considerare
+1 -1
View File
@@ -13,7 +13,7 @@ public sealed class AzureMapsService
public AzureMapsService() public AzureMapsService()
{ {
_httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("LMEMappeCatastali/0.2.5"); _httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("LMEMappeCatastali/0.2.6");
_httpClient.DefaultRequestHeaders.Accept.ParseAdd("application/json"); _httpClient.DefaultRequestHeaders.Accept.ParseAdd("application/json");
} }
+27 -5
View File
@@ -26,6 +26,10 @@ const lmeState = {
azureAttribution: null azureAttribution: null
}; };
// AdE publishes the cadastral WMS in ETRS89. WMS 1.1.1 keeps the longitude,
// latitude BBOX order expected by Leaflet while sending the required CRS code.
const cadastreCrs = L.extend({}, L.CRS.EPSG4326, { code: "EPSG:4258" });
window.lmeMap = { window.lmeMap = {
init, init,
showSearchResult, showSearchResult,
@@ -291,7 +295,10 @@ function exportCadastreView() {
previewMap.hidden = false; previewMap.hidden = false;
const highlightedCount = lmeState.selectedParcelsLayer.getLayers().length const highlightedCount = lmeState.selectedParcelsLayer.getLayers().length
+ lmeState.gpsParcelLayer.getLayers().length; + lmeState.gpsParcelLayer.getLayers().length;
setInfo(`Vista WMS caricata con ${layers.length} layer e ${highlightedCount} particelle evidenziate.`); const zoomHint = layers.includes("codice_plla") && lmeState.map.getZoom() < 17
? " Ingrandisci almeno fino a zoom 17 per leggere i numeri delle particelle."
: "";
setInfo(`Vista WMS caricata con ${layers.length} layer e ${highlightedCount} particelle evidenziate.${zoomHint}`);
}; };
image.onerror = () => { image.onerror = () => {
previewMap.hidden = true; previewMap.hidden = true;
@@ -782,16 +789,31 @@ function refreshCadastreLayer() {
return; return;
} }
lmeState.cadastre = L.tileLayer.wms(cadastreUrl(), { const cadastreLayer = L.tileLayer.wms(cadastreUrl(), {
layers: layers.join(","), layers: layers.join(","),
format: "image/png", format: "image/png",
transparent: true, transparent: true,
version: "1.3.0", version: "1.1.1",
crs: L.CRS.EPSG4326, crs: cadastreCrs,
maxZoom: 22, maxZoom: 22,
opacity: lmeState.cadastreOpacity, opacity: lmeState.cadastreOpacity,
attribution: "Agenzia delle Entrate - CC BY 4.0" attribution: "Agenzia delle Entrate - CC BY 4.0"
}).addTo(lmeState.map); });
let errorShown = false;
cadastreLayer.on("tileerror", () => {
if (errorShown) {
return;
}
errorShown = true;
setInfo("Layer catastali non caricati dal servizio AdE. Controlla la connessione e riprova.");
});
cadastreLayer.on("load", () => {
errorShown = false;
});
lmeState.cadastre = cadastreLayer.addTo(lmeState.map);
} }
function activeCadastreLayers() { function activeCadastreLayers() {