Nyílt forráskódú webes geoinformatikai alkalmazások Simonné Dombóvári Eszter Institut für Geoinformation und Kartographie Technische Universität Wien Budapest, 2010. november 16. 1
Tartalom - Bevezetés - Nyílt forráskódú szoftverek - Webalapú megoldások nyílt forráskódú szoftverekkel - UMN MapServer - Példák gyakorlati alkalmazásokra [Forrás: http://www.noulakaz.net/weblog/wp-content/uploads/2008/10/20081031-resistance-is.jpg] net/weblog/wp Budapest, 2010. november 16. 2
Bevezetés Szoftver kategóriák Kereskedelmieskedelmi szoftver Freeware (ingyenes szoftver) - Szabad felhasználási és terjesztési jog biztosítása - Korlátozások: gyakran nem hozzáférhető, módosítható vagy terjeszthető forráskód Shareware és demó verzió - Időbeli, funkcionális korlátozás - Értékesítési reklámanyag Free Software (szabad szoftver) - Szabad hozzáférhetőség, széleskörű felhasználói szabadság - Szabadon változtatható és felhasználható, másolható és terjeszthető akár pénzért is, a módosított változatok is Open Source Software (nyílt forráskódú szoftver): megszorítások nélkül => Free/Libre/Open Source Software (FLOSS, szabad vagy nyílt forráskódú szoftverek) [Molnár-Kiss 2007] Budapest, 2010. november 16. 3
Bevezetés Free/Libre/Open Source Software (FLOSS) Szabad licence Free Software Foundation (FSF 1985, http://www.fsf.org), Szabadszoftver Alapítvány - FSF Magyarország (http://www.fsf.hu/) - General Public License (GNU GPL, 1989) legelterjedtebb szabad szoftver licenc - Szabadságjogok: 1. A tetszőleges célra történő szabad felhasználás (pl. BSD-licenc); 2. a szabad tanulmányozhatóság és igény szerinti módosíthatóság, aminek előfeltétele a forráskódhoz való hozzáférhetőség; 3. a másolatok szabad terjeszthetősége, segítve ezzel ismerőseinket; 4. a szabad továbbfejleszthetőség, és az eredmény szabad közzététele a közösség javára. Ennek is előfeltétele a forráskód elérhetősége. - FreeGIS (http://www.freegis.org/): GIS szabadszoftver gyűjtemény [http://hu.wikipedia.org/wiki/szabad_szoftver] Budapest, 2010. november 16. 4
Bevezetés Free/Libre/Open Source Software (FLOSS) Nyílt forráskódú licenc Open Source Initiative (OSI, 1998) közhasznú társaság - nyílt forráskódú licencek véleményezése é é és nyilvántartása tá (Open Source Definition) Open Source Geospatial Foundation (Nyíltforrású Térinformatikai Alapítvány OSGeo 2006, http://www.osgeo.org) org) - szabad és nyílt forráskódú térinformatikai szoftver fejlesztése - a közösség által kiadott projektek használatára ösztönözzön és összefogja a fejlesztést Open Geospatial Consortium (http://www.opengeospatial.org/): GIS szabványok OpenSource.org (http://www.opensource.org/): Nyílt forráskód kezdeményezés [http://hu.wikipedia.org/wiki/nyílt_forráskód] Budapest, 2010. november 16. 5
Open Source eszközök ök Előnyök - Gazdaságélénkítő hatású -Egyénre szabott, gyors és hozzáférhető, egymásra épülő megoldások - Hatalmas méretű fejlesztői csoport a világ minden részéről - Közösségteremtő: tapasztalatcsere és tanácsadás internetes fórumokon - Gyorsabb hibajavítási ciklus, változások gyors követése - Nyílt szabványú fájlformátumok.. [Forrás: http://www.o3magazine.com/i/43.jpg] Budapest, 2010. november 16. 6
Open Source eszközök ök Hátrányok - Kevés magyar dokumentáció - Hiányos dokumentáció - Funkcionális teljesség nem biztosított - Fejlesztés sok tényező függvénye - Gyengébb terméktámogatás á.. [Forrás:http://thefoxes.hypotenuse.ch/grThe FoxesWorldIsNotOpenSource.jpg] o o ou Budapest, 2010. november 16. 7
Open Source eszközök ök - Operációs rendszer: Linux - Irodai programok: OpenOffice, Gimp, Firefox, Thunderbird - Geodéziai programok: GNU Gama - CAD szoftverek: QCAD, DAT2SHP, Inkscape - GIS szoftverek: Quantum GIS, gvsig, GRASS GIS - GPS szoftverek: GPSbabel, GPSTrackmaker - Könyvtárak: GDAL/OGR, GEOS - Adatok: OSM, SRTM, GTOPO [Siki 2010] Budapest, 2010. november 16. 8
Open Source eszközök - Webalapú megoldások Webalapú megoldások többsége nyílt forráskódú szoftverekkel készül [Forrás:http://classes.engr.oregonstate.edu/eecs /winter2008/cs419/local/opensourcefamily.jpg] Budapest, 2010. november 16. 9
Open Source eszközök - Webalapú megoldások - Szerver számítógépek operációs rendszere: Linux - Webszerver: Apache - Biztonsági rendszerek: OpenSSL - Tartalomkezelő rendszer (CMS): Drupal - Programozási nyelvek: PHP, JavaScript - Adatbázis-kezelő rendszerek: MySQL, PostgreSQL - Webes térinformatikai eszközök: UMN MapServer, GeoServer, MapBender, OpenLayers [Siki 2010] Budapest, 2010. november 16. 10
Open Source eszközök - Webalapú megoldások Előnyök Saját térkép készítése és/vagy térképi rétegek használata Saját j funkciók programozása (interaktivitás, keresési-lekérdezési funkció, egyes rétegek ki-bekapcsolása stb.) Adatok tárolása saját szerveren WMS szabványos protokoll hozzáférést biztosít (távoli) térképszerver térinformatikai adatbázisához Offline és intranet Hátrányok Nehézkes telepítés, használat, frissítés komplikált lehet Programozási ismeretre van szükség Kevésbé felhasználóbarát Adatok tárolása lassíthatja a weboldalt Budapest, 2010. november 16. 11
UMN MapServer http://www.mapserver.org/ - C++ fejlesztői környezetben létrehozott nyíltforrású CGI alkalmazás (Apache/IIS), GPL licenc - Szerveroldali megoldást nyújt a térképek dinamikus előállításához és webböngészőn való online megjelenítéséhez - Operációs rendszerek: Windows, Linux, Mac OS X stb. - Testreszabható: PHP, Perl, Java, Phyton stb. - Támogatja az OGC formátumokat t (pl.: WMS, WFS) - Nyílt forráskódú programkönyvtárakkal működik együtt: Proj.4 (http://proj.maptools.org/): vetületi számítások végzése, tartalmazza az HD72-es geodéziai dátum (EOV) paramétereit GDAL/OGR könyvtár (Geospatial Data Abstraction Library, http://gdal.org/): grafikus kiterjesztésű állományok előállítása és megjelenítése [Berényi - Lovas 2008] Budapest, 2010. november 16. 12
UMN MapServer http://www.mapserver.org/ - Nagy mennyiségű vektoros és raszteres adat megjelenítésére alkalmas Vektorformátumok: ESRI shapefiles, ESRI ArcSDE, PostGIS, MySQL stb. Raszterformátumok: TIFF/GeoTIFF, EPPL7 stb. - TrueType Font támogatás - Tematikus térképek, osztályzás - Méretarányfüggő ábrázolás - Automatikus térképi elemek (mértékléc, jelmagyarázat, áttekintő térkép) - Cimkézés.. [Berényi - Lovas 2008] Budapest, 2010. november 16. 13
UMN MapServer - Történeti áttekintés 1994 Web-based Arc/Info AML (University of Minnesota) 1997 Version 1.0 (UMN, NASA és Minnesota Department of Natural Resources) 1998 Version 2.0 (Public Release as ForNet MapServer) 1999 Version 3.0 (UMN MapServer, raszter + truetype fontok) 2000 Version 3.3 (MapScript, PROJ4) 2001 Version 3.5 (OGC, OGR, GDAL) 2002 Version 3.7 (24bites képek) 2003 Version 4.0 (Flash, PDF) 2004 Version 4.4 (javított OGC támogatás) 2005 Version 4.6 2006 Version 4.8 (layer plug-in architecture) 2007 Version 5.0 2008 Version 5.2 (Tile-based output, egyszerűsített template, Microsoft SQL Server 2008 támogatás, OSGeo projekt: http://www.mapserver.org/) 2009 Version 5.6 (XML mapfile) 2010.. [http://trac.osgeo.org/mapserver/wiki/mapserverhistory] Budapest, 2010. november 16. 14
UMN MapServer -Működése 1.) A felhasználó egy kérést küld a szerverhez a böngésző programjából (pl. térkép nagyítás) 2.) A webszerver megkapja a kérést (HTTP) és továbbítja a MapServer felé (CGI) 3.) MapServer előállítja a kérésnek megfelelő eredményt a webszerveren tárolt vektoros és raszteres állományokból, vagy térképi adatokat tartalmazó adatbázisokból és 4.) raszter képként (pl. PNG vagy JPEG formátumban) küldi el a felhasználónak, amely egy weblapba ágyazva jelenik meg. [Shostal 2005] Budapest, 2010. november 16. 15
UMN MapServer - Webszerver környezet komponensei 1. Webszerver (WAMP/LAMP) Windows/Linux http-szerver (Apache/IIS) Adatbáziskezelő-rendszer d (MySQL, PostGreSQL) Szkriptnyelv (PHP) 2. Mapserver Mapserv.exe (CGI) Initialisation File Map-fájl Template-fájl 3. Térbeli adatok (raszter- vagy vektorformátumok: GIF, PNG, Shape, GeoTIFF,...) Budapest, 2010. november 16. 16
UMN MapServer - MAP- és TEMPLATE-fájl MAP-fájl (konfigurációs fájl) - A térképszolgáltatás alapkonfigurációját tartalmazza. - MAP-fájl határozza meg a kép előállításához és a lekérdezésekhez szükséges paramétereket: térképkivágat, vetület, megjelenítés mérete és grafikai jelkulcs -.map kiterjesztésű szöveges állomány, az XML-fájlhoz hasonlóan egy root tagból áll (MAP) és ezen belül további elemekből (NAME, EXTENT stb.) épül fel. Minden elem END-taggal zárul. A map-fájl előállítása történhet: automatikus tik módon (QGIS) szerkesztéssel (osztályain keresztül) [Shostal 2005] Budapest, 2010. november 16. 17
UMN MapServer - MAP- és TEMPLATE-fájl Gyakorlati példa: /data/oktatok/phd/deszter/umn /data/world_fkb.shp, mymap.qgs.. (ESRI shapefájl, QGIS-projekt) /tmp/ (lekérdezés eredményeként keletkezett raszteres képek ideiglenes tárolóhelye) mymap.map (konfigurációs ió fájl) templ_mymap.html (html megjelenítés) call_in_browser.txt (elérési útvonalak) -> Másoljuk a saját mercator-os tárhelyünkre: /home/..user/public_html/.. Budapest, 2010. november 16. 18
Budapest, 2010. november 16. [Shostal 2005] 19
UMN MapServer - MAP- és TEMPLATE-fájl Térkép megjelenítése (MAP-mode) http://mercator.elte.hu/cgi-bin/mapserv?map=/home/..user/public_html/umn/mymap.map&mode=map MapServer elérési útvonala Map-fájl elérési útvonala Budapest, 2010. november 16. 20
UMN MapServer - MAP- és TEMPLATE-fájl TEMPLATE-fájl (HTML megjelenítés/sablon) - A mapserver által előállított térkép megjelenítése a html template (oldal) segítségével történik - A térkép felhasználó felületének kialakításához szükséges funkciókat tartalmazza: aktuális koordináták, nagyítási- kicsinyítési funkció, rétegek kiválasztása, böngésző-lekérdezés, térkép, jelmagyarázat és mértékléc [Shostal 2005] Térkép megjelenítése (BROWSE-mode) http://mercator.elte.hu/cgi-bin/mapserv?map=/home/..mymap.map&mode=browse Budapest, 2010. november 16. 21
UMN MapServer - MAP- és TEMPLATE-fájl Gyakorlati példa.. WEB # Set IMAGEPATH to the path where MapServer should # write its output. IMAGEPATH '/home/..user/public_html/umn/tmp/' #IMAGEPATH '/tmp/'.. # Set IMAGEURL to the url that points to IMAGEPATH # as defined in your web server configuration IMAGEURL 'http://mercator.elte.hu/~user/umn/tmp/' #IMAGEURL '/tmp/' #Scale range at which web interface will operate # Template and header/footer settings # Only the template parameter is required to display a map. See MapServer documentation TEMPLATE 'templ_mymap.html' END Budapest, 2010. november 16. 22
UMN MapServer -Előnyök/Hátrányok Előnyök Széles felhasználói körrel rendelkezik (gyors segítségnyújtás, sokszínű és szerteágazó felhasználói igények) Paraméterezhető térképi kimenet Nyílt forráskódú, ingyenes, több platformon fut Támogatja a transzformációkat (pl.: EOV, WGS84) Támogatja az elterjedt adatbáziskezelőket, vektoros és raszteres formátumot. Támogatja az OGC formátumokat (pl.: WMS, WFS) Képpiramis támogatás á Moduláris felépítés Gyors (C++ programnyelv) Hátrányok Sok GIS funkció hiányzik (pl. pufferzóna, útvonalkeresés) Nehézkes személyre szabás a nem szakemberek számára Viszonylag sok függőség (szükséges segéd-szoftverek a teljes funkcionalitás eléréséhez) [Berényi - Lovas 2008] Budapest, 2010. november 16. 23
MapServer hazai példa: UMN Mapserver, Váti UMN Mapserver, Vingis. nemzetközi példa: AOS - Atlas Ost- und Südost Europa, http://titan.geo.univie.ac.at/project/atos/htdocs/prototyp/ Kanton Solothurn (http://www.sogis1.so.ch/sogis/internet/pmapper/map.phtml?config=or) Kündigungsgrund Nichtarier (http://www.ns-verbrechen.at/) Parkinfo Wuppertal (http://parkinfo.wuppertal.de/) Atlas of Canada (http://atlas.gc.ca/site/english/index.html) / / l h/ h l) Map24 (http://map24.com/) Map.Search.Ch (http://map.search.ch/) Budapest, 2010. november 16. 24
Irodalom http://mapserver.org/ (UMN MapServer Homepage) http://demo.mapserver.org/tutorial/index.html (Tutorial) www.maptools.org (MS4W telepítő Windows-ra) http://www.qgis.org/ (Quantum GIS) http://www.openlayers.org/ (OpenLayers) Thorsten Fischer: UMN MapServer. Handbuch und Referenz; MapMedia J. Thomsen und D. Geschwandtner GbR, Berlin 2002 Bill Kropla (2005): "MapServer: Open Source GIS Development" ISBN 1590594908 Dr. Siki Zoltán (2010): Geodéziai és térinformatikai szabadszoftverek, http://www.agt.bme.hu/gis/view.html Berényi Attila - Lovas Tamás (2008): Webalapú, nyílt forráskódú térinformatikai szoftverek. Térinformatika online, 2008. március 11. http://terinformatikaonline.hu/index.php?option=com_content&task=view&id=174&itemid=84 Soós Dániel (2008): MS4W Ingyenes WebGis Windows platformra. Térinformatika online, 2008. április 30, http://terinformatikaonline.hu/index.php?option=com_content&task=view&id=202&itemid=8 Molnár Attila - Kiss Eszter (2007): Nyílt forráskódú szoftverek a webes térinformatikában. Térinformatika online, 2007. június 29, http://terinformatikaonline.hu/index.php?option=com_content&task=view&id=45&itemid=84 Christy Shostal (2005): Internetes GIS MapServer alapokon. I-MAP Seminar, www.agt.bme.hu/gis/eloadasok/mapserver_04-28-05-imapseminar2_193.pdf Budapest, 2010. november 16. 25
Köszönöm a figyelmet! Budapest, 2010. november 16. 26