155UZPR / Semestrální projekt: Porovnání verzí
Řádek 8: | Řádek 8: | ||
* uživatelské jméno: <tt>uzpd_<skupina><rok></tt>, např. <tt>uzpd_a11</tt> | * uživatelské jméno: <tt>uzpd_<skupina><rok></tt>, např. <tt>uzpd_a11</tt> | ||
Příklad pro skupinu | Příklad pro skupinu A v roce 2011 | ||
psql pgis_pin2 -U uzpd_a11 -h geo102.fsv.cvut.cz -W | psql pgis_pin2 -U uzpd_a11 -h geo102.fsv.cvut.cz -W |
Verze z 30. 4. 2011, 16:25
< Úvod do zpracování prostorových dat
Přístup k databázi pgis_uzpd
Přihlášení k databázi
- host: geo102.fsv.cvut.cz
- uživatelské jméno: uzpd_<skupina><rok>, např. uzpd_a11
Příklad pro skupinu A v roce 2011
psql pgis_pin2 -U uzpd_a11 -h geo102.fsv.cvut.cz -W
Vstupní data
Databáze obsahuje ve schématu osm data OpenStreetMap ČR ze dne 9.3.2011.
SELECT f_table_name, f_geometry_column, srid, type FROM geometry_columns WHERE f_table_schema = 'osm';
f_table_name | f_geometry_column | srid | type ---------------+-------------------+--------+------------ czech_line | way | 900913 | LINESTRING czech_point | way | 900913 | POINT czech_polygon | way | 900913 | POLYGON czech_roads | way | 900913 | LINESTRING (4 rows)
Dále je v databázi najdete data z cvičné databáze (schéma gis1)
SELECT f_table_name, f_geometry_column, srid, type FROM geometry_columns WHERE f_table_schema = 'gis1';
f_table_name | f_geometry_column | srid | type -------------------+-------------------+--------+----------------- kltm50 | geom | 102067 | MULTIPOLYGON lesy | geom | 102067 | MULTIPOLYGON obce | geom | 102067 | MULTIPOLYGON obce_b | geom | 102067 | POINT zeleznice | geom | 102067 | MULTILINESTRING zeleznice_stanice | geom | 102067 | POINT (6 rows)
Transformace dat
Data ze schémat osm a gis1 jsou lokalizována v různých souřadnicových systémech.
SELECT g.f_table_name, s.auth_name, s.auth_srid, s.proj4text FROM geometry_columns AS g JOIN
spatial_ref_sys AS s ON g.srid = s.srid AND g.f_table_schema = 'osm';
-[ RECORD 1 ]+----------------------------------------------------------------------------------------------------------------- f_table_name | czech_line auth_name | spatialreferencing.org auth_srid | 900913 proj4text | +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +units=m +k=1.0 +nadgrids=@null +no_defs -[ RECORD 2 ]+----------------------------------------------------------------------------------------------------------------- f_table_name | czech_point auth_name | spatialreferencing.org auth_srid | 900913 proj4text | +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +units=m +k=1.0 +nadgrids=@null +no_defs -[ RECORD 3 ]+----------------------------------------------------------------------------------------------------------------- f_table_name | czech_polygon auth_name | spatialreferencing.org auth_srid | 900913 proj4text | +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +units=m +k=1.0 +nadgrids=@null +no_defs -[ RECORD 4 ]+----------------------------------------------------------------------------------------------------------------- f_table_name | czech_roads auth_name | spatialreferencing.org auth_srid | 900913 proj4text | +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +units=m +k=1.0 +nadgrids=@null +no_defs
SELECT g.f_table_name, s.auth_name, s.auth_srid, s.proj4text FROM geometry_columns AS g JOIN
spatial_ref_sys AS s ON g.srid = s.srid AND g.f_table_schema = 'gis1';
-[ RECORD 1 ]+------------------------------------------------------------- f_table_name | kltm50 auth_name | esri auth_srid | 102067 proj4text | +proj=krovak +a=6377397.155 +rf=299.1528128 +no_defs : +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56 +to_meter=1 -[ RECORD 2 ]+------------------------------------------------------------- f_table_name | lesy auth_name | esri auth_srid | 102067 proj4text | +proj=krovak +a=6377397.155 +rf=299.1528128 +no_defs : +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56 +to_meter=1 -[ RECORD 3 ]+------------------------------------------------------------- f_table_name | obce auth_name | esri auth_srid | 102067 proj4text | +proj=krovak +a=6377397.155 +rf=299.1528128 +no_defs : +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56 +to_meter=1 -[ RECORD 4 ]+------------------------------------------------------------- f_table_name | obce_b auth_name | esri auth_srid | 102067 proj4text | +proj=krovak +a=6377397.155 +rf=299.1528128 +no_defs : +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56 +to_meter=1 -[ RECORD 5 ]+------------------------------------------------------------- f_table_name | zeleznice auth_name | esri auth_srid | 102067 proj4text | +proj=krovak +a=6377397.155 +rf=299.1528128 +no_defs : +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56 +to_meter=1 -[ RECORD 6 ]+------------------------------------------------------------- f_table_name | zeleznice_stanice auth_name | esri auth_srid | 102067 proj4text | +proj=krovak +a=6377397.155 +rf=299.1528128 +no_defs : +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56 +to_meter=1
Při kombinaci dat ze schémat osm a gis1 je nutné provést transformaci (ST_Transform) dat do společného souřadnicové systému.
SELECT count(*) from osm.czech_point AS kino JOIN gis1.obce AS obce ON
ST_Within(kino.way, ST_Transform(obce.geom, 900913)) AND
kino.amenity = 'cinema' AND obce.nazev = 'Praha';
Při opakované transformaci je výhodné vytvořit ve vlastním schématu kopii vektorové vrstvy ve zvoleném souřadnicovém systému, např.
CREATE TABLE obce AS SELECT * FROM gis1.obce;
UPDATE obce SET geom = ST_Transform(geom, 900913);
SELECT Populate_geometry_column(pgclass::'obce');
Korespondující dotaz dostane následující podobu
SELECT COUNT(*) FROM osm.czech_point AS kino JOIN obce AS obce ON
ST_Within(kino.way, obce.geom) AND
kino.amenity = 'cinema' AND obce.nazev = 'Praha';
Nastavení cesty
Příklad pro skupinu a11
SET search_path to a11, public, osm;
Vytvoření tématické vrstvy
Příklad pro 'vinice' (polygonová data) - viz Map Features na wiki OSM.
CREATE TABLE vinice AS SELECT osm_id, way AS geom FROM czech_polygon WHERE landuse = 'vineyard';
- Definice primárního klíče
ALTER TABLE vinice ADD PRIMARY KEY(osm_id);
Pokud přidání primárního klíče nad atributem osm_id zkolabuje, přidejte nový atribut gid a vytvořte primární klíč nad tímto atributem
ALTER TABLE vinice ADD COLUMN gid serial;
ALTER TABLE vinice ADD PRIMARY KEY(gid);
- Vytvoření prostorového klíče
CREATE INDEX vinice_geom ON vinice USING gist (geom);
- Aktualizace metadatové tabulky geometry_columns
SELECT populate_geometry_columns('a11.vinice'::regclass);
Odstranění tématické vrstvy
SELECT dropgeometrytable('a11', 'vinice');
Letní semestr 2010/2011
Zadání
- Navrhněte a vytvořte tématické vrstvy (např. vodní toky, vodní plochy, lesy, silnice, železnice a pod.) na základě dat OSM (viz cvičná databáze pgis_student schéma osm). Pro tento účel byla na serveru 'geo102' založena databáze pgis_uzpd.
- Aplikujte testy datové integrity a odstraňte případné nekonzistence v datech.
- Vytvořte tutoriál pro výuku PostGIS - tj. sadu atributových a prostorových dotazů nad databází pgis_uzpd.
Požadavky
- Prezentace v PDF (10-15min) - veřejná prezentace 12.5., B870, 10h
- Dokumentace v PDF - odevzdání do 15.5.
- SQL dotazy v textovém formátu (kódování unicode)
Skupiny
- A
- Bejdová, Bocan, Tomášů, Med
- B
- Faitová, Gardoňová, Šubrtová
- C
- Kyzlíková, Turek, Zajíček
- D
- Fuňáková, Vojtěchovský, Vorlíček
- E
- Hynková, Lžíčař, Tichý
Letní semestr 2009/2010
Zadání
- Navrhněte a vytvořte tématické vrstvy (např. vodní toky, vodní plochy, lesy, silnice, železnice a pod.) na základě dat OSM (viz cvičná databáze pgis_student schéma osm). Pro tento účel byla na serveru 'josef' založena databáze pgis_osm (poznámky).
- Aplikujte testy datové integrity a odstraňte případné nekonzistence v datech.
- Vytvořte tutoriál pro výuku PostGIS - tj. sadu atributových a prostorových dotazů nad databází pgis_osm.
Požadavky
- Prezentace v PDF (10-15min) -- veřejná prezentace 13.5., B870, 9h
- Dokumentace v PDF -- odevzdání do 20.5.
- SQL dotazy v textovém formátu
Skupiny
- A
- Kadlecová, Holubec, Bocan, Synek
- B
- Svobodová, Duchnová, Pantůčková, Kopecký
- C
- Zavadil, Bodnár, Sedláčková, Kratochvíl, Bečička
- D
- Dluhoš, Podpěra, Linhartová, Jarošová
- E
- Pospíšil, Karochová, Knoblochová, Štochlová
- F
- Kratochvílová, Němcová, Petráš
Hodnocení
Poznámka: Jednotlivé položky jsou hodnoceny body od 5 (výborně) až 0 (nedostatečně).
Váha | A | B | C | D | E | F | |
Prezentace projektu (vystoupení) | 1 | 5 | 4 | 4 | 4 | 3 | 5 |
Prezentace (PDF) | 2 | 3 | 2 | 2 | 2 | 2 | 5 |
Dokumentace | 4 | 5 | 3 | 3 | 3 | 4 | 5 |
Technické řešení (SQL dávka) | 4 | 4 | 3 | 3 | 3 | 4 | 5 |
Celkové hodnocení | 11 | 4.27 | 2.91 | 2.91 | 2.91 | 3.54 | 5.00 |
A | B | B | B | A | A |
Letní semestr 2008/2009
- Navrhněte a vytvořte tématické vrstvy (např. vodní toky, vodní plochy, lesy, silnice, železnice a pod.) pro data z cvičné databáze pgis_student schéma osm. Pro tento účel byla na serveru josef založena databáze pgis_osm.
- Navrhněte sadu atributových a prostorových dotazů nad databází pgis_osm určenou pro výuku PostGIS.
- Vizualizujte data pomocí UMN MapServer, viz ukázka vizualizace dat, WMS. Vytvořte MapFile pro službu WFS. Alternativně navrhněte jednoduché uživatelské prostředí, viz přednáška WebGIS Jáchyma Čepického.
Skupiny:
- A
- Hořejšová, Volfová, Prunarová, Šmejkal
- B
- Hron, Kitzbergerová, Růžička, Řehák a Truhlář
- C
- Peterová, Kovařík, Novák, Krejčí
- D
- Buřvalová, Fořt, Horník, Kabilková, Polívka, Veverka