Informatikus és szakigazgatási agrármérnök szak, informatika szakirány
Szent István Egyetem, Gazdaság- és Társadalomtudományi Kar, Gödöllő - 2010
A térinformatika tantárgy keretén belül az volt a feladata a csapatnak, hogy valamilyen módon adatokat lehessen vizualizálni a térképen. Ez számos problémát felvetett:
Hosszas tárgyalás után született meg az ötlet, hogy a Google Maps-et kellene használni a feladat megoldására, mert így számos problémát vehettünk le a vállunkról. Először is, van egy kész térképadatbázis, ami ingyenes, naprakész és jól használható. Másodszor, képes XML struktúrában előállított adathalmazt a megfelelő transzformációk után megjeleníteni.
Egyetlen követelemény a Google szempontjából, hogy az alkalmazás rendelkezzen egy Google API kulccsal. Erre azért van szükség, hogy használni tudjuk a Google szolgáltatását a megadott weboldalon. Tessék észben tartani, hogy a kulcs csak azon a domain neven használható, amihez legeneráltattuk.
A térképszolgáltatást viszonylag egyszerűen lehet használni. Miután megvan az API kulcs, a következőket kell tennünk:
<head></head>
részébe:
<script
type="text/javascript"
src="http://maps.google.com/maps?file=api&v=2&sensor=false&key=API_KULCS_IDE_JÖN"></script>
GMController.js
fájlt tegyük a térképalkalmazásunk könyvtárába. Tehát a könyvtárstruktúra most az alábbiak szerint néz ki:
[DOCUMENT ROOT]
|-konyvtar 1
|-konyvtar 2
|-konyvtar n
|-GMController.js
|-index.html
<head></head>
részlegben.
<script
type="text/javascript"
src="GMController.js"></script>
<div></div>
elemet a meghatározott azonosítóval
id
már a
<body></body>
elemek között. Ezzel tudatjuk a Google Maps-szel, hogy ebbe az elembe szeretnénk megjeleníteni a térképet. A betöltő függvényeket pedig a
<body>
tag-hez kapcsoljuk.
<body
onload="initialize(p1, p2, p3, p4);"
onunload="GUnload();">
<div
id="map_canvas"></div>
</body>
Paraméter | Típus | Kötelező | Leírás |
---|---|---|---|
p1 | szöveg | nem |
URL. Itt lehet megadni annak a geoXML fájlnak az elérését (a későbbiekben még szó lesz róla), ami tartalmazza az adatok vizualizációjához szükséges adatokat a Google Maps számára. Fontos, hogy olyan helyen legyen a fájl, ahol a Google is eléri. Mivel szöveges típus, ezért kéretik szimpla idézőjelek közé tenni értékét.
Pl.: http://360fanatix.hu/terinfo/countrires2.kmz |
p2 | tizedes tört | nem | Az induláskori térkép középpont első koordinátája. Figyelem, a magyarral ellentétben a tizedeselválasztó jel nem a vessző (,), hanem a pont (.). Mivel nem kötelező, ha nem adjuk meg, akkor automatikusan Európa középpontjának első koordinátája lesz az alapértelmezett. |
p3 | tizedes tört | nem | Az induláskori térkép középpont második koordinátája. Figyelem, a magyarral ellentétben a tizedeselválasztó jel nem a vessző (,), hanem a pont (.). Mivel nem kötelező, ha nem adjuk meg, akkor automatikusan Európa középpontjának második koordinátája lesz az alapértelmezett. |
p4 | egész szám | nem | Az induláskori térkép alapértelmezett nagyítása. A skála 1 és 15 között mozog. Mivel nem kötelező, ezért az alapértelmezett értéke 6. |
<body
onload="initialize();"
onunload="GUnload();">
<div
id="map_canvas"></div>
</body>
Az alap struktúra, amiért a Google Maps-et választottuk az az volt, hogy a Google képes XML struktúrában létrehozott adatokat közvetlenül olvasni és beilleszteni. A geoXML tulajdonképpen egy speciális XML file, ami a térképen történő ábrázoláshoz szükséges adatokat tartalmazza. A Google a sajátját nem XML -nek, hanem KML -nek nevezte el, de most ez a lényegen nem változtat.
A dolog lényege, hogy van egy KMZ file-unk, ami tartalmazza a megjelenítéshez szükséges információkat, koordinátákat. Ezeket az adatokat a Google képes értelmezni, és azokat a térképen elhelyezni.
A "Hogyan készítsünk KMZ file"-t menüpontban egy videón keresztül mutatjuk be, hogyan lehet könnyen és gyorsan KMZ file-t készíteni.
Igazából ha a fájl tartalma 100%-an korrekt és értelmezhető a Google által, akkor nincs jelentősége, hogy a fájl végén xml vagy kml szerepel. A KMZ-nek is csak akkor van jelentősége, ha viszonlyag nagy a KML fájl (értsd több megabájtos) akkor célszerű KMZ-be tenni. Magát a KMZ fájlt roppant egyszerű előállítani.
A kész kml fájlt tömörítsük be egy egyszerű ZIP-be. Majd ha kész van, akkor csak szimplán nevezzük át KMZ-be. Ennyi a lényeg. :)
A Google Maps alapból három féle ábrázolási technikával rendelkezik, melyek a következőek:
A Marker (vagy magyarul jelölő) egyetlen pont megjelenítésére képes. Amolyan rajzszög féleség.
A Polyline (vagy magyarul vonal) segítségével vonalat, vagy körvonalat helyezhetünk el a térképen. Működése rendkívül egyszerű: definiáljuk a koordinátákat, majd a google automatikusan összeköti őket.
A Polygon eszköz arra képes, hogy a megadott koordináták közötti területet színezze be.
Az alábbi videóban lépésről-lépésre bemutatásra kerül egy alap KMZ file létrehozása. A felhasznált eszköz szintén a Google sajátja, nevén Google Earth.
A második videót Chaplin emlékére némafilmként készítettük el. :)