Vissza az előzőleg látogatott oldalra (nem elérhető funkció)Vissza a tananyag kezdőlapjára (P)Ugrás a tananyag előző oldalára (E)Ugrás a tananyag következő oldalára (V)Fogalom megjelenítés (nem elérhető funkció)Fogalmak listája (nem elérhető funkció)Oldal nyomtatása (nem elérhető funkció)Oldaltérkép megtekintése (D)Keresés az oldalon (nem elérhető funkció)Súgó megtekintése (S)

Open source fejlesztő eszközök, elméleti rész / A spagetti modell

Tanulási útmutató

Összefoglalás

Ebben a részben mélyebben tárgyaljuk a vektoros rendszerek leírásának módszereit. Egyik nagyon elterjedt, bár kevéssé jónak mondható adatszerkezet a spagetti modell, amelyet széles körben használnak, de amely nem őrzi meg az adatok topológiáját. Emberi odafigyeléssel természetesen spagetti modellben is lehet topológikus minőségű adatokat tárolni. Az adatszerkezet egyszerűsége legfőbb előnye.

A spagetti modell

A vektoros adatokat nemcsak koordináták szerint, hanem egymáshoz képest is megadhatjuk, sőt célszerű a szomszédsági, a kapcsolódási viszonyokat is figyelembe venni. Számos hétköznapi eset mutat topológikus hátterű megfontolásokat: „Hogyan találok oda a pályaudvarra?” kérdezi az eltévedt turista. „Ezen az utcán menjen végig a második kereszteződésig, ott forduljon jobbra, menjen addig, amíg az út nem keresztez egy vasúti átkelőt, majd a sín mellett haladva eléri az állomást.” Egy másik, topológiát rejtő kérdés: „Mi van a szomszédom telke és az én telkem között?” „Semmi, csak a kerítés (a kerítés nem telek, hanem egy egydimenziós objektum), mert ha lenne, akkor nem volnánk szomszédok.” A topológia tehát leírja az objektumok szomszédsági viszonyait, az objektumok kapcsolatrendszerét (átfedések, szakadások).

A spagetti modell egy olyan vektoros adatmodell, amely a node-okon és az összekötési szabályon kívül mást nem vesz figyelembe. Nem vizsgálja, hogy van-e közvetlen szomszédja egy poligonnak, és így vannak-e közös node-jai a szomszédos poligonoknak. Nem törődik a folytonossággal, és az egyes objektumok esetleges térbeli sorrendiségével, szomszédságával (25. ábra).

A kép (nagyobb változata) külön ablakban is megtekinthető.25. ábra. A spagetti modellben előforduló hibák egyike. Az ábrán a folytonos és a szaggatott vonalas poligonoknak egymáson kellene futniuk, de amint a nyilak mutatják, ez nem teljesül, sőt a ? jellel jelölt nyíl olyan node-ot mutat a szaggatott poligonban, amelynek nincs is megfelelője a folytonosban {Laurini}25_spagetti1_full.png25. ábra. A spagetti modellben előforduló hibák egyike. Az ábrán a folytonos és a szaggatott vonalas poligonoknak egymáson kellene futniuk, de amint a nyilak mutatják, ez nem teljesül, sőt a ? jellel jelölt nyíl olyan node-ot mutat a szaggatott poligonban, amelynek nincs is megfelelője a folytonosban {Laurini}

A legtöbb általános célú, vektoros rajzoló spagetti modellt követ. Előnye az egyszerűsége, amely egyben a hátránya is, mivel olyan laza minőségi kritériumok mellett, mint amilyet a spagetti modell kíván meg, nagyon könnyű rossz minőségű adatbázist létrehozni. Az egyszerűség persze nem zárja ki, hogy hozzáértők a spagettiből is professzionális minőséget hozzanak létre, de széleskörű használata térinformatikai rendszerekben kerülendő. Az általános rajzoló programok saját adatformátumot használnak, amely (többnyire) nem tartalmaz relációs adatbázisok elméletére épülő megfontolásokat, a szomszédságot, a kapcsolatrendszert leíró megszorításokat.

Az adatok tárolására főként relációs adatbázis-kezelőket használnak a piacvezető szoftvergyártók. Ezek főbb fogalmait a következő animáció mutatja be.

Ebben az animációban áttekintjük a relációs adatbázisok főbb ismérveit

Flash lejátszó letöltése

Relációs adatbázisok

Meglepő, hogy egyes térinformatikai szoftverek a fentiek ellenére alkalmazzák a spagetti modellt. Amikor poligonok zártságát, vonalláncok szakadásmentességét kívánjuk ellenőrizni, akkor azt a szoftverek külön utasításra megteszik, de az adatmodell nem tartalmaz erre vonatkozó garanciát, azt a node koordináták összehasonlításával lehet megtenni. A 25. ábrán a spagetti modell egy lehetséges megvalósítása látható. A Geometriai elemek nevű tábla a nodeok azonosítóit (elsődleges kulcsait) és a koordinátáit tartalmazza. Az Objektumok tábla az objektumok azonosítóit (elsődleges kulcsait), és az objektumokra vonatkozó leíró adatokat tartalmazza, mint például Name, Field1. Figyeljük meg, hogy a nodeok sorrendje fontos, mivel csak növekvő id szerint kirajzolva eredményez poligont. Szomszédos poligonok topológikusan helyes tárolását lehetővé teszi ugyan ez a struktúra, de nem garantálja. Ebben a tárolási szerkezetben külön gondoskodni kell (szoftveresen, emberi odafigyeléssel) a korrekt topológiáról.

A kép (nagyobb változata) külön ablakban is megtekinthető.26. ábra. A node-ok és a belőlük alkotott poligonok relációs táblák kapcsolatával leírhatók. Ez az egyszerű szerkezet azonban nem tartalmaz semmilyen információt a topológiáról26_relacios_full.png26. ábra. A node-ok és a belőlük alkotott poligonok relációs táblák kapcsolatával leírhatók. Ez az egyszerű szerkezet azonban nem tartalmaz semmilyen információt a topológiáról

Vissza a tartalomjegyzékhez

Új Széchenyi terv
A projekt az Európai Unió támogatásával, az Európai Szociális Alap társfinanszirozásával valósul meg.

A Társadalominformatika: moduláris tananyagok, interdiszciplináris tartalom- és tudásmenedzsment rendszerek fejlesztése az Európai Unió támogatásával, az Európai Szociális Alap társfinanszírozásával, az ELTE TÁMOP 4.1.2.A/1-11/1-2011-0056 projekt keretében valósult meg.
A tananyag elkészítéséhez az ELTESCORM keretrendszert használtuk.