Térinformatikai adatszerkezetek

Hasonló dokumentumok
Térinformatikai adatszerkezetek

R ++ -tree: an efficient spatial access method for highly redundant point data - Martin Šumák, Peter Gurský

MIKOVINY SÁMUEL TÉRINFORMATIKAI EMLÉKVERSENY

Mezők/oszlopok: Az egyes leíró adat kategóriákat mutatják.

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

file:///d:/okt/ad/jegyzet/ad1/b+fa.html

Algoritmusok és adatszerkezetek gyakorlat 07

A térinformatika lehetőségei a földrajzórán

Térinformatikai adatszerkezetek

(Solid modeling, Geometric modeling) Testmodell: egy létező vagy elképzelt objektum digitális reprezentációja.

Adatbázis-kezelés az Excel 2013-ban

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor.

file:///d:/apa/okt/ad/jegyzet/ad1/b+fa.html

TÉRINFORMATIKAI MODELLEZÉS TÉRINFORMATIKAI MODELLEZÉS ALAPFOGALMAI A VALÓSÁG MODELLEZÉSE

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján

A DIGITÁLIS TÉRKÉP ADATAINAK ELŐÁLLÍTÁSA, ADATNYERÉSI ELJÁRÁSOK

Cohen-Sutherland vágóalgoritmus

Környezeti informatika

A számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

Csoportosítás. Térinformatikai műveletek, elemzések. Csoportosítás. Csoportosítás

Helyzet: 1853, London, Soho, kolerajárvány, 700 halott Kérdés: honnan ered a járvány? Adatok: az elhunytak neve, lakhelye Megoldás dr.

Téradatokkal kapcsolatos elemzések és fejlesztések a FÖMI Térinformatikai Igazgatóságán

Fák Témakörök. Fa definíciója. Rekurzív típusok, fa adatszerkezet Bináris keresőfa, bejárások Bináris keresőfa, módosítás B-fa

Többfelhasználós és internetes térkép kezelés, megjelenítés

TÉRINFORMATIKA I. Dr. Kulcsár Balázs egyetemi docens. Debreceni Egyetem Műszaki Kar Műszaki Alaptárgyi Tanszék

Máté: Számítógépes grafika alapjai

Adatbáziskezelés. Indexek, normalizálás NZS 1

Az ErdaGIS térinformatikai keretrendszer

TÉRINFORMATIKAI ALGORITMUSOK

7 7, ,22 13,22 13, ,28

Adatszerkezetek 2. Dr. Iványi Péter

MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP /1/A

Készítette:

A számítógépi grafika elemei. 2012/2013, I. félév

A tételsor a 12/2013. (III. 29.) NFM rendelet foglalt szakképesítés szakmai és vizsgakövetelménye alapján készült. 2/33

TÉRINFORMATIKAI ALGORITMUSOK

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

A programozás alapjai előadás. [<struktúra változó azonosítók>] ; Dinamikus adatszerkezetek:

ADATBÁZIS-KEZELÉS ALAPOK I.

Ionogram releváns területeinek meghatározása és elemzésének automatikus megvalósítása

Kulcsár Attila. A második szint GeoCalc GIS 2. GISopen 2012 konfrencia.

Adatszerkezetek 7a. Dr. IványiPéter

Intelligens közlekedési rendszerek (ITS)

Elemi adatszerkezetek

Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek

Geoshop fejlesztése a FÖMI-nél

Web-programozó Web-programozó

Informatika. Középszintű érettségi vizsga témakörök. 1. Információs társadalom. 2. Informatikai alapismeretek hardver

Adatszerkezetek I. 8. előadás. (Horváth Gyula anyagai felhasználásával)

Elengedhetetlen a játékokban, mozi produkciós eszközökben Nélküle kvantum hatás lép fel. Az objektumok áthaladnak a többi objektumon

Láthatósági kérdések

Gyakorló feladatok ZH-ra

Földfelszín modellezés

Fogalmak: Adatbázis Tábla Adatbázis sorai: Adatbázis oszlopai azonosító mező, egyedi kulcs Lekérdezések Jelentés Adattípusok: Szöveg Feljegyzés Szám

Kérdés Lista. A Magyarországon alkalmazott rajzlapoknál mekkora az oldalak aránya?

