Integrace s QGIS: Porovnání verzí

Z Freenetis Wiki
Přejít na: navigace, hledání
(Nastavení projektu QGIS pro mix S-JTSK a WGS84 vrstev)
(Konverze katastrálních oblastí na polygony)
Řádek 14: Řádek 14:
  
 
=Konverze katastrálních oblastí na polygony=
 
=Konverze katastrálních oblastí na polygony=
 +
 +
Katastrální oblasti ve vektorové podobě jsou v souboru kucr.osm.
 +
Bohužel to nejsou oblasti (polygony), ale jen hromada čar (linestring).
 +
Pro spatial SQL dotazy typu "ve kterém katastru se nachází bod X,Y?" ale potřebujeme polygony.
 +
 +
Převod z linestring-ů na polygony je oříšek.
 +
V QGISu jsem žádný takový plugin nenašel, naštěstí to umí PostGIS.
 +
 +
Vyzkoušel jsem to na uzavřeném obrazci ze 2 linestringů:
 +
insert into oblasti (name, the_geom) values ('novy', (select (ST_dump(st_polygonize(kucr.the_geom))).geom from spoje));

Verze z 12. 1. 2011, 05:54

Nastavení projektu QGIS pro mix S-JTSK a WGS84 vrstev

Mapy CUZK jsou primárně v souřadnicovém systému S-JTSK (Greenwich) / Krovak, EPSG:102067 A tak tomu bude ještě mnoho a mnoho let, protože přepočet z JTSK na WGS84 je nepřesný, tzn. konverze by nebyla beze ztrát. WMS služba CUZK umí souřadnice i mapy poskytovat i ve WGS84, ale přepočet zatěžuje server a výsledná mapa je pak zdeformovaná (nakloněná). Proto je lepší mít projekt v QGISu nastaven na systém S-JTSK a WGS84 používat pouze v těch našich vrstvách, kde je WGS84 praktičtější.

V současné době defaultní implementace transformace mezi WGS84 do S-JTSK obsahuje chybu až 120m, takže je nepoužitelná.

Pro použitelnou přesnost musíte do nastavení SRS v projektu QGISu k defaultní definici S-JTSK (Greenwich) přidat řetězec "+towgs84=570.83789,85.682641,462.84673,4.9984501,1.5867074,5.2611106,3.5610256".

Abyste to nemuseli dělat v každém projektu, v menu "Editovat-Uživatelský SRS" si přidejte nový SRS s touto definicí:

+proj=krovak +lat_0=49.5 +lon_0=24.83333333333333 +alpha=30.28813972222222 +k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +pm=greenwich +units=m +no_defs +towgs84=570.83789,85.682641,462.84673,4.9984501,1.5867074,5.2611106,3.5610256

Konverze katastrálních oblastí na polygony

Katastrální oblasti ve vektorové podobě jsou v souboru kucr.osm. Bohužel to nejsou oblasti (polygony), ale jen hromada čar (linestring). Pro spatial SQL dotazy typu "ve kterém katastru se nachází bod X,Y?" ale potřebujeme polygony.

Převod z linestring-ů na polygony je oříšek. V QGISu jsem žádný takový plugin nenašel, naštěstí to umí PostGIS.

Vyzkoušel jsem to na uzavřeném obrazci ze 2 linestringů:

insert into oblasti (name, the_geom) values ('novy', (select (ST_dump(st_polygonize(kucr.the_geom))).geom from spoje));