Zkušenosti s API pro nahlížení do katastru?

Zdravím, řeším do jednoho projektu nějaká napojení na API katastru.

Snažím se zjistit, jestli by bylo možné mít v projektu “embedded” mapové prohlížení katastru.
Konkrétně bych chtěl:

  • v aplikaci budu mít mapu, podobnou této, včetně vyhledávání.
    • představuju si, že tohle by mělo jít i tak, že nějaké URL co vrací tile dám např. do Leaflet.js, ale ani to se mi nedaří.
  • můžu kliknout na parcelu, to mi číslo dané parcely vytáhne někam do inputu.
    • to už asi vyžaduje opravdu nějakou embed verzi (jako např. SDK Mapy.cz/Google Maps).

Víte někdo o tom, jak se tohle dá udělat? Znáte nějakou aplikaci, co to dělá? (já našel zatím https://geopas.cz/)

Prohlížím nějaká API (WMS KN, WMTS KN), a že bych z toho byl úplně moudrý se říct nedá (nemám s vývojem mapových aplikací zkušenosti).

Díky za jakékoli rady, tipy.

2 Líbí se

Katastrální mapy používají dnes i mapy.cz. Obecně je potřeba se dostat ke geometrii parcel. Katastr běží v S-JTSK (křovák), tedy je potřeba si rozmyslet, zda sever bude nahoře a nebo ne. Pokud má mapa vypadat normálně, bude potřeba všechny souřadnice přepočítat do GPS.

WMS/WFS služby jsou fajn, ale jsou velmi pomalé a pro nějaké mapování se podle mě tolik nehodí (možná mě někdo vyvede z omylu, ale nám to běhá dost pomalu). Osobně bych se asi vydal spíše cestou RÚIANu: Veřejný dálkový přístup k datům RÚIAN. Ten nemá služby, ale data + popis struktur. Má všechny územní prvky, má geometrii parcel (nemá ZE parcely, ale ty netřeba řešit). Má pravidelné denní snapshoty změn, které lze stahovat a aktualizovat si tak vlastní lokální DB, která může běžet vyladěně a velmi rychle. Nevím přesně, jaké další údaje je potřeba mít, čísla parcel tam jsou.

Teoreticky si lze pro nějaké detaily, které by v RÚIAN nebyly, sáhnout třeba i do WSDP. Zajímavá data poskytuje i nové REST API: https://api-kn.cuzk.gov.cz/. Tam nemám provozní zkušenost, chystám se teprve na ni.

5 Líbí se

Díky!

Na mapy koukám, ale v dokumentaci jejich REST API to nevypadá, že by data z katastru nabízeli.

Skladovat a udržovat ta data u sebe se mi spíš nechce, ale asi je to taky varianta.
Co ale nevím je jak dělat to interaktivní zobrazení (jak píšu, nemám s tím zkušenosti). To by z těchto dat šlo?

Potřebuju jenom čísla parcel, zbytek pak počítám, že budu dohledávat přes to zmíněné API.

Já bohužel taky nemám velké zkušenosti ohledně tvoření interaktivních map, já jedu spíše v těch datech. Dívám se, že WMS KN i WMTS KN mají i WGS 84 neboli GPS verzi, takže není třeba nic přepočítávat. Jak zařídit, abych věděl, kam mi uživatel kliknul, to nevím :confused: To jsem teda moc nepomohl.

3 Líbí se

Umí to třeba ten Locus - mapy zobrazuje svoje a přes ně WMS vrstvu z katastru, např. čísla a hranice parcel. Na proklik potom ukazuje web s detailem přímo z cuzk. Ale detaily, jak na to, neznám :slight_smile:

1 Líbí se

Jestli Locus to API katastru dotazuje z klienta, tak už by šlo očíhnout, co lítá po drátu, a podle toho se zorientovat? Mám pozitivní zkušenosti třeba s mitmproxy. (Už je to samozřejmě trochu hardcore, mnohem lepší by bylo přečíst to někde v dokumentaci, ale občas takováhle řešení zafungujou :–)

1 Líbí se

Locus je aplikace do Androidu, tam se to bude odchytávat hůř, jen s rootem apod. Na druhou stranu, podle ChatGPT je to hrozně jednoduché - Leaflet má podporu pro WMS (Using WMS and TMS services - Leaflet - a JavaScript library for interactive maps), tj. stačí zadat endpoint a vybrat vrstvu,např.

// WMS vrstva ČÚZK
L.tileLayer.wms('https://wms.cuzk.cz/wms.asp?', {
  layers: 'KN', // vybraná vrstva
  format: 'image/png',
  transparent: true,
  version: '1.1.1',
  attribution: '© ČÚZK',
  crs: L.CRS.EPSG3857  // pokud služba podporuje Web Mercator
}).addTo(map);

To by odpovídalo tomu, že těch WMS vrstev mají v Locusu fakt hodně = je to API, které stačí napojit :slight_smile:

2 Líbí se

Jestli jde jenom o zobrazení parcel a čísel, držel bych se WMS nebo WMTS.

Do Leaflet chcete souř. systém pod kodem EPSG:3857

Těch dat je hodně a dost se mění, CUZK dělá všechno proto, aby byly co nejaktuálnější na jejich webu.

RUIAN je moznost, ale je potřeba udržovat lokální kopii.

Většina firem, které to řeší (T-Mapy, Gepro, Mapotip, …) mají prostě postavenou linku nejčastěji nad PostGIS a mapy honí v S-JTSK EPSG:5514 Leaflet jde sice ukecat ke spolupráci, ale kdo neví co dělá a proč se bude trápit.

Více asi podle use case. Moc tu nejsem, doženete mě na mailu jachym@cepicky.ch

3 Líbí se

Děkuju moc všem za rady! Moc mi to pomohlo se v tématu zorientovat.

Díky @honza.stefanides se mi povedlo si u sebe zprovoznit leaflet s parcelami.

Nakonec použijeme Geopass, který tu mapu se vším nabízí, a minimálně dělat si vlastní Geocoding API by znamenalo mít na to lokální server (s nějakými OSM), a to se nám teď hodně nevyplatí.

4 Líbí se