Országos Területrendezési Terv térképi mel ékleteinek WMS szolgáltatással történő elérése, Quantum GIS program alkalmazásával Útmutató 2010.

Koordinátageometria. , azaz ( ) a B halmazt pontosan azok a pontok alkotják, amelynek koordinátáira:

QGIS gyakorló. --tulajdonságok--stílus fül--széthúzás a terjedelemre).

QGIS. Tematikus szemi-webinárium Térinformatika. Móricz Norbert. Nemzeti Agrárkutatási és Innovációs Központ Erdészeti Tudományos Intézet (NAIK ERTI)

Szabó József CadMap Kft. 29. Vándorgyűlés július Sopron

Adatszerkezetek és algoritmusok

A térinformatika alapfogalmai, ismerkedés az ArcGIS szoftverrel

Fájlszervezés. Adatbázisok tervezése, megvalósítása és menedzselése

PTE PMMF Közmű- Geodéziai Tanszék

Adatbázis rendszerek. dr. Siki Zoltán

TÉRKÉP HELYETT KÉP, VAGY VALAMI MÁS?

Adatbázisok. és s GIS műveletek pontossága

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Adaptív dinamikus szegmentálás idősorok indexeléséhez

Raszter georeferálás QGIS-ben Összeállította: dr. Siki Zoltán verzióra aktualizálta: Jáky András

17. A 2-3 fák és B-fák. 2-3 fák

Térinformatika 2. A valós világ modellezésének folyamata Végső, Ferenc

MIKOVINY SÁMUEL TÉRINFORMATIKAI EMLÉKVERSENY

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

5. gyakorlat. Feladatunk az, hogy készítsük el Zamárdi környékének területhasználati a térképét.

Megjelenítési funkciók

Algoritmusok és adatszerkezetek II.

V. Kétszemélyes játékok

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1]

A Vonallánc készlet parancsai lehetővé teszik vonalláncok és sokszögek rajzolását.

Informatika-érettségi_emelt évfolyam Informatika

QGIS Gyakorló. 1. kép. A vektor réteg (grassland.shp).

RÉSZLETES ÉRETTSÉGI VIZSGAKÖVETELMÉNYEK INFORMATIKÁBÓL

Az adatok a vállalat kulcsfontosságú erőforrásai. Az információs rendszer adatai kezelésének két alapvető változata:

Struktúra nélküli adatszerkezetek

Számítógépes grafika

Hálózatok dokumentálása, törvények, szabályzatok, az egységes közműnyilvántartás utasítás-rendszerének megújítása

2. A VALÓS VILÁG MODELLEZÉSE

Bevezetés a QGIS program használatába 2.x verzió Összeállította: dr. Siki Zoltán. QGIS program telepítése Windows operáció rendszeren

QGIS Gyakorló. 1. kép: Koordináta levétel plugin bekapcsolása.

A FIR-ek alkotóelemei: < hardver (bemeneti, kimeneti eszközök és a számítógép), < szoftver (ARC/INFO, ArcView, MapInfo), < adatok, < felhasználók.

MePAR-hoz készített kataszteri fedvények előállásának tapasztalatai

A Paint program használata

Koordináta-geometria feladatok (emelt szint)

ADATTÍPUSOK, METAADATOK

Információ megjelenítés Számítógépes ábrázolás. Dr. Iványi Péter

Kupac adatszerkezet. 1. ábra.

Új prezentáció létrehozása az alapértelmezés szerinti sablon alapján.

DAT adatcserefájl AutoCAD MAP DWG mapobject konvertáló program dokumentáció

Átírás:

Térinformatikai adatszerkezetek Bevezetés A térinformatika célja, hogy grafikus, térképi formához kötve mutasson be gazdasági, társadalmi, politikai és egyéb adatokat, elősegítve ezzel az adott terület problémáinak megoldását, feladatainak, eredményeinek bemutatását. Feladata, hogy a földrajzi helyhez kötött adatokat számítógépen tárolja, megjelenítse, analizálja. Ezeknek a feladatoknak a végrehajtása az erre a célra kifejlesztett számítógépi programrendszerben történik, amelyet általános néven térinformatikai rendszernek nevezünk. A köztudatban a térinformatikai rendszerekre meghonosodott a GIS rövidítés, amely az angol Geographical Information System (azaz Földrajzi Információs Rendszer) kifejezésből származik. Adatok a térinformatikában Vektoros adatmodell A grafikai adatokat vektoros és raszteres formátumban tároljuk. A vektoros adatmodell lényege, hogy az objektumokat alkotó pontok (például a vonalak csomópontjai) illetve az egyedülálló pontok (például egy kút vagy villanyoszlop) helyét koordinátákkal írjuk le. Ezzel együtt meg kell adni, milyen irányban vagy sorrendben kötjük össze ezeket a pontokat. Ebből kiindulva az egyszerű geometriai alakzatoktól (ponttól) egészen a bonyolultabb objektumok (poligonok), illetve egymás közti kapcsolatuk részletes leírásáig juthatunk el. A vektoros adatmodell egyszerűsített alapelve 1

Raszteres adatmodell A raszteres adatmodell alapvető, kisebb részekre oszthatatlan elemét egy angol eredetű szóval nevezzük: ez a pixel, amely az angol "picture element" szavakból ered. Magát a modellt úgy kell elképzelnünk, hogy a kiválasztott területet egy óriási négyzethálóval fedjük. Egy tereptárgy több kisnégyzetből (pixelból) állhat, ezeket a pixeleket színkódok különböztetik a környezetén levő pixelektől. Ezt az adatmodellt elsősorban a légi és műholdfelvételek digitális formátumának tekinthetjük. A raszteres adatmodell egyszerűsített alapelve Pixelek egy űrfelvétel nagyított részletén Fedvények a térképen A digitális térképek fedvényekből (más néven rétegekből) állnak. Ezeket a fedvényeket úgy kell elképzelnünk, mintha egymásra tett átlátszó fóliák lennének. Mindegyik fóliára az adott térkép egy-egy elemét rajzoljuk: vízrajz, domborzat, települések, úthálózat, művelt területek, ipari létesítmények stb. Ezek a fedvények alkotják a digitális alaptérképet. A kidolgozandó tematikától függően ki- vagy bekapcsolhatjuk az alaptérkép fedvényeit. Ilyen módon csak az aktuális feladatunkhoz szükséges információkat jelenítjük a képernyőn, és egyetlen alaptérképből különböző, egyszerűsített alaptérképet tudunk A fedvények alapelvét ábrázoló vázlat 2

létrehozni. A tematikus információk is különkülön fedvényre kerülnek: ezeket szintén szükség szerint be- és kikapcsolhatjuk. Így egyetlen egy alaptérképpel több tematikus térkepet tudunk készíteni. Térinformatika és adatbázisok A térinformatika működése az adatbáziskezelésen alapul. Az adatbázisok adatok rendezett gyűjteménye, ezeket az adatokat táblázatokban tároljuk. Leegyszerűsítve, vektoros modell esetén az "ábrázolandó" terület fontosabb pontjainak (tereptárgyainak) a jellemzői, raszteres modellben az egyes pixelek az adatbázis soraiban tárolódnak: ezeket szakszóval rekordoknak nevezzük. Az adatbázis oszlopaiban találjuk a mezőket, amelyekben tároljuk az egyes rekordok jellemzőit. A rekordokat egy (vagy több) mező alapján rendezhetjük, például abc sorrendben vagy növekvő mértékben. Az adatbázisokat kiválasztott közös mezőkkel lehet összekapcsolni, ezeket kulcsmezőknek szokás nevezni. Vázlat egy adattáblázat szerkezetéről 3

Geokódolás A térinformatikában az adatbázisokban levő objektumokhoz (rekordokhoz) koordinátakat kell rendelnünk. Enélkül nem tudjuk őket a térben (a térképen) elhelyezni. Ezt a műveletet geokódolásnak nevezzük. A geokódolás nemcsak koordinátákkal történik: nagy méretarányok esetén irányító számokkal, postai címekkel is elvégezhető. A térinformatikai szoftverek képesek ezt a műveletet egyetlen egy parancs segítségével végrehajtani. Geokódolási menü a MapInfóban Adatstruktúrák A tér objektumainak illetve pontjainak szervezésére és tárolására különféle adatstruktúrák állnak rendelkezésünkre. A következő szakaszban ezekről fog majd szó esni. Mindegyik adatszerkezeten különféle műveleteket lehet végrehajtani, a leggyakoribb új pont vagy objektum beszúrása illetve törlésre. Gyakran szeretnénk információkhoz jutni az adott pontról, illetve objektumról, tehát lekérdezéseket kell végrehajtani, a legfőbb lekérdezések: Tartozás, Részleges egyezés (pl. az x koordináták egyezzenek meg stb.), Legközelebbi szomszéd illetve a Hol vagyok én?. Grid Az egyik legegyszerűbb térinformatikai adatszerkezet. Osszuk fel a síkot cellákra pl. egyenlő méretű négyzetekre (vagy a teret kockákra) és a pontokat a megfelelő cellákba soroljuk be, általában hasítással. A következő ábrán egy példa látható a gridre. 4

Kd fa (k dimenziós fa) A k-d fa egy bináris fa, amelyben a fa minden pontja egy k-dimenziós pontot reprezentál. Tegyük fel, hogy k=2, vagyis egy síkon szeretnénk a pontjainkat besorolni. Először rendezzük sorba az x koordinátái szerint növekvő sorrendben a pontokat, majd válasszuk ki a rendezésnek megfelelően a középső pontot, ez lesz a gyökér. A rendezésnek megfelelően a ponttól kisebb illetve nagyobb x koordinátájú pontok a gyökér bal illetve jobb oldali részfájába fognak kerülni. A jobb és baloldali részfába kerülő elemeket ugyancsak sorba rendezzük külön-külön, de immár az y koordináták szerint és az elemeket szintén bal és jobboldali részfákba osszuk be. Ezt addig csináljuk, amíg az összes pont nem lesz valamelyik részfa gyökere. Minden szintnek megfelel valamelyik dimenzió (felváltva, valamilyen rendszer szerint a dimenziókat cserélgetve), ami alapján rendezünk. Példa: 5

Negyedelőfa pont negyedelőfa A pont negyedelőfa = grid + bináris keresőfa, ami egyfajta fa struktúra, nem egységes méretű cellákkal. Minden pont egy csúcson helyezkedik el, és minden csúcs egy rekordtípus, ami hét mezőt tartalmaz, többek között a gyerekekre mutató pointerek. régió negyedelőfa A régió negyedelőfa a tér egy részét síkban reprezentálja. A régiót négy negyedbe bontja, majd ezt újra és újra ismétli. A régiókra bontás után minden csúcsnak négy gyereke van, vagy nincs egy sem, ekkor a csúcs egy levél. Egy n mélységű régió negyedelőfa jól használható egy 2 n 2 n pixel méretű bináris kép esetén, ahol minden pixel 0 vagy 1 értékű. A gyökér fejezi ki a teljes kép régiót. Ha egy régióban a pixelek nem csupán 0-k vagy 1-k, akkor azt a régiót tovább kell bontani, negyedelni, mindaddig, amíg minden régió vagy csak 0-k vagy csak 1-k alkotják 6

pont-régió negyedelőfa A pont-régió negyedelőfa tulajdonképpen a régió negyedelőfa egy változata pont adatokra vonatkoztatva. A pont-régió negyedelőfa úgy épül fel, mint a sima régió negyedelőfa, csak a különbség annyi, hogy a levél csúcsok üresek lehetnek, vagy tartalmaznak egy adatpontot, és annak koordinátáit. Egy negyedben maximum egy adatpont lehet. R-fa Az R-fa olyan fa, ahol az egymáshoz közeli objektumokat csoportokba szervezi és a minimális bennfoglaló intervallumával (2 dimenziós térben téglalapjával) reprezentálja. Ha a keresett tartomány nem metsz egy intervallumot, akkor az általa reprezentált csúcsok nem lehetnek benne a tartományban. A következő szinteken az egymáshoz közeli intervallumokat is csoportosítjuk, és így tovább. Ez a csoportosítási rendszer egy olyan fát alakít ki, amiben a szülő csúcsok szigorúan tartalmazzák a gyermek csúcsokat, de a gyermek csúcsoknak nem kell diszjunktaknak lennie. Nehézség az R fákkal kapcsolatban az, hogy úgy egyensúlyozzuk ki őket, hogy a fa levelei nagyjából egyforma mélységben legyenek, és az intervallumok ne tartalmazzanak túl sok üres teret, továbbá ne lógjanak túlságosan össze. Ehhez különféle változatok: R*-fa (Az R* fa egyszerre éri el a csomópontjai között az átfedés minimalizálását és a csomópontok területének csökkentését a gyors keresés érdekében), R+-fa (Nem tartalmaznak egymást átfedő intervallumokat. Ehelyett egy objektum több intervallumba is be lehet szúrva, ha szükséges.) 7

Indexek Az indexelés szerepe a hagyományos adattípusú oszlopokkal rendelkező táblák esetén a lekérdezések gyorsabb végrehajtása. A térbeli indexek ugyanezt a célt szolgálják. R-fa index Ez az indexelés a minimális fedő téglalapokon alapul. A minimális fedő téglalap angolul Minimal Bounding Rectangular, rövidítve MBR, ezért a továbbiakban így hivatkozunk rá. A következő ábrán egy alakzat MBR-jét láthatjuk. Az indexelés úgy történik, hogy képezzük a geometriai alakzatok MBR-jeit, majd néhány ilyen MBR uniójának az MBR-jét, aztán ezen későbbi MBR-ek MBR-jét és így tovább. Végül egyetlen MBR-t kapunk, amely az összes korábbi MBR-nek az MBR-je. Ezeket az MBR-eket egy fa struktúrában tároljuk oly módon, hogy minden nem levél csomópontban levő MBR a gyerek csomópontjaiban levő MBR-eknek az MBR-je. A levelekben levő MBR-ekhez pedig mutatókat is tárolunk, amelyek azokhoz az alakzatokhoz vezetnek, amelyeknek az adott levél MBR-je. Egy ilyen fa felépítését láthatjuk a következő ábrán. 8

Az ábrán 1 és 9 közötti számokkal jelöltük a geometriai alakzatokat. Az 1-es és 2-es alakzat MBR-je az a-val jelölt téglalap, az a és b MBR-ek MBR-je az A-val jelölt téglalap, az A és B MBR-ek MBR-je pedig a gyökér névvel jelölt téglalap, ami egyben az összes alakzat MBR-je. Nézzük meg milyen előnyei és hátrányai vannak az R-fa indexnek. Az index létrehozása egyszerű, az index nem igényel sok helyet, viszont ha az alakzatainkat nem jól közelítik a téglalapok, mert például azok nagyon torz alakúak, akkor finomabb közelítést ezzel az indexszel nem tudunk elérni. Ha módosul valamelyik alakzatunk alakja, akkor lehet, hogy módosítanunk kell az őt tartalmazó levél MBR-t, majd annak szülőjét, és így tovább, egészen a gyökérig. Ez pedig jelentősen lelassíthatja a módosítások végrehajtását. Negyedelőfa index Ennek az indexelésnek az alapja az, hogy a teljes területet, ahol az elemeink elhelyezkednek, felbontjuk egyre kisebb részekre (téglalapokra), majd ezekkel a kis részekkel közelítjük az alakzatot. Kiindulásul vegyünk egy olyan téglalapot, amely az összes alakzatunkat lefedi, majd ezt osszuk fel négy részre úgy, hogy mindkét koordinátatengely mentén megrajzoljuk az oldalfelező merőlegeseket. Ekkor 4 azonos méretű téglalapot kapunk. Folytassuk a negyedelő eljárást az előbb elmondottakhoz hasonlóan, a kapott téglalapokat tovább és még tovább negyedelve. Az eljárás során kapott téglalapokat a továbbiakban rasztereknek fogjuk nevezni. Ha minden lépésben az összes téglalapot negyedeljük, akkor azonos méretű rasztereket kapunk, ha egyes lépések során csak bizonyos téglalapokat negyedelünk, akkor lesznek kisebb és nagyobb méretű rasztereink is. Az alakzatok indexelése azt fogja jelenteni, hogy hozzájuk rendeljük azokat a rasztereket, amelyek nem diszjunktak tőlük. Így az alakzat indexbeli raszterei lefedik az alakzatot. Mindezt a következő ábrán is bemutattuk. Az ábrán látható alakzatot 3 nagyobb és 3 kisebb raszter indexeli. 9

Források http://lazarus.elte.hu/hun/dolgozo/jesus/terinfo/terinfo.htm Hanan Samet: Hierarchical Spatial Data Structures http://en.wikipedia.org/wiki/quadtree#the_region_quadtree https://en.wikipedia.org/wiki/r-tree http://people.inf.elte.hu/nikovits/terinfo/sdo9_index.doc 10