Martin Krempl
Institut geoinformatiky
Vysoká škola báňská - Technická univerzita Ostrava
tř. 17. Listopadu
708 33 Ostrava - Poruba
E - mail: amokerk@post.cz
This thesis treats of system design for editing of 3D building's model in Internet environment. In the first part come out state-of-the art in the area solving. Further is a described problem of standard exchange vector data, result of analyze map servers, description possibility relation database PostGIS and Macromedia Flash technology. In next part is done object oriented analyzing of system Flash client-MapServer-PostGIS. Follow description of transformation database from MS Access environment to PostGIS, system implementation on server side and on client side. In the end of the thesis there is a design how to update data on server using Flash client.
V předložené práci je zpracován návrh systému pro editaci 3D modelu budov v prostředí Internetu. V první části je uveden současný stav v dané oblasti. Dále je popsána problematika standardizované výměny vektorových dat, výsledek analýzy mapových serverů, popis možností relační databáze PostGIS a technologie Macromedia Flash. V další části je provedena objektově orientovaná analýza systému Flash klient-MapServer-PostGIS. Následuje popis převodu databáze z prostředí MS Access do prostředí PostGIS, implementace systému na straně serveru a na straně klienta. Na závěr je navržen koncept řešení problematiky aktualizace dat na serveru s použitím Flash klienta.
Vzrůstající význam počítačové techniky téměř ve všech oblastech lidské činnosti je možné pozorovat již řadu let. V poslední době dochází ve světě počítačů k bouřlivém rozvoji technologií umožňujících komunikaci mezi vzdálenými počítači. Tento trend jde ruku v ruce s neustále se rozšiřujícím fenoménem dnešní doby, Internetem. Tato počítačová síť sítí, informační dálnice, zpřístupňuje uživatelům informace z celého světa v rozličných formách. Ať už je to prostý text, zvukový záznam nebo pohybující se obraz. V dnešní době je možno vytvářet nejen dynamické webové stránky, ale i aplikace které si uživatel spustí pomocí svého webového prohlížeče. Tento bouřlivý vývoj v oblasti komunikace po síti zasahuje samozřejmě i do oblasti geoinformatiky. V dnešní době je možné využívat možností mapových serverů, které poskytují rozličné množství funkcí a vrací klientům data ve velmi pestré škále datových formátů. Tato pestrost však může být na škodu, pokud nejsou formáty standardizovány a při komunikaci mezi dvěma produkty může docházet a v drtivé většině případů dochází k problémům, které tuto komunikaci znemožňují. Proto se v dnešní době, a to nejen v oblasti geoinformatiky, dostává do centra pozornosti problém interoperability. Je to výzva, kterou je v dnešní době třeba řešit, aby obrovský zdroj informací, kterými Internet disponuje, bylo možno efektivněji využívat. Právě z těchto podnětů vznikl tento projekt, který si klade za cíl ukázat možnost standardizované komunikace mezi mapovým serverem a klientem. Tato práce navazuje na předešlé dva projekty řešící oblast navrhování a editace modelů budov ve 3D a jejich prezentace na webu.
Cílem projektu je vytvoření architektury, která bude umožňovat editovat 3D model budovy v prostředí Internetu. Klient pro úpravu modelu bude vytvořen pomocí technologie Flash, tento nástroj byl zvolen s cílem zpřístupnit celý sýstém širšímu okruhu uživatelů, jelikož podpora Flash je v prohlížečích daleko větší než např. Java applet.
Databáze 3D modelu budovy areálu VŠB, vytvořená Michalem Kramářem v rámci jeho diplomové práce.
Macromedia Flash, PostGIS, WFS, GML
Analýza provedena s důrazem na možnost připojení k databázi PostGIS a schopnost komunikace založené na standardu WFS
Stávající databáze, která byla v prostředí MS Access, byla převedena do prostředí PostGIS. Pro tento účel byl v programovacím jazyce Visual Basic 6.0 vytvořen program PostGISkonverter.
Obr č. 1 GUI aplikace PostGISKonverter
Byla provedena komplexní objaktová analýza systému a objektový návrh.
Obr č. 2 Architektura celého systému
Tato část práce spočívala v definici jednotlivých vrstev, na které se klient může dotazovat (stěny, místnosti, patra...).
Napsání programového kódu klienta ve vývojovém prostředí Micromedia Flash MX Professional.
Obr č. 3 GUI Flash klienta
V rámci řešení tohoto projektu byl navrhnut systém pro úpravu 3D modelů budov v prostředí WWW. Systém byl navržen tak, aby umožňoval vzdálenou správu dat z klienta postaveného na technologii Flash.
Největším problémem při řešení projektu bylo seznámení se s používanými produkty (Flash, MapServer, PostGIS), které byly vyvinuty jako samostatné na sobě nezávislé produkty. Díky tomu, že mají v sobě implementovánu podporu komunikačních standardů, mohou tyto různorodé produkty navzájem komunikovat.
Tato schopnost vzájemné komunikace byla prakticky ověřena vytvořením prototypu systému, který dokáže vizualizovat data ze vzdálené databáze. Bohužel nebylo v možnostech autora prakticky ověřit chování systému při aktualizaci dat. Řešení tohoto problému je v práci nastíněno a může být výchozím bodem a inspirací pro vývojáře, kteří se budou chtít touto problematikou zabývat.
Při řešení jednoho z dílčích úkolů, převod stávajícího datového zdroje do PostGIS, se vyskytla řada dílčích problémů vyplývajících z toho, že původní autor datového modelu nepředpokládal přenos databáze do jiného prostředí. Tyto změny se netýkali ani tak datového modelu, ty byly pouze nepatrné, ale hlavně vlastních dat. Pro účely převodu byla vyvinuta aplikace PostGISKonverter.
Vlastní řešení na straně serveru představovalo vytvoření konfiguračního souboru, kde se deklarovaly jednotlivé datové vrstvy dle potřeb klienta.
Při vývoji klientské aplikace byli ověřeny možnosti Flashe při komunikaci se serverem. Je možno říci že v dnešní podobě lze tento nástroj zařadit mezi plnohodnotné produkty pro vývoj webových aplikací, samozřejmostí je zde podpora technologie webových služeb. Jedinou nevýhodou tohoto produktu je jeho dostupnost. Zatímco všechny ostatní části systému jsou nekomerční a případný uživatel si je může volně stáhnout z Internetu, vývojové prostředí Macromedia Flash je produkt komerční a za jeho užívání (myslí se tím vývoj software) je třeba zaplatit.