Mendelova zemědělsk{ a lesnick{ univerzita v Brně Provozně ekonomick{ fakulta
Komplexní přístup k webové prezentaci prostorově orientovaných dat Diplomov{ pr{ce
Vedoucí pr{ce: Mgr. Jitka Machalov{, Ph.D.
Bc. Jan Vildomec
Brno 2008
ZADÁNÍ
R{d bych poděkoval vedoucí bakal{řské pr{ce Mgr. Jitce Machalové, Ph.D. a Ing. Romanu Vrbovi za rady a připomínky k této pr{ci.
Prohlašuji, že jsem tuto bakal{řskou pr{ci vyřešil samostatně s použitím literatury, kterou uv{dím v seznamu.
V Brně dne 26. května 2008
<<<<<<<<<<<<..
Abstract Vildomec, J. Complex approach to web presentation of spatially oriented data. Diploma thesis. Brno, 2008. This thesis deals with the possibilities of using ArcGIS Server for presentation spatial data in Internet environment in cooperation with client applications. It describes server capabilities of presentation KML and WMS data and deals with production of web applications, that use geoprocessing services. The example of practical use is given on application for finding consequences of possible floods in Southern Moravia.
Abstrakt Vildomec, J. Komplexní přístup k webové prezentaci prostorově orientovaných dat. Diplomov{ pr{ce. Brno, 2008. Pr{ce se zabýv{ možnostmi využití produktu ArcGIS Server pro prezentaci prostorových dat v prostředí Internetu v součinnosti s klientskými aplikacemi. Popisuje schopnosti serveru při prezentaci dat ve form{tech KML a WMS a zabýv{ se tvorbou webových aplikací, které využívají geoprocessingové služby. Příklad praktického použití je uveden na aplikaci pro zjištění n{sledků možných povodní na některé z řek Jihomoravského kraje.
6
Obsah 1
Úvod a cíl pr{ce .......................................................................................................... 8
1.1
Úvod .......................................................................................................................... 8
1.2
Cíl pr{ce .................................................................................................................... 8
2
Současný stav zkoumané problematiky................................................................ 9
2.1
Geografické informační systémy ........................................................................... 9
2.2
GIS a Internet............................................................................................................ 9
2.3
ArcGIS Server ......................................................................................................... 11
2.4
ArcGIS Explorer ..................................................................................................... 14
2.5
Form{t KML ........................................................................................................... 14
2.5.1
Přehled objektů jazyka KML ................................................................................ 15
2.5.2
Pravidla syntaxe jazyka KML............................................................................... 17
2.6
Web Map Service (WMS)...................................................................................... 18
2.6.1
Princip funkce WMS ............................................................................................ 18
2.6.2
Základní typy dotazů (dle OGC) .......................................................................... 18
2.6.3
Klady a zápory WMS ........................................................................................... 19
2.6.4
Využití a použití WMS ......................................................................................... 20
2.7
Geoprocessing ........................................................................................................ 21
2.7.1
Výběry z geografických databází.......................................................................... 21
2.7.2
Relační databáze ................................................................................................... 22
2.7.3
Atributové výběry ................................................................................................. 23
2.7.4
Prostorové výběry ................................................................................................. 24
3
Postup práce ............................................................................................................... 26
4
Vlastní řešení .............................................................................................................. 27
4.1
Instalace ArcGIS Serveru ...................................................................................... 27
4.2
Spr{va ArcGIS Serveru ......................................................................................... 27
4.2.1
Arc Catalog ........................................................................................................... 27
4.2.2
ArcGIS Server Manager ....................................................................................... 28
4.3
Publikov{ní služeb ................................................................................................ 28
4.3.1
Publikace mapové služby v ArcGIS Manageru .................................................... 31
4.3.2
Publikace mapové služby v ArcCatalogu ............................................................. 35
4.4
Vytvoření webové aplikace .................................................................................. 35
7 4.5
Úkoly webové aplikace (Tasks) ........................................................................... 36
4.6
Popis webové aplikace .......................................................................................... 38
4.7
Propojení 2D a 3D mapových dat ....................................................................... 40
4.7.1 4.8
Popis řešení ........................................................................................................... 40 Možnosti ArcGIS Serveru pro prezentaci dat ve form{tu KML ..................... 42
4.8.1
Vytvoření služby s podporou KML ...................................................................... 42
4.8.2
Prohlížení KML služeb v Google Earth ............................................................... 43
4.9
Publikov{ní služeb s podporou WMS ................................................................ 45
4.9.1
Zobrazení WMS služby v ArcGIS Exploreru ....................................................... 46
4.9.2
Zobrazení dat ve formátu WMS ve webovém prohlížeči ..................................... 47
4.10 Geoprocessingové služby ..................................................................................... 48 4.10.1
Vytvoření modelu ................................................................................................. 48
4.10.2
Způsoby zpřístupnění geoprocessingové služby................................................... 49
4.10.3
Publikování toolboxu jako geoprocessingové služby ........................................... 49
4.10.4
Publikování mapové služby s nástrojovou vrstvou ............................................... 50
4.10.5
Využití geoprocessingu ve webové aplikaci ......................................................... 50
4.10.6
Vytvoření webové aplikace s podporou geoprocessingu ...................................... 51
4.10.7
Využití při krizovém řízení ................................................................................... 51
4.10.8
Postup při tvorbě aplikace..................................................................................... 51
5
Diskuse a ekonomické zhodnocení ..................................................................... 54
5.1
Diskuse .................................................................................................................... 54
5.2
Ekonomické zhodnocení....................................................................................... 55
6
Z{věr ........................................................................................................................... 56
7
Literatura ................................................................................................................... 58
8
1 Úvod a cíl pr{ce 1.1 Úvod Geografické informační technologie proděl{vají v poslední době bouřlivý vývoj. Týk{ se to především zpřístupňov{ní a prezentace prostrových dat prostřednictvím Internetu. Snaha o umožnění přístupu k geodatům neodborníkům vede k využití tenkých klientů, jakými jsou webové prohlížeče nebo specializované prohlížeče přímo určené k zobrazov{ní geodat. Tyto bývají často volně ke stažení, což m{ vést k jejich většímu rozšíření. Patří mezi ně zn{mý Google Earth nebo ArcGIS Explorer. Použití těchto tenkých klientů umožňuje přenést většinu z{těže na specializované servery a tímto zvýšit komfort uživatelů. St{le klesající n{klady na pořízení hardwaru přispívají k rozvoji tohoto přístupu. Stav výpočetní techniky je v dnešní době na takové úrovni, že n{m nečiní problémy zpracov{vat a ukl{dat data rozs{hlých území. Je proto zřejmé že klasick{ mapa nedok{že nabídnout takové možnosti jako počítačový model území. Ty se zpoč{tku používaly hlavně ve stavebním inženýrstvi pro pl{nov{ní silnic a železnic nebo vodních staveb. Nyní je využití daleko rozs{hlejší a můžeme říct, že využití digit{lních modelů terénu se uplatňuje ve všech oblastech, které mají něco společného s reliéfem povrchu Země. Jedn{ se např. o geomorfologii (modelov{ní eroze a sesuvů půdy), klimatologii, hydrologii (modelov{ní dopadů povodní), archeologii (rekonstrukce podoby zkoumaného území), územní pl{nov{ní a obecně pro vizualizaci krajiny.
1.2 Cíl pr{ce Pr{ce se zaměřuje zejména na možnosti prezentace prostorových dat v prostředi Internetu v součinnosti s jinými produkty – ať již od firmy ESRI nebo jiných. Pr{ce bude rozšiřovat standardní webové aplikace o možnost propojení s ArcGIS Explorerem pro přístup k 3D mapovým služb{m. Na to navazuje úkol, který si klade za cíl zjistit schopnosti ArcGIS Serveru při prezentaci dat ve form{tu KML (využití KML mapových služeb) a možnosti spolupr{ce s programem Google Earth. Rovněž je cílem tvorba mapových služeb podporujících Web Map Service (WMS) a jejich zpřístupněním. Posledním, ale rozhodně ne nejméně důležitým úkolem je vytvořit webové aplikace, které využívají geoprocessingové služby, a zpřístupnit je uživatelům s ohledem na jejich využití pro krizové řízení.
9
2 Současný stav zkoumané problematiky 2.1 Geografické informační systémy Informační systém (IS) obecný je uspoř{daný souhrn prvků a činností spolu s jejich vlastnostmi a vztahy, který transformací dat vytv{ří informace pro uživatele. (R{bov{, 2003). Geografické údaje jsou především prostorové údaje. Geodata (prostorové údaje) jsou geometrický, topologický, tématický a dynamický popis geoprvku ve formě numerické, textové, obrazové nebo multimedi{lní. (Machalov{, 2007) Geografický informační systém (GIS) je informační systém rozšířený o možnost vstupu, ukl{d{ní, manipulace, analýz a výstupu geodat, který sest{v{ z software, hardware, na kterém je provozov{n, geodat,obslužného person{lu, uživatelů a d{le metod (tj. postupů a způsobů použití IT, lidských zdrojů i vstupních informací pro zajištění požadovaných výstupů ze zpracov{ní informací v GIS). (Machalov{, 2007) Je obtížné jednoznačně definovat GIS, protože existuje více pohledů na GIS. Někteří autoři vidí GIS jako speci{lní případ informačního systému, jiní jako systém pro zpracov{ní geografických údajů a vytv{ření modelů č{stí zemského povrchu pomocí dostupných softwarových a hardwarových prostředků. Někteří uživatelé především jako počítačovou aplikaci, kterou používají na řešení problémů. Jako obecně platnou a přitom jednoduchou shled{v{m definici, kterou ve svých materi{lech uv{dí společnost ARCDATA: Geografický informační systém je informační systém, který umožňuje ukl{dat, spravovat a analyzovat prostorov{ data – data o geografické poloze prvků či jevů v území. (ARCDATA, 2008)
2.2 GIS a Internet Internet můžeme označit za fenomén dnešní doby. Celosvětov{ počítačov{ síť, kter{ v minulosti umožňovala pouze elektronickou poštu a prohlížení str{nek, nabízí v dnešní době celou šk{lu příležitostí. Internet napom{h{ k tomu, co můžeme označit jako transormaci institucí. Dnes již nemůžeme mluvit jen o obchodu, ale o e-obchodu. Využití internetu ve st{tní spr{vě vytv{ří předpoklady pro e-government, atd. Využív{ní prostředků e-government mění vztah mezi st{tní spr{vou a občanem. Vede ke zjednodušení mnoha činností, týkajících se povinností občanů vůči st{tu. Umožňuje vyhnout se dlouhým front{m na úřadech a vše vyřídit z domova přes Internet. (Greene, 2001) Geodata nach{zející se na Internetu můžeme rozdělit do dvou z{kladních oblastí. Do první patří komerční instituce, které na Internetu zpřístupňují geodata ať již za
10 úplatu nebo zdarma. Patří sem např. mapové servery jako mapy.cz, maps24.com, maps.google.com a jiné. Tyto poskytují služby pro prohlížení map, vyhled{v{ní v map{ch, pl{nov{ní trasy atd. Do druhé skupiny patří st{tní instituce zveřejňující geodata, aby splnily povinnosti vyplývající ze z{kona o poskytov{ní informací (z{k. Č. 101/200 Sb., o ochraně osobních údajů a o změně některých z{konů, ve znění pozdějších předpisů). Sem patří např. servery krajských úřadů a jednotlivých ministerstev. Významný je geoportal.cenia.cz, který je souč{stí Port{lu veřejné spr{vy. Zveřejňované mapové vrstvy jsou celoplošné, obsahově garantované a aktualizované. Využívají st{tní mapov{ díla, st{tem garantované a udržované registry, tematické sady a datab{ze. S rostoucím využívaním Internetu a st{le se zvyšujícími přenosovými kapacitami doch{zí ke zveřejňov{ní st{le většího objemu geodat na Internetu. Začínají se také využívat možnosti distribuovaných geografických IS. Výhodou distribuovaných geografických IT je, že geodata jsou uložena na tzv. Mapovém serveru, k němuž přistupují jednotlivé typy na z{kladě přístupových pr{v konkrétního uživatele. Klientem zde může být WWW prohlížeč, prohlížečka geodat (např. Google Earth) i software typu desktop GIS. Internet je výhodným zprostředkovatelem distribuovaných geografických IS. Podstata spočív{ v nav{z{ní spojení klienta s mapovým serverem a n{sledné autentizaci (pokud se nejedn{ o veřejně přístupný systém). Poté doch{zí k odesl{ní požadavků (dotaz na geodata splňující spcifikované požadavky) na server, zpracov{ní požadavků serverem a odesl{ní odpovědi (výsledků) klientovi. Mapový server je n{stroj umožňující zpracovat požadavek na poskytnutí atributové či grafické složky popisu geoprvků. Může být konstruov{n různými způsoby, ale každop{dně by měl obsahovat dva z{kladní funkční celky. První by měl zajišťovat poskytov{ní grafické složky popisu geoprvků a druhý pr{ci s atributovou složkou popisu. (Machalov{, 2007) Pokud klient požaduje jen z{kladní operace s daty, stačí, aby byl vybaven standardním www prohlížečem. Tento způsob prezentace dat m{ své výhody i nevýhody: Výhody Nízké pořizovací n{klady na straně klienta Jednoduché ovl{d{ní ze strany klienta (ovl{d{ní klasického www prohlížeče) Nevýhody Jednoduchost ovl{d{ní vede k nutnosti využít pouze omezenou a předem definovanou množinu dotazů Vyšší n{roky na pořízení mapového serveru Velký objem dat přen{šených po síti
11
2.3 ArcGIS Server ArcGIS Server nabízí úplný webový GIS, který poskytuje řadu připravených aplikací a služeb pro koncové uživatele. Tyto aplikace mohou sloužit nejen k prohlížení a dotazov{ní geografických dat, ale i pro jejich analýzu, shromažďov{ní, editaci a spr{vu, to vše založené na standardech. Veškeré zpracov{ní i spr{va dat probíh{ na serveru, n{roky na straně klienta jsou tedy minim{lní. umožňuje snadnou konfiguraci webových aplikací, podporuje klienty ArcGIS Desktop a ArcGIS Explorer, jeho souč{stí je předpřipraven{ webov{ mapov{ aplikace, kterou je možné jakkoli upravovat, poskytuje úplnou sadu služeb GIS: mapové služby (2D a 3D), geodatové služby, služby geoprocessingu, geokódovací služby, služby podporující SOAP, WMS (konsorcium OpenGeospatial) a KML, poskytuje n{stroje pro spr{vu a administraci, které umožňují konfigurovat, publikovat a optimalizovat chod serveru GIS, poskytuje kompletní vývoj{řské n{stroje pro .NET a Java, poskytuje kompletní ADF (Application Developer Framework) pro mobilní klienty (ArcGIS Mobile).
Obr. 1: Schéma popisující integraci ArcGIS Serveru s okolím (ESRI, 2008a)
ArcGIS Server je k dispozici ve třech úrovních funkcionality: Basic, Standard, Advanced, a ve dvou úrovních kapacity serveru: ArcGIS Server Workgroup a
12 ArcGIS Server Enterprise. Pro zajištění požadavků serverových uživatelů a potřeby spravovat geografick{ data je ve všech úrovních zahrnuta technologie ArcSDE. (ESRI, 2008a) Funkcionalitu a kapacitu jednotlivých úrovní přibližují n{sledující schémata:
Obr. 2: Specifikace jednotlivých verzí ArcGIS Serveru Workgroup (ESRI, 2008a)
Obr. 3: Specifikace jednotlivých verzí ArcGIS Serveru Enterprise (ESRI, 2008a)
13
ArcGIS Server je produkt směřující k podnikovým z{kazníkům. Jde o platformu pro tvorbu víceuživatelských, centr{lně spravovaných aplikací, kter{ přin{ší do oblasti serverů schopnosti dříve dostupné pouze prostřednictvím desktop GIS. S jeho použitím lze budovat webové aplikace či webové služby zajišťující plnou funkcionalitu GIS, jako například prostorovou analýzu dat a jejich spr{vu. Klientem může být webový prohlížeč, ať už na PC či mobilním zařízení, nebo klasick{ desktopov{ aplikace. Použití standardních vývojových prostředí a protokolů umožňuje integraci GIS do st{vajících informačních systémů a díky podpoře Javy zde není omezení pouze na prostředí Windows. Důležité je, že zpracov{ní neprobíh{ v počítači klienta, ale na serveru, což přin{ší nové možnosti při využití tzv. tenkých klientů, kdy uživatel nemusí být specialista GIS, ale přesto mu je umožněno pracovat s prostorovými daty, získ{vat jednoduše výsledky např. složitých analýz s minim{lními n{roky na hardware. ArcGIS Server nabízí schopnosti mapov{ní, geokódov{ní, editace, analýzy, prostorové dotazy a další. Také nabízí množství dostupných vývojových prostředí. Pro webové prostředí přich{zejí v úvahu .NET a Java, navíc je možné poskytovat webové služby pomocí rozhraní SOAP/XML. Pro desktopové klienty lze použít navíc všechna prostředí podporující COM a jazyk C++. ArcGIS Server je distribuovaný systém a skl{d{ se tedy z několika č{stí. GIS Server hostuje a ovl{d{ serverové objekty (jedn{ se o objekty, které řídí a poskytují zdroje, jako je mapa nebo lok{tor, a které jsou složeny z ArcObjects). GIS Server je d{le složen z jednoho Server Object Manager (SOM) a jednoho nebo více Server Object Container (SOC), které mohou být provozov{ny na více počítačích pro zvýšení výkonu. Web Server hostuje webové aplikace a služby, které využívají objekty běžící na GIS serveru. Klienty mohou být webové prohlížeče, které komunikují s webovým serverem, nebo desktopové aplikace, které využívají webových služeb (web services) na webovém serveru nebo se připojují přímo k GIS serveru. Příjemnou vlastností je, že administrace je zajištěna pomocí ArcGIS Desktop. ArcCatalog slouží k ovl{d{ní běhu serverových objektů (map object a geocode object), ArcMap se použív{ pro tvorbu mapových dokumentů, které pak slouží jako předloha pro serverové objekty. Vývoj{řům je k dispozici Application Developer Framework (ADF) obsahující n{stroje pro tvorbu aplikací (web controls, třídy, šablony aplikací, n{povědu) a také prostředky pro provoz aplikací na webovém serveru. ArcGIS Server těží z přínosu ArcObjects. Při tvorbě aplikací jde, zjednodušeně řečeno, o vzd{lené programov{ní těch stejných ArcObjects, na jakých je postaven ArcGIS Desktop, což přin{ší výhodu v tom, že není nutné učit se pracovat s novými rozhraními a objekty, a d{le také v možnosti využít široké funkcionality. (Nouza J., 2004)
14
2.4 ArcGIS Explorer Aplikace ArcGIS Explorer je prohlížeč geoprostorových dat vytvořených pomocí ArcGIS Server. Nabízí snadnou cestu, jak zdarma a rychle prohlížet geografické informace jak ve 2D, tak i ve 3D a navíc obsahuje možnost prov{dět nad zobrazenými daty dotazy a analytické úlohy. ArcGIS Explorer propojuje aplikace pro zpracov{ní prostorových dat (geoprocessing) založené na serveru s datovými sadami GIS a zpřístupňuje veškeré možnosti ArcGIS Serveru včetně geoprocessingu a 3D služeb. ArcGIS Explorer je otevřenou a interoperabilní aplikací – dok{že pracovat i s lok{lními datovými vrstvami a službami zpřístupněnými pomocí ArcIMS, ArcWeb Services, specifikace WMS konsorcia OGC či KML. ArcGIS Explorer si může kdokoli bezplatně st{hnout, a to jak pro osobní, tak i obchodní potřeby. Pomocí aplikace ArcGIS Explorer můžeme např.: bezešvým způsobem prohlížet 2D i 3D data, propojit lok{lně uložen{ data a služby, které poskytují ArcGIS Server, ArcIMS, WMS konsorcia Open Geospatial či ArcWeb Services firmy ESRI, prov{dět analýzy GIS pomocí různých úloh, např. viditelnosti, modelov{ní, vyhled{v{ní sousedních prvků či demografických analýz, získ{vat odpovědi na geografické ot{zky o map{ch, které vytv{říte, a sdílet výsledky s ostatními, používat mapy a data z vlastních zabezpečených serverů a propojovat data z více serverů. (ESRI, 2008b)
2.5 Form{t KML Keyhole Markup Language (KML) je značkovací jazyk postavený na XML pro vyj{dření 2D a 3D geografických dat. KML bylo vyvinuto pro použití v aplikaci Google Earth, jenž se původně jmenovala Keyhole Earth Viewer. Jednalo se o produkt firmy Keyhole, Inc, kter{ byla v roce 2004 převzata společností Google. Od 13. 4. 2008 se KML stalo ofici{lním otevřeným form{tem pro přenos geografických informací. Form{t KML tedy už nekontroluje Google, ale standardizační sdružení Open Geospatial Consortium. KML představuje pravidla a form{t souboru určený pro vytv{ření a uchov{v{ní geografických objektů jako jsou body, linie, polygony nebo 3D modely (Google Earth, 2005). Jazyka KML využív{ například výše zmíněný program Google Earth. KML soubor je zpracov{v{n programem Google Earth stejným způsobem jako
15 jsou HTML soubory zpracov{v{ny webovým prohlížečem. Tak jako HTML dokument m{ i KML dokument strukturu se značkami, jmény a atributy používanými pro vytvoření specifického zobrazení. Google Earth je tedy vlastně prohlížeč KML souborů. Často je možno se setkat se soubory KMZ, což je pouze zipem zkomprimované KML. Většina programů umí pracovat s oběma formami. Příklad KML z{pisu
Stonehenge, England <description>Stonehenge was built about 2500BC -1.826752,51.179045
2.5.1 Přehled objektů jazyka KML Placemarks Placemark je z{kladním objektem jazyka KML, označující určité místo na Zemi. Typickým příkladem placemarku je bod, jenž je na Zemi lokalizov{n pomocí tří souřadnic: zeměpisné šířky a délky a nadmořské výšky. K bodu je obvykle připojena ikona a jeho n{zev. D{le je k bodu možné pomocí elementu <description> přiřadit popisný text, a to s využitím HTML jazyka a všech jeho vlastností. Dle způsobu fixace bodu na zemském povrchu rozlišujeme jeho tři typy. Jednoduchý bod „sedící na Zemi“, tedy přejímající nadmořskou výšku dle skutečného terénu, „plovoucí“, u nehož je možno nadmořskou výšku nad terénem definovat, a nakonec „přiv{zaný“, jenž je k zemi připojen linií. Paths Paths, česky tedy cesty, jsou tvořeny množinou bodů spojených v jednu linii. Cesty mohou, podobně jako body, nabývat libovolnou nadmořskou výšku a jejich vzhled muže být upraven dle KML stylu. Prohlížeč umožňuje spustit nad definovanou cestou „průlet“, kamera pak sleduje cestu tak, jako by nad ní uživatel přelétal. Polygons Polygony představují nejzajímavejší KML objekty zobrazované v r{mci prohlížeče Google Earth. Polygony, vytvořené přímo v prostředí prohlížece, mohou být jednak rovinné, pomocí jejich vytažení pak i třídimenz{lní. Ze spojení několika trojrozměrných polygonů lze vytv{řet složitejší 3D modely reprezentující objekty reality, nejčastěji budovy.
16 Image Overlays Objekty Image Overlays slouží k zobrazení obr{zku, podporov{ny jsou obr{zky typu JPG, PNG, GIF, nebo TIFF. Obr{zky mohou překrýt určitou č{st zemského povrchu, či být jednoduše zobrazeny v r{mci okna spušteného programu. Dle způsobu fixace obr{zku rozlišujeme dva typy překrytí obr{zkem (Google Earth, 2008): a) Ground overlays jsou obr{zky fixované přímo na zemský povrch. Pomocí tohoto typu překrytí lze do mapy přidat například podrobnější letecké snímky. Přid{ním parametru pro obnovu překrytí lze vytv{řet dynamicky se měnící obrazy, což je vhodné pro zobrazení aktu{lního počasí, či třeba postupu pr{ce na staveništi. Obraz překrytí je možno obnovovat periodicky po určitém časovém úseku, nebo též při pohybu „kamery“ nad mapou. b) Screen overlay je obr{zek, který je nez{vislý na pozici kamery a je fixov{n na obrazovce. Obr{zek tvoří překrytí obrazovky, které je vhodné použít pro zobrazení titulku, copyrightu nebo legendy k mapě. Je možno nastavit libovolnou pozici obr{zku v r{mci okna. Jeho velikost pak muže být absolutní či dynamicky se měnící a to v z{vislosti na velikosti okna, v kterém je program spušten. Program Gogole Earth zatím nepodporuje vkl{d{ní těchto screen overlays, kód pro tento objekt je třeba zapsat ručne v libovolném textovém editoru. Folders Folders, tedy adres{ře, slouží k seskupov{ní a organizaci jednotlivých objektů a umožnují tak vytv{řet tématické kolekce dle potřeb tvůrce KML dokumentu. Vedle elementů společných pro ostatní objekty je u adres{řů možno použít element
, který je booleanovským datovým typem se stavem 0 a 1, indikujícím, zdali je adres{ř při nahr{ní KML dokumentu otevřen ci zavřen. Tuto vlastnost je vhodné použít při tvorbě složitějších KML dokumentů, zejména pak těch vyznačujících se širokou komplexností. A to nejen proto, aby byla zachov{na přehlednost struktury dokumentu, ale také přehlednost jednotlivých objektů zobrazovaných v mapě. Pomocí objektu Folder se tedy dají vytv{řet jednotlivé tématické vrstvy tak, jak je zn{me ze sofistikovanejších GIS produktů. Styles KML styly jsou použív{ny pro definici vzhledu ikon, n{zvu, linií a polygonu v prohlížeči Gogole Earth. Takov{ definice typicky zahrnuje barvu, velikost a nastavení transparentnosti objektu. Stejně tak jako styly v HTML a CSS , mohou být KML styly definov{ny lok{lně, odkazem či hierarchicky uspoř{d{ny. Network Links Pomocí objektu Network Link je možno rychle a jednoduše sdílet KML soubory mezi více uživateli pomocí odkazu, aniž by tedy bylo nutné přen{šet samotn{ data. Vlastností Network Linku je využív{no zejména při pr{ci s dynamickými daty. Nastavením parametru obnovy Network Linku lze nastavit jak často, jakým způsobem a při které ud{losti se bude obnova dat prov{dět.
17 Společné Elementy jazka KML Objekty jazyka KML sdílejí několik společných elementů (Google Earth, 2005): Jméno – Syntaxe jazyka KML použív{ tag k pojmenov{ní adres{ře, místní značky, linií a všech dalších objektů. Popis – Element <description> se použív{ k zad{ní dodatečných informací k jednotlivým objektům. Google Earth automaticky rozpozn{ URL adresu v elementu description a vytvoří z ní hypertextový odkaz, bez nutnosti použití HTML kódu pro definici odkazu. Naopak, kdykoliv je možno v elementu description použít HTML kód. Je však třeba mít na paměti, že pokud chceme do elementu description vložit delší text, který obsahuje hodně speci{lních znaků, a vyhnout se při tom složitosti z{pisu způsobené použitím znakových entit místo speci{lní znaků, je třeba použít sekci CDATA XML. Tato sekce umožňuje do dokumentu XML zapsat libovolné znaky, aniž bychom museli ty speci{lní nahrazovat znakovými entitami. Viditelnost – Tag se použív{ k nastavení výchozí viditelnosti jednotlivých prvků na mapě. Uživatel m{ možnost po otevření souboru KML viditelnost jednotlivých prvků libovolně zapínat a vypínat. Výchozí, myšleno nedefinovan{ viditelnost je nastavena na zapnuto. Souřadnice pohledu – Nastavení pohledu „kamery“ na jednotlivé body, prvky či modely na zemském povrchu se prov{dí pomocí elementu . Pokud je tento element definov{n u konkrétního prvku, dvojitý klik na tento prvek přiblíží a nachýlí kameru dle definice elementu . Úryvek – Tag <snippet> umožnuje přidat kr{tký popisek, který se zobrazí v panelu Places. V případě, že je u některého prvku definov{n tag <snippet> a element <description>, obsah tagu snippet se zobrazí v panelu Places a obsah elementu <description> jako popisný „balón“.
2.5.2 Pravidla syntaxe jazyka KML Struktura KML dokumentu dědí všechna syntaktick{ pravidla jazyka XML. N{sledující seznam shrnuje nejdůležitejší pravidla společn{ pro jazyk KML se syntaktickými pravidly XML jazyka: KML je jazyk case-sensitive, tedy rozlišující mal{ a velk{ písmena KML tagy musí být p{rové KML dokument obsahuje alespoň jeden element KML dokument obsahuje alespoň jeden kořenový element KML elementy se nesmí křížit Existují dva typy KML tagu, jednoduché a komplexní. Komplexní tagy začínají velkým poč{tečním písmenem, zatímco tagy jednoduché používají pouze mal{ písmena. Komplexní tagy fungují jako rodičovské tagy k tagům jednoduchým i komplexním. Jednoduché tagy mohou být pouze dětmi a neobsahují ž{dné další
18 tagy. Všechny textové řetezce, ať již použité jako n{zvy či popisy tagů, musejí být zaps{ny v UTF-8 Unikódu, čímž je zajištěna jejich ř{dn{ interpretace pomocí Google Earth. (Passinger, 2006)
2.6 Web Map Service (WMS) Web Map Service je standard vyvinutý a d{le rozšiřovaný Open Geospatial Consortium (OGC). WMS je služba, kter{ byla vytvořena z důvodu umožnění sdílení dat GIS v distribuovaném prostředí Internetu. Jedn{ se o n{stroj nejen pro GIS systémy, který zpřístupňuje geografické informace ve formě map (rastrů). Výsledkem požadavku např. GIS softwaru na WMS server jsou prim{rně obrazov{ data v nejrůznějších form{tech (JPEG, TIFF, PNG, aj.), kter{ zobrazují tematické geografické informace (tematickou mapu – vrstvu). Tato obrazov{ data mohou být výsledkem překrytu více vrstev (mapov{ kompozice). To, že jsou data georeferencov{na (vztažen k souřadnicovému systému), n{m poté umožní jejich spr{vnou prezentaci. Georeferencov{ní v tomto případě můžeme ch{pat jako jednoznačně daný referenční souřadnicový systém a souřadnicový obdélník (box) v tomto systému, jenž obaluje obrazov{ data výsledku.
2.6.1 Princip funkce WMS Z{kladním principem WMS jsou vz{jemné interakce stroj-stroj a stroj-člověk. Na vrcholu této komunikace je mapový server. Pokud podporuje WMS službu, můžeme hovořit o WMS serveru. V jeho úložišti jsou uskladněna georeferencovan{ data (GeoTIFF, SHP, datab{zov{ data, aj.), v nastavení jsou pops{ny možnosti WMS serveru a v datab{zi jsou uloženy atributové informace o geografických objektech (objekty, u nichž je zn{ma poloha v souřadnicovém referenčním systému a d{le k nim existují atributy). Nejčastěji se pro označení souřadnicového referenčního systému (CRS – Coordinate Reference Systém) využív{ dataset EPSG. Klient je potom software, který komunikuje se serverem za účelem získ{ní informací. K této komunikaci využív{ Hyper Text Transfer Protocol (HTTP), resp. jeho metody dotazů, jimiž jsou GET a POST. Tím p{dem klientem může být klasický webový prohlížeč. Klient si poté zpracuje informace, které mu server zpřístupnil. Jedn{ se o rastrov{ data. Tyto informace pomocí definovaného uživatelského rozhraní zpřístupní uživateli. Jedn{ se o interakci člověk-stroj (resp. uživatel-klient). (Wikipedia, 2008)
2.6.2 Z{kladní typy dotazů (dle OGC) GetMap - Tento typ dotazu lze považovat za hlavní (prim{rní), a to z toho důvodu, že klientovi zpřístupní mapu ve formě obrazových dat v určitém form{tu. Query URL musí obsahovat parametr REQUEST=GetMap. GetCapabilities - Pokud daný klient nezn{ možnosti a vlastnosti spravovaných dat, což se skoro ve všech případech děje, musí tyto
19 možnosti zjistit. Proto klient při první komunikaci se serverem sestaví GetCapabilities dotaz. Query musí obsahovat parametr REQUEST =GetCapabilities. Specifikace vyžaduje ještě jeden povinný parametr SERVICE=WMS GetFeatureInfo - Tento typ dotazu vrací klientovi XML soubor s atributy daného prvku na mapě o určitých souřadnicích. Query URL musí obsahovat parametr REQUEST= GetFeatureInfo. U dotazu GetMap a GetFeatureInfo vyžaduje specifikace (z{leží dle použité verze WMS) ještě další povinné parametry, které mapovému serveru řeknou podrobnější informace o daném dotazu.
Obr. 4: Bloková schéma WMS komunikace
2.6.3 Klady a z{pory WMS Klady uživatel si může připojit jen ta data (vrstvu), kter{ skutečně potřebuje uživatel není z{vislý na typu mapového serveru a operačním systému, na němž tento server funguje (je softwarově nez{vislý) po připojení serveru je možno zjistit jeho aktu{lní možnosti (metadata) výhodou pro vlastníky, popř. spr{vce dat je to, že výsledkem dotazu jsou informace, které jsou šířeny prostřednictvím obrazových dat, čímž se snižuje riziko zneužití uživatel může k těmto datům přistupovat pomocí nejrůznějších hardwarových prostředků, které mají přístup k internetu: o osobní počítač (existuje nepřeberné množství aplikací), o kapesní počítač (nyní už existuje několik aplikací, které WMS podporují),
20 mobilní telefony (podpora WMS není zatím zn{m{, avšak technologie mobilních telefonů a kapesních počítačů v poslední době splýv{), o GPS navigační systémy s podporou WMS (například integrované do osobního automobilu), o tot{lní stanice s podporou WMS (s dostatečným grafickým rozlišením), o aj. data jsou skladov{na na jednom místě a to obvykle u spr{vce těchto dat, tudíž je zaručena jejich aktu{lnost a d{le odborn{ spr{va další výhodou pro vlastníky, popř. spr{vce dat je to, že přístup k poskytovaným datům mohou zpoplatnit, a to buď pauš{lně nebo pomocí mikroplateb (přístup je pro běžné uživatele omezen) pro zobrazení dat postačuje jednoduch{ aplikace na straně klienta, např. tenký klient ve formě webové aplikace pomocí jednotného standartu je možné připojit nejrůznější data z různých serverů data mohou být na serveru uložena v nejrůznějších form{tech, navenek jsou prezentov{na jen v přípustných form{tech server může využívat dat jiných serverů, jedn{ se o tzv. kask{dov{ní serverů WMS je navržena tak, aby podporovala nejrůznější souřadnicové systémy, které se vyskytují na Zemi, a to prostřednictvím EPSG seznamu. o
Z{pory hardware musí mít přístup k internetu (LAN, WI-FI, GPRS, aj.) rychlost připojení k internetu by měla být pokud možno větší, jak umožňuje ADSL modem, aby se zaručilo rychlé načít{ní dat (vše je pak d{le z{vislé ještě na počtu připojených vrstev) některé typy mapových serverů (WMS serverů) se plně neřídí specifikacemi OGC, proto může nastat chyba při pokusu připojit službu určitému klientovi (tenký, tlustý) klient získ{ jen obrazov{ data, nemůže na nich bez předchozí vektorizace prov{dět analýzy, výběry, atd.
2.6.4 Využití a použití WMS Hlavní účelem vývoje standardu Web Map Service (WMS) bylo především využití pro GIS. V současné době WMS zasahuje i do jiných oborů, které prim{rně nemusí pracovat s GIS. Výčtem teoretických oblastí, kde lze WMS využít je např. tento drobný seznam:
21 využití WMS pro přístup k vrstv{m GIS přes internet (původní účel) využití WMS pro připojení vrstev do mapových aplikací (mapový port{l, mapy v mobilu, PDA, tot{lní stanici, GPS navigačních přístrojích). využití WMS jako statického obr{zku získaného dotazem GetMap pro web využití WMS pro poskytov{ní informací (např. územní pl{n) mezi institucemi využití WMS pro prezentaci území (např. n{rodní park, CHKO, mikroregion) využití WMS pro soukromý sektor, využív{ se většinou dat st{tní spr{vy, samospr{vy (ortofoto) využití WMS pro prezentaci n{vrhu řešení problému (např. d{lniční obchvat) k připomínkovému řízení využití WMS pro vytv{ření mapových kompozic (sloučením více vrstev např. polohopis, popis a výškopis) využití WMS pro soukormý sektor podnik{ní, např. geodézie a kartografie pro přístup k vrstv{m (např. vrstevnice) ve specializovaných programech (Kokeš) aj. Praktické příklady využítí WMS: pro zpřístupnění územních pl{nů obcí institucím a občanům, např. některé obce plzeňského kraje pro vytv{ření mapových kompozic (sloučením více vrstev např. polohopis, popis a výškopis), které mohou sloužit jako vrstva v GIS, podklad pro katrogram nebo kartodiagram nebo pro jiný účel, pokud m{me nainstalov{n Google Earth, tak si lze připojit do tohoto 3D geografického prohlížeče libovolné vrstvy WMS, např. vrstevnice ČR (Jir{nek J., Říha J., 2008)
2.7 Geoprocessing Geoprocessingem rozumíme využití určitých operací k manipulaci s geodaty. Typick{ geoprocessingov{ úloha provede operaci na množině vstupních dat a vr{tí výsledek jako množinu výstupních dat. Běžné geoprocessingové úlohy zahrnují např. výběr prvků, topologické zpracov{ní, konverzi dat. Geoprocessing bere v úvahu definici, management a analýzu informací využívaných pro podporu rozhodov{ní. (ESRI, 2008c)
2.7.1 Výběry z geografických datab{zí Výběry z geografických datab{zí je možné pokl{dat za z{kladní a nejstarší analytický n{stroj GIS. Už první systémy počítačem podporavené kartografie, s omezenými analytickými možnostmi, obsahovaly n{stroje na výběr údajů
22 z existujících datab{zí na z{kladě uživatelem formulovaných kritérií. Tyto n{stroje je možno využít v případě rastrově i vektorově reprezentovaných údajů a také pro potřeby výběru atributů z externích datab{zových systémů. Výběry z geografických datab{zí je možné rozdělit do tří skupin: Atributové výběry Jednoduché prostorové výběry a výběry založené na topologických vlastnostech geografických objektů Kombinované výběry V případě atributového výběru je cílem získat údaje, jejichž atributy splňují jistou neprostorovou podmínku, např.: „Vyber objekty (z{znamy, prvky) třídy A, nesoucí atribut X.“ Prostorový výběr je naopak založen na prostorové podmínce, např.: „Vyber objekty třídy A, které se polohově překrývají s objekty třídy B.“ Kombinované výběry slouží na výběr údajů využitím kombinace prostorových a neprosotorvých podmínek, např.: „Vyber objekty třídy A, nesoucí atribut X a z{roveň / nebo se překrývají s objekty třídy B.“ Příkladem může být určení lokalit nach{zejících se v určité vzd{lenosti od sídla (prostorov{ komponenta) a současně patřících vlastníkovi, který je identifikovatelný na z{kladě jména (atributov{ komponenta). Jednoduché prostorové výběry využívají jen informace o poloze geografických objektů, zatímco topologické výběry využívají i informace o topologii, tedy vz{jemných vztazích mezi objekty.
2.7.2 Relační datab{ze Ústředním tématem výběrů z datab{zí je problematika datab{zových dotazovacích jazyků a relačních datab{zí. V současnosti téměř všechny systémy pro spr{vu datab{zových údajů využívají model relačních datab{zí a pro tvorbu výběrů možnosti jazyka SQL (Strucrtured Query Language). V relačních datab{zích jsou údaje reprezentované množinovými relacemi, t. j. konečnými podmnožinami kartézského součinu vhodně zvolených domén. Prvek relace je uspoř{dan{ n-tice, jejíž složky se nazývají atributy. Nad relacemi jsou definované z{kladní oparace: sjednocení, průnik, rozdíl množin, kartézský součin, výběr (selekce) a projekce. Tento z{kladní teoretický opis se nazýv{ relační algebra a umožňuje vyj{dřit všechny manipulace a postupy pr{ce s údaji. Relace se používají na vyj{dření objektů a vztahů mezi nimi. Je možné si je představit jako dvourozměrné tabulky, jejichž ř{dky tvoří prvky relace. Sloupce
23 jsou pojmenované a pro každý je stanovený obor hodnot (doména), který určuje, jaké hodnoty můžou být v sloupci uložené. Ukl{d{ní geografických údajů je možné řešit více způsoby. Nejefektivnější řešení je rozšíření relačního datab{zového modelu a zavedení prostorových typů údajů, prostorových indexů a funkcí. Současné relační datab{ze takto umožňují přímo ukl{dat geogafické údaje ve vektorové i rastrové reprezentaci. V případě vektorově reprezentovaných údajů je každ{ geografick{ třída (vrstva) uložen{ jako samostatn{ tabulka. Ř{dky obsahují geografické objekty a sloupce jejich vlastnosti (atributy). Tabulky navíc obsahují údaje o poloze objektů, buď přímo na z{kladě jejich souřadnic, nebo pomocí odkazu na souřadnice uložené v bin{rním form{tu. Tyto nadstavby jsou integrované do více typů široce používaných datab{zových systémů, např. MS SQL Server, ORACLE 11, PostgreSQL a j.
2.7.3 Atributové výběry Atributové výběry slouží pro výběr údajů na z{kladě neprostorové podmínky, přičemž můžeme využívat možností jazyka SQL. Jednoduchý příklad: SELECT N{zev, Obyvatel FROM CR_mesta Dotaz rozšíříme o klauzuli WHERE: SELECT N{zev, Obyvatel FROM CR_mesta WHERE Obyvatel > 100000 Podmínky stanovené klauzulí WHERE je d{le možno kombinovat využitím logických oper{torů (AND, OR ...) a používat oper{tory =, <, >, LIKE, BETWEEN a pod. Uvedené postupy se používají při výběrech údajů uložených v relačních datab{zích. Atributové výběry realizované na údajích v rastrové reprezentaci probíhají odlišným způsobem – kombinací postupů klasifikace a analytického překrytí. Pomocí klasifikace je formulov{na prostorov{ podmínka, např: „Vyber území s východní orientací (nesoucí atribut hodnoty orientace reliéfu v rozpětí 45 – 135°)“, kterou je možno zformulovat jako: „Klasifikuj území do kategorie východní orientace reliéfu (1) a ostatní (0)“. Analytické překrýv{ní vstupuje do analýzy v případě multikriteri{lních výběrů – tedy výběry formulované na úrovni jednoho kritéria jsou kombinované využitím vhodných agregačních oper{torů. Tento postup je možné jednoduše demonstrovat na n{sledujícím příkladě: Je potřeba určit polohu lokalit nach{zejících se v určité vzd{lenosti (600 m) od vodních zdrojů a současně orientovaných na jih a východ. Předpokl{d{me, že
24 zdrojové údaje – vrstva orientace reliéfu vůči světovým stran{m a vrstva vyj{dřující vzd{lenost jednotlivých č{stí území od říční sítě – jsou k dispozici. V prvním kroku je vzd{lenostní povrch klasifikovaný způsobem, kdy vyhovujícím lokalit{m přiřadíme hodnotu 1 a nevyhovujícím hodnotu 0. Obdobným způsobem klasifikujeme vrstvu orientací reliéfu vůči světovým stran{m. V z{vislosti na požadavku na výsledek tyto vrstvy překryjeme použitím logického AND nebo OR – tedy získ{me polohy lokalit, které vyhovují buď oběma, nebo alespoň jednomu kritériu. Atributový výběr je tedy formulovaný jako: „Vyber území s východní orientací (nesoucí atribut hodnoty orientace reliéfu v rozpětí 45 – 135°)“ AND „Vyber území ve vzd{lenosti do 600 m (nesoucí atribut vzd{lenost < 600)”.
2.7.4 Prostorové výběry Rozšíření možností dotazovacích jazyků na prostorové údaje je logickým vyústěním aktivit zaměřených na integraci „standardních“ a prostorově referencovaných údajů. Požadavky na jazyk umožňující prostorové výběry jsou: Plně zachovat syntaktické a další konvence jazyka SQL Poskytnout možnosti manipulace s prostorovými údaji na vysoké úrovni Umožnit využív{ní prostorových oper{torů a vztahů Jazyk SQL poskytuje větší počet funkcí sloužících pro manipulaci s prostorovými údaji. Patří jsem v prvé řadě funkce zaměřené na topologické vztahy, např: Equeals(geometry1, geometry2): vr{tí hodnotu „true“, pokud jsou geometrické elementy prostorově shodné. Disjoint(geometry1, geometry2): vr{tí hodnotu „true“, pokud se prostorové elementy nepřekrývají. Intersects(geometry1, geometry2): vr{tí hodnotu „true“, pokud se geometrické elementy prostorově pronikají. Touches(geometry1, geometry2): vr{tí hodnotu „true“, pokud se geometrické elementy prostorově dotýkají. Contains(geometry1, geometry2): vr{tí hodnotu „true“, pokud element geometry1 obsahyje celý prostorový element geometry2. d{le funkce zaměřené na manipulaci s údaji, kam patří: Centroid(geometry): vr{tí centroid (těžiště) geometrického elementu. Area(geometry): vr{tí výměru geometrického elementu. Length(geometry): vr{tí délku geometrického elementu.
25 Buffer(geometry, distance): vytvoří vzd{lenostní (obalovou) zónu do vzd{lenosti distance od geometrického elementu. Intersection(geometry1, geometry2): vytvoří průnik dvou geometrických elementů. Difference(geometry1, geometry2): vytvoří prostorový rozdíl dvou geometrických elementů. GeomUnion(geometry1, geometry2): vytvoří prostorové sjednocení dvou geometrických elementů. Kromě toho rozezn{v{me funkce sloužící pro přístup ke geometrickým elementům a jejich č{stem, na manipulaci s údaji a na jejich definici. Obdobně jako v případě atributových výběrů i při rozšíření SQL o prostorové oper{tory je výsledek každého výběru tabulka (relace) a z{kladem výběru je konstrukce SELECT – FROM – WHERE. Z{pis podmínky, pomocí níž vybereme budovy nach{zející se do 100 m od hlavních silnic, je n{sledující: SELECT *.budovy FROM budovy, silnice WHERE Distance(budovy.GEOM, silnice.GEOM) <= 100 AND silnice.DRUH = ‘hlavni‘; Specifický způsob výběru poskytuje oper{tor PICK. Slouží na interaktivní získ{ní informací o objektech zobrazených na monitoru jejich označením kurzorem. Průběh výběru se liší v z{vislosti na dimenzi prvků ( 0 – bod, 1 –linie, 2 – are{l, 3 – objem). V případě 0- a 1-rozměrných objektů je vybraný objekt ležící nejblíže k poloze označené kurzorem. V případě dvojrozměrných objektů je vybraný objekt zahrnující označené souřadnice. Syntax je: SELECT * FROM CR_mesta WHERE Contains (geometry, point = PICK) Uvedené funkce můžeme rozdělit na: oper{tory, kde se výběrové kitérium zaměřuje na plochy, obvody, vzd{lenosti a délky geografických objektů oper{tory, kde se výběrové kritérium zaměřuje na topologické vztahy jako „dotýk{ se“, „křižuje“ a pod. kombinaci těchto přístupů, kde je výběrové kritérium zformulované např. „nach{zí se v zóně okolo objektů třídy A“ (spojení kritérií vzd{lenosti a překrytí) V případě topologických prostorových výběrů rozezn{v{me dva pojmy – subjekt a kritérium. Subjekt označuje cílové prvky, které mají být vybrané s ohledem na jejich polohu vůči kritériu. Tedy v případě výběru: „Vyber všechny plochy sousedící se silnicemi“ jsou plochy subjekt a silnice kritérium. (Hl{sny T., 2007)
26
3 Postup práce Pro realizaci pr{ce jsem se rozhodl využít několik softwarových produktů. Nejvíce času pravděpodobně budu věnovat pr{ci s ArcGIS Serverem 9.2 ve verzi Enterprise Standard od společnosti ESRI. Tento produkt byl zvolen proto, že nabízí kompletní řešení podnikového GIS včetně podpory pro zpřístupnění dat na webu. Pro tvorbu podkladů, které budou n{sledně prezentov{ny prostřednictvím serveru, použiji aplikace z balíku ArcGIS Desktop. Jmenovitě ArcMap a ArcCatalog. Pro prohlížení dat a pro nasazení na straně klienta budou využity aplikace ArcGIS Explorer, jeho konkurent Google Earth a webové prohlížeče Internet Explorer, Mozilla Firefox a Opera. Tyto jsem zvolil proto, že jsou k dispozici zdarma a jejich dostupnost pro široké spektrum uživatelů je velmi dobr{. Jako testovací data použiji datovou sadu ArcČR, některé volně dostupné 3D modely budov vytvořené pro aplikaci Google Earth a volně dostupn{ data sítě silnic a železnic USA v r{mci projektu National Atlas spravovan{ Ministerstvem vnitra Spojených st{tů amerických. Vlastní řešení můžeme rozdělit do několika kroků: Prostudov{ní problematiky zpřístupnění prostorových dat v prostředí Internetu Instalace ArcGIS Serveru Sezn{mení se s ovl{d{ním n{strojů pro spr{vu serveru Publikace mapových služeb s pomocí ArcGIS Serveru Rozšíření těchto služeb o podporu KML, WMS a geoprocessingu Sezn{mení se s možnostmi webových aplikací Vytvoření webové aplikace s podporou geoprocessingu
27
4 Vlastní řešení 4.1 Instalace ArcGIS Serveru ArcGIS Server se dod{v{ ve dvou provedeních. Jedn{ se o verze .NET a Java. J{ jsem používal verzi .NET. pod operačním systémem Windows XP. Před samotnou instalací je nutno nainstalovat Internet Information Services (Internetov{ informační služba). Toto se provede v Ovl{dacích panelech v sekci Přidat nebo odebrat programy, Přidat nebo odebrat souč{sti systému. Další podmínkou odlišnou od standardního nastavení Windows je nutnost zrušit jednoduché sdílení souborů v Možnostech složky. Pro spr{vnou funkci je d{le nutné změnit Místní nastevení zabezpečení. To se provede v Ovl{dacích panelech, N{stroje pro spr{vu, Místní nastavení zabezpečení, Místní z{sady, Možnosti zabezpečení, Přístup k síti: Model sdílení a zabezpečení místních účtů. Zde vybrat Klasický – místní uživatelé jsou ověřov{ni jako oni sami. Instalace ArcGIS Serveru se prov{dí standardně jako instalace kteréhokoliv programu v prostředí MS Windows. Po skončení instalace je nutno provést tzv. Postinstall, což je proces, kdy se server nastaví a připraví ke spuštění. Důležité je také pro uživatele s administr{torským opr{vněním, pod kterým se server spouští, nastavit opr{vnění. V tomto případě se jedn{ o jeho přid{ní do skupin agsadmin a agsusers. Tyto skupiny se automaticky vytvoří po instalaci. Nastavov{ní opr{vnění se prov{dí v aplikaci Spr{va počítače, kam se d{ dostat pravým kliknutím na ikonu Tento počítač a zvolením Spravovat. Spr{va serveru se prov{dí dvěma způsoby. První je ArcGIS Server Manager – webov{ aplikace běžící na adrese http://localhost/ArcGIS/Manager. Druhým je program ArcCatalog, který je souč{stí balíku ArcGIS Desktop.
4.2 Spr{va ArcGIS Serveru Pro spr{vu serveru je možno použít dva n{stroje. Prvním je ArcCatalog a druhým ArcGIS Server Manager. ArcCatalog umožňuje z{kladní administraci včetně publikov{ní služeb. Server Manager je určitým rozšířením ArcCatalogu a navíc umožňuje celou řadu činností včetně tvorby webových aplikací.
4.2.1 Arc Catalog ArcCatalog je souč{stí balíku ArcGIS Desktop. Mimo jiné slouží také k administraci ArcGIS Serveru. Jeho funkce jsou ale na rozdíl od Manageru omezené – neumožňuje např. tvorbu webových aplikací. Pro spr{vu ArcGIS Serveru je potřeba vytvořit administrativní připojení k serveru. Toto je opr{vněn vytvořit pouze uživatel s pr{vy administr{tora, který je členem skupiny agsadmin. Administrace serveru přes Arc Catalog funguje pouze po
28 lok{lní síti. Pokud je potřeba spravovat server přes internet, musí být použit Manager. Vytvoření administrativního připojení V levém panelu Arc Catalogu je nutno vybrat položku GIS Servers a Add ArcGIS Server, zvolit Manage GIS Services. V dalším kroku vypsat URL serveru a jeho jméno. Stisknutím tlačítka finish vše dokončit. Poté by se měla v levém panelu objevit nov{ položka ve tvaru n{zev_serveru (admin) značící existenci tohoto připojení. Rozkliknutím se zobrazí seznam všech publikovaných služeb na tomto serveru.
4.2.2 ArcGIS Server Manager Jedn{ se o webovou aplikaci, kter{ umožňuje administraci ArcGIS Serveru z prostředí webového prohlížeče. V tomto směru ArcGIS Server Manager nahrazuje ArcCatalog, který se do verze 9.1 k administraci ArcGIS Serveru použív{. Aplikace umožňuje např. vytv{ření a údržbu GIS služeb všech podporovaných typů, interaktivní diagnostiku logů a jiné. ArcGIS Server Manager nabízí kromě n{strojů k administraci ArcGIS Serveru také n{stroje k vytv{ření a spr{vě webových aplikací s možností implementace vlastní funkcionality. Do takto vytv{řených aplikací lze začlenit funkce GIS jako např. vyhled{v{ní, editaci dat atd., a to bez potřeby psaní kódu. V průběhu vytv{ření aplikace lze v č{sti specifikace mapového obsahu definovat tento obsah z více mapových zdrojů (ArcGIS Server, ArcIMS, ArcWeb Services a WMS). Vytvořenou webovou aplikaci je možné otevřít v některém z podporovaných IDE (VS.NET, Eclipse) a implementovat do ní speci{lní uživatelské požadavky. Zdrojový kód aplikace je pro program{tory otevřen a aplikace tak může posloužit jako z{kladní kostra při implementaci vlastního řešení.
4.3 Publikov{ní služeb ArcGIS Server umožňuje publikovat zdroje GIS, např. mxd nebo 3dd. Takto publikované zdroje pak poskytují své funkce uživatelům ve formě služeb GIS. Publikace těchto zdrojů se prov{dí přímo v aplikaci ArcCatalog nebo ve webové aplikaci ArcGIS Server Manager. Kromě standardních GIS služeb (typu MapServer a GeocodeServer), dostupných ve verzi 9.1, lze v novém ArcGIS Serveru publikovat: 3D obsah ve formě souborů 3dd – tyto služby umožňují zobrazení 3D map navržených v aplikaci ArcGlobe prostřednictvím internetu. Geodatové služby – poskytují funkce replikace a synchronizace dat v geodatab{zi přes webové služby běžící na serveru.
29 Geoprocessing – funkcionalita dostupn{ v ArcToolboxu může být zpřístupněna na serveru ve formě webových služeb. Takto lze publikovat i vlastní modely, které si uživatelé navrhnou v aplikaci ModelBuilder.
Tabulka 1: Podporované form{ty vstupních dat Schopnost
Popis
Požadovaný zdroj
Mapa
Mapový dokument Poskytuje přístup k obsahu mapových dokumentů. (.mxd) nebo Tato schopnost je implicitně aktivov{na po publikov{ní publikovaný mapový mapové služby. dokument (.pmf)
WMS
Použív{ mapový dokument k vytvoření služby kompatibilní se specifikací Web Map Service (WMS) Open Geospatial Consortium (OGC).
Mapový dokument
Přístup k mobilním datům
Umožňuje výběr dat z mapového dokumentu pro mobilní zařízení.
Mapový dokument
KML
Využív{ mapový dokument k vytvoření Keyhole Markup Language (KML) výstupu.
Mapový dokument
Přístup k geodatům
Umožňuje koncovým uživatelům různé operace s daty jako např. Extrakce v ArcMapu. Publikov{ní vede k vytvoření propojené geodatové služby.
Mapový dokument s vrstvou z geodatab{ze
Geoprocessing
Poskytuje přístup ke geoprocessingovým modelům buď z toolboxu nebo z n{strojové vrstvy (tool layer). N{strojov{ vrstva reprezentuje model z toolboxu uložený ve vrstvě mapového dokumentu. Publikov{ní vede k vytvoření propojené geoprocessingové služby. Tato schopnost je vždy aktivov{na při publikov{ní geoprocessingové služby.
Toolbox (.tbx), nebo mapový dokument s n{strojovou vrstvou (tool layer)
Síťov{ anlýza
Řeší problémy dopravní síťové anlýzy pomocí rozšíření Mapový dokument Network Analyst. s vrstvou síťové analýzy
Globe
Poskytuje přístup k obsahu globe dokumentu. Tato schopnost je vždy aktivov{na při publikov{ní globe služby.
Globe dokument (.3dd)
Geodata
Poskytuje přístupk k obsahu geodatab{ze pro dotazy, extrakci a replikaci. Tato schopnost je vždy aktivov{na při publikov{ní geodatové služby.
Soubor SDE spojení, Osobní geodatab{ze, Souborov{ geodatab{ze nebo mapový dokument s vrstvou geodatab{ze
Geocoding
Poskytuje přístup k vyhled{v{ní podle adresy. Tato schopnost je vždy aktivov{na při publikov{ní geocode služby.
Soubor (.loc), ArcView 3 locator (.mxs), ArcSDE locator, Personal Geodatabase locator
30 Schopnosti ArcGIS Serveru jsou odvislé od toho, jak{ zdrojov{ data pomocí něj zpřístupňujeme. Nejčastěji se jedn{ o mapové dokumenty. Zde tyto schopnosti z{visí na typu vrstev těchto dokumentů. Možnost vytvořit KML a WMS službu jsou podporov{ny vždy, jiné jako např. Geoprocessing vyžaduje spci{lní typ vrstev v publikovaném dokumentu. Je nutno zdůraznit, že zdrojov{ data, kter{ se publikují prostřednictvím serveru, se většinou vytv{řejí v aplikacích z balíku ArcGIS Desktop. Nejčastěji jsou to ArcCatalog, ArcMap, ArcScene... Tato tabulka poskytuje detailní přehled možností serveru v z{vislosti na form{tu prezentovaných dat. Ve své pr{ci jsem se zaměřil především na tyto schopnosti serveru: Mapové služby WMS KML Geoprocessing Manager se nach{zí na adrese http://jmeno_pocitace/ArcGIS/Manager/. Za jmeno_pocitace je nutno dosadit konkrétní n{zev nebo IP adresu počítače, kde je server nainstalov{n. Pro vstup do aplikace je nutno se přihl{sit. Do kolonky jméno je nutno napsat jmeno_pocitace\jmeno_uzivatele. Jmeno_uzivatele je login uživatele s administr{torským opr{vněním. Tento musí být členem skupiny agsadmin. Heslo je identické s heslem, kterým se tento uživatel přihlašuje do operačního systému. Úvodní obrazovka ArcGIS Server Manageru vyp{d{ n{sledovně:
31
Obr. 5: Úvodní obrazovka ArcGIS Manageru
Horní menu umožňuje přístup k jednotlivým sekcím. Services pro tvorbu služeb a Applications pro tvorbu webových aplikací. Sekce GIS Server umožňuje proch{zet logy, nastavovat přístup k adres{řům a další spr{vu serveru.
4.3.1 Publikace mapové služby v ArcGIS Manageru Jako zdrojov{ data pro mapovou službu je možné vuyžít soubory typu *.mxd. Tyto se vytvoří v ArcMapu ze zdrojových vrstev. Soubor *.mxd musí být umístěn v adres{ři, kam m{ server přístup. Pokud se data nach{zejí na lok{lním disku, zpravidla nebýv{ problém. S daty uloženými na síťových discích mív{ server občas problémy – někdy je jakoby nevidí. Postup č. 1 Publikace se prov{dí v sekci Services kliknutím na Publish a GIS Resource. Zde je nutno zadat umístění zdrojových dat. Nejlépe se osvědčilo prosté zkopírov{ní absolutní cesty k mapovému dokumentu. Např. C:\geodata\mapa_cr\mapa.mxd. Aplikace nabízí i možnost interaktivně proch{zet sdílené složky, ale občas se st{v{, že server po restartu takto zadan{ data nenačte a příslušn{ služba se nespustí. V položce Name je nutné vyplnit jméno služby. Tímto jménem se bude dan{ služba identifikovat a pod ním bude viditeln{ d{le v Manageru.
32 V dalším kroku jsme vyzv{ni k zatržení funkcionalit, které m{ služba umožnit. Na výběr je z: Mapping (implicitně zapnuto) WMS Mobile Data Acces KML Geodata Acces Geoprocessing Network Analysis Aplikace sama pozn{ podle zdroje dat, jaké funkcionality tato mohou poskytnout. Proto jsou vysvícené pouze možnosti, které mají smysl. U standardní mapové služby jsou to WMS, Mobile Data Acces a KML. Možnost Mobile Data Acces nebylo možno vyzkoušet z důvodu, že licence serveru tyto služby nepodporovala. V posledním kroku dojde pouze k dokončení celého postupu potvrzením uživatele. Pokud vše proběhne v poř{dku, služba je automaticky spuštěna a můžeme ji vidět ve výpisu služeb v sekci Services. Tento postup je tedy velice jednoduchý, nejsme nuceni k nějakým komplikovaným nastavením a systém s{m pozn{ z charakteru zdrojových dat, o jakou službu se jedn{ (zda Map service, Globe service...) Postup č. 2 V tomto případě se publikace prov{dí v sekci Services kliknutím na Add New Service. V prvním kroku jsme vyzv{ni k zad{ní jména služby a typu služby. Zde můžeme vybrat: Map Service, Geocode Service, Geodata Service, Geoprocessing Service a Globe Service. Musíme tedy vědět, jak{ m{me vstupní data a co m{ být naším výstupem. Rovněž je zde možnost zvolit buď automatické nebo manu{lní spuštění služby. V druhém kroku je nutno zvolit zdroj dat – tedy mapový dokument. Dalšími aktivními možnostmi jsou zvolení Output Directory, což je adres{ř, kam se umístí výsledek služby a Server Cache Directory, kam se ukl{d{ cache služby. Tyto hodnoty ale většinou není potřeba měnit a je možno zde nechat implicitní hodnoty. V dalším kroku je možno zvolit schopnosti služby, tedy mapping (imlicitně povoleno), WMS, KML, Mobile Data Acces a Network Analysis. Po kliknutí na každou položku je zde možnost nastavit jejich vlastnosti. Podrobně se o této problematice zmíním až při popisu publikov{ní služeb se schopnostmi WMS a KML. V dalším kroku se volí mezi Pooled Service a Not Pooled Service. Tomuto se budu blíže věnovat v jiné č{sti pr{ce. N{sleduje nastavení izolace služby a možnosti službu v periodických intervalech restartovat kvůli zajištění stability a výkonnosti. Poté již stačí potvrdit a instalace služby je hotov{.
33 Po zprovoznění služby tímto způsobem se služba automaticky nespustí. Musíme to udělat ručně v sekci Services. Z uvedeného je vidět, že způsob č. 2 je komplexnější a d{v{ uživateli více možností k úprav{m nastavení služeb. Je ale nutno dodat, že každou službu (i tu vytvořenou způsobem č. 1) je možno editovat kliknutím na symbol tužky ve sloupci Edit v seznamu služeb. Tato editace umožňuje upravovat všechny parametry, které byly zmíněny v popisu způsobu č. 2. K samotné (mapové) službě je možno se připojit např. z ArcMapu: Nabídka File, Add Data, Look In: GIS Servers – vybrat server a poté vlastní službu. Rozdíl mezi Pooled a Non Pooled Service Ve vlastnostech služby je možno volit mezi dvěma možnostmi: Pooled Service a Non Pooled Service. Pooled služby mohou být sdíleny mezi jednotlivými instancemi aplikace. Tím p{dem by měli být tyto služby použív{ny u aplikací, které slouží pouze k prezentaci dat a nedoch{zí k editaci těchto dat. Non-pooled služby jsou vytvořeny pro každou instanci aplikace zvl{šť a používají se, pokud vyžadujeme např. editaci dat. Tyto služby by tedy měly být vytv{řeny pro editov{ní dat a připojov{ny prostřednictvím místního spojení k serveru. Tento typ se tedy nepoužív{ pro zpřístupnění geodat na Internetu. Pooled služby Pokud aplikace využív{ instanci pooled služby, děje se tak pouze po dobu, kterou zabere dokončení jednotlivého požadavku (např. vykreslení mapy). Po skončení požadavku aplikace před{v{ řízení a ukončuje konkrétní instanci služby. Uživatelé takové aplikace mohou pracovat s množstvím odlišných instancí dané služby. Uvažujme např. aplikaci, kter{ pouze vykresluje mapu. Tato získ{ od serveru odkaz na určitou instanci služby, vykon{ požadavek (vykreslení mapy) a poté vrací řízení serveru. Pokud aplikace potřebuje znovu vykreslit mapu, celý postup je opakov{n. Každé vykreslení mapy může použít jinou instanci téže služby. Pokud uživatel změní stav služby (např. přid{ či odebere vrstvu), může dojít k tomu, že uvidí nekonzistenci dat (změna se např. nemusí projevit). Došlo sice ke změne stavu určité instance, ale není garantov{no, že tento uživatel opět obdrží tuto instanci při dalším požadavku. Tím p{dem musí tvůrce služby zajistit, aby k této nekonzistenci v datech nedoch{zelo. Pooled služby umožňují serveru zvl{dat více uživatelů současně s menším množstvím alokovanými prostředků. Využívají se tedy tam, kde se předpokl{d{ velké množství uživatelů, kteří nemohou měnit stav služby. Non-pooled služby Aplikace, kter{ využív{ non-pooled služby, si typicky udržuje odkaz na konkrétní službu po celou dobu běhu. Jakmile aplikace uvolní instanci služby, tato je
34 „zničena“ a server vytvoří novou. Z tohoto důvodu uživatelé non-pooled služeb mohou prov{dět změny na datech, kter{ služba zpřístupňuje. U těchto služeb je počet jejich uživatelů limitov{n počtem všech instancí této služby. Recyklov{ní služeb Tímto pojmem je označena možnost službu ukončit a vz{pětí znovu spustit (restart). Hlavním přínosem je uvolnění systémových prostředků pro nové služby. Pooled služby jsou sdíleny mezi aplikacemi, které je využívají, a jejich uživateli. Může se st{t, že služba se stane neschopnou svého dalšího využití. Např. aplikace může nekorektně modifikovat stav služby, nekorektně zadržet odkaz na tuto službu a tím znemožnit její další použití jinými aplikacemi. V některých případech se mohou služby st{t nestabilními či se jinak poškodit. Tímto dojde k zamezení jejich ř{dného využití. Recyklov{ní se ale netýk{ non-pooled služeb, neboť tyto jsou vytvořeny pro použití konkrétním klientem a po použití zničeny. V průběhu recykolv{ní server ukončí a znovu vytvoří všechny běžící instance pooled služby. Celý proces se děje na pozadí a uživatelé nic nezpozorují. Doba mezi jednotlivými recyklov{ními se nazýv{ recycling interval. Implicitní hodnota je 24 hodin. Tuto je ale možno změnit ve vlastnostech služby. Tam existuje rovněž možnost zvolit čas, kdy se toto recyklov{ní prov{dí. Příští recyklov{ní nastane v tomto čase + recycling interval. Služby jsou recyklov{ny vždy po instancích, aby se zajistila jejich dostupnost a rozložila z{těž serveru. Recyklov{ní nast{v{ v n{hodném pořadí, ale instance, které jsou pr{vě použív{ny, se recyklují, až je klient uvolní. Tímto způsobem se pro uživatele docílí zd{nlivě nepřerušovaného běhu služby. Pokud dojde ke změně zdrojových dat nějaké služby (změníme mapový dokument, z kterého byla vytvořena), tato změna se automaticky projeví až po recyklaci služby. Pokud chceme, aby se změna projevila okamžitě, musíme službu manu{lně vypnout a znovu zapnout. Izolace Při vytv{ření služby je možno specifikovat minim{lní a maxim{lní počet instancí. Tyto instance běží v procesech. Úroveň izolace určuje, zda každé instanci n{leží pr{vě jeden proces nebo zda instance procesy sdílí. Pokud nastavíme vysokou izolaci, každ{ instance běží jako samostatný proces. Když nějak{ skutečnost zapříčiní selh{ní běhu procesu, ovlivní to pouze tu konkrétní instanci. Nastavení nízké izolace umožní, aby až čtyři instance sdílely jeden proces. Doch{zí tedy k využití více vl{ken. Pokud jsou vyvořeny více než čtyři instance jedné služby, server vytvoří další proces atd.
35 ArcGIS Server umožňuje rozvrhnout z{těž na více strojů – tzv. Container machine (SOC). Je možné nastavit počet instancí služeb, které mohou být na každém stroji spuštěny. Implicitně je ale tato možnost vypnuta. Nastavením vhodných kapacit pro každý stroj je možno efektivně rozložit z{těž a zamezit tomu, aby některé stroje obsluhovaly takový počet služeb, který by nemusely zvl{dnout.
4.3.2 Publikace mapové služby v ArcCatalogu Existují dvě možnosti, jak publikovat službu v ArcCatalogu: V ArcCatalogu pravým talčítkem myši kliknout na mapový dokument, z kterého chceme službu vytvořit, a vybrat Publish to ArcGIS Server. Tato metoda vytvoří službu s implicitními parametry. Vytv{ření je jednoduché a rychlé. Kliknout pravým tlačítkem na připojení k serveru ve složce GIS Servers a vybrat Add New Service. Tato metoda umožňuje podrobné nastavení rozličných parametrů služby, ale trv{ déle než předchozí. V prvním kroku se zad{v{ jméno služby, které nemůže obsahovat mezery nebo speci{lní znaky, a složka na serveru pro publikov{ní služby. V druhém kroku je možnost zatrhnout schopnosti služby. D{le se objeví celkov{ sumarizace parametrů služby a tímto je publikov{ní služby dokončeno. Detailnímu popisu všech kroků publikov{ní jsem se věnoval v předchozím textu.
4.4 Vytvoření webové aplikace Webové aplikace se tvoří v ArcGIS Server Manageru. Děje se tak krok za krokem formou průvodce. Po vytvoření není problém cokoliv v aplikaci změnit. V ArcGIS Server Manageru se nové webové aplikace tvoří v sekci Web Applications po kliknutí na tlačítko Create Web Application. Otevře se dialog, kde jsme vyzv{ni k zad{ní jména aplikace a volitelně jejího popisu. Jménem se bude aplikace identifikovat v manageru a stejný n{zev bude mít adres{ř s touto aplikací vytvořený na serveru. V dalším kroku v z{ložce Select Layers zvolíme ty mapové služby, které chceme zobrazit v mapě webové aplikace jako vrstvy. Je zde možno přidat nový server, ke kterému se můžeme připojit. Tlačítko Preview Map Service otevře n{hled na mapu, poskytovanou pr{vě označenou službou. Ve Firefoxu toto ale nefunguje korektně. Tento n{hled se ne vždy zobrazí a jeho okno je zbytečně široké. V Internet Exploreru je funkčnost lepší. V z{ložce Preview Layers můžeme určovat pořadí vykreslení vrstev a zobrazit n{hled celé mapy. Nedostatkem ovšem je, že po změně pořadí vrstev se toto nepromítne hned do n{hledu, ale je nutno přepnout mezi z{ložkami, aby došlo k aktualizaci. Existuje zde také možnost vrstvy přejmenovat, nastavit jejich průhlednost. Nastevení průhlednosti
36 se ale v n{hledu vůbec neprojeví. Tato funkce ostatně nefunguje ani ve výsledné aplikaci. V dalším kroku nazvaném Tasks se nastavují úlohy, kter{ m{ aplikace umožňovat. Některé z nich – např. Geoprocessing, Editing, Find Address vyžadují doplňující služby. Nabízí se zde tyto úlohy: Editing Find Address Find Place Geoprocessing Query Attributes Search Attributes Blížšímu popisu těchto úkolú se budu věnovat d{le v textu. Po stisknutí tlačítka Next se dost{v{me do kroku, kde se d{ vložit titulek aplikace, zvolit barevné schéma aplikace a spravovat odkazy, které se v aplikaci objeví v pravém horním rohu. Je možno vymazat některé implicitní a také vložit vlastní. Poté se dostaneme na předposlední krok, kde se d{ nastavit to, jaké m{ mít aplikace funkcionality. Je zde seznam elementů, které se nach{zí na výsledné webové str{nce aplikace: Table of Content – vypisuje přehled zobrazovaných vrstev Overview Map – zmenšený n{hled celé mapy s označeným aktivním výřezem Toolbar – n{strojový panel aplikace North Arrow – zobrazuje kompas pro usnadnění orientace a pohybu po mapě Scale Bar – zobrazí měřítko mapy Každý tento element kromě panelu n{strojů poskytuje možnosti svého dílčího nastavení. Můžeme zde např. měnit vzhled a jednotky měřítka atd. V posledník kroku průvodce se dozvíme adres{ř na serveru, kde bude aplikace umístěna a také je zde možnost zatrhnout, aby se aplikace v dalším kroku zobrazila v novém okně prohlížeče. Stisknutím tlačítka Finish je průvodce ukončen a zobrazena výsledn{ aplikace.
4.5 Úkoly webové aplikace (Tasks) Ke každé aplikaci můžeme přidat určité úkoly. Toto se prov{dí v sekci Tasks v nastavení konkrétní aplikace.
37 Editing Task Tento úkol umožňuje do webové aplikace přidat možnost editovat objekty a jejich atributy uložené v ArcSDE datab{zi. Je vyžadov{no, aby aplikace obsahovala nonpooled mapovou službu přístupnou přes místní připojení k ArcGIS Serveru. Mapa musí obsahovat alespoň jednu vrstvu uloženou v ArcSDE datab{zi. Shapy nebo osobní geodatab{ze nejsou editovatelné. Tento úkol umožňuje uživatelům využívat různé n{stroje k editaci dat a ukl{d{ní výsledků. Tyto n{stroje dovolují např. vytv{ření, přesouv{ní, kopírovaní, maz{ní objektů. Touto funkcionalitou jsem se ve své pr{ci podrobně nezabýval. Find Address Task Tento úkol pož{d{ uživatele o adresu a poté ji zobrazí na mapě. Ke své činnosti potřebuje ArcGIS Server geocode service, ArcIMS services podporou geokódov{ní nebo ArcWeb Services. Touto funkcionalitou jsem se ve své pr{ci podrobně nezabýval. Find Place Task Find Place umožňuje hled{ní v mapě. Je nutný účet ArcWeb Services u společnosti ESRI. Tuto funkci jsem tedy neměl možnost vyzkoušet. Query Attributes Task Query Attributes umožňuje vyhled{vat data na mapě za pomocí SQL dotazu. Tento úkol provede určitý dotaz na konkrétní mapové vrstvě. Např. je možno definovat dotaz na vrstvě měst, který vybere města s počtem obyvatel větším než hodnota určen{ uživatelem a s n{zvem začínajícím např. na určité písmeno zadané uživatelem. V nastavení této úlohy se vybere mapov{ služba a vrstva, v které se dotaz prov{dí. Je zde jednoduchý editor, ve kterém se postaví SQL dotaz a uživatel poté může pohodlně tyto dotazy pokl{dat prostřednictvím formul{řů, aniž by musel zn{t jazyk SQL. Imlicitně je počet vr{cených z{znamů limitov{n na 500, což se d{ změnit editací příslušného konfiguračního souboru. Search Attributes Task Search Attributes vyhled{v{ textový řetězec v předem určených atributech jednotlivých mapových služeb a jejich vrstev. Nastavení umožňuje např. určit, že se bude prohled{vat atribut NAZEV ve vrstv{ch „letiště“ a „vodní toky“. Po vyhled{ní může uživatel vybrat nebo přibížit zvolené výsledky. Rovněž zde je limitov{n počet vr{cených z{znamů na 500. V konfiguraci existuje možnost určit, jak se budou zobrazovat výsledky hled{ní. Využití možnosti omezení celkového počtu vr{cených z{znamů dok{že zamezit přetěžov{ní serveru, pokud by výsledky hled{ní byly příliš rozs{hlé.
38 Geoprocessing Tomuto tématu se budu věnovat blíže v jiné č{sti textu.
4.6 Popis webové aplikace Webové aplikace jsou dostupné z adresy http://jmeno_serveru/jmeno_aplikace. U výpisu aplikací v sekci Appliacations ArcGIS Server Manageru se adresa, na které je konkrétní aplikace dostupn{ rovněž vypisuje.
Obr. 6: Uk{zka prostředí webové aplikace
Aplikace je rozvržena na několik č{stí. V horní oblasti se nach{zí její n{zev, pod ním je n{strojový panel s těmito tlačítky: Zoom In – odd{lení Zoom Out – přiblížení Pan – pohyb mapou Full Extent – zobrazení celkového pohledu na mapu Identify – zobrazení popisu objektu po kliknutí Measure – měření vzd{lenosti, plochy a zjištění souřadnic bodu
39 Magnifier – okno pro zobrazení zvětšeného výřezu mapy Vlevo od n{strojového panelu je umístěna sekce s odkazy. Implicitně jsou zde odkazy na web firmy ESRI, ale v nastavení aplikace sem jdou přid{vat odkazy vlastní. Např. emailov{ adresa na administr{tora serveru pro hl{šení problémů se službou. Centr{lní oblast obsahuje samotnou mapu. V levém panelu se nach{zí sekce Tasks, Results, Map Contents, Navigation a Overview. Poslední tři se nastavují při vytv{ření aplikace v sekci Map Elements, jak již bylo zmíněno výše. První se v aplikaci objeví pouze pokud jí definujeme nějaké úlohy v sekci Tasks. V tomto oddílu se nach{zí seznam úkolů, které jsme aplikaci přiřadili. Jejich rozkliknutím se otevře nové okno pro zad{ní parametrů úkolu a jeho potvrzení. Výsledky úkolů se poté objeví v oddílu Results. Pokud např. použijeme úkol Search Attributes na vrstvu sídla, zobrazí se n{m výsledek hled{ní pr{vě tady. Výsledky jsou zobrazeny v přehledné stromové struktuře a kliknutím pravým tlačítkem si můžeme zobrazit jejich kontextové menu, které umožňuje konkrétní položku přiblížit nebo odstranit z výsledku.
Obr. 7: Uk{zka funkce Query Attributes pro výběr letiště podle n{zvu
V oddílu Map Contents se zobrazují jednotlivé mapové vrstvy včetně symbolů, kterými jsou objekty vrstev v mapě vyznačeny. Tyto symboly bohužel nejde
40 měnit. Jediné, co tento oddíl umožňuje, je vypínat a zapínat zobrazení jednotlivých vrstev. Všechny oddíly v levém panelu aplikace je možno libovolně posunovat po ploše a měnit jejich velikost. To je zvl{šť vhodné pokud je např. výsledků vyhled{v{ní velké množství.
4.7 Propojení 2D a 3D mapových dat Ve své pr{ci jsem se rovněž zabýval možnostmi propojení 2D a 3D mapových dat. Původně jsem si myslel, že bude možné snadno zobrazovat 3D data (např. modely budov) v r{mci webové aplikace a uživateli se po kliknutí na objekt na mapě otevře jeho 3D model. Ačkoliv prostřednictvím webové aplikace je možno zobrazit velké množství rozličných dat, vždy jsou to 2D data. Tedy mapy ve formě obr{zku a textu. Jediný způsob, jak tento problém vyřešit, je zobrazovat 3D data v jiné aplikaci. Pro tento úkol jsem využil ArcGIS Explorer firmy ESRI.
4.7.1 Popis řešení Uvažujme bodovou vrstvu z{jmových objektů, ke kterým budeme chtít zobrazovat jejich 3D modely. Modely jsou uchov{ny ve form{tu KML v samostatných souborech.
Obr. 8: Stav aplikace po kliknutí na konkrétní objekt
41 Aplikace bude fungovat tak, že uživatel n{strojem Identify ve webové aplikaci klikne na ten objekt, jehož 3D model chce zobrazit. V pravém panelu v sekci Results se objeví odkaz, který vede na mapu form{tu NMF (nativní form{t aplikace ArcGIS Explorer) umístěnou na serveru. Kliknutím na odkaz uživatel zvolí, zda si soubor rovnou zobrazí v ArcGIS Exploreru nebo st{hne do svého počítače. Po otevření souboru v ArcGIS Exploreru se zobrazí 3D model objektu zasazený do svého okolí. Podkladovou mapovou službu je možno vytvořit v aplikacích balíku ArcGIS Desktop – konkrétně ArcCatalogu a ArcMapu. V prvním vytvoříme bodovou vrstvu objektů a definujeme jejich atributy. V druhém tuto vrstvu editujeme a ke každému objektu přid{me atribut, kterým bude odkaz na NMF soubor umístěný na serveru. Samotnou webovou aplikaci je nutno upravit tak, aby po kliknutí na objekt načetla atribut objektu, ve kterém je umístěný odkaz na příslušný NMF soubor, a zobrazila jej v panelu Results. Stačí upravit zdrojový kód a zajistit, aby se do výsledku funkce Identify přid{vala určit{ hodnota z atributové tabulky bodové vrstvy. D{le je nutné vytvořit NMF soubory a umístit do nich modely vytvořené v KML. Problematiku tvorby 3D modelů v jazyce KML zde nezmiňuji. Pro uk{zku jsem použil modely dostupné na Internetu volně ke stažení. Soubory NMF se vytv{řejí přímo v ArcGIS Exploreru. V hlavním menu kliknout na File, d{le Open, v levém panelu vybrat ikonu KML a vybrat konkrétní soubor. Může to být jak textové kml, tak zkomprimované kmz. Tímto vložíme model do mapy. V levém panelu v sekci Contents najedeme na pr{vě vloženou vrstvu a pravým tlačítkem si ji přiblížíme. Nyní natočíme a přiblížíme celkový pohled na aplikaci. Ten po uložení souboru zůstane zachov{n. Soubor uložíme klasicky přes File a Save. 3D model je tedy reprezentov{n dvěma soubory. Samotný model v souboru s příponou kml nebo kmz a mapa, ve které je umístěn s příponou nmf. Tyto soubory umístíme na server do složky, kde je nastaveno příslušné opr{vnění.
42
Obr. 9: Okno ArcGIS Exploreru zobrazující 3D model
4.8 Možnosti ArcGIS Serveru pro prezentaci dat ve form{tu KML 4.8.1 Vytvoření služby s podporou KML KML služby ArcGIS Serveru jsou navrženy s ohledem na Google Earth KML 2.0 specifikaci a podporují aplikaci Google Earth od verze 3.0. Podporu pro KML je možno přidat ve třetím kroku průvodce při vytv{ření nové služby nebo až po vytvoření služby v jejich vlastnostech v sekci Capabilitites. V této sekci je také možno nastavit parametry KML služby. Mezi ně patří: Operations, Feature Limit, ImageSize, ScreenSize, DPI, PaletteSize, IconSize, NetworkLinkControl, RefreshPeriod, LinkDescription, LinkName a OneTimeMessage. Operations definuje přístupové módy koncových uživatelů. Hodnota SingleImage umožňuje ž{dat pouze kombinované obr{zky jako překrytí povrchu. Ž{dn{ vektorov{ data nebudou vr{cena. Separate Images umožňuje ž{dat pouze soubor obr{zků jako překrytí povrchu (jeden na každou vrstvu zdrojového dokumentu). Vectors dovoluje požadovat obrazov{ a rastrov{ data. FeatureLimit ud{v{ počet prvků, které je služba schopna vr{tit. ImageSize ud{v{ velikost jakéhokoliv obr{zku odkazovaného ve vr{ceném KML.
43 ScreenSize a DPI definují rozlišení obrazovky KML klienta a jsou použity pro výpočet měřítka na měřítku z{vislých vrstev mxd dokumentu. PaletteSize a IconSize určují velikost referencovaných symbolů. NetworkLinkControl umožňuje zajistit, aby server řídil a omezoval klientovy požadavky. Minimum Refresh Period je interval, během něhož budou ignorov{ny všechny požadavky na refresh (znovunačtení) od stejného klienta. Link Description je popis, který se objeví po kliknutí na síťové propojení v KML klientovi. One Time Message je text, který se objeví ve vyskakovacím okně při prvním přístupu klienta ke službě. Pro zpřístupnění KML služby je po jejím vytvoření ještě nutné vytvořit tzv. KML síťové propojení (KML Network Link). KML síťov{ propojení jsou zpracov{v{na všemi prohlížeči podporujícími KML. Např. Google Earth a ArcGIS Explorer. Před vytvořením propojení je nutné mít spuštěnou službu s podporou KML, ke které bude toto propojení přiřazeno. V ArcGIS Manageru se tento vytvoří v sekci Applications. V levém menu vybrat KML Network Links a Create Network Link, spustí jednoduchého průvodce. V prvním kroku musíme definovat jméno. Nepovinné položky jsou snippet (kr{tký popis) a Long Description (dlouhý popis, umožňující použít HTML tagy). V dalším kroku specifikujeme samotnou službu s podporou KML a rovněž můžeme vybrat mapové vrstvy, které se mají zobrazit. V seznamu jsou zobrazeny pouze služby s podporou KML. Zvolíme režim vykreslov{ní. Nabízí se tyto možnosti: Všechny vrstvy jako jeden složený obr{zek Každ{ vrstva jako oddělený obr{zek Vektorové vrstvy jako vektory a rastrové jako obr{zky V praxi při použití 2D dat a prohlížení v Google Earth však mezi těmito možnostmi není výrazný rozdíl. Kliknutím na Finish se průvodce ukončí a nabídne výsledné síťové propojení ve fromě URL adresy ve tvaru: http://jmeno_serveru/ArcGIS/kml/nazev_kml_sluzby.kmz.
4.8.2 Prohlížení KML služeb v Google Earth Google Earth patří k předním prohlížečům dat ve form{tu KML a import síťového propojení je v něm velmi jednoduchý. V hlavním panelu aplikace Google Earth zvolíme položku Přidat a v menu vybereme Síťové propojení. Otevře se dialogové okno, kde vyplníme n{zev (tento se pak bude objevovat v levém panelu v oblasti Místa), vložíme URL adresu síťového propojení a můžeme potvrdit.
44 Tímto postupem však dojde k tomu, že se dan{ mapa nebude při pohybu (přiblížení a odd{lení) překreslovat. Musíme proto ve vlastnostech síťového propojení nastavit v z{ložce aktualizace spr{vné hodnoty. Pro nejlepší vizu{lní dojem je vhodné nastavit Aktualizaci podle zobrazení na Po zastavení kamery a hodnotu času v intervalu od jedné do čtyř sekund. Z testov{ní na rozličných datech vyplynulo, že aplikace mapu občas nepřekreslí. Děje se tak n{hodně a pak pomůže jen znovu pohnout mapou nebo zazoomovat. Myslel jsem si, že by to mohlo být způsobeno parametrem NetworkLinkControl a omezením minim{lního intervalu mezi překresleními na straně serveru, ale děje se tak, i když je tato funkce vypnut{. Druhou nectností je, že při pohledu z velké výšky (např. na celou Evropu) je obsah mapy hodně rozmazaný a přesahuje svůj r{mec. Na tuto skutečnost si stěžovali i ostatní uživatelé na diskusních fórech z{kaznické podpory firmy ESRI. Řešení ale nalezeno nebylo. Při dostatečném přiblížení ale tento problém nenast{v{ a zobrazení je korektní.
Obr. 10: Nekorektní rozmazané zobrazení mapy ČR z velké vzd{lenosti
45
Obr. 11: Mapa Brna a okolí zobrazující vodní toky, hranice okresů a letiště
4.9 Publikov{ní služeb s podporou WMS Mapov{ služba s podporou standardu WMS dynamicky produkuje georeferencovanou mapu z geografických dat. Tato mapa je ve form{tu klasického obr{zku pro zobrazení na obrazovce počítače a může být prohlížena standardním www prohlížečem. Pokud vytv{říme podkladový dokument pro WMS službu (typicky mxd v ArcMapu), je třeba si uvědomit, že uživatelé prohlížející si tuto službu nebudou mít možnost měnit pořadí vrstev, symboly objektů nebo průhlednost vrstev. V průběhu pr{ce jsem zjistil, že nelze vytvořit WMS službu z podkladových dat v souřadnicovém systému JTSK, který byl použit u testovacích dat ArcČR 500. Tato data se nejprve musí převést do WGS 84. Pro toto stačí pouze změnit souřadnicový systém u jednotlivých shapů v ArcCatalogu. Podporu WMS můžeme zatrhnout při publikov{ní služby v průvodci spuštěném z ArcGIS manageru v jeho třetím kroku nebo poté při editaci služby v sekci Capabilities. Ve vlastnostech WMS je potřeba zatrhnout Enter service properties below a zpřístupní se tabulka pro zad{ní metadat. Povinné jsou pouze položky Name, Title a OnlineResource. Sem je potřeba vložit text ve tvaru:
46 http://<server name>//services//<map name> /mapserver/ wmsserver? Např: http://localhost/arcgis/services/mapa_cr/mapserver/wmsserver? Před ukončením nastavení služby je dobré se přesvědčit, zda služba je typu Pooled Service. Pro přístup k WMS službě potřebujeme zn{t její URL. To zjistíme v ArcGIS Manageru v sekci Applications a WMS Services. Zde se zobrazuje seznam všech služeb s podporou WMS doplněný jejich URL. Form{t URL je uveden výše. Webový prohlížeč je nejjednoduší WMS klient. WMS požadavky jsou posíl{ny přes HTTP a odpovědi nebo výjimky vr{ceny prostřednictvím prohlížeče. ArcCatalog a ArcMap a ArcGIS Explorer mohou také fungovat jako WMS klienti.
4.9.1 Zobrazení WMS služby v ArcGIS Exploreru Tato aplikace podporuje mimo jiné přístup k WMS služb{m. Pro zobrazení mapy je potřeba z nabídky File a Open vybrat WMS a v dialogovém okně pouze vložit URL služby. Cel{ operace je tedy velmi jednoduch{. Po prvním otevření mapy se zobrazí dialog pro specifikaci minim{lní velikosti buňky rastru. Tu může uživatel nastavit v metrech. Čím je tato velikost větší, tím jsou data zobrazena méně detailně. Také je vhodné zatrhnout položku Automatically zoom to the visible extent of the added data, kter{ zajistí automatické přiblížení pr{vě přidaných dat. V dalším kroku je možno specifikovat, které mapové vrstvy si přejeme zobrazit. Po potvrzení dojde k zobrazení zvolené mapové služby.
Obr. 12: Vrstva silnic a železnic získan{ jako WMS služba v okolí Chicaga
47
Obr. 13: Porovn{ní rozdílné velikosti buněk rastru na dvou stejných vrstv{ch umístěných přes sebe. Tenk{ č{ra vlevo je zobrazena s buňkou o velikosti 1 m a siln{ č{ra vpravo 100 m.
4.9.2 Zobrazení dat ve form{tu WMS ve webovém prohlížeči Každý prohlížeč může sloužit jako WMS klient. Pro zobrazení mapy stačí zadat do adresního ř{dku URL adresu ve tvaru: http://localhost/arcgis/services/mapa_cr/MapServer/WMSServer?service=wms&ve rsion=1.1.X&request=getmap&LAYERS=0,1&BBOX=-927034,-1242816,-407989,920166&FORMAT=image/png&SRS=EPSG:4326&width=800&height=600&EXCEP TIONS=application/vnd.ogc.se_inimage Prohlížeč vr{tí obr{zek s mapou, jehož parametry jsou specifikov{ny v URL dotazu. Podstatným parametrem je request=getmap, který serveru řík{, že m{ zobrazit mapu, layers určuje seznam vrstev, které se vykreslí, bbox je r{mec, kterým je ohraničen{ oblast s mapou (výřez), format určuje typ obr{zku (tady je to png), srs je druh projekce, width a height ud{v{ celkové rozměry obr{zku a exceptions popisuje reakci na výjimku. Aby mohlo dojít ke korektnímu zobrazení mapy, je se nutno před formulací výše zmíněné URL sezn{mit s vlastnostmi WMS služby pomocí dotazu GetCapabilities, který m{ tuto podobu: http://localhost/arcgis/services/mapa_cr_ok/mapserver/wmsserver?service=wms& version=1.1.X&request=getcapabilities
48 Prohlížeč jako odpověd vr{tí XML soubor, který popisuje možnosti služby. Z něho použijeme parametry do z{pisu URL pro zobrazení mapy. Zajím{ n{s především element BoundingBox pro nastavení parametru bbox, SRS pro nastavení projekce a Name u každé vrstvy. Name ud{v{ číslo, které je identifik{torem vrstvy a jejich seznam tvoří hodnotu parametry layers z URL.
4.10 Geoprocessingové služby Geoprocessingové služby umožňují uživatelům využívat geoprocessingové modely, které běží na serveru. Tento přístup přispív{ k centralizaci dat a soustředění vlastních operací geoprocessingu na serveru. Koncept geoprocessingu v pod{ní společnosti ESRI je postaven na toolboxech a modelech. Modely jsou ucelené funkcionality složené z jednotlivých funkcí (atributový výběr, vytvoření obalové zóny, ořez...). Toolbox je v podstatě kontejner na uložení těchto modelů. M{ podobu soboru s příponou tbx. Geoprocessingové služby mohou být využív{ny jak desktopovými aplikacemi (ArcMap, ArcCatalog, ArcGlobe a ArcScene), tak webovými aplikacemi. V desktopových aplikacích se s nimi pracuje jako s lok{lně uloženými toolboxy.
4.10.1 Vytvoření modelu Tvorba probíh{ v n{stroji ModelBuilder, který je souč{stí ArcMapu. Nejprve je potřeba z hlavní nabídky Window zobrazit okno ArcToolbox. V něm se nach{zí dostupné toolboxy. Jednak ty implicitní s předem definovanými n{stroji a jednak ty vytvořené uživatelem. Pomocí pravého tlačítka a kontextového menu se vytvoří nový toolbox a v jeho r{mci nový model. Tento můžeme hned editovat v ModelBuilderu. Pokud se podaří zprovoznit určitý model lok{lně v ArcMapu, neznamen{ to ještě, že bude spr{vně fungovat na serveru. Modely se musí upravit a také je nutno db{t především na korektní nastavení datových typů parametrů a jejich označení jako vstupní, výstupní a intermediate. Problematika tvorby modelů je značně rozs{hl{, proto se zde omezím pouze na stručný popis jednoho z modelů použitého v aplikaci. Editace a tvorba modelu se prov{dí přetažením n{strojů z ArcToolboxu, vz{jemným propojením a úpravou vstupních a výstupních parametrů modelu.
49
Obr. 14: Jednoduchý model v ModelBuilderu
Model na obr{zku se skl{d{ ze dvou n{strojů (Buffer a Clip) propojených přes „scratchbuffer“, což je jakési úložiště výstupních dat z Bufferu a vstupních do Clipu. Buffer vytvoří obalovou zónu kolem určitých prvků (např. řeka) – vstupní parametr „data k obaleni bufferem“. Velikost obalové zóny je d{na parametrem „vzdalenost“. N{stroj Clip provede porovn{ní polohy výstupu z Bufferu s parametrem „data k vybrani“, což jsou ohrožené subjekty. Jeho výstupem je parametr „vybrana data“, který je rovněž výsledkem celého modelu.
4.10.2 Způsoby zpřístupnění geoprocessingové služby Před tím, než můžeme publikovat službu s podporou geoprocessingu, musíme operace, které v ní budeme chtít využít, uložit ve formě modelu nebo skupiny modelů. Poté m{me dvě možnosti dalšího postupu:
Publikovat toolbox jako mapovou službu. Přidat tyto modely do mapy jako tzv. tool layer (n{strojovou vrstvu). Ta se chov{ obdobně jako kter{koliv jin{ mapov{ vrstva, ale obsahuje modely. Tuto mapu poté publikovat na server jako mapovou službu.
4.10.3 Publikov{ní toolboxu jako geoprocessingové služby Provede se stejně jako publikov{ní jiné služby (např. mapové). Opět je možno využít ArcCatalog a ArcGIS Server Manager. Jedinou odlišností zde je možnost nastavit typ spouštění na synchronní a asynchronní. Synchronní znamen{, že
50 klient využívající službu bude čekat, až operace, kterou model vykon{v{, proběhne do konce. Výsledky na serveru jsou pouze dočasné a musí být zobrazeny klientem. Asynchronní znamen{, že klient čekat nemusí a může pokračovat v jiných úloh{ch. Výsledky jsou na serveru uloženy a můžou být na něm i zobrazeny. Jako synchronní se doporučuje nastavovat pouze ty n{stroje, které proběhnou velmi rychle a mají omezenou množinu výstupních dat. Další položkou, kterou zde můžeme upravit je Maximum Number of Records Returned by Server, kter{ dok{že omezit množství vr{cených dat a tímto eliminovat přetížení sítě. Nespr{vné nastavení ale může vést k tomu, že se výsledek vůbec nezobrazí a server vypíše hl{šku „Exceeded transfer limit“. Po publikov{ní toolboxu ArcGIS Server načte jeho obsah a zapamatuje si informace o tom, kde je uložen (cestu). Nedoch{zí k nakopírov{ní toolboxu na server. Pokud dojde k restartu služby, server znovu načte konkrétní toolbox a obnoví uložené informace. Pokud tedy nějakým způsobem změníme model uložený v toolboxu (např. přid{me funkcionalitu), musíme restartovat službu.
4.10.4 Publikov{ní mapové služby s n{strojovou vrstvou Při publikaci tohoto typu služby se automaticky vytvoří jak mapov{, tak geoprocessingov{ služba. Obě mají stejn{ jména. Můžeme tvrdit, že mapov{ služba m{ přiřazenu konkrétní službu geoprocessingovou a naopak. Řešení využívající mapovou službu s n{strojovou vrstvou m{ tyto výhody: Výstup n{stroje je automaticky přid{n jako nov{ vrstva. Možnost ovlivnit symbologii vrstvy. Odpadají problémy při velkých objemech dat, které by mohly překročit limity serveru. N{stroj je schopen zpracovat vrstvy mapové služby jako vstupní data. Samotnou publikaci můžeme provést v ArcCatalogu a ArcGIS Server Manageru. V Manageru v sekci Services vybereme Publish a GIS Resource a d{le je postup obdobný jako při publikaci jiných služeb. Ve třetím kroku je potřeba se přesvědčit, zda jsou zatržené možnosti Mapping a Geoprocessing. V seznamu služeb se poté ujistíme, že vznikly dvě služby stejného jména, ale rozdílného typu: map service a geoprocessing service.
4.10.5 Využití geoprocessingu ve webové aplikaci Podpora geoprocessingu se u webových aplikací projeví přítomností nové položky v panelu Tasks. Po jejím rozkliknutí se zobrazí jednoduchý formul{ř pro zad{ní vstupních hodnot. Po potvrzení se odešle požadavek serveru, ten provede výpočet na zadaných datech a vr{tí výsledek, který se zobrazí v mapě a rovněž v panelu Results, kde najdeme různé doplňující informace nebo chybov{ hl{šení v případě neúspěchu operace.
51 Pokud m{ služba nastaven asynchronní běh (viz výše), uživatel m{ možnost vidět výsledky úkolu dokonce po ukončení webové aplikace. Pokud operace nestačila proběhnout do okamžiku, kdy se uživatel rozhodl zavřít prohlížeč a pokud m{ povoleny cookies, výsledek bude zobrazen automaticky po dalším otevření aplikace. Jestliže služba běží synchronně, uživatel musí nechat otevřené okno prohlížeče, dokud se neobjeví výsledky.
4.10.6 Vytvoření webové aplikace s podporou geoprocessingu V třetím kroku průvodce při definov{ní úkolů je nutno přidat položku Geoprocessing. Poté v z{ložce Supporting Services vybrat požadovanou geoprocessingovou službu ze seznamu, vr{tit se zpět na z{ložku Select Task a úkol nakonfigurovat kliknutím na Configure. V políčku Task Name vyplnit n{zev úkolu, který se bude zobrazovat v aplikaci v panelu Tasks. Implicitně je zde pouze Geoprocessing. Nabídka Task Definition zobrazuje seznam modelů uložených v toolboxu podkladové geoprocessingové služby. Jedna aplikace může obsahovat několik geopprocessingových úkolů. Stačí v z{ložce Select Tasks vložit více položek a každé určit buď jiný model z toolboxu nebo úplně jinou geoprocessingovou službu.
4.10.7 Využití při krizovém řízení Jako uk{zku možností využití geoprocessingových služeb v prostředí Internetu jsem vytvořil webovou aplikaci, kter{ by mohla sloužit jako orientační pomůcka pro zjištění subjektů ohrožených povodní. Aplikace byla vytvořena na počítači Krajského úřadu Jihomoravského kraje a publikov{na na jejich mapovém serveru. Využív{ podkladov{ data ArcČR pro vykreslení mapy a bodovou vrstvu ohrožených z{jmových subjektů, u nichž n{s zajím{, zda by byly zasaženy povodní nebo v jaké vzd{lenosti od rozlitého vodního toku leží. Vlastní data, kter{ se týkají povodní, zahrnují řeky a vodní n{drže v Jihomoravském kraji. Jedn{ se o předpokl{daný stav při stoleté vodě. Data týkající se vodních n{drží představují stav při tzv. zvl{štní povodni. To jsou povodně způsobené umělými vlivy – např. protržení hr{ze vodní n{drže. Aplikace umožňuje uživateli vybrat řeku z roletkového menu nebo pomocí SQL dotazu, n{sledky jejíž povodně ho zajímají a určit vzd{lenost subjektu od vodní plochy. Výsledkem je výběr těch subjektů, které se nach{zejí do této vzd{lenosti od zaplavené oblasti, tedy subjekty ohrožené povodní.
4.10.8 Postup při tvorbě aplikace Budeme uvažovat postup s využitím n{strojové vrstvy (viz výše). Nejprve je nutné vytvořit podkladový dokument s příponou mxd a odzkoušet funkčnost v ArcMapu a teprve poté službu a aplikaci umístit na server. V ArcMapu nejprve otevřeme připravený toolbox s modelem, který budeme používat. Připravíme si dokument včetně rozvržení mapových vrstev – vrstvy řek a vodních n{drží a vrstvu ohrožených objektů, nadefinujeme symbologii, popisy prvků atd. Poté je
52 potřeba dvojklikem spustit model. Výsledek by se měl zobrazit jako další vrstva dokumentu. Tuto je potřeba odstranit, protože ji nechceme mít v dokumentu. D{le přet{hneme model z toolboxu do levého panelu s vrstvami. Je ide{lní jej umístit jako horní vrstvu nad všechny mapové vrstvy. Pokud vše proběhne v poř{dku, můžeme dokument uložit. Problémy bývají s nastavením parametru scratchworkspace, což je adres{ř, kam se ukl{dají provozní data modelu. Tento musí být přítupný pro webovou aplikaci, aby tato data mohla načíst. Zajímav{ skutečnost nastala, pokud byly určité mapové vrstvy sdruženy ve skupině (Layer group). V této situaci model nevracel ž{dný výsledek. Toto omezení nebylo v materi{lech firmy ESRI vůbec zmíněno. Postup publikov{ní služby a vytvoření webové aplikace je pops{n výše.
Obr. 15: Uk{zka formul{ře pro zad{ní vstupních parametrů
53
Obr. 16: Situace zobrazuje zeleně označené objekty ohrožené zvl{štní povodní z Vodní n{drže Brno
54
5 Diskuse a ekonomické zhodnocení 5.1 Diskuse V pr{ci jsem se zabýval přev{žně produkty společnosti ESRI, kter{ patří k leaderům na trhu softwaru orientovaném na GIS. ArcGIS Explorer není uk{zkově stabilní aplikací. Občas se bezdůvodně zasekne a nebo spadne a s{m se ukončí. Uživatelé produktů firmy ESRI jsou ale na toto chov{ní zvyklí z ArcGIS Desktop. Také rychlost vykreslov{ní mapových podkladů nepatří k nejvyšším. Konkurenční Google Earth je na tom mnohem lépe. Explorer m{ ale výhodu ve větším počtu datových form{tů, které dok{že zobrazit. ArcGIS Server je dosti n{ročný na hardware, především na velikost paměti. Každ{ spuštěn{ služba zabír{ i 100 MB operační paměti, tím p{dem je nutno minimalizovat počet spuštěných služeb nebo přikoupit paměť. Proto bych jej doporučil nasadit na dostatečně výkonný stroj s vícej{drovým procesorem a alespoň 4 GB paměti. Myslím, že při dnešních cen{ch hardwaru není problém zajistit dostatečně výkonný počítač pro běh serveru tohoto typu. V průběhu pr{ce jsem se setkal s celou řadou problémů, z nichž vetšinu se nějakým způsobem podařilo vyřešit nebo obejít. Patřila mezi ně např. situace, kdy nefungoval geoprocessingový model, pokud byly mapové vrstvy ve skupině, ač v ž{dných materi{lech jsem nenašel tuto výjimku zmíněnu. Jako negativum vidím to, že webové aplikace nefungují v Opeře, ESRI tento prohlížeč nepodporuje. Při testov{ní s Firefoxem a Internet Explorerem ale problémy nebyly. Občas také nastalo to, že webov{ aplikace nezobrazila spr{vně výsledek dotazu nebo se cel{ nenačetla. Potom bylo nutné restartovat službu nebo celý server. Server je relativně pomalý a n{ročný na paměť, proto je optim{lní tvořit aplikace jednoduché, bez zbytečností a soustředit se především na funkcionalitu. Negativním faktorem při nutnosti zasahovat do kódu webových aplikací je špatn{ dokumentace funkcí Application Development Frameworku. Toto vývojové prostředí je poměrně složité a díky špatné dokumentaci je obtížné např. modifikovat kód dle vlastních potřeb. Při testov{ní geoprocessingových úloh ve webových aplikacích jsem narazil na problém, že server v průbehu výpočtu vypsal zpr{vu „Unexpected topoengine error“. Na diskusním fóru technické podpory jsem zjistil, že je to čast{ chyba. Ač by to podle označení mohlo vypadat na nějaký problém s prostorovou geometrií vstupních dat, pomohlo pouze ukončit p{r nepotřebných služeb, čímž se uvolnila paměť a poté již vše proběhlo bez problémů. Několikr{t se také stalo, že se webov{ aplikace vůbec nespustila, ale vypsala chybové hl{šení „Unable to instantiate class for xml schema type: MapServerLegendPatch“. Dlouho jsem přemýšlel, čím by to mohlo být
55 způsobeno, ale poté jsem si uvědomil, co pomohlo při řešení výše popsaného problému. Ukončil jsem několik nepoužívaných služeb a pak už aplikace začaly fungovat tak, jak mají. Z tohoto důvodu předpokl{d{m, že šlo o nějaký paměťový problém.
5.2 Ekonomické zhodnocení Pokud uvažujeme o prezentaci prostorových dat v prostředí Internetu, zajímají n{s také n{klady tohoto řešení. Nabízí se zde srovn{ní řešení využívajícího klasické desktopové aplikace pro jednotlivé klienty bez serveru a řešení s centr{lním serverem a tenkými klienty na straně uživatelů. Cena ArcGIS Serveru se liší podle jeho verze. ArcGIS Server Enterprise Standard, který je schopen zvl{dnout všechny úkoly řešené v této pr{ci stojí 8160 Dolarů (asi 1 300 000 Kč) ve verzi pro maxim{lně čtyřj{drový procesor. Existují i levnější Basic verze, které ale mají velmi omezené možnosti a neumí ani vytvořit mapovou službu, tím p{dem jejich využití pro naše účely není možné. Cena je sice vysok{, ale pokud bychom museli nakoupit specializované desktopové aplikace koncovým uživatelům a použít řešení bez serveru, celkov{ cena by mohla být ještě vyšší. Ta by samozřejmě z{ležela na počtu těchto aplikací. Serverové řešení také redukuje n{klady na údržbu desktopových aplikací a centralizuje jak data, tak jejich zpracov{ní do jednoho nebo několika strojů. Pokud bychom časem zjistili, že jediný server výkonově nestačí a je nutné rozložit z{těž do více strojů, n{klady na software i hardware samozřejmě rostou. Výhodou v tomto případě je, že webové prohlížeče jsou zdarma a jsou nainstalované na každém počítači. Další programy, kterých se řešení popisovan{ v této pr{ci týkala, byly ArcGIS Explorer a Google Earth, jež jsou zdarma ke stažení na Internetu. Co se týk{ n{kladů na hardware serveru, z{leží na tom, jak profesion{lní řešení zvolíme, ale tvrdil bych, že tyto n{klady budou tvořit zlomek pořizovací ceny softwaru.
56
6 Z{věr V této pr{ci jsem se zaměřil na možnosti prezentace prostorových dat prostřednictvím webu s využitím produktu ArcGIS Server 9.2 firmy ESRI. Zkoumal jsem možnosti tohoto produktu ve spojení s klientskými aplikacemi ArcGIS Explorer, Google Earth a webovými prohlížeči. Mým cílem bylo vytvořit funkční webové aplikace, které zpřístupní data uložen{ na serveru klientům přes síť Internet prostřednictvím webového prohlížeče. Tento cíl se podařilo splnit a potvrdilo se, že centralizace uložení a zpracov{ní dat spolu s využitím tenkých klientů m{ smysl. Tento postup vidím jako perspektivní do budoucna, protože umožňuje zpřístupnit prostorov{ data komukoliv. Stačí vlastnictví webového prohlížeče. Výhodou ArcGIS Serveru je snadn{ šk{lovatelnost. Server mohou využít menší firmy i velké korporace. Lze velmi snadno vytvořit webové aplikace s pokročilou funkcionalitou bez nutnosti pokročilých znalostí programov{ní. Veškeré editace probíhají v grafickém prostředí přes různé průvodce. Pokud m{me připraveny všechny podklady a vše proběhne bez problémů, lze vytvořit jednoduchou webovou aplikaci včetně publikace příslušné služby za 10 minut. Webové aplikace jsou ovšem limitované technologií HTML a možnostmi prohlížečů. St{le se nemohou měřit s desktopovými aplikacemi. Různé prohlížeče (Internet Explorer, Firefox, Opera...) a jejich verze komplikují testov{ní webových aplikací. Rovněž jsem se zabýval použitím serveru pro sdílení dat v perspektivním form{tu KML, který se st{le více prosazuje jako otevřený form{t pro přenos geografických informací. Podařilo se dos{hnout cíle a prezentovan{ data zobrazit a využít v aplikacích ArcGIS Explorer a Google Earth. Původní předpoklad, že půjde v prostředí webové aplikace zobrazovat také 3D mapové služby, se nepotvrdil. Proto jsem vytvořil řešení, které uživateli umožní po kliknutí na objekt, který ho zajím{, otevřít jeho 3D model v jiné aplikaci – ArcGIS Exploreru. Podpora standardu WMS je ze strany serveru na dobré úrovni a není problém takto prezentovan{ data využít v celé řadě aplikací. Schopnosti serveru z hlediska geoprocessingu jsem zkoumal ve spojitosti s aplikací pro zjištění n{sledků možných povodní na některé z řek Jihomoravského kraje. Vytvořil jsem aplikaci, kter{ dok{že vybrat z množiny z{jmových subjektů ty, které by byly ohroženy povodní nebo se nach{zely v blízkosti zaplaveného území. Jsem přesvědčen, že se cíle pr{ce podařilo splnit a že může najít uplatnění jako z{klad pro podrobnější zkoum{ní této problematiky. V pr{ci jsem se také snažil
57 věnovat pozornost výhod{m i nevýhod{m použitých programů. Jde ovšem o aktu{lní stav, vývoj v této oblasti neust{le pokračuje.
58
7 Literatura ARCDATA PRAHA, s. r. o. Co je to GIS. http://www.arcdata.cz/oborova-reseni/co-je-gis/
(elektronický zdroj) [cit. 15. 4. 2008]. ESRI (A). ArcGIS Explorer. http://www.arcdata.cz/produkty-a-sluzby/software/esri/prohlizecegis/arcgis-explorer/
(elektronický zdroj) [cit. 28. 4. 2008]. ESRI (B). ArcGIS Server. http://www.arcdata.cz/produkty-a-sluzby/software/esri/arcgisservery/arcgis-server/
(elektronický zdroj) [cit. 28. 4. 2008]. ESRI (C). ESRI Support Center – GIS Dictionary. http://support.esri.com/index.cfm?fa=knowledgebase.gisDictionary.gat eway/
(elektronický zdroj) [cit. 5. 5. 2008]. GOOGLE EARTH: Google Earth KML 2.2 Specification. http://earth.google.com/kml/
(elektronický zdroj) [cit. 27. 4. 2008]. GREENE, R. Open Access : GIS in e-Government. 1. vyd. Redlands: ESRI Press, 2001. HL[SNY, T. Geografické informačné systémy – priestorové analýzy. Zvolen: Zephyros, 2007. JIR[NEK, J., ŘÍHA, J. Web Map Service (WMS). http://geo2.fsv.cvut.cz/wms/index.php?menu=wmsinfo
(elektronický zdroj) [cit. 18. 4. 2008]. MACHALOV[, J. Prostorově orientované systémy pro podporu manažerského rozhodov{ní. 1. vyd. Praha: C.H. Beck, 2007. NOUZA, Jiří. ArcGIS Server. ArcRevue. 2004, č. 3, s. 7. Dostupný z WWW: http://old.arcdata.cz/download/ArcRevue/2004/3/07-ArcGIS-Server.pdf
(elektronický zdroj) [cit. 19. 4. 2008]. PASSINGER, Petr. Možnosti využití geografických derivací značkovacích jazyků. 2006. 47 s. Bakal{řsk{ pr{ce. R[BOV[, I. Informační systémy / Informační technologie. 1. vyd. Brno: Konvoj, 2003. WIKIPEDIA: Web Map Service. http://cs.wikipedia.org/wiki/Web_map_service
(elektronický zdroj) [cit. 5. 5. 2008].