RUIAN / Ruian2gis
Transformační XSL skript ruian2gis zpřístupňuje geografický obsah VFR (Výměnný formát RUIAN) základního rejstříku RÚIAN (Registr územní identifikace, adres a nemovitostí) pro další práci ve FOSS GIS (GDAL, QGIS):
- ruian2gis-ob.xsl (verze ob.1) - ulice, nemovitosti, budovy a adresy za jednotlivé obce
- ruian2gis-cr.xsl (verze cr.1) - územní identifikace za ČR
Požadavky
XSLT 2.0 procesor
XSLT 2.0 procesor, např. Saxonb (testováno na Mint 14/SaxonB 9.1.0, Ubuntu 12.04/SaxonB 9.1.0 a Ubuntu 10.10/SaxonB 9.0.0)
sudo apt-get install libsaxonb-java
VFR soubory z VDP ČÚZK
Zdrojové soubory "Platné/ÚplnáKopie/ObecApod/Kompletní" VFR z vdp.cuzk.cz:
- ulice, parcely, objekty a adresy za obce k 2014-01-31 napr Hnojice:
http://vdp.cuzk.cz/vymenny_format/soucasna/20140131_OB_502405_UKSH.xml.gz http://vdp.cuzk.cz/vymenny_format/soucasna/<datum>_OB_<obkod>_UKSH.xml.gz <datum> datum produkce souboru <obkod> ID kod obce
Zdrojové soubory "Platné/ÚplnáKopie/StátažZSJ/Kompletní nebo Generalizované" VFR z vdp.cuzk.cz:
- územní identifikace (popis struktury) k 2014-01-31 za ČR až POÚ
http://vdp.cuzk.cz/vymenny_format/soucasna/20140131_ST_UKSH.xml.gz
- územní identifikace generalizovaná k 2014-01-31 za ČR až ZSJ
http://vdp.cuzk.cz/vymenny_format/soucasna/20140131_ST_UKSG.xml.gz
Použití
Princip
VFR používá XML a vlastní jmenné prostory, které doplňuje GML 3.2.1 pro geografickou informaci. Aby se VFR stal čitelný pro běžné GIS programy (GDAL, QGIS či GRASS) je třeba tomu napomoci. Skript vykopírovává jednotlivé části VFR a zabaluje je do jednoduchého GML kontejneru. V případě potřeby umí i proklíčovat propojené vrstvy (např. název ulice pro adresní bod).
ruian2gis-ob.xsl
$ wget http://vdp.cuzk.cz/vymenny_format/soucasna/20140131_OB_584029_UKSH.xml.gz $ zcat 20140131_OB_584029_UKSH.xml.gz | saxonb-xslt -ext:on -s:- -xsl:ruian2gis-ob.xsl | grep "Zpracovavam"
ruian2gis-cr.xsl
Stat-Pověřená obec
$ wget http://vdp.cuzk.cz/vymenny_format/soucasna/20140131_ST_UKSH.xml.gz $ zcat 20140131_ST_UKSH.xml.gz | saxonb-xslt -ext:on -s:- -xsl:ruian2gis-cr.xsl | grep "Zpracovavam"
Stát-Základní sídelní jednotka (generalizované hranice)
$ wget http://vdp.cuzk.cz/vymenny_format/soucasna/20140131_ST_UKSG.xml.gz $ zcat 20140131_ST_UKSG.xml.gz | java -Xmx2048m -classpath /usr/share/java/saxonb.jar net.sf.saxon.Transform -ext:on -s:- -xsl:ruian2gis-cr.xsl | grep "Zpracovavam"
Převod GML na jiné formáty
Výběr geometrie
Geometrie prvků RUIAN obsahuje na katastrálních územích s DKM obvykle definiční bod i hranici objektu (napr. parcela, stavební objekt, obec). ogr2ogr preferuje polygony, v případě nutnosti si lze typ geometrie vynutit POINT/POLYGON:
$ ogr2ogr -skipfailures -nlt POLYGON output/584029-soi-pg.gml output/584029-soi.gml
ESRI Shapefile
aktuální:
$ ogr2ogr -lco ENCODING=UTF-8 -skipfailures -f "ESRI Shapefile" 584029-ami_jtsk.shp output/584029-ami.gml
pro verze do 05/2013:
$ wget http://spatialreference.org/ref/sr-org/czech-s-jtsk-epsg2065/ogcwkt/ -O 2065.prf $ ogr2ogr -lco ENCODING=UTF-8 -skipfailures -s_srs 2065.prf -t_srs "epsg:102067" -f "ESRI Shapefile" 584029-ami_jtsk.shp output/584029-ami.gml
DXF
aktuální:
$ ogr2ogr -skipfailures -f "DXF" 584029-ami_jtsk.dxf output/584029-ami.gml
pro verze do 05/2013:
$ wget http://spatialreference.org/ref/sr-org/czech-s-jtsk-epsg2065/ogcwkt/ -O 2065.prf $ ogr2ogr -skipfailures -s_srs 2065.prf -t_srs "epsg:102067" -f "DXF" 584029-ami_jtsk.dxf output/584029-ami.gml
DXF s popiskem z atributů
QGIS
aktuální: Soubory GML lze načíst přímo do Quantum GIS (testováno na QGIS 1.8.0, která pro to používá knihovnu GDAL).
pro verze do 05/2013: Soubory GML lze po konverzi do projekce EPSG:5514/ESRI:102067 načíst přímo do Quantum GIS (testováno na QGIS 1.8.0, která pro to používá knihovnu GDAL).
$ wget http://spatialreference.org/ref/sr-org/czech-s-jtsk-epsg2065/ogcwkt/ -O 2065.prf $ ogr2ogr -s_srs 2065.prf -t_srs "epsg:102067" -f "GML" 584029-ami_jtsk.gml output/584029-ami.gml
Upozornění
- exportované datové vrstvy obsahují reprezentaci buď bodovou (není DKM) nebo plošnou i bodovou (je DKM, vazby bod/plocha nemusí být 1:1). GDAL určí typ vrstvy podle prvního nalezené entity - vhodnou volbu geoprvku si lze vynutit parametrem -nlt např. -nlt POLYGON nebo i -skipfailures
- pro rozsáhlé datové soubory (desítky MB .gz archivu) je nutno zvětšit dostupnou operační paměť RAM (např. 70 MB gz archivu potřebuje 3GB paměti) dle vzoru v kapitole Stát-ZSJ
- Parcely a Budovy jako plochy jsou dostupné pouze nad katastry, kde je již přítomna DKM (k 1.1.2012 cca 60% k.ú. v ČR). Lze zjistit ze stránek ČÚZK nebo maps.fordfrog.com (vizualizace VFR dat skrze VDP RUIAN)
- data RUIAN jsou prozatím distribuovány v EPSG:2065 (kladné souřadnice, prohozené X a Y). Pro použití v GIS je třeba data transformovat do EPSG:5514 (=EPSG:102067). V budoucnu budou data přístupná pod EPSG:5514.
- GDAL má chybně definovánu projekci EPSG:2065 (testováno v GDAL 1.8.0 a 1.9.1) pro transformaci použijte originální definici dle EPSG:
wget http://spatialreference.org/ref/sr-org/czech-s-jtsk-epsg2065/ogcwkt/ -O 2065.prf ogr2ogr -s_srs 2065.prf -t_srs "epsg:102067" -f "ESRI Shapefile" out102067.shp in2065.gml
- data z VDP VFR mají základní chyby v geometrii (ulice jsou liniová torza, polygony parcel a objektů nezvládají křivky, v některý k.ú. chybí data úplně), vice Novinky VDP resp. Problémy3.
- Pozor, od datové sady vydané ke dni 2013-05-31 jsou data v souřadném systému EPSG:5514 namísto dříve užívané EPSG:2065, a tudíž není nutné pro potřeby GIS transformovat geodata do EPSG:102067, protože EPSG:5514 a ESRI:102067 jsou totožné.
Další možnosti práce s RÚIAN
- mapa z dat VDP RUIAN: maps.fordfrog.com
- ruian2pgsql - program v Jave pro import VFR RUIAN do PostGIS PostgreSQL od Miroslava Šulce pro potřeby projektu OSM
- ruian2osm - program v Jave pro pro práci robota mezi PostGIS a OSM od Miroslava Šulce pro potřeby projektu OSM
- Transformace bodové vrstvy RUIAN z GML->WKT->SHP GeoKettle, demonstrace v článku Jana Růžičky na OSSConf 2012.sk - vhodné pro bodové nebo liniové vrstvy
Odkazy
Související články
- S-JTSK - problematika Křovákova zobrazení a jeho transformací ve FOSS GIS