Informatika a felsőoktatásban 2008
Debrecen, 2008. augusztus 27-29.
3D TOPOLÓGIA FELÉPÍTÉSÉNEK ÉS ELEMZÉSÉNEK LEHETŐSÉGEI BUILDING AND ANALYSING 3D TOPOLOGIES
Szeghalmy Szilvia, Zichar Marianna Debreceni Egyetem Informatikai Kar Összefoglaló Az utóbbi években megjelenő térinformatikai rendszerek hatékony 3D-s funkcióval bővültek, melyek lehetővé teszik a szakemberek számára, hogy az eddigieknél gyorsabban létrehozhassanak olyan térképeket, melyet a rendszer síkban és térben egyaránt képes megjeleníteni. A monumentális épületek, bevásárlóközpontok elterjedésével, az épületeken belüli útkeresés is szükségessé vált, melyhez nélkülözhetetlen lenne, hogy a rendszerek biztosítsák a 3D topológia felépítésének és elemzésének lehetőségét. Két népszerű térinformatikai szoftver lehetőségei kerülnek elemzésre; az Autodesk cég AutoCAD Map 3D 2008-as, és az ESRI ArcGIS 9.2-es verziója. 3D funkciók mindkét szoftverben szerepelnek, ennek ellenére a topológiai műveletek leírásánál 3D-re vonatkozó utalás nem található. Emiatt a vizsgálat kiterjed a beépített topológiai és elemzési műveletekre, és a rendszerek által biztosított programozási felületből elérhető lehetőségekre is.
Kulcsszavak térinformatika, topológia, legrövidebb út, AutoCAD Map, ArcGIS
Abstract Recent years Geographical Information Systems have been expanded with several new effective 3D tools, which ensure the professionals to create 2D and 3D maps faster than earlier. The systems are capable to visualise and analyse 3D maps. Large buildings, emporiums have been appeared all over the world, that is why it has became essential to be able to determine for example shortest path inside these type of buildings also. Thus the softwares are excepted to include topology building and analysing tools. Two popular GIS applications are reviewed: the AutoCAD MAP 3D 2008 from Autodesk and the ArcGIS 9.2 versions from ESRI. Both systems contain tools for managing 3D, but there is no information about the possibility of building 3D topology in section where topology operations are discussed. This was the reason why built-in topology and analysing tools have been studied, and the SDKs have been examined as well.
Keywords GIS, topology, shortest path, AutoCAD Map, ArcGIS
1
Informatika a felsőoktatásban 2008
1.
Debrecen, 2008. augusztus 27-29.
Bevezetés
Jelen cikk két népszerű térinformatikai szoftver 3D topológia kezelését vizsgálja, a topológia létrehozásától kezdve, az elemző műveleteken keresztül, a fejlesztői környezetben található lehetőségekig. A topológia a pontok, vonalak, felületek, és testek szomszédsági kapcsolatait írja le, melyek a térképi torzításokra, deformációkra nézve invariánsak. A kapcsolatok leírására gráfelméleti módszerek használatosak. A térinformatikai szoftverek általában háromféle topológiát képesek kezelni: pont, poligon, hálózat. (Detrekői, Szabó., 2003) A pont topológia pontszerű objektumok kapcsolatait tárolja. Gyakran használatos poligon topológiával együtt, annak meghatározására, hogy a pont topológia egyes elemei, mely tartományba esnek a poligon topológiában lévő elemek közül. Hálózat topológia esetén a gráf éleit a vonal objektumok, a csomópontjait általában pontszerű objektumok, vonalak végpontjai, illetve a vonalak metszéspontjai alkotják [6]. Legelterjedtebb felhasználási területe az úthálózatok, vezetékrendszerek modellezése. Az ilyen hálózatok esetén elengedhetetlen, hogy az objektumok elhelyezkedésén, és kapcsolatain kívül, más jellegű adatokat is lehessen tárolni az élekhez és/vagy csomópontokhoz. Ezek az információk attribútumok formájában rendelhetők a hálózat megfelelő elemeihez. Gyakran végzett művelet a két csomópont közti legrövidebb út keresése. Pl.: Csatornahálózat elemei:
csomópont (node). Attribútuma lehet az áteresztő képessége. él (edge): két csomópontot köt össze. Attribútuma lehet a hossza, keresztmetszete, áramlás iránya, stb. A poligon topológia tekinthető a hálózat topológia kibővítésének. A poligon élekből felépülő zárt két dimenziós alakzat. A poligon topológiák közt végzett leggyakoribb művelet az átfedésvizsgálat. A továbbiakban a hálózat topológia lesz számunkra érdekes, mivel a legrövidebb út vizsgálata három dimenzióban is értelmezett művelet. 2.
AutoCAD Map 2008
Az Autodesk cég legismertebb terméke az AutoCAD szoftvercsalád. Eredetileg kimondottan tervező programként indult, és csak később került kibővítésre a térinformatikai résszel. 2003ra már a harmadik helyet foglalta el a térinformatikai szoftverek eladásában (Longley et al., 2005). Az Autdesk több felületen keresztül biztosítja a termékei programozhatóságát. A Map 2008-as változata, többek közt Lisp, Visual Basic és C# nyelveken is programozható. 1.1.
Felhasználói környezet
Térbeli vonalrendszer kialakítása A hálózat topológia felépítésénél az első lépés egy vonalrendszer kialakítása. Ez történhet úgy, hogy egy meglévő forrásrajzot csatolunk a projekthez, amely tartalmazza a hálózatot, vagy megrajzolhatjuk azt. Az AutoCAD Map térinformatikai része síkbeli rajzok készítésére lett tervezve, ezért utóbbi esetben egy 3D vonalrendszer kialakítása nehézségekbe ütközhet. Vonalakat lehet rajzolni az x, y síkban, és az azzal párhuzamos síkokban is, de a rendszer nem
2
Informatika a felsőoktatásban 2008
Debrecen, 2008. augusztus 27-29.
engedi olyan vonalak létrehozását, melynél a végpontok z koordinátája eltér. Ám ez nem jelenti azt, hogy ne lehetne megoldani a problémát. Az AutoCAD klasszikus nézetében számos térbeli objektummal lehet dolgozni. Térbeli vonallánc létrehozásakor, csupán az új dokumentum sablonját kell a térinformatikai résznél használt map3d sablon helyett, a tervezésnél használatos acad3D sablonra állítani. Ebben a sémában már nem érvényesek az előbbi korlátozások, felépíthető a topológia alapját képező vonalrendszer. 3D topológia felépítése A tesztelésre használt rajzon térbeli vonalláncok, és primitívek is szerepeltek. A topológia felépítésénél a rendszer kihagyta a primitíveket, viszont a vonalláncokat elhelyezkedésüktől függetlenül belevette a topológiába. A topológia megjelenítésénél minden vonal a helyén jelenik meg. Ennek ellenére, ha a topológia tartalmaz azonos x, y koordinátával rendelkező csomópontokat, a topológia hibás lesz, melyet a rendszer a topológia következő betöltésénél jelez. Elemzési műveletek Az elemzésekhez eleve csak az x, y koordináták kerülnek bekérésre. Ha a 3D topológiánk olyan, hogy nincs két azonos x, y koordinátájú csomópont, akkor a rendszer helyesen hajtja végre az elemzést (Ld. 1. ábra).
1. ábra: Helyesen megjelenített legrövidebb utak az AutoCAD MAP-ben
A baloldali topológiában az x, y síkban lévő vonalak hosszainak összege a nagyobb. A jobboldalinál fordítva. Az AutoCAD mindkét esetben jól adja meg a legrövidebb utat, tehát annak ellenére, hogy az input kétdimenziós, az útkeresés során a szakaszok tényleges hosszát veszi figyelembe, és nem az x, y síkra vetített képeinek hosszát. Ámde, ha a topológiában két, vagy több azonos x, y koordinátával rendelkező pont is előfordul (eltérő z koordinátákkal), akkor szakadások léphetnek fel a legrövidebb úton. A szakadás okainak megértéséhez az 2. ábra segít. A rács alatti pontok, a topológia létrehozásánál, a szakaszok végpontjaiban keletkező csomópontokat jelölik. Bár a vonalrendszer z tengely irányban lépcsőzetes elrendezésű, a csomópontok z koordinátái kivétel nélkül nullák. Ennek következtében az azonos x, y koordinátájú csomópontok egybeesnek. Ez okozza, hogy egyes 3D topológiákat, a tárolt információk alapján, maga a rendszer sem tudja visszaépíteni; ilyenkor jelzi, hogy a topológia hibás. Sajnos a 3D topológiák hálózat elemző műveletei is ennek megfelelően helytelen eredményt adnak. A legrövidebb út keresésénél a képen kék négyzetek jelzik a választott
3
Informatika a felsőoktatásban 2008
Debrecen, 2008. augusztus 27-29.
kezdő, és végpontot, valamint a piros szakaszok jelölik a rendszer által ajánlott hibás útvonalat.
2. ábra: Szakadás a rendszer által ajánlott legrövidebb útban
1.2.
Fejlesztői környezet
A topológia kezelés vizsgálatakor az AutoCAD Map által támogatott programnyelvek közül a C# -ra esett a választás. Az utóbbi években az AutoCAD térinformatikai része jelentős szerkezeti változáson ment keresztül, az adatok tárolását tekintve. Az FDO (Feature Data Object) és ahhoz kapcsolódó újdonságok természetesen a fejlesztői környezetekre is kihatottak. Az AutoCAD MAP programozásában a nyelvek közti különbség megnőtt. A Lisp, és a Visual Basic makrók inkább belső utasítások programozására használhatók, míg a Visual Basic és C# alkalmazások jobban megfelelnek az összetettebb projektek írására, az új adattárolási mechanizmusok egyszerű kezelésére. Térbeli vonalrendszer kialakításának támogatása A rendszer Point3d típust használ a vonalak végpontjainak bekérésekor, ezért ez a művelet problémamentesen végrehajtható az aktív dokumentum típusától függetlenül [3]. 3D topológia felépítése A topológia felépítés, még nem élvez teljes támogatást. Egyes függvények még nem kerültek implementálásra, de létezik olyan függvény, mellyel a topológia felépíthető [3]. A felhasználói felülethez hasonlóan a primitív típusokat nem veszi figyelembe, és csak a vonalláncokból építi fel a topológiát. Elemzési műveletek megvalósítása, illetve megvalósíthatósága Input változtatása Felhasználói oldalon tapasztalható, hogy a rendszer képes topológiát felépíteni, és helyesen megjeleníteni egy nem kizárólag x, y síkban elhelyezkedő vonalrendszerből is, ennek ellenére a hálózat elemző műveleteknél a pontok kiválasztásánál csak az x, y koordinátát hajlandó
4
Informatika a felsőoktatásban 2008
Debrecen, 2008. augusztus 27-29.
elfogadni. Az 2. ábra szemlélteti, hogy a legrövidebb út keresésénél a kijelölt pont azonnal levetítésre került az x, y síkba (piros x). A beépített függvény viszont három koordináta megadását engedélyezi. Azonban a megfelelő z koordinátával ellátott pontokkal meghívott útvonalkereső függvény sem képes helyesen meghatározni a fenti legrövidebb utat. Csomópont helyzetének megváltoztatása A fejlesztői dokumentációból fény derül rá [2], hogy a hálózat pontjaihoz csak X, Y attribútum tartozik, Z nem. Ennek ellentmondani látszik, hogy a támogatott programnyelvekben topológia csomópontok tárolása Point3d vagy ennek megfelelő típussal történik, amely elvben lehetővé tenné a 3D topológia elemzését. A topológia tárolása, éllistával (FullEdgesCollection), és csomópont listával (NodesCollection) történik [4] A csomópontokról már kiderült, hogy z koordinátája nulla. Az éleken keresztül elért AutoCAD objektumok viszont tartalmazzák a vonalak helyes koordinátáit, így meghatározható a csomópontokhoz tartozó z koordináta is. A csomópont áthelyezésére a moveNode(Point3d) függvény áll rendelkezésre. A csomópontok megfelelő helyre való mozgatását azonban megakadályozza, hogy nem nulla z koordináta esetén ArgumentException kivétel váltódik ki. Ez egyértelműen jelzi, hogy az Autodesk cég a háttérben valóban kétdimenziós tárolást alkalmaz. Tetszőleges 3D topológia és elemzési műveletek használatához, a jelenlegi rendszerben egy új topológia felépítésére, és új elemző függvények írására van szükség. Természetesen a készített topológia elmenthető, ezzel csökkentve az elemző műveletekhez szükséges időt, viszont ebben az esetben gondoskodni kell a rajz és a topológia elemeinek szinkronizációjáról. 3.
ESRI ArcGIS 9.2
Az ESRI cég 1969-ben alakult. Napjainkban a térinformatikai szoftver gyártásában piacvezető szerepet tölt be. Az ArcGIS kimondottan térinformatikai célra készített szoftvercsalád. Az AutoCAD Map-hez hasonlóan az ESRI cég is nagy hangsúlyt fektet termékei programozhatóságára (Longley et al., 2005). Az ArcGIS több függetlenül is működő, de egymással kapcsolatban lévő részből épül fel. A részek közül szabadon felhasználható az ArcReader program, mely az ArcGIS-ben készült térképek megnézhetők. Az ArcCatalog a térinformatikai adatbázisok, fájlok kezeléséhez nyújt Windows Intéző szerű felületet. Az ArcScene 3D-s megjelenítést és ehhez kapcsolódó elemzési műveleteket tesz lehetővé. Az ArcMap program 2D-s térképmegjelenítést, és ehhez kapcsolódó szolgáltatásokat foglal magában, míg az ArcGlobe-al a földgömb felszínéhez rendelhetjük hozzá az adatokat. Mindezek mellett különböző kiterjesztések is vásárolhatók, melyek egy-egy speciális terület problémáit kezelik, pl.: hálózatelemzéshez szükséges részek. Térbeli vonalrendszer kialakításának támogatása Az ArcGIS termékek a térképek kezelésére vannak kitalálva, ezért a 3D-s felületek, vagy vonalláncok létrehozására mérési adatok importálásával, vagy külső eszközök segítségével történhet. A vonalláncok kialakításának egyik módja, az Autodesk programból való importálás, de lehetőség van akár egyszerű szöveges állomány alapján is elkészíteni a kívánt vonalláncot vagy felületet. (Shepard et al. 2006)
5
Informatika a felsőoktatásban 2008
Debrecen, 2008. augusztus 27-29.
3D topológia felépítése A hálózat felépítését tartalmazó adathalmaz alapjaként szolgálhat shapefile vagy egy geoadatbázis (Sandhu, Chandrasekhar, 2006) . Mindkét fájl létrehozása a 2. ábrán látható AutoCAD rajzzal történt. A shapefile létrehozásához, a rajz megnyitása után, adat exportálást kell végezni. Az így készített fájl megjelenítésnél teljes mértékben megegyezik az AutoCADben létrehozott rajzzal. Ezzel szemben a geoadatbázis létrehozásánál, melyet az ArcToolBox→Conversion Tools→To Geodatabase→Import From CAD érhető el, már eltérő az eredmény (lásd 3. ábra).
3. ábra: Geoadatbázis és az eredeti rajz eltérése
Az ábrán vastag zöld vonallal láthatók a geoadatbázisba átkerült vonalak, míg a vékony fekete vonalak az eredeti rajz szerint jelennek meg. Az AutoCAD topológia építéséhez hasonlóan, a geoadatbázis előállításánál is az azonos x, y, de eltérő z koordinátával rendelkező pontok okozzák a hibát. Mindezek miatt a shapefile alapú hálózatépítés került további elemzésre. Az ArcCatalog programban az exportált állományból létrehozható az új hálózat. A hálózat felépítése során egy figyelmeztetés jelenik meg, miszerint 22 darab nulla hosszúságú szakaszt talált. Ezek a 3. ábrán lévő függőleges szakaszok. Elemzési műveletek A hálózatelemzési műveletek az ArcMapből érhetőek el. Itt már nyoma sincs 3D-s megjelenítésnek. Az elemzés x, y koordinátapár használatával történik, hiszen az előző pontban írtaknak megfelelően, ez egyértelműen meghatározza a hálózat egy pontját. Az AutoCAD-től eltérően, a legnagyobb z koordináta lesz a meghatározó, vagyis a fenti vonalakból létrehozott hálózat képe egy összefüggő rács lesz, és a rendszer útvonalkeresés közben is ekként kezeli. Az AutoCAD, bár az elemzés során hasonlóan két koordináta számít, a szakaszok hosszát megfelelően kezeli, ezért domborzati térképeken - eltekintve az extrém sziklamászóknak kijelölt útvonalaktól - megfelelő eredményt ad. Ugyanazt a tesztet végrehajtva az ESRI rendszerében már más lesz a kimenet. Míg az AutoCAD-ben tetszőleges nézetből szemlélhető a topológia, addig az ArcMapben egyetlen nézettel kell beérni. Az alábbi ábrákon az 1. ábrán megjelenített két-két háromszöggé összeálló 4-4 vonal jelenik meg, x, y síkra vetítve.
6
Informatika a felsőoktatásban 2008
Debrecen, 2008. augusztus 27-29.
4. ábra: Távolságmérés az AutoCADben
5. ábra: Távolságmérés az ArcMap-ArcInfo-ban
Míg az AutoCAD három koordinátára építve adta meg a távolságot, addig az ArcMap a szakasz hossz meghatározásánál is csak az x, y koordináták eltéréseit nézi. Az alsó vonalláncnál kijelölt két szakasz együttes hossza meghaladja a másik két szakasz hosszát. Az x, y síkra vetített képe azonban már rövidebb a másik két szakasz képénél, ezért az 1, 2 pont közti legrövidebb útnak a rendszer a vastag pirossal és zölddel jelölt szakaszokat tekinti. 4.
Konklúzió
Megállapítható, hogy az AutoCAD Map és az ESRI ArcGIS legújabb termékei, egyaránt olyan belső reprezentációt alkalmaznak, melyek nem teszik lehetővé tetszőleges 3D topológia
7
Informatika a felsőoktatásban 2008
Debrecen, 2008. augusztus 27-29.
felépítését, illetve használatát. Figyelemre méltó azonban, hogy az AutoCAD Map a gyakorlatban jelenleg használt topológiák nagy részénél a tényleges legrövidebb utat jeleníti meg, ellenkező esetben pedig jelzi, hogy a topológia hibás. Az ESRI cég a topológia kezelő műveleteket kizárólag 2 dimenzióban valósítja meg. Ahhoz, hogy a szakaszok hosszával dolgozzon, a szakaszokhoz a meglévő „Length” attribútum mellé egy másik attribútumot kell rendelni, mely már a szakaszok helyes hosszát tartalmazza. Sajnálatos módon egyik rendszer sincs felkészítve nem felület típusú topológiák kezelésére, melyek fontosak lennének az épületekben való útvonalkeresés megvalósításához. Pedig az ilyen topológiák számos hasznos program alapját képezhetnék. Új szintet jelentenének az épületekben, hegységekben való navigációban. Megnyitná az utat afelé, hogy a repülőtereken, nagyobb bevásárlóközpontokban, vagy akár a kisebb városnak megfelelő felhőkarcolókban is használhatók legyenek a már jól megszokott útvonalkereső rendszerek, mely a hétköznapi életben ugyanúgy hasznos lenne, mint a mentési munkálatok során való tervezésnél. Irodalomjegyzék [1]
ArcObjects Online Url: http://edndoc.esri.com/arcobjects/8.3/GettingStarted/Walkthrough2CS.htm Letöltve: 2008.május 12.
[2]
AutoCAD Map 3D Geospatial Platform Developer's Guide (Preview), Autodesk Co. 2007.
[3]
AutoCAD Map 3D .NET Reference, Autodesk Co. 2007.
[4]
AutoCAD Map 3D .NET Developer’s Guide, Autodesk Co. 2007.
[5]
Detrekői, Szabó: Térinformatika, Nemzeti Tankönyvkiadó, 2003.
[6]
Dr. Katona Endre: Térinformatika (előadásjegyzet) Url: http://www.inf.u-szeged.hu/oktatas/jegyzetek/KatonaEndre/gis.doc Letöltve: 2008. május 26.
[7]
Sandhu, Chandrasekhar: ArcGIS Network Analysist Tutorial, ESRI 2006.
[8]
Kean Walmsley: Through The Interface Url: http://through-theinterface.typepad.com/through_the_interface/autocad_net/index.html Letöltve: 2008. május 26.
[9]
Paul A. Longley, Michael F. Goodchild, David J. Maguire, David W. Rhind, Geographic Information Systems and Science, Wiley, 2005.
[10] Shepard, Crawford, Bratt, Booth: ArcGIS 3D Analysist Tutorial, ESRI, 2006.
8