MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY
D
I P L O M O V Á
P R Á C E
Prostorový model budov a místností a metody generování 3D dat
BC. JITKA HANUŠOVÁ, 2007
Poděkování Ráda bych poděkovala vedoucímu mé diplomové práce, RNDr. Petru Glosovi za vstřícnost, ochotu a odborné rady, které přispěly k zdárnému dokončení této práce. Dále chci poděkovat panu Mgr. Petru Kroutilovi za odborné konzultace a Mgr. Janu Spurnému za podporu a pomoc při grafické úpravě.
Čestné prohlášení Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracovala samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování používala nebo z nich čerpala, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj.
V Brně, 4.1.2007
………………………….. Bc. Jitka Hanušová
Shrnutí Cílem mé diplomové práce je ověření možností využití dat stavebního pasportu Masarykovy univerzity pro vytváření 3D modelů budov. V první části práce jsem provedla analýzu práce s 3D prostorovými daty v prostředí ArcGIS. V druhé části se zabývám rozšířením datového modelu budov a místností o 3D geometrie stavebních prvků, na jehož základu se bude vytvářet geodatabáze pro ukládání prostorových dat stavebních výkresů. Na závěr se získané informace ověří při navrhování poloautomatického zpracování stavebních výkresů a generování 3D modelů budov.
Klíčová slova geografický informační systém, geografická databáze, geodatabáze, ArcGIS, budova, místnost, prostorová data, 3D model budovy, stavební pasport, výkres DWG
Obsah 1
Úvod.................................................................................................................................6
2
Technologie pro vytvoření GIS........................................................................................7 2.1
CO JE GIS?...........................................................................................................................................7
2.2
GIS TECHNOLOGIE SPOLEČNOSTI ESRI.......................................................................................7
3
Datový model 3D geografické databáze........................................................................ 17 3.1
2D DATOVÝ MODEL GEODATABÁZE BUDOV A MÍSTNOSTÍ .................................................... 17
3.2
3D ROZŠÍŘENÍ DATOVÉHO MODELU GEODATABÁZE ............................................................. 18
3.3
OBJEKTY S 3D GEOMETRIÍ ........................................................................................................... 20
4
Generování 3D modelů budov MU................................................................................23 4.1
STAVEBNÍ PASPORT MU................................................................................................................. 23
4.2
VYUŽITÍ DAT STAVEBNÍHO PASPORTU PŘI VYTVÁŘENÍ 3D MODELŮ BUDOV .................... 24
4.3
ZPRACOVÁNÍ ROZMĚRŮ STAVEBNÍCH PRVKŮ ........................................................................... 29
4.4
SCHODIŠTĚ A RAMPY ...................................................................................................................... 39
4.5
STŘECHY ........................................................................................................................................... 47
4.6
VYGENEROVÁNÍ 3D MODELU BUDOVY ..................................................................................... 48
5
Závěr .............................................................................................................................. 50 A
SEZNAM ENTIT PŘIDANÝCH DO DATOVÉHO MODELU ........................................................... 52
1 Úvod V roce 2004 byl na Masarykově univerzitě pořízen stavební pasport nemovitého majetku. Prostorová data stavebního pasportu poskytují celou škálu nejrůznějšího využití; pracují s nimi správci budov, na jejich základě se mohou vytvářet dokumentace zdolávání požáru a podobně. V neposlední řadě mohou sloužit i běžným zaměstnancům univerzity, kdy data prezentovaná vhodnými webovými službami napomáhají lepší orientaci v univerzitních prostorách. Abychom však byli schopni takové služby nabídnout, je třeba prostorová data z výkresů zpracovat a převést do formátu, jenž je již vhodný pro uložení v tzv. geodatabázích. Jedním z mnoha oddělení, jenž se touto činností (mimo jiné) zabývá, je i Oddělení geografických informačních systémů Ústavu výpočetní techniky, z jehož nitra vzešel i podnět pro zadání diplomové práce. V současnosti je možné prostorová data pasportu publikovat v půdorysné podobě. Při hledání dalších možností, jak tato data využít, vznikla myšlenka na vytvoření 3D modelů budov MU. Data stavebního pasportu obsahují u některých stavebních prvků také výšky, které mohou posloužit jako třetí souřadnice pro vytvoření těles těchto prvků. Realizaci poloautomatického generování 3D modelů budov z dat stavebního pasportu si stanovila za cíl tato diplomová práce. Dalším cílem diplomové práce je doplnění datového modelu budov a místností, který navrhla Mgr. Lenka Horáčková, o 3D objekty stavebních prvků. Na základě tohoto datového modelu se generuje geografická databáze budov a místností, do níž se budou data o budovách ukládat. Nejedná se o klasickou databázi s daty v tabulkách, do této geografické databáze se musí ukládat jak atributová část dat ze stavebních výkresů, tak také jejich geometrie.
2 Technologie pro vytvoření GIS 2.1 Co je GIS? Zjednodušená definice pojmu geografický informační systém může znít takto: Informační systém umožňující ukládat, spravovat, zobrazovat a analyzovat prostorová data. Prostorovými daty se rozumí data, která obsahují něco navíc – prostorový kontext. Pod pojmem prostorový kontext si představme metodu či vlastnost, která objektu přiřazuje jeho tvar a umístění v prostoru. [7] Se vzrůstajícím využitím geografických informačních systémů souvisí i jejich další rozvoj a snaha rozšiřovat stávající možnosti GIS technologií. Jedním ze současných trendů je bezesporu doplňování prostorových dat o třetí souřadnice a jejich zobrazování v trojrozměrném prostoru. V této kapitole bude popsáno řešení GIS firmy ESRI z pohledu možností práce s 3D daty. Popsaná funkčnost tohoto GIS systému bude dále využita pro implementaci poloautomatického generování 3D modelů budov MU.
2.2 GIS technologie společnosti ESRI Společnost ESRI byla založena v roce 1969. V prvopočátcích působila jako konzultační skupina. Od počátku 80. let se zaměřuje na vývoj softwaru založeném na principech GIS a v současnosti patří mezi největší producenty GIS technologií. Společnost ESRI vyvíjí své produkty tak, aby je bylo možné používat jako konečnou aplikaci a zároveň nad produktem vytvářet aplikace vlastní. Mezi základní produkty společnosti ESRI patří ArcGIS Desktop, ArcIMS, ArcSDE a ArcGIS Server. Produkt ArcGIS Desktop je desktopová aplikace poskytující základní funkce GIS: správu prostorových dat, jejich zobrazování, editaci atd. Serverová technologie ArcIMS umožňuje prezentaci prostorových dat ve webovém prostředí. Aplikační server ArcSDE umožňuje ukládat prostorová data do relačních databázových systémů. ArcGIS Server je platforma pro vývoj klient – server aplikací s využitím GIS funkcí z ArcGIS Desktop. Dohromady by tyto aplikace měly pokrýt potřeby práce s geografickými daty od vytváření mapy až po správu mapových služeb. Pro jednoduchost se bude souhrn všech těchto aplikací v dalším textu označovat jako „ArcGIS“. Tato diplomová práce se zabývá využitím dat stavebního pasportu MU k vytvoření 3D modelů budov. Ke zpracování dat i generování modelů budov se využijí možnosti produktů skupiny ArcGIS společnosti ESRI. ArcGIS se v první řadě specializuje na práci s daty ve 2D, využívání 3D v GIS aplikacích stojí stále spíše na okraji zájmu a prioritou je 2D kartografie. Důvodem je bezesporu náročnější a nákladnější pořizování podkladů, přesto 3D pomalu ale jistě začíná získávat na důležitosti, a do budoucna se předpokládá jeho velký rozvoj. Z tohoto důvodu se tato diplomová práce využije i jako ověření možností práce se 3D daty v nástrojích ArcGIS. Následující text tedy popíše funkce ArcGIS, které byly využity pro zpracování dat stavebního pasportu MU, nebo které se zabývají daty ve třetím rozměru.
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
2.2.1 Formáty dat v produktech ArcGIS Data geografických informačních systémů jsou specifická svou strukturou a variabilitou, geografickými daty může být vektor, rastr nebo také položka v databázi. Geografický informační systém by měl podporovat možnost práce s co největším počtem těchto formátů. V dnešní době je nejrozšířenějším způsobem ukládání dat do databáze a u GIS tomu nemůže být jinak. V případě prostorových dat se do databáze musí ukládat právě i onen prostorový kontext, proto se pro tento typ dat vyvinula speciální forma databáze – geodatabáze. Základní požadavek na geodatabázi se samozřejmě vztahuje k ukládání prostorového kontextu. Zároveň by však geodatabáze měla splňovat základní principy databáze, tedy ukládání dat v podobě položek v tabulce, možnost dotazování se pomocí dotazovacího jazyka a také zachování integrity dat. Geodatabáze se nejlépe popíše jako datový model pro ukládání prostorových dat. Geodatabáze dovoluje vkládat a spravovat různé formáty dat, které mají jedno společné – prostorový kontext, jedná se například klasické relační tabulky, rastry, vektory, data měření, topologie, geometrické sítě, relace, metadata atd. [7]. Nejrozšířenějším formátem v geodatabázi jsou vektorová data, která se ukládají do feature class. Feature class plní funkci tříd pro objekty obohacené o prostorový kontext, položky v ní mají atributy a může se s nimi pracovat jako s klasickými řádky v tabulkách, jen mají navíc atributy s geometrií uloženou jako objekty typu BLOB. Kromě klasických feature class pro vektorové geometrie typu bod, linie a polygon lze vytvářet také feature class pro uložení specifických objektů – anotací a kót. Geodatabáze podporuje víceuživatelský přístup k datům včetně editace a také evidování změn dat v databázi vytvářením různých verzí dat – verzování. Z geodatabáze lze exportovat do XML nejen její datový obsah, ale i strukturu. [6] Pro ukládání geodatabáze se používají relační databáze. ArcGIS podporuje dva přístupy ukládání geodatabází: osobní geodatabáze (personal geodatabase) a víceuživatelská geodatabáze. Osobní geodatabáze ukládá data ve formátu Microsoft Jet Engine (MS Access), její velikost je shora omezena na 2 GB. Jak vyplývá z názvu, osobní geodatabáze nepodporuje víceuživatelský přístup ani verzování. Víceuživatelská geodatabáze se ukládá do relačních databázových systémů prostřednictvím aplikačního serveru ArcSDE, více v podkapitole 2.2.4. [6] Výše uvedený popis ukládání geodatabáze do relačních databází prostřednictvím produktů firmy ESRI (osobní geodatabáze a ArcSDE) se datuje do doby vzniku této diplomové práce a zmiňuje prostředky v ní použité. V době dokončování práce přichází na trh ArcGIS verze 9.2, na kterou se předchozí text nevztahuje. O novinkách týkajících se geodatabáze v ArcGIS 9.2 se zmiňuje podkapitola 2.2.4. Mezi další podporované formáty ArcGIS patří shapefile a coverages, jedná se o souborovou strukturu uložení geometrií. Pro ukládání vizualizovaných dat ArcGIS podporuje datový formát LYR, jedná se o vrstvu, která obsahuje odkaz na zdroj dat s prostorovým kontextem (feature class, shapefile, TIN atd.) a definici symboliky [7].
2.2.2 ArcGIS Desktop ArcGIS Desktop představuje základní produkt ESRI pro práci s geografickými daty. Pomocí ArcGIS Desktop se data mohou vytvářet, editovat, provádět se nad nimi analýzy, spouštět dávková zpracování, definovat vzhled map. Jedná se o soubor několika aplikací, rozšíření doplňující funkčnosti těchto aplikací a technologie automatického zpracování. Všechny nástroje obsažené v ArcGIS
STRANA 8
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
mají jednotný vzhled a styl ovládaní. Základními aplikacemi ArcGIS Desktop jsou ArcCatalog a ArcMap, ostatní nástroje se dělí do skupin podle rozšíření, ke kterým patří. V tomto textu se bude rozebírat rozšíření ArcGIS 3D Analyst, které umožňuje práci s daty v prostoru, a rozšíření Data Interoperability. Obě zmíněná rozšíření se využívala při generování 3D modelů budov.
2.2.2.1
ArcCatalog
Ústředním nástrojem ArcGIS Desktop je ArcCatalog, který v první řade slouží ke správě prostorových dat. ArcCatalog umožňuje data vyhledávat, vytvářet nad nimi analýzy, definovat jejich základní strukturu. V ArcCatalog lze pro prostorová data vytvářet a spravovat metadata. Pomocí něj se můžeme připojit k serverovým technologiím ESRI a prohlížet si data z geodatabáze a služby ArcIMS. Součástí aplikace je také soubor doplňujících funkcí tzv. ArcToolbox rozšiřující funkcionalitu ArcGIS Desktop. Spouštění funkcí z ArcToolbox probíhá podobně jako dávkové zpracování, zadají se vstupní a výstupní data a funkce se provede. ModelBuilder, další součást ArcCatalog, pak umožňuje jednotlivé funkce ArcToolbox mezi sebou skládat do dataflow diagramů a provádět tak na datech jednoduše a pohodlně i složitější zpracování.
2.2.2.2 ArcMap Možnosti editace dat zajišťuje aplikace ArcMap. Data se musí nejprve k aplikaci připojit, což se provádí vytvořením mapové vrstvy (datový formát LYR). Pomocí vrstev lze připojit současně více dat i z různých formátů a zpracovávat je zároveň. Druhou důležitou vlastností ArcMap po editaci jsou jeho kartografické funkce. Z připojených dat je možné vytvořit plnohodnotnou mapu podle vlastních požadavků, kartografická část obsahuje širokou škálu možností jak nastavovat vzhled zobrazovaným datům. Vytvořené mapy se následně ukládají jako MXD dokumenty aplikace ArcMap nebo po jednotlivých vrstvách jako LYR soubory se zachováním nastaveného vzhledu. Případně se mapy mohou exportovat do jiných formátů, v nabídce má ArcMap nejběžnější formáty, například PDF či PNG.
2.2.2.3 Rozšíření Data Interoperability Prostorová data se mohou pořizovat v různých datových formátech, kterých existuje velké množství. Některé jsou vzájemně kompatibilní nebo se dají mezi sebou převádět, některé nikoli. Geografické informační systémy by měly být schopné pracovat se širokým spektrem různých formátů. Proto se přenositelnosti dat (datové interoperabilitě) mezi různými systémy přikládá v GIS velká důležitost a implementaci co neuniverzálnějšího přístupu k prostorovým datům se věnuje nemalé úsilí. Maximální možná nezávislost systému na formátu dat je cílem každého GIS. Nejinak je tomu také v případě ArcGIS. Rozšíření Data Interoperability umožňuje pracovat s nepodporovanými datovými formáty dvěma způsoby. První možnost je realizována vytvořením přímého připojení do daného souboru v aplikaci ArcCatalog. Toto připojení slouží pouze ke čtení dat. Při vytváření připojení je možné zadávat jeho parametry a mírně tím ovlivnit formát připojených dat. Jedná se spíše o estetické změny sloužící například pro lepší orientaci v atributové části dat. Po vytvoření tohoto přímého připojení k datům v aplikaci ArcCatalog budou připojená data dostupná i v jiných aplikacích řady ArcGIS Desktop. Například po otevření ArcMap se pomocí funkce „Add Data“ zpřístupněná data vloží do MXD dokumentu jako nová vrstva.
STRANA 9
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
Druhým způsobem využití Data Interoperability jsou jeho funkce „Quick Import“ a „Quick Export“ dostupné jako součást ArcToolbox. Pomocí funkce „Quick Import“ se data z nepodporovaného formátu dají převést na data některého z podporovaných formátů a naopak v případě funkce „Quick Export“. Funkcím stačí zadat formát vstupních a výstupních dat, souřadný systém, který se nastaví výstupním datům, a funkce data převede. Navíc lze převodu nastavit parametry, které data určitým způsobem upraví. Možnosti těchto parametrů jsou různé, závisí na formátu, jenž se převádí. Například datům ve formátu DWG se může specifikovat, zda se má do geodatabáze převést pouze atributové schéma, pouze geometrie nebo obojí.
2.2.3 Rozšíření ArcGIS 3D Analyst Pro podporu 3D dat v rámci ArcGIS Desktop bylo navrženo rozšíření ArcGIS 3D Analyst, pod kterým se skrývá hned několik nástrojů. V první řadě se jedná o rozšíření funkčnosti v aplikacích ArcCatalog a ArcMap, dále se pod hlavičkou tohoto rozšíření skrývají dvě aplikace umožňující zobrazovat 3D data: ArcScene a ArcGlobe. V těchto nástrojích není implementována editace dat, což je asi největším nedostatkem ArcGIS pro 3D. Klasická editace je umožněna pouze v ArcMap, který má naopak omezené možnosti vizualizace v trojrozměrném prostoru.
2.2.3.1
Data v trojrozměrném prostoru
3D data mají prostorový kontext doplněn o třetí souřadnici, která jej přesune z roviny do trojrozměrného prostoru. ArcGIS podporuje následující formy 3D dat: rastr, TIN, 3D feature class a 3D shapefile, pouze těmto formátům lze v ArcGIS nastavit jejich prostorovému kontextu třetí souřadnici. Rastry a TIN objektů se nejčastěji využívají k reprezentaci modelů terénu na základě naměřených výšek (třetích souřadnic). Ve 3D feature class a shapefile se ukládá prostorový kontext standardních vektorových geometrií (bod, linie, polygon) v prostoru. Vektorové geometrie jsou tvořeny lomovými body, třetí souřadnice se může nastavit pro každý lomový bod geometrie zvlášť. Ve zmíněných 3D datových formátech však nelze vytvořit těleso. Tento nedostatek nahrazuje ArcGIS možností takovéto těleso reprezentovat pomocí vizualizace. Datům obsahujícím prostorový kontext se v aplikaci ArcScene může nastavit vzhled, který geometrii vlastně zvedne o určitou výšku a vytvoří tak iluzi tělesa. Detailněji se tyto možnosti vizualizace popisují v podkapitole 2.2.3.5.
2.2.3.2 3D ArcCatalog V aplikaci ArcCatalog rozšiřuje 3D Analyst zobrazování dat v hlavním okně „Preview“ o možnost 3D zobrazování. Kromě standardních pohledů na tabulku a geografickou část dat přibyly dva nové pohledy: Globe View a 3D View. Oba pohledy odpovídají základním možnostem zobrazování aplikací ArcGlobe respektive ArcScene, se kterými se váží také stejnojmenné panely nástrojů přidávající oběma pohledům funkce navigace v mapě a pohodlného spouštění aplikace ArcScene. Samozřejmostí jsou funkce týkající se správy 3D dat. Kromě klasických 2D formátů umožňuje ArcCatalog vytvářet také 3D verze formátů feature class a shapefile, taktéž lze vytvořit novou vrstvu (layer) nad 3D daty a nastavit jí základní vlastnosti. Nad těmito daty se pak mohou spouštět dávky automatického zpracování z nabídky ArcToolbox nebo v ModelBuideru.
STRANA 10
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
2.2.3.3 3D ArcMap Jak již bylo zmíněno, pomocí ArcMap se mohou 3D data vytvářet a editovat, ale možnosti jejich zobrazování jsou omezené, což při editaci 3D dat vyžaduje neustálé přepínání mezi aplikacemi ArcMap a ArcCatalog, kde se dají data poměrně rychle zobrazit. Jinak je práce se 3D v ArcMap pohodlná; po editaci dat 2D formátu lze rovnou na základě těchto dat vytvořit nový 3D formát a pokračovat v editaci. Například lze nastavovat třetí souřadnice jednotlivým lomovým bodům geometrií. Samozřejmě jsou z ArcMap dostupné funkce převodu mezi jednotlivými 3D datovými formáty (rastr, TIN, feature class) a analytické funkce, které budou podrobněji popsány v textu vztahujícím se k aplikaci ArcScene 2.2.3.5.
2.2.3.4 ArcGlobe Aplikace ArcGlobe má představovat vizualizaci 3D dat na reálném zemském povrchu, tedy povrchu tělesa podobnému kouli. Data se připojují podobně jako v ArcMap ve formě vrstev a opět lze využít data všech podporovaných formátů. Data se zobrazují dynamicky, aplikace je zobrazuje podle úrovně přiblížení ve vhodném měřítku [1]. Zatím se tato aplikace nachází spíše na okraji zájmu mezi aplikacemi ArcGIS, ale s přibývajícími nároky na zobrazování dat ve 3D se očekává její rozvoj. ArcGlobe je velmi specifický svými nároky na strukturu dat, proto se zatím pro vizualizace 3D dat spíše využívá aplikace ArcScene.
2.2.3.5 ArcScene Na rozdíl od ArcGlobe zobrazuje ArcScene data v prostoru s rovinnou základnou. ArcScene podporuje stejné datové formáty jako ArcMap a samozřejmě v něm lze prohlížet i 2D data. Aplikace dokáže zobrazit 3D datové formáty v trojrozměrném prostoru, jak již bylo řečeno, jedná se o tyto formáty definující prostorový kontext pomocí tří souřadnic: TIN, rastr, 3D feature class, 3D shapefile. Dále má ArcScene implementovány možnosti prostorové analýzy nad 3D daty, 3D data lze porovnávat mezi sebou, pro tyto účely jsou do analytických nástrojů zařazeny algebraické funkce. Například lze jednoduše získat základní data o modelovaném prostoru: obsah plochy, kterou zabírá projekce 3D prvku do roviny, velikost plochy celkového povrchu nebo objem prostoru, ve kterém je prvek umístěn [1]. Podobně jako v ostatních aplikacích má i ArcScene zavedeno vyhledávání v datech. Uživatel si může zvolit, zda bude vyhledávat podle atributů nebo podle umístění geometrie. Vybrané objekty se zvýrazní a nad tímto výběrem se mohou opět provádět další výběry nebo analýzy. S analýzami a vyhledáváním dat v prostoru se úzce váže také vizualizace dat, podrobněji se tímto tématem zabývá podkapitola 2.2.3.5.3. 2.2.3.5.1
TIN
Pro reprezentaci povrchů má 3D Analyst implementovány tzv. TIN objekty. Jedná se vlastně o triangulace povrchů polygonů, kdy se povrch v trojrozměrném prostoru modeluje pomocí sítě trojúhelníků. Jednotlivé trojúhelníky tvoří vrcholy, které reprezentují naměřené hodnoty. Čím více existuje naměřených hodnot, tím podrobnější a přesnější je triangulační model povrchu. Triangulace je jednou z nejběžnějších metod, jak digitálně popsat povrch objektu, používá se spíše při komprimacích povrchů různých těles, ale lze ji využít i pro vytváření povrchu ze sítě bodů. V aplikaci ArcScene lze TIN objekty vytvářet z již zmíněné sítě bodů nebo je možné k vytvoření využít rastrových dat. TIN objekty také mohou posloužit jako podklad pro mapování rastrových dat do 3D. Na
STRANA 11
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
TIN ve 3D lze namapovat 2D rastr [1]. Tato úprava rastru je však pouze dočasným nastavením vzhledu (symboliky), souřadnice se při ní nemění a výsledek se pro uchování musí uložit jako mapová vrstva (soubor LYR). Nad triangulací se v ArcScene mohou vytvářet analýzy povrchu a lze v nich také vyhledávat konkrétní hodnoty. Na rozdíl od rastru je TIN vhodný pro práci ve velkém měřítku. [1]
Obrázek 2.1: Příklad triangulace [6]
2.2.3.5.2
Rastry
Rastrová reprezentace povrchů se ukládá ve formátu mřížky, což je matice buněk (pixelů) o stejné velikosti umístěných v rovině nebo v prostoru [1]. Přesnost rastru je dána velikostí buněk, které jsou v mřížce umístěny pomocí souřadnic. Každá buňka obsahuje hodnotu určující například barevnost buňky nebo hodnotu měření. Podobně jako u TIN objektů se v rastrech mohou vyhledávat nějaké konkrétní objekty nebo hodnoty. ArcGIS 3D Analyst umožňuje vytvořit rastrové reprezentace povrchu dvěma způsoby: interpolací a konverzí z TIN objektu. Konverze z TIN na rastr je jednoduše implementovaná, stačí nastavit parametry. V geometrii se interpolace používá k vytváření linií nebo polygonů prokládáním bodů. Pokud výstupem interpolace mají být rastrová data, nelze uskutečnit prokládání bodů jednoduše jako v případě vytváření jiné vektorové geometrie nebo TIN. Interpolace se musí provádět s ohledem na pravidelnost buněk v rastrové mřížce, nelze pouze „pospojovat“ body. Předpokládá se, že se bude
STRANA 12
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
interpolace na rastr provádět nad daty nějakého měření (výškopis, srážky, atd.), výsledek měření bude tedy v podobě sítě bodů, které v sobě nesou naměřené hodnoty. Aby se síť bodů mohla převést na rastr, musí se pixely rastru dopočítat (přiřadit jim hodnoty podle vstupní množiny vzorových bodů). Obecně se tento problém řeší pomocí takzvaných „roztahovacích“ algoritmů, pixelům se dopočítávají hodnoty podle jejich vzdálenosti od vzorových bodů. Pro vytváření nových pixelů interpolací existuje mnoho algoritmů, některé z nich má implementován ArcGIS 3D Analyst, stačí si jen zvolit nejvhodnější. [1] 2.2.3.5.3
Vizualizace a animace
Jak již bylo zmíněno, v ArcGIS nelze namodelovat tělesa. Aplikace ArcScene však umožňuje v rámci nastavení symboliky vrstvám přidat zobrazované geometrii třetí souřadnici respektive jí nastavit výšku. Vytvoří se tak vlastně 3D symbolika pro 2D geometrie. Existují tři možnosti jak pomocí vzhledu zobrazit geometrii v prostoru a nastavit jí tím výšku. První možností je namapování 2D geometrie na 3D terén. Druhou možnost představuje nastavení výšky podle nějaké defaultní hodnoty nebo podle hodnot v atributech. Třetí možností je zvednutí geometrie do určité výšky, která se opět může získat z atributu nebo nastavit přímo. Pouze pomocí třetí možnosti jsme schopni vytvořit v ArcGIS těleso, tedy spíše iluzi tělesa. Tuto vlastnost ArcGIS označme jako „Extrude“. „Extrude“ lze aplikovat také na prvky s 3D geometrií. Všechny tři zmíněné možnosti se mohou mezi sebou libovolně kombinovat.
Obrázek 2.2: Aplikace funkce Extrude
Vytvořené vrstvy se 3D daty lze dále upravovat pomocí kartografických funkcí, ArcScene nemá implementováno tak široké spektrum těchto funkcí jako aplikace ArcMap, pro potřeby práce s 3D objekty však jsou dostačující. U 3D dat se předpokládá, že se budou jednotlivé vrstvy v různých výškách umisťovat nad sebe (případně přímo na sebe), proto se nejvíce funkcí týká možností vzájemného rozlišování vrstev. Pro přehlednější vykreslování se objektům kromě barvy přidá také stínování, vyniknou tak kontury, odliší se tím od sebe jednotlivé stěny těles nebo plochy pod různými úhly. Úhel, ze kterého se prostor s daty začíná stínovat, lze v aplikaci měnit, nejinak je to také s intenzitou stínování. Umístění v prostoru umožňuje prohlížení objektu z mnoha úhlů. Panel nástrojů s funkcemi navigace se rozšířil o možnost libovolného rotování zobrazovaných objektů kolem své osy. Pro potřeby
STRANA 13
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
této diplomové práce je určitě zajímavá funkce „Fly“, která umožní létat nejen nad nějakým povrchem ale také uvnitř budovy. Potřebám 3D se přizpůsobilo také zoomování. Všechny tyto navigační funkce se mohou využít pro vytvoření animace. Díky panelu nástrojů „Animation“ se navigování ve 3D scéně může nahrávat a následně uložit do formátu AVI. „Natočený film“ je pak libovolně dostupný k prohlížení bez nutnosti mít nainstalovaný GIS systém. 3D scéna se také může exportovat do VRML modelu.
2.2.4 ArcSDE V současné době je již zřejmě nemyslitelné efektivně spravovat větší objemy dat jinak než v databázi. To samozřejmě platí i pro data geografických informačních systémů, které pracují s vektorovými nebo rastrovými daty. Z tohoto důvodu vytvořila společnost ESRI aplikační server ArcSDE umožňující ukládat prostorový kontext do relačních databází (dále DBMS) a spravovat je tak, aby byly pokryty veškeré nároky na práci s prostorovými daty [5]. Samozřejmě se nesmí zapomenout ani na uchovávání dat v souborovém systému, které je dnes spíše na ústupu, ale mohou nastat situace, kdy se bez něj neobejdeme. ArcSDE podporuje obě možnosti přístupu k datům, a tedy ArcSDE jako takové tvoří vlastně dva ve své podstatě nezávislé servery: ArcSDE for DBMS a ArcSDE for Coverages. ArcSDE for DBMS podporuje čtyři relační databázové systémy – Oracle, MS SQL Server, Informix, IBM DB2. Jak již bylo zmíněno, ArcSDE je aplikačním serverem samozřejmě ušitým na míru potřebám společnosti ESRI a v podstatě společně s datovým uložištěm tvoří jádro systému, který si můžeme „poskládat“ z produktů, které nám ESRI nabízí. Plní vlastně funkci „mezivrstvy“ ve třívrstvé architektuře klient-server a zprostředkovává data například pro ArcGIS Desktop aplikace nebo pro webové služby ArcIMS. K relační databázi může přistupovat ArcSDE přímo nebo přes aplikační server dané relační databáze. Přístup přes aplikační server přináší výhodu rychlejší komunikace s DBMS. V případě přímého přístupu k databázi ArcSDE plně nahradí její aplikační server. Tato druhá možnost usnadňuje instalaci popřípadě konfiguraci aplikačního serveru, na druhou stranu převádí část zátěže ze serveru na klienta a vyžaduje tedy vyšší výkonnost klientských stanic. V rámci správy dat stojí za zmínku možnost víceuživatelského přístupu k tabulkám databáze a verzování. Pro prostorová data geografických informačních systémů má ArcSDE implementovánu objektovou nadstavbu, která tato data uživateli zpřístupňuje vlastně ve dvou složkách. Jako tabulku s objekty se zachovanými principy práce s relační tabulkou, zejména s dotazováním. Druhou složku těchto dat pak tvoří jejich prostorový kontext. Při ukládání prostorových dat do relační databáze může ArcSDE využít objektových rozšíření databází (např. Oracle Spatial) o geometrické datové typy nebo využívá rozšíření datových typů (např. BLOB nebo uživatelské datové typy), záleží na typu DBMS. Jiným případem je ukládání rastrových dat. Rastr se nejprve rozdělí na jednotlivé buňky (metodou podobnou gridové) a do databáze se ukládají buňky jako datový typ BLOB. Na veškerá v databázi uložená data se můžeme dotazovat, protože ArcSDE dodržuje standard ISO SQL 3 MM Spatial a podporuje jak datové typy tohoto standardu, tak i typy specifikované v OGC Simple Features SQL specification. ArcSDE for Coverages slouží k zpřístupnění vektorových dat uložených v souborech (shapefiles, coverages, layers). Jedná se vlastně o unifikaci přístupu k souborovým datům, ta však jsou dostupná pouze pro čtení. Další funkcí ArcSDE je umožnění migrace mezi víceuživatelskou databází, osobní
STRANA 14
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
geodatabází a coverages. V případě souborových dat se musí provádět export, kterým ArcSDE převádí vektorová data uložená v souborech na data uložená ve feature class v geodatabázi. I tato data můžeme pouze číst. Nástroje pro umožnění migrace nalezneme v ArcCatalogu. Výše uvedená fakta popisovala obecně možnosti ArcSDE, v dalším textu se zaměříme konkrétně na aktuální verzi ArcSDE 9.1. Verze 9.1 přinesla rozšíření podporovaných platforem (např Sun Solaris, HP-UX,...), podporu přístupu k DBMS – např. OGC Simple Features SQL specification pro DB2 a Informix a přímý přístup ArcSDE k databázi pro tytéž databázové stroje. Podporované formáty rastrových dat se rozrostly o JPG 2000. Zobrazování rastrů může probíhat pyramidově, což proces vykreslování značně urychluje. Princip pyramidy spočívá v tom, že při ukládání rastru do databáze jej ArcSDE konvertuje na formát ArcSDE raster format s předem definovanou velikostí a následně se vytvoří pro tento rastr index. Postup ukládání daného rastru se opakuje s tím rozdílem, že daný rastr se ukládá stále více podrobněji (jednotlivá patra mají pro uložení nastavenu postupně se zvětšující možnou velikost souboru), nebo se rastr může rozdělovat na několik částí, kterým se opět postupně při ukládání zvětšuje podrobnost. Takto vytvořená posloupnost obrázků se také přidává do indexu. Při následném vyhledávání v mapě se indexem postupně zanořujeme do pyramidy, tedy nevykreslujeme pokaždé celý rastr, ale jen jeho menší klon nebo část. V současnosti je před dokončením nová verze ArcSDE 9.2. ArcSDE se přizpůsobilo současnému trendu na trhu databázových systémů, kde se velmi rozrostla nabídka méně robustních systémů určených omezenému množství uživatelů a s nižší cenou, než jaká je obvyklá u plně funkčního systému bez jakýchkoli omezení. Proto ArcSDE přichází s dvěma novými verzemi aplikačního serveru pro DBMS MS SQL Server 2005 Expres. Jedná se o ArcSDE Personal, které bude součástí balíku ArcGIS Desktop jako volitelná komponenta bez požadavku na zvláštní licenci. ArcSDE Workgroup se zaměřuje na použití v malých firmách, má omezen počet současně pracujících uživatelů na 10 a je licencován. Obě verze budou umožňovat provádění verzované editace, používání historie a vícestupňové replikace. Při jejich instalaci se nainstaluje i databáze SQL Server Expres. Správa databáze se bude provádět přes ArcCatalog. Další novinkou je možnost ArcSDE plně využít funkčnost, kterou nabízí datový typ Oracle Spatial a rozšířila se také podpora prostorového rozhraní Spatial SQL pro Oracle. [6]
2.2.5 ArcObjects a geoprocessing, ArcGIS Engine Kromě klasického uživatelského přístupu k nástrojům skupiny ArcGIS je možné k práci využít vývojovou platformu ArcObjects. Systém ArcGIS je založen právě na technologii ArcObjects, proto lze pomocí ní zpřístupnit veškeré možnosti ArcGIS pro vytváření vlastních aplikací nebo rozšiřování stávající funkcionality. Využívat ArcObject se může několika způsoby. Ten nejjednodušší způsob spočívá ve vytváření dávek přímo v prostředí ArcGIS Desktop. Všechny aplikace spadající do řady ArcGIS Desktop případně jeho rozšíření mají implementovánu možnost spouštění dávek přímo v aplikaci. K tomuto účelu všechny obsahují nástroj Visual Basic Editor, ve kterém se mohou vytvářet skripty pomocí kombinace programovacího jazyka Visual Basic for Aplication (VBA) a souboru knihoven ArcObjects. Zpracovávat se mohou přímo připojené mapové vrstvy aplikace (například v ArcMap), kdy se data vyhledávají v otevřeném mapové dokumentu nebo se data vyhledají a načtou z datového uložiště. Součástí technologie ArcObjects jsou také objekty, které mohou do skriptu zakomponovat funkce již vytvořené pro ArcToolbox, například lze pomocí nich spustit funkce rozšíření Data Interoperability.
STRANA 15
KAPITOLA 2
TECHNOLOGIE PRO VYTVOŘENÍ GIS
Další možnost programování pomocí ArcObjects nemusí využívat prostředí VBA, k vytváření vlastních rozšíření skupiny ArcGIS se může použít libovolné vývojové prostředí, které podporuje Microsoft Component Object Model (COM). Vlastními rozšířeními jsou myšleny například nové panely nástrojů, jejich funkce a ikony či příkazy. Vytvořené rozšíření se pak jednoduše přidá do vybrané aplikace jako knihovna DLL. Třetí možností je nespojovat vlastní programy s aplikacemi skupiny ArcGIS, ale vyvíjet je samostatně v některém z prostředí .NET, Java, COM nebo C++. K tomuto účelu slouží nástroj ArcGIS Engine. Což je v podstatě soubor knihoven ArcObjects, které lze využít bez nutnosti instalace ArcGIS Desktop. Stačí pouze na vývojový stroj nainstalovat ArcGIS Engine Runtime. ArcGIS Engine obsahuje veškeré možnosti práce s prostorovými daty jako ArcObjects. ArcGIS Engine má také implementovány některé prvky uživatelského rozhraní známé z ArcGIS, nemusí se tedy znovu vytvářet, což ocení uživatelé zvyklí pracovat s ArcGIS Desktop. Podobně jako ArcGIS Engine má vývojové možnosti implementované také nástroj ArcGIS Server. V tomto případě je však soubor knihoven pro vývoj umístěn na serveru, požadavky odeslané klientem „vývojářem“ se tedy zpracovávají přímo na serveru. [6]
STRANA 16
3 Datový model 3D geografické databáze 3.1 2D datový model geodatabáze budov a místností V roce 2004 vypracovala Mgr. Lenka Horáčková diplomovou práci na téma: Modelování geografických databází. Hlavním cílem této diplomové práce bylo vytvoření geodatabáze budov a místností, která by obsahovala také objekty s geometrií, a tím umožňovala jejich zobrazování. V této diplomové práci se ověřovaly dva způsoby tvorby datových modelů: model s relačními vazbami mezi objekty a model s prostorovými vazbami, které se dají verifikovat na základě topologických pravidel. Modely se vytvářely v prostředí nástroje MS Visio, ve kterém lze model vyexportovat do formátu XML a na jeho základu vytvořit geodatabázi. Datový model v prostředí MS Visio je již navržen tak, aby z něj bylo možné vygenerovat geodatabázi pro prostředí nástrojů ArcGIS firmy ESRI. Entity datového modelu se vytvářely na základě dekompozice budov a místností na jednotlivé konstrukční prvky, ze kterých se budovy skládají. Analýza se opírala o definice stavebních prvků a jejich zobrazení ve stavebních výkresech, které se pořizují ve 2D. Na závěr se navržená geodatabáze ověřila na datech stavebního pasportu. [3] Součástí této diplomové práce je rozšíření datového modelu navrženého Mgr. Lenkou Horáčkovou o 3D geometrie stavebních prvků. V modelu zůstaly zachovány všechny 2D objekty, došlo pouze k přidání třetí souřadnice stavebním prvkům, třetí souřadnice je zde reprezentována výškami stavebních prvků. Do změn v modelu se promítly také odlišné pohledy autorů na budovy a stavební prvky, ze kterých se skládají. Tato diplomová práce se zaměřuje na zpracovávání konkrétních stavebních výkresů, které byly pořízeny pro potřeby Masarykovy univerzity, proto pohled na stavební prvky v budovách může být místy příliš ovlivněn zkušenostmi s konkrétními daty. Do modelu tak zasáhly drobné úpravy, jenž model přizpůsobují více stavebním výkresům zpracovávaným v této diplomové práci a také získaným zkušenostem při předchozích pracích se stavebním pasportem MU. V době vzniku diplomové práce Mgr. Lenky Horáčkové se s pracemi na stavebním pasportu teprve začínalo, proto byl původní model založen obecněji, než je tento současný. Prvním krokem procesu rozšiřování datového modelu geodatabáze budov a místností muselo být samozřejmě velmi dobré seznámení s původním 2D datovým modelem. Pochopení proč jsou které objekty takto navrženy místy nebylo snadné, protože výkresy stavebního pasportu někdy realitu příliš zjednodušovaly. Například se v datovém modelu konstrukce nedělí pouze na horizontální a vertikální jako ve výkresech stavebního pasportu MU, ale třeba také v případě vertikálních konstrukcí na nosné a příčky. Datový model se snaží maximálně odpovídat realitě, měl by tedy obsahovat všechny stavební prvky, ze kterých se budova skládá, a měl by přesně odpovídat prvkům zakresleným ve stavebních výkresech. Stavební výkresy však zobrazují i abstraktní prvky, které nejsou hmotné (otvor, prostor otevírání dveří). Tyto objekty mají většinou informativní charakter nebo slouží k orientaci uvnitř budovy. Měly by se do modelu zahrnout i tyto objekty, přestože nejsou součástí konstrukce budovy? To záleží na tom, jakou funkci plní při vytváření pomyslného modelu budovy z jednotlivých entit datového modelu. Například zobrazení prostoru otevírání dveří není konkrétní objekt – část budovy a
KAPITOLA 3
DATOVÝ MODEL 3D GEOGRAFICKÉ DATABÁZE
jeho funkce je čistě informativní, proto nebyl do datového modelu začleněn, ačkoli tento objekt má geometrii a obsahují jej také stavební výkresy. Jiným příkladem jsou otvory ve stavebních konstrukcích, měly by být zakreslovány či modelovány nebo nikoli? Otvory plní důležitou roli při vytváření stavebních konstrukcí, s konstrukcemi jsou úzce svázány. Bez nich není možné vymezit přesnou polohu výplně v konstrukci, ani přesně namodelovat tvar konstrukce, proto se tato entita zakomponuje do datového modelu.
3.2 3D rozšíření datového modelu geodatabáze Součástí kapitoly 2 bylo seznámení s možnostmi práce s 3D objekty v prostředí ArcGIS, které jsou přece jen značně limitované. Tento fakt by se neměl odrazit v datovém modelu a návrhu geodatabáze budov a místností. V této kapitole se také mluvilo o široké variabilitě formátů vstupních dat pro geografické informační systémy. Možnosti práce s 3D prostorovými daty nabízí velké množství různých aplikací, které 3D objekty modelují různými způsoby a pomocí různých prostředků. Jaký druh 3D objektu se zvolí pro jaký stavební prvek může být velmi různorodé, proto jsem se v modelu snažila zachovat co největší všestrannost 3D geometrií. Zároveň je potřeba si uvědomit, že nejde o převedení 2D datového modelu na 3D model, ale o jeho rozšíření o 3D geometrie stavebních prvků. Nelze jednoduše nahradit jeden druh geometrie za druhý, ani ke každému objektu s geometrií v rovině přiřadit objekt s geometrií v trojrozměrném prostoru. Někdy totiž k danému stavebnímu prvku existuje pouze jedna z geometrií. V původním datovém modelu navrženém v prostředí MS Visio se pro přehlednost barevně odlišují entity bez geometrie a entity s geometrií. Entity bez geometrie jsou dědici třídy Object a zvýrazňují se zelenou barvou. Entity s geometrií dědí ze třídy Feature, označují se barvou modrou. [3] Rozlišují se dva druhy geometrií: půdorysy a obecný druh jiné než půdorysné geometrie. Tyto dva druhy geometrií se od sebe v modelu opět vizuálně odlišují, jak naznačuje Obrázek 3.1.
Obrázek 3.1: Barevné rozlišení entit datového modelu
STRANA 18
KAPITOLA 3
DATOVÝ MODEL 3D GEOGRAFICKÉ DATABÁZE
3.2.1 Půdorys Ve stavebnictví je půdorys plán, který ukazuje rozmístění jednotlivých místností budovy v konkrétním podlaží [4]. Půdorys se podobá mapě. Je to pohled shora a znázorňuje umístění a tloušťku jednotlivých stěn a příček. Pro stavební výkresy pasportu MU byla stanovena výška 1 metr nad podlahou a tvar půdorysu se zakresloval na základě tvaru stavebního prvku v této výšce. Při striktním dodržování tohoto pravidla, by však výkresy nebyly úplné, některé důležité stavební prvky do linie 1 metru nad podlahou nemusí zasáhnout (například okna). Pokud tento případ nastane, dostává přednost zakreslení stavebního prvku. Pojem půdorys ve výše popsaném významu se používá také v Čítance stavebních výkresů [2]. Většinou se však půdorysem myslí, projekce geometrie v prostoru do roviny o nulové výšce, v případě tělesa geometrii jeho základny. V původním datovém modelu se entitami s půdorysem šetří, takže okna či příčky mají přiřazenu obecnou geometrii. Pokud se geometrie označí za půdorys, lépe se představí reálný stavební prvek, který byl předlohou pro vytvoření půdorysu. Půdorys v sobě vlastně nese konkrétnější informace o objektu. Proto se v upraveném modelu entity s geometrií typu půdorys rozšířily. Obecné 2D geometrie se použily pouze pro popis objektů, které v prostoru nejsou tvořeny jednoduchými tělesy – například geometrie obložení stěn. Termín „jednoduché těleso“ se zde zadefinuje spíše intuitivně, bude záležet na každé konkrétní geometrii stavebního prvku, zda se označí jako jednoduché těleso nebo jako obecná 3D geometrie. Jednoduchým tělesem se rozumí těleso, z jehož půdorysu (projekce do roviny) bude stále možné několika jednoduchými úpravami vytvořit opět původní těleso (nastavení třetí souřadnice půdorysu). Příklady jednoduchých těles: krychle, kvádr, krychle s jednou zkosenou stěnou, jehlan, těleso stavebního prvku rampa atd.
3.2.2 3D geometrie Geometrii v prostoru nemusí být jednoduché popsat. Objekt v prostoru může nabývat různorodých tvarů. Například celá konstrukce schodiště nebo zvláštní architektonický prvek nelze popsat jednoduchou geometrií v prostoru a už vůbec je nelze popsat pouze pomocí půdorysu tak, aby bylo na první pohled jasné, co půdorys představuje. Proto se pro potřeby datového modelu zavedou pouze dvě 3D geometrie. Stavebním prvkům, které je možné popsat pomocí jednoduchého tělesa, se přiřadí entita s geometrií „těleso“. Ostatním stavebním prvkům se v datovém modelu přiřadí entita s geometrií „obecná 3D geometrie“. Obecnou geometrií v prostoru se rozumí jakýkoli objekt ve 3D, který nelze označit za jednoduché těleso. Například se pomocí této geometrie dá vytvořit zjednodušený model šikmé konstrukce, zábradlí nebo elektrické zásuvky ve smyslu vybavení místnosti. Poslední typ geometrie ve 3D je poněkud specifický, nepopisuje objekt v prostoru ale pouze jeho povrch. Jedná se o triangulaci, která by v modelu neměla chybět, jelikož má obrovskou vypovídací hodnotu. Co jiného použít pro znázornění různých obložení stěn nebo podlahových krytin. Bohužel se v současnosti nedají TIN objekty do geodatabáze v prostředí ArcGIS uložit, proto nemohou být ani součástí datového modelu. V ArcGIS verze 9.2 již bude možné TIN do geodatabáze vložit a počítá se s přizpůsobením datového modelu této skutečnosti. Všechny entity s 3D geometrií (těleso, obecná 3D geometrie) mají dědičnou vazbu na třídu Feature a barevně se odlišují (viz Obrázek 3.2).
STRANA 19
KAPITOLA 3
DATOVÝ MODEL 3D GEOGRAFICKÉ DATABÁZE
Obrázek 3.2: Barevné rozlišení entit s 3D geometrií
3.3 Objekty s 3D geometrií Největší komplikace při doplňování datového modelu způsobilo vyřešení souběžné existence geometrie v rovině i v prostoru u jednoho stavebního prvku, respektive možnost samostatné existence půdorysu stavebního prvku bez jeho tělesa. Jaký je vztah mezi těmito geometriemi? Může 2D geometrie existovat bez své prostorové předlohy? Pokud bych nebrala v úvahu to, jakými daty se bude geodatabáze vytvořená na základě tohoto datového modelu plnit, nejspíš by datový model vypadal trochu jinak. Například půdorys je projekcí tělesa do roviny, pokud stavební prvek má namodelováno své těleso, je půdorys tímto tělesem přesně definován a lze jej kdykoli z tělesa odvodit. Proto ze vztahu půdorys – těleso obecně vyplývá, že půdorys nemůže bez tělesa existovat, a je vlastně jeho součástí. První vazba mezi entitami Těleso a Půdorys, která každého napadne, bude jistě kompozice. V reálném zpracování prostorových dat, by to však znamenalo, že ke každému stavebnímu prvku se nejprve pořídí jeho těleso (případně jiná prostorová geometrie) a z něj se pak odvodí jeho 2D geometrie.1 Situace s reálnými daty je však diametrálně odlišná, do geodatabáze se vkládají nejprve 2D geometrie stavebních prvků a pak se (možná) vloží také jejich 3D geometrie. Proto se tato diplomová práce snaží o trochu nelogickou věc – získání těles na základě jejich půdorysů. A činí tak navzdory jednomu zásadnímu faktu, že půdorys nemůže definovat těleso, lze z něj získat jen hrubou představu o skutečném tvaru stavebního prvku. Z tohoto důvodu nelze mezi 3D geometrií a 2D geometrií náležící jedné entitě vytvořit v datovém modelu kompozitní vazbu jedním ani druhým směrem, ačkoli jsou jinak tyto geometrie úzce spjaty a jedna vlastně může tvořit druhou, v datovém modelu je spojuje pouze příslušnost k jednomu stavebnímu prvku. Následující část kapitoly se zabývá konkrétními změnami a úvahami, které vedly k rozšíření datového modelu o 3D geometrie stavebních prvků.
1
Vztah těleso – půdorys se uvažuje jako příklad vztahu mezi 3D a 2D geometrií
STRANA 20
KAPITOLA 3
DATOVÝ MODEL 3D GEOGRAFICKÉ DATABÁZE
3.3.1 Budova a místnosti Datový model jsem vytvářela na základě dekompozice budovy na konkrétní stavební prvky. Model budovy lze tedy poskládat z těles jednotlivých stavebních prvků, není proto třeba modelovat samotné těleso budovy. Stejný případ je i těleso podlaží, modelovat těleso jednoho podlaží opět nemá význam. Tělesa budovy a podlaží se přirozeně vymodelují pomocí ostatních stavebních prvků. Tělesa podlaží a budovy by nepodávala o svých entitách žádné relevantní informace. Naopak půdorys budovy může sloužit k výpočtu velikosti zastavěné plochy, což je podstatná informace, která určitě najde své využití. K entitám budova a podlaží se proto budou udržovat pouze jejich půdorysy. U entity místnost opět zůstane zachována geometrie půdorysů, ze kterých se mohou odvodit například plochy místností. Ačkoli existence tělesa místnosti se nejprve zdála zbytečná jako u budovy a podlaží, nakonec bylo těleso místnosti do modelu zařazeno. Těleso místnosti se využije k identifikaci místnosti při nějaké formě vyhledávání v budově nebo k zobrazení skutečného tvaru místnosti v podlaží. Zejména u vícepodlažních místností by měl jít ověřit skutečný prostor, který místnost zabírá.
3.3.2 Otvory Asi největším zásahem do původního datového modelu bylo zavedení entity Otvor. Otvorem se myslí otvor uvnitř stavební konstrukce, můžeme si jej představit jako přerušení konstrukce za nějakým účelem (k umístění okna, vytvoření průchodu, průduchu atd.). Otvorem například není prostor mezi stěnami místnosti. Rozlišují se otvory v horizontální konstrukci a ve vertikální konstrukci, toto rozdělení se zavedlo pouze pro přiřazení otvoru k dané konstrukci. Jinak mezi otvorem v horizontální a vertikální konstrukci není zásadní funkční rozdíl. Hlavní funkcí otvorů v konstrukcích je propojení prostorů ohraničených konstrukcemi (například místností), opomenout by se neměl ani vzhledový význam. Otvorem může být výklenek, prostor určený pro umístění výplně, průduch, prostor sloužící k umístění jiného druhu konstrukce atd. Podobně jako u tělesa místnosti se i v případě otvorů vytváří vlastně abstraktní stavební prvek, proto je důležité jeho existenci důkladně zvážit. U otvorů je však jejich zavedení do datového modelu potvrzené zkušenostmi se stavebními výkresy. Při generování 3D modelů budov se využijí otvory právě při vsazování oken a dveří do konstrukcí. Druhým praktickým využitím je vytváření otvorů v horizontálních konstrukcích pro umístnění schodiště, výtahové šachty nebo vícepodlažní místnosti. V těchto případech se zatím vytvářely speciální místnosti s atributem označujícím skutečnost, že nemají podlahu. Pokud by se ale podařilo zavést při pořizování prostorových dat také zakreslování otvorů, odpadlo by vytváření těchto speciálních místnost. Plány budov se obecně pořizují po podlažích, Například ve stavebních výkresech pasportu MU se u každé vícepodlažní místnosti zakresloval její půdorys do každého podlaží, do kterého tato místnost zasahovala. Skutečnost, že jedna místnost má více půdorysů, není v tomto případě vhodná. Nahrazení půdorysů této místnosti ve vyšších podlažích otvory by se problém vícepodlažní místnosti popsal přesněji, těleso by mělo pouze jeden půdorys a zároveň by se jasně označil otvor, kde se v podlaží nenachází horizontální konstrukce, jelikož v daném místě do podlaží zasahuje vícepodlažní místnost.
STRANA 21
KAPITOLA 3
DATOVÝ MODEL 3D GEOGRAFICKÉ DATABÁZE
3.3.3 Výplně otvorů Zvedení entity Otvor má za cíl zjednodušení práce s konstrukcemi a výplněmi otvorů v nich, jako jsou dveře a okna. Pokud existují pouze prostorová data o konstrukci a výplni bez geometrie otvorů, nemusí to stačit k přesnému zachycení reality. Geometrie výplně nemusí odpovídat geometrii otvoru, vytvoření otvoru v konstrukci na základě geometrie výplně může dopadnout úplně jinak než, když se při zakreslování stavebních výkresů v konstrukci vytvoří otvor přesně podle pořízené geometrie reálného otvoru a do něj se vsadí výplň. Nehledě na to, že v otvoru by se mohlo nacházet více výplní. Pro zachování větší obecnosti se zvolilo zařazení entity Výplň do datového modelu, tato entita je abstraktní a dědí z ní entity Dveře a Okno. V otvoru se může kromě výplně nacházet také jiná konstrukce. Tato vestavěná konstrukce se od té, ve které je umístěn otvor, liší většinou druhem svého materiálu nebo svou funkcí. Vestavěné konstrukce se nepovažují za výplně, přestože otvor vlastně vyplňují. Existence geometrie otvoru je v tomto případě nezbytná, bez něj by vlastně nešlo logicky správně namodelovat skutečnost, že se konstrukce nachází uvnitř jiné konstrukce.
3.3.4 Schodiště Projekce schodiště do roviny se podstatně liší od schodiště ve 3D. Schodiště je tvořeno dvěma základními prvky: rameny a odpočívadly.2 Rameno schodiště se dále dělí na jednotlivé stupně, které se ve stavebních výkresech většinou zakreslují spíše z důvodu lepšího vzhledu výkresu, než aby toto zakreslení neslo nějaké důležité informace. Podstatnější je rozložení půdorysů ramen a odpočívadel než detailní zakreslení půdorysů stupňů, které se ve 2D výkresu ani nezakreslují, rameno se zvýrazňuje liniemi naznačujícími stupně. Ve 3D se však musí jednotlivé stupně vymodelovat, teprve z nich se tvoří rameno schodiště. Při zavádění stupňů do datového modelu jsem zvažovala, zda existuje těleso ramene schodiště a mám jej do modelu zařadit či nikoli. Reálné rameno schodiště vzniká vlastně zasazením jednotlivých stupňů do připravené nosné konstrukce. Pokud by se chtěla zachovat maximální realističnost, tak by se musela vytvořit entita Stupeň a také entita této šikmé nosné konstrukce. Do takových stavebních detailů však model nesahá, proto není vhodné do něj zavádět ani nosnou konstrukci schodiště. Datový model má sice odpovídat realitě, ale bez újmy na obecnosti se stavební prvky mohou do určité míry generalizovat. Z důvodu zjednodušení se tedy bude objekt ramene schodiště modelovat pouze pomocí těles jeho stupňů, do modelu se nezavede entita představující těleso ramene ani entita nosné konstrukce schodiště.
Součástí schodiště může být také rampa, ta se ale v Čítance stavebních výkresů [2] popisuje jako samostatný stavební prvek.
2
STRANA 22
4 Generování 3D modelů budov MU 4.1 Stavební pasport MU V roce 2004 začalo na Masarykově univerzitě pořizování stavebního pasportu nemovitého majetku. V první fázi je jednalo o zmapování 104 budov a 399 podlaží. Data stavebního pasportu se pořizovala ve dvou formátech. Grafická data se zakreslovala v prostředí CAD aplikací a ukládala se do souborů formátu DWG. Atributová data o budovách a místnostech v nich se vkládala do souborů formátu XLS. Tato data mají v současnosti velkou škálu využití, například v evidenci a správě majetku MU, v mapových prohlížečích, v systému Inet atd.
Obrázek 4.1: Publikace dat pasportu z výkresu DWG a z geodatabáze
Data ve formátu DWG jsou vlastně technické výkresy, do jednotlivých hladin se zakreslují stavební prvky výkresu.3 Pomocí nástroje Data Interoperability (popsáno v podkapitole 2.2.2.3) lze výkresy DWG převést do geodatabáze. To znamená, že grafika výkresu i atributy stavebních prvků se podle svých hladin vloží do několika feature class v geodatabázi. Takto převedená grafická data s atributy však ještě nevyhovují potřebám práce s grafickými daty stavebního pasportu v geodatabázi. Pohled na data v databázi se liší od pohledu na data stavebních výkresů, ve kterých je upřednostňována symbolika, a veškeré informace se vyjadřují pomocí ní, protože se předpokládá, že stavební výkresy
3
O tomto tématu bylo již pojednáno v kapitole 3 – Datový model 3D geografické databáze.
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
se budou prohlížet nejen v elektronické podobě. Data stavebních výkresů v geodatabázi využívají doplnění grafických informací o atributová data. Také je pravděpodobnější, že data v geodatabázi budou přístupná širší veřejnosti a na grafickou složku se nebudou pokládat takové nároky jako na technický výkres. Grafika v geodatabázi proto může být i zjednodušená, například okno v geodatabázi stačí reprezentovat pomocí jednoho polygonu na rozdíl od stavebního výkresu, kde jej tvoří několik linií v různých hladinách. Jako příklad je možné uvést stavební prvek vertikální konstrukce. Ve stavebních výkresech se zakreslují vertikální konstrukce pomocí linií a nikoli jako polygony. Pro potřeby uložení do geodatabáze a následného publikování vyhovuje lépe pohled na vertikální konstrukce jako na polygony, protože ve skutečnosti opravdu půdorysy stěn jsou rovinné mnohostěny. Neopomenutelný důvod představují možnosti práce se stavebním prvkem ve formě polygonu, už jen z hlediska zobrazení se polygon bude jednodušeji zvýrazňovat. Další zjednodušení se týká sloupů. Laické veřejnosti bude stačit, když z mapy pochopí, co je volným prostorem (místností) a co neprůchodným stavebním objektem, proto lze sloupy přiřadit ke svislým konstrukcím. Zpracování stavebních výkresů – převod grafiky výkresů na data v geodatabázi a jejich úpravy jako sloučení linií vertikálních konstrukcí, jejich převod na polygon a přidání sloupů, se realizují spouštěním dávek nebo využitím interních nástrojů v prostředí ArcGIS. Výše popsaným způsobem v současnosti zpracovává stavební pasport MU oddělení geografických informačních systémů na Ústavu výpočetní techniky. Nyní jsou dokončena zpracování těchto stavebních prvků: půdorysy podlaží, místností, svislých stavebních konstrukcí, oken, dveří a částečně také schodišť. Zpracovaná data se nachází v geodatabázi a slouží jako základní podklady pro publikace vnitřních prostor budov MU. Tato data budou také použita pro potřeby této diplomové práce.
4.2 Využití dat stavebního pasportu při vytváření 3D modelů budov Jedním z cílů této diplomové práce je ověření možnosti využití dat stavebního pasportu při generování 3D modelů budov. Předně je nutné si uvědomit, že reálný a přesný 3D model budovy by se musel vytvářet pomocí jiných modelovacích nástrojů a nad daty pořízenými na míru pro potřeby 3D modelování. Nástroje řady ArcGIS se na vytváření 3D modelů nespecializují, je to jen jednou z mnoha možností práce s daty, kterou nabízí, proto by využití některého specializovaného 3D CAD nástroje vedlo nejspíše k lepším a přesnějším výsledkům. Stavební pasport MU se nepořizoval s ideou využití jeho dat ve 3D modelování, takže nelze očekávat, že by generované modely zachycovaly naprosto přesnou realitu. Ověření možností nástrojů ArcGIS a dat stavebního pasportu při 3D modelování bylo pozoruhodnou myšlenkou a nakonec se získaly zajímavé výsledky. Realizace projektu vytvoření přesných 3D modelů všech budov Masarykovy univerzity, by při ručním modelování v 3D CAD nástrojích a s použitím nových 3D dat včetně pořízení trvalo mnohonásobně déle než řešení navržené v této diplomové práci. Bezespornou výhodou bude využití existujících, částečně zpracovaných dat stavebního pasportu a budou se snadněji převádět do 3D. Největší výhodu ovšem představuje automatické generování 3D modelů budov, což je metoda značně odlišná od jiných podobných projektů, a k jejíž realizaci stačí navrhnout program na automatické generování 3D modelů budov.
STRANA 24
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Jak již bylo řečeno, data stavebního pasportu MU nejsou primárně navržena pro 3D modelování, součástí pořizování stavebního pasportu nebylo například zakreslování střech. Pasport se zaměřil zejména na vnitřky budov, a proto i 3D modely budov by měly mít nejpřesněji zachycené interiéry. Tato diplomová práce si klade za úkol ověřit, zda je vůbec možné tímto způsobem 3D modely budov generovat. Její součástí tedy není úplná realizace projektu 3D modelů budov na MU. Po zkušenostech s předchozím zpracováním dat stavebního pasportu MU a následným vkládáním do geodatabáze, se předpokládá nutnost drobných manuálních úprav dat pro potřeby tohoto projektu. Nemělo by se jednat o radikální změny v datech, přesto pokud se uváží, že se v budoucnu bude generovat cca 100 budov (v současnosti má stavební pasport pořízeno 104 budov MU), které má v majetku Masarykova univerzita, proto tento projekt nezahrnuje vytvoření všech 3D modelů budov, ale jde zejména o ověření skutečnosti, že se data stavebního pasportu dají použít také jako podklad pro 3D generování budov respektive jednotlivých stavebních prvků.
Obrázek 4.2: Interiér prvního nadzemního podlaží budovy BKA03
4.2.1 Možnost využití již zpracovaných dat a definování formátu dat Úvodní podkapitoly se zabývaly popisem současného stavu dat stavebního pasportu budov MU a jejich možného využití pro potřeby generování 3D modelů budov. Bylo v nich zmíněno, že data stavebního pasportu prošla úpravami a jejich část již je zpracována a vložena v geodatabázi. Datům stavebního pasportu se nastavil souřadný systém již při jejich pořizování, a který se zachoval i po převodu do geodatabáze. Pro Českou republiku je nejběžnější souřadný systém S-JTSK, který byl použit také při pořizování dat stavebního pasportu MU.
STRANA 25
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Nástroj Data Interoperability umí převést výkres DWG do geodatabáze, je nutné zdůraznit, že jeden výkres DWG v sobě nese zakreslená data o jednom podlaží budovy. Pro potřeby zpracování dat pro 3D modely bylo nutné některé úkony provádět na celých budovách, tedy pracovat zároveň s několika podlažími. Z tohoto důvodu jsem se rozhodla zpracovávat data v osobní geodatabázi a nevyužívat uložení dat v relační databázi prostřednictvím ArcSDE aplikačního serveru. Zpracování po jednotlivých osobních geodatabází se lépe ohlídá z hlediska chybných dat a předpokládané manuální úpravy bude možné lépe směrovat. Také případné zpracování jen několika vybraných budov bude rychlejší a po předchozích zkušenostech s prací s ArcGIS je nutné brát v úvahu jeho občasnou nespolehlivost při zpracování velkých objemů dat, při výpadku bude pohodlnější navázat na předchozí zpracování. Dávky generování by bylo možné spouštět jak nad osobní geodatabází, tak nad víceuživatelskou geodatabází. Příprava dat se provede v osobní geodatabázi, zpracované feature class se na závěr převedou do víceuživatelské geodatabáze, ze které se pak mohou dále publikovat. Data mezi oběma typy geodatabází jsou jednoduše převoditelná. V dalším textu se pro zjednodušení bude výraz „osobní geodatabáze“ nahrazovat výrazem „geodatabáze“, ačkoli toto užití není přesné a osobní geodatabáze je jen jednou z forem geodatabáze. Všechny geodatabáze podlaží náležící jedné budově jsou vloženy do jednoho adresáře. Adresářová struktura s geodatabázemi je následující: v hlavním adresáři, nad kterým spouští jednotlivé dávky zpracování, jsou vloženy adresáře reprezentující jednotlivé budovy, v nich pak jednotlivé geodatabáze. Jako identifikátor budov a podlaží slouží jejich polohový kód. Jedná se o pětimístné jednoznačné označení budov Masarykovy univerzity, které je tvořeno třemi písmeny a dvěma číslicemi, a o třímístné označení podlaží v budově, které tvoří jedno písmeno a dvě číslice. Písmena v označení podlaží mohou nabývat těchto hodnot: „P“ označuje, že se jedná o podzemní podlaží, „N“ označuje nadzemní podlaží, „M“ nadzemní mezonet a „Z“ podzemní mezonet. Dvoučíselný kód v označení podlaží definuje pořadí podlaží v budově. Tedy například polohový kód „BNA01N01“ nám říká, že se jedná o první nadzemní podlaží budovy Fakulty informatiky. Jak již ukázal příklad, polohový kód budov se může spojovat s kódem podlaží a dále také s číslem místnosti. Číslování místností ale není sjednocené jako polohový kód budov a podlaží, existuje dvojí číslování místností MU. Pro potřeby této diplomové práce by mělo stačit označení místností ze stavebního pasportu, pro případné sjednocení s jiným systémem je možné porovnat čísla místností oproti druhému číslování prostřednictvím databáze budov a místností, která tato data udržuje. Polohový kód se kvůli jednoznačné identifikaci objevuje také v názvech adresářů a geodatabází, nad kterými se budou spouštět dávky generování 3D modelů. Jak již bylo zmíněno v úvodu této kapitoly, v současnosti jsou již zpracovány některé stavební prvky budov a to v takové formě, že je lze využít pro generování 3D modelů. Jedná se o půdorysy místností v podobě polygonů, které již mají nastaven polohový kód, a jsou uloženy ve feature class „mistnost_pudorys“. Půdorysy svislých stavebních konstrukcí byly sloučeny v jediný polygon ve feature class „steny_pol_diss“. Půdorysy dveří a oken mají opět formu polygonu ve feature class „dvere_pruchod_mult“ respektive „okna_pol_mult“.
4.2.2 Návrh realizace generování 3D modelů budov Hlavní myšlenkou realizace této diplomové práce byla další možná využití stavebního pasportu budov MU. Na základě předchozích zkušeností s pasportem vznikla idea na vytvoření 3D modelů pomocí nástroje ArcScene. První úvahy směřovaly k obohacení dat ve 2D o třetí souřadnici, tedy způsob jak z rovinných půdorysů vytvořit prostorová tělesa. Strukturou dat dělenou do jednotlivých
STRANA 26
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
podlaží se určil i postup tvoření budov – vytvoření těles podlaží a jejich poskládání „na sebe“. Prvním krokem tedy je nastavení třetí souřadnice jednotlivým stavebním prvkům. Díky funkci „Extrude“ v ArcScene stačí k vizualizaci těles nastavení jedné souřadnice v třetím rozměru – výšky, do které se půdorysy stavebních prvků zvednou, takže vlastně z půdorysů vzniknou tělesa stavebních prvků. Tímto způsobem lze nasimulovat vytvoření 3D těles pro většinu prvků, výjimky tvoří střechy, které by se generovaly pouze jako povrchy ve 3D.
Obrázek 4.3: Funkce Extrude aplikovaná na vertikální konstrukce
STRANA 27
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Nejprve bylo nutné určit, kterým stavebním prvkům vůbec lze výšky nastavit. Jako zdroj dat slouží většinou samozřejmě data stavebního pasportu. Půdorysy místností již prošly zpracováním a zbývá nastavit jim výšky příslušných místností, které jsou již obsaženy v databázi systému Inet, stačí je získat podle polohového kódu místnosti. Půdorysy oken a dveří byly také zpracovány v rámci přípravy dat pro vkládání do geodatabáze. Současně tato data prošla stejně jako půdorysy místností kontrolami, tudíž je možné se spolehnout na jejich korektnost a měla by plně vyhovovat potřebám automatického generování 3D modelů těchto prvků. Součástí grafiky stavebního pasportu je také okótování oken a dveří, které nese informace o jejich šířce a výšce a u oken také o výšce parapetu od podlahy. Atributy rozměrů je nutné nastavit půdorysům oken a dveří, aby šlo určit výšku těles těchto stavebních prvků a jejich polohu uvnitř svislých konstrukcí. Výšku schodiště opět zjistíme z jeho okótování, které udává rozměry jednoho stupně, jeho šířku a výšku a počet stupňů v daném rameni schodiště, popřípadě jsou doplněny o rozměry posledního stupně. Předpokládají se tedy stejné rozměry všech stupňů daného ramene schodiště, lišit se může až ten poslední. Výška schodiště se vypočte jako výška stupně vynásobená počtem stupňů ve schodišti.
Obrázek 4.4: Stavební prvky schodiště, dveří a oken s kótovaním
Poslední výška nutná k vytvoření základní kostry budovy je výška podlaží, pomocí ní se dopočítají výšky stěn a tloušťky stropů v podlaží. Tato výška však v pasportních datech chybí. Přesto existuje možnost, jak zhruba tyto výšky získat. Pokud se uváží, že se v pasportu k prostorám, ve kterých jsou umístěny schodiště, přistupuje jako k místnostem a tyto prostory mají naměřeny výšky, pak se tyto výšky mohou v rámci možností pokládat za výšky jednotlivých podlaží. Samozřejmě, že tato úvaha, podle níž byly stanoveny výšky podlaží, nemůže nahradit přesné pořízení výšek budov a jejich podlaží a nezachycuje také rozdíly ve výškách podlah v jednotlivých místnostech daného pod-
STRANA 28
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
laží, ale pro potřeby vytvoření modelů budov byla shledána dostatečnou. Také sběr těchto dat se zdál poměrně jednoduchý a rychlý, takže se výšky podlaží pořídily touto cestou. Jako další zdroj rozměrů podlaží se nabízely výškové kóty, které by měly zachycovat změny výšky podlahy v podlaží. Původní myšlenku protnutí vrstvy půdorysů místností s vrstvou výškových kót a nastavení nové výšky podlahy v dané místnosti se nakonec nepodařilo realizovat. Výškové kóty neobsahují bližší informace o tom, co vlastně kótují, a v datech stavebního pasportu se takto kótovaly například i prostory schodišť. Některé místnosti navíc obsahovaly více výškových kót. Díky těmto skutečnostem přesáhla náročnost úprav podlah pomocí výškových kót možnosti automatického zpracování dat ze stavebního pasportu. Podlahy by tímto způsobem šlo zpracovat jen manuálně a muselo by dojít i ke změnám v datech, například v geometrii půdorysů místností. Proto se od využití výškových kót upustilo. Což samozřejmě při generování modelů způsobí určité nepřesnosti, ale nemělo by to mít velký vliv na tvar budovy a vyhledávaní v ní.
4.3 Zpracování rozměrů stavebních prvků V této podkapitole bude popsán konkrétní postup, jak se nastavily rozměry stavebních prvků, a jak bylo zpracování ovlivněno kvalitou dat. Data se zpracovávala automatizovaně spouštěním dávek v ArcObjects. Jak bylo řečeno, data se zpracovávají po geodatabázích, kdy jedna geodatabáze obsahuje data k celému podlaží. Geodatabáze byly přejaty po předchozím zpracování převedených DWG souborů, některá data se mohou doplnit z jiné databáze, dávky proto obsahují i případné provedení doplnění těchto dat.
Obrázek 4.5: Půdorysné zobrazení místností v podlaží z geodatabáze
STRANA 29
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Zpracování je koncipováno tak, že se prohledávají postupně všechny geodatabáze v zadaném adresáři a pro každou se spustí příslušné funkce v dávce. Algoritmus zpracování se připravil co nejobecněji tak, aby bylo jím možné pokrýt co největší množství dat, přesto se počítá s odchylkami způsobenými variabilitou dat nebo popřípadě chybami v datech. Pokud to je možné, hlídá se kvalita dat a výsledky zpracování se vypisují do textových souborů označených polohovými kódy. Nezpracovaná data se tak mohou případně dohledat podle jejich identifikátoru a ručně opravit. V první fázi zpracování je potřeba stavebním prvkům nastavit jejich třetí souřadnici. Nejprve se provedou drobné úpravy geodatabáze. Feature class půdorysu podlaží se musí převést do feature datasetu. Využije se již existující feature dataset „polohkody_fd“, do něj převedeme kromě půdorysů podlaží také půdorysy místností. Ty získáme již zpracované a zkontrolované z databáze připojené prostřednictvím ArcSDE, jako atributy mají místnosti přidány jejich účely, výšky a polohové kódy. Půdorysům místností se také nastaví polohový kód budovy a podlaží v ní, který je obsažen ve jméně každé geodatabáze.
4.3.1 Rozměry dveří, oken a otvorů ve vertikálních konstrukcí Další součást zpracování grafiky stavebního pasportu tvoří úprava půdorysů oken a dveří. Tyto stavební prvky patří k jedněm z nejdůležitějších. Modelům 3D budov dodají reálný vzhled a dotvoří interiéry tak, aby se v nich bylo možné orientovat stejně jako v reálné budově. Okna a dveře prošly opět jako půdorysy místností úpravami a kontrolou. Jejich rozměry lze najít v jejich kótách. Kótu dveří nebo oken tvoří linie, která prochází přibližně středem polygonu tvořícího půdorys příslušného stavebního prvku a je na polygon kolmá. Ohodnocení této kóty je dvojí, šířka stavebního prvku se nalézá nad linií kóty, jeho výška leží pod linií – v případě oken doplněná o výšku parapetu od podlahy. Ohodnocení kót se z DWG výkresů převedlo v podobě polygonů. Linii kóty tvoří jednoduchá čára bez lomových bodů. K tomu, aby se rozměry z ohodnocení kóty mohly vložit jako atributy k půdorysům oken respektive dveří, se musí nejprve určit, která ohodnocení se nacházejí poblíž dané kótovací linie, a které z nich představuje šířku, a které výšku. Pro zjištění blízkosti ohodnocení ke kótovací linii se polygony s ohodnocením zvětší tak, aby je bylo možné protnout s linií. Každé linii by se měly přiřadit právě dva polygony, pokud tomu tak není, je tato skutečnost vypsána do kontrolního textového souboru, aby bylo možné chybu rychle vyhledat a manuálně opravit.
Obrázek 4.6: Půdorys okna s kótou
STRANA 30
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Když jsou pro každou kótu přiřazena její ohodnocení, musí se určit, které z ohodnocení se nachází nad kótovací linií, a které pod ní. Ohodnocení kót se nachází na opačném konci kótovací linie, než kde linie protíná půdorys stavebního prvku. Pokud se spojí čarami kótovací linie s polygony ohodnocení kóty, vzniknou dvě jednoduché linie bez lomových bodů, které s kótovací linií svírají určité úhly. Zda se ohodnocení této kóty nachází nad linií nebo pod ní, prozradí právě svíraný úhel, respektive jeho sinus. Kótovací linii se podle identifikovaných ohodnocení vytvoří nové atributy: výška, šířka a v případě okna také výška parapetu. Tyto atributy jsou však potřeba vložit do půdorysu stavebního prvku, proto se vrstva kótovacích linií s atributy rozměrů ještě protne s vrstvou půdorysů oken respektive dveří. Z průniku se podle identifikátorů vloží atributy rozměrů do feature class s půdorysy stavebních prvků. Teoreticky by všechny stavební prvky měly být okótované, bohužel se v průběhu zpracování budov MU ukázalo, že se na tuto skutečnost nelze spolehnout. Ve výkresech stavebního pasportu se vyskytují výjimky a rozměry v některých případech není možné stavebním prvkům přiřadit pomocí výše popsaného postupu zpracování dávkou. Některé kótovací linie totiž neprotínají půdorys příslušného stavebního prvku, kterému proto nelze vložit atributy s rozměry. Jako řešení se nabízí prodloužení kótovací linie o určitou konstantní délku na obou koncích tak, aby byl půdorys zaručeně protnut. Tím se ale zvýší pravděpodobnost, že jedna kótovací linie protne více půdorysů stavebních prvků. Řešení tohoto problému nejspíš neexistuje, záleží na každém stavebním výkresu zvlášť, jak bude zpracování přesné. K hromadnému generování modelů budov MU se použijí nezávisle obě varianty a podle chybových výstupů se vybere přesnější varianta zpracování. Nalezené chyby by se také měly případně opravovat v původních DWG souborech. Další výjimku, která způsobí nepřesnosti v navrženém dávkovém zpracování, tvoří chybějící kótování stavebních prvků ve stavebních výkresech. V případě dveří se zatím nepodařilo důvod chybějících kót identifikovat. U chybějících kót oken se pravděpodobně jedná o zařazení prvku luxfery do vrstvy půdorysů oken. Luxfery jsou vyrobeny z průhledného nebo průsvitného materiálu a zasazují se do příček nebo stropů, tedy tvoří část vertikální respektive horizontální konstrukce. Zda k luxferám přistupovat jako k oknům nebo jako k specifické části stavební konstrukce je sporné a záleží na použité metodice pořizování stavebních dat. Jeden prvek luxfery může být umístěn v jednom podlaží, ale často také zasahuje do více podlaží, což se ve výkresech budov MU řeší zakreslením tohoto prvku v každém podlaží, ve kterém se nalézá. Prvek luxfery není okótován. Ve větším množství se prvek luxfery nachází například v budově „BNA01“ (Fakulta informatiky MU). Řešení problému s chybějícími kótami a luxfery bez manuálních zásahů do atributů stavebních prvků při zachování přesnosti generovaných modelů budov opět není možný. Jako nejefektivnější a zároveň řešení s nejmenší ztrátou informace (se zachováním reálnosti) se jeví automatické doplnění chybějících výškových rozměrů, které se realizuje použitím výšky daného podlaží jako hodnoty atributu výšky okna respektive dveří. Tímto způsobem se podchytí většina luxfery, které často zasahují přes celou výšku podlaží. V případě opomenutého zakreslení kót se jedná o nepřesné řešení, ale nejméně pracné a ani ztráta informace není tak vážná, pokud se uváží, že chybějících kót je v rámci všech budov zanedbatelné množství. Další chybou, která byla zaznamenána až po vygenerování 3D modelů budov, je nekvalitní pořízení dat, konkrétně rozměrů stavebních prvků umístěných v kótách. To se projevilo u budov panelákového typu, kde rozměry a rozestavení stavebních prvků v budově vylučuje výjimky, vše je ve „standardu“. Například všechna běžná okna v rámci jednoho podlaží panelákové budovy budou zřejmě umístěna ve stejné výšce od podlahy a budou mít stejné rozměry. Veškeré chyby se u tohoto typu budov ukáží při prvním pohledu na 3D model, ačkoli je
STRANA 31
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
při kontrolách kvality stavebních výkresů nikdo nezaznamenal. Nikoho totiž něco tak zřejmého ani kontrolovat nenapadlo. S takovými chybami se ale již nedá dělat nic kromě opětovného pořízení těchto dat. Jako odstrašující příklad slouží 3D model budovy „BKA03“ (kolejí Lomená).
Obrázek 4.7: Luxfery v budově Fakulty infomatiky (BNA01)
4.3.2 Nastavení absolutních výšek podlaží Pro přehlednost se rozdělí výšky, se kterými se zde pracuje, na výšky relativní a absolutní. Relativní výšky byly zaměřeny v rámci stavebního pasportu a jsou vztaženy k podlaze daného podlaží. Absolutními se nazývají výšky v rámci celé budovy vztažené k podlaze prvního nadzemního podlaží. V této podkapitole se bude popisovat zpracování absolutních výšek. Jako bod nulové výšky byla určena podlaha v prvním nadzemním podlaží, ačkoli je jasné, že ne vždy opravdu tato rovina odpovídá rovině zemského povrchu, ale pro automatické zpracování se toto určení výšky zdá nejvhodnější. Při případném zasazování 3D modelů budov do mapových vrstev se bude muset výškový rozdíl mezi současným bodem nula a zemským povrchem přepočítat individuálně. Do budoucna by
STRANA 32
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
bylo určitě zajímavé zasadit modely budov do výškového modelu terénu Brna. Relativní výšky podlaží jsou již připravené v externí tabulce společně s polohovými kódy sloužícími k jednoznačné identifikaci. U zpracování výšek budovy se s výhodou využije umístění geodatabází do adresářů podle příslušnosti k budovám. Vychází se z předpokladu, že každá budova má určitě první nadzemní podlaží, jaká další podlaží se v budově nachází, se ukáže až po vyhledání geodatabází v adresáři dané budovy. V každém adresáři představujícím budovu se najde geodatabáze s kódem prvního nadzemního podlaží, z tabulky s výškami všech podlaží ve všech budovách se získá relativní výška tohoto podlaží, která je pro první nadzemní zároveň i absolutní. Tuto výšku vložíme jako atribut do feature class s půdorysem podlaží, zároveň se také vytvoří a nastaví atributy absolutních výšek „vyska_od“ a „vyska_do“. Po nastavení parametrů prvního podlaží a proměnných pro sčítání výšek dalších podlaží se postupně v budově vyhledávají nadzemní podlaží od druhého až do nejvyššího, vkládají se jim atributy tak, jak bylo popsáno u prvního nadzemního podlaží, a jejich výšky se nasčítávají do proměnných. Totéž se provede v druhém cyklu s vyhledáváním podzemních podlaží a průběžným odčítáním jejich výšek od podlahy prvního nadzemního podlaží.
4.3.3 Konstrukce Ve výkresech stavebního pasportu MU se nerozlišovaly vertikální konstrukce na nosné a nenosné, proto bylo možné všechny vertikální konstrukce po zpracování a kontrole sjednotit do jediné položky v jedné feature class. Ve stavebních výkresech se zakreslují pouze vertikální konstrukce, které nemají v sobě vloženy jiné stavební prvky (okna, dveře). Tyto konstrukce tedy neobsahují otvory a sahají přes celou výšku podlaží, proto je možné vertikální konstrukce celého podlaží sjednotit do jedné položky.4 Pro potřeby vygenerování modelu se musí všem stavebním prvkům nastavit jejich absolutní výšky, od které do které se budou půdorysy zvedat a vytvářet tak těleso vertikální konstrukce. Vertikální konstrukce se zvednou až do výšky daného podlaží a částečně se tak využijí jako horizontální konstrukce. Vytažením vertikálních konstrukcí až na úroveň podlahy vyššího podlaží se vlastně částečně tato podlaha vytvoří, zbytek podlahy se doplní pomocí stropů místností, jejichž geometrie je shodná s půdorysy místností.
4.3.3.1
Vertikální konstrukce s otvory pro okna a dveře
Vertikální konstrukce zakreslené ve stavebních výkresech však nepředstavují veškeré vertikální konstrukce v podlaží. Ve stavebních výkresech nebyly nezakresleny vertikální konstrukce, které se nachází pod a nad okny a nad dveřmi, v těchto místech jsou zakresleny pouze půdorysy dveří a oken. Vertikální konstrukce je proto nutné doplnit. Jako půdorysy těchto stavebních prvků poslouží půdorysy oken a dveří, které zkopírujeme do zmíněné feature class s vertikálními konstrukcemi. Ve výsledném 3D modelu budou mít všechny tyto stavební prvky stejné půdorysy. Zvednutím půdorysů do 3D se z těchto prvků vlastně vytvoří tělesa, která budou tvořit celou konstrukci s oknem respektive dveřmi.
4 Pokud jsou ve vertikálních konstrukcích umístěny stavební prvky, dostává jejich zakreslení přednost a konstrukce zakresleny v daném místě nejsou
STRANA 33
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Obrázek 4.8: Okno se svislými konstrukcemi nad a pod
Konstrukcím pod okny se při vkládání ke stěnám přidají atributy absolutních výšek: výška podlahy v daném podlaží a výška parapetu daného okna. Jako vzor konstrukce nad okny poslouží znovu půdorys okna, zkopíruje se tedy ke stěnám ještě jednou, jeho atributy tvoří výška parapetu sečtená s výškou okna a výška daného podlaží. Současně se zpracováním těchto prvků se nastavují atributy absolutních výšek i půdorysům oken ve feature class „okna_pol_mult“. Podobným způsobem jako v případě oken se do feature class se svislými konstrukcemi „fd_steny“ přidají také konstrukce nad dveřmi, kterým se společně s půdorysy dveří ve feature class „dvere_pruchod_mult“ nastaví jejich absolutní výšky.
4.3.3.2 Horizontální konstrukce Horizontální konstrukce jsou v budovách zastoupeny podlahami, stropy, balkony, převislými konstrukcemi atd. Podlahy a stropy bývají většinou v reálných stavbách tvořeny jednou horizontální konstrukcí. Každá budova má v rámci jednoho podlaží určitou tloušťku podlahy (stropu nižšího podlaží) stejnou po celé ploše podlaží. Výšky místností v podlaží se někdy různí, což bývá obvyklé zejména u starších budov. K realizaci generování horizontálních konstrukcí mezi podlažími se nabízely dvě varianty. V první se k vytvoření horizontálních konstrukcí použijí zčásti vertikální konstrukce, protažené až k podlaze dalšího podlaží, druhou část konstrukcí tvoří stropy místností vytvořené z půdorysů místností podobně jako konstrukce nad okny a dveřmi. Druhá varianta předpokládá existenci konstantní tloušťky horizontální konstrukce mezi podlažími. Půdorys daného podlaží se použije jako horizontální konstrukce a vytvoří se jeho těleso o nějaké univerzální výšce, které se vloží mezi dvě podlaží.
STRANA 34
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Tuto výšku (tloušťku horizontální konstrukce podlaží) by však bylo těžké vzhledem k velké variabilitě budov určit. Pokud se však uváží, že do půdorysu podlaží jsou zahrnuty například také půdorysy balkonů a převislých konstrukcí, musí se těleso podlahy vyrobit. Z tohoto důvodu se nakonec ke generování 3D modelů se použije kombinace obou navržených variant na vytvoření horizontální konstrukce podlaží. Zachytí se tak případné rozdíly mezi půdorysem vyššího podlaží a vertikálními konstrukcemi nižšího podlaží. Zda je to opravdu nejlepší řešení však ukáže až vygenerování reprezentativního počtu 3D modelů budov MU.
Obrázek 4.9: Rozdíl v mezi půdorysy stavebních prvků tvořící horizontální konstrukci; světle modrá značí stropy místností, tmavě modrá vertikální konstrukce, oranžová půdorys podlaží
Jako konstantní tloušťka horizontální konstrukce podlahy se určila výška běžného schodu nebo horizontální konstrukce balkonu, tedy 0,3 metru. Horizontální konstrukce budou tvořeny třemi částmi: půdorysem vyššího podlaží, vertikálními konstrukcemi nižšího podlaží a půdorysy místností nižšího podlaží (plnící funkci stropů). Všechny tyto stavební prvky budou obsahovat dva atributy absolutních výšek, mezi kterými se bude těleso daného stavebního prvku nacházet.
STRANA 35
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Jak již bylo naznačeno výše, část horizontálních konstrukcí (stropy místností) se vygeneruje podobně jako vertikální konstrukce nad dveřmi nebo okny. Pro přehlednost se vytvoří nová feature class „stropy_fd“ do stejného datasetu, v jakém je již umístěna feature class se stěnami. Nová feature class se naplní kopiemi půdorysů podlaží, kterým se opět nastaví atributy absolutních výšek. Počáteční výška bude stanovena jako absolutní počáteční výška daného podlaží sečtená s výškou příslušných místností, koncová výška bude shodná s absolutní koncovou výškou podlaží.
Obrázek 4.10: Vytvořená horizontální konstrukce, pohled zespodu; béžová je konstrukce vytvořená z půdorysu podlaží, cihlové stropy místností; obě tělesa se částečně překrývají
4.3.3.3 Otvory v horizontálních konstrukcích V předchozích podkapitolách se popisovalo generování modelů jednotlivých podlaží takřka nezávisle na celé budově. I horizontální konstrukce, které tvoří spojení mezi podlažími, se vytvářely bez ohledu na to, co se může nad nimi nacházet. Tato podkapitola se bude zabývat propojováním podlaží, která leží bezprostředně nad sebou. Zpracovávat se budou podlaží vždy po dvojicích, pro přehlednost se zavede pojmosloví „nižší podlaží“ a „aktuální podlaží“, aby bylo jasné, o které ze dvou nad sebou ležících podlaží se jedná. „Aktuálním podlažím“ bude myšleno to vyšší, protože se nejprve musí ověřit, zda vůbec nějaké podlaží „nad“ existuje a zpracovávat se tedy bude nalezené (aktuální) podlaží a to pod ním (nižší), o kterém se už bude vědět, že existuje. Toto pojmosloví bylo použito i v kódu programu a jeho komentářích. Jak již bylo řečeno, jednotlivá podlaží jsou od sebe oddělena horizontálními konstrukcemi, v některých místech se v nich nachází otvory, aby bylo možné podlaží ležící nad sebou propojit například schodištěm, šachtou nebo umístěním vícepodlažní místnosti. Otvor v horizontální konstrukci se většinou ve stavebních výkresech zakresluje jako samostatná místnost, ve většině případů se totiž opravdu jedná o celé místnosti bez podlahy, výjimky jsou vzácné. Informace o tom, zda se jedná o klasickou místnost nebo o místnost bez podlahy, se v případě stavebního pasportu MU eviduje v účelu dané místnosti. Místnosti bez podlahy mají v účelu uveden jeden ze tří příznaků obsahující písmeno „X“. Účel „SX“ označuje místnosti do nichž ústí schodiště, účel „NX“ značí nevyužité prostory (například chodba zasahující do více podlaží), „PX“ znamená, že tato místnost je
STRANA 36
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
součástí vícepodlažní místnosti a nemá tudíž v tomto podlaží podlahu. O umístění výtahové šachty informuje účel místnosti „Výtah“, zde ovšem není jasné, zda se v dané místnosti podlaha nachází nebo nikoli, protože jsou takto označeny všechny místnosti s výtahovou šachtou, nejen ty v nichž kvůli šachtě není podlaha. Pro všechny výše popsané účely se musí do horizontálních konstrukcí vytvořit otvory, konkrétně se jedná o tyto feature classes tvořící horizontální konstrukci mezi dvěma podlažími: půdorys aktuálního podlaží a stropy nižšího podlaží („podlazi_pudorys“ a „steny_fd“). Vytvoření otvorů v půdorysu aktuálního podlaží, ze kterého bude při generování 3D modelů vytvořeno těleso podlahy, je jednoduchou procedurou, protože půdorys podlaží tvoří jediná položka, do níž stačí vyřezat půdorysy místností bez podlahy aktuálního podlaží. Ono „vyřezání“ znamená vlastně provést rozdíl geometrií a od půdorysu podlaží postupně odečíst půdorysy místností, není potřeba jakkoli upravovat atributovou část položky, pracuje se pouze s geometrií. Takto jednoduché to ovšem nebude u prořezávání půdorysů místností bez podlahy aktuálního podlaží do půdorysů stropů (kopie půdorysů místností) nižšího podlaží. Nejprve se provede průnik obou feature classes, teoreticky by se půdorysy místností bez podlah měly protnout 1:1.5 Pokud tomu tak není, průniky s jedním půdorysem místnosti by měly mít, až na ten největší, zanedbatelnou velikost. Tyto malé průniky mohly vzniknout nepřesnostmi při zakreslování výkresů. Pokud se velikost plochy geometrie minimálně tří průniků blíží velikosti klasické místnosti, značí to chybu ve výkresu nebo v atributech. Tyto případy by však měly být ojedinělé, a proto se nebudou v programu řešit, postačí následná individuální oprava. Po provedení průniku se postupně do horizontální konstrukce vyřežou otvory nalezených půdorysů místností s účelem, který značí, že se jedná o více místností bez podlahy umístěných nad sebou. Tyto parametry splňují místnosti s účelem „SX“, u nichž je jisté, že pod sebou mají místnost s konstrukcí schodiště. K vytvoření těchto šachtových otvorů se využije výše zmíněný průnik půdorysů místností, protože se bude odstraňovat celý půdorys tvořící strop místnosti, tedy celá jedna položka ve feature class „stropy_fd“. V případě ostatních místností bez podlahy není nic známo o tom, jak vypadá část této místnosti nacházející se v nižším podlaží. Opět by se mělo jednat o průnik 1:1, ale zde se půdorysy místností bez podlahy nad sebou mohou lišit. Pro místnosti s označením „NX“ z dokumentace pořizování stavebního pasportu MU nevyplývá přesná definice a o jejich předpokládaném tvaru se tedy předem nic neví. Jistý je pouze fakt, že se jedná o prostory bez podlahy. Z tohoto důvodu se stropy těchto místností odstraní opět provedením rozdílu geometrií stejně jako v případě půdorysu podlaží. O vícepodlažních místnostech, označených „PX“, lze bez ztráty informace předpokládat, že půdorys místnosti v aktuálním podlaží bude nanejvýše stejně velký jako půdorys téže místnosti o podlaží níže. Proto se nejprve zjistí velikost obou zpracovávaných půdorysů této místnosti. Pokud bude jejich velikost stejná, může se odstranit z feature class se stropy celá položka tvořící strop této místnosti. Pokud se ovšem budou půdorysy výrazně lišit ve velikosti, k prořezání otvoru se použije rozdíl geometrií, kdy se od půdorysu tvořícím strop odečte půdorys místnosti, která se nachází ve vyšším (aktuálním) podlaží, část stropu včetně atributů však zůstane zachována.
5 Někdy se překrývá půdorys místnosti s účelem „SX“ s půdorysem místnosti umístěné okolo ústí schodiště, proto se musí zahrnout i možnost protnutí 1:2.
STRANA 37
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Obrázek 4.11: Půdorys podlaží a 3D model podlaží s otvorem pro schodiště
Největší výjimkou jsou místnosti označené účelem „výtah“. Jak již bylo řečeno, není o nich známo, zda mají nebo nemají podlahu, účel pouze informuje o tom, že se v nich nachází výtahová šachta. Proto je potřeba zjistit, kterými podlažími šachta prochází, první podlaží se šachtou bude obsahovat podlahu, ostatní podlaží nikoli. Nejvyšší podlaží se šachtou, ve kterém bude šachta končit, nebude obsahovat podlahu, ale již bude mít strop. Také se musí uvážit případ, kdy budova obsahuje několik výtahových šachet. Vytvoření otvorů pro výtahovou šachtu se bude zpracovávat opět po dvojicích podlaží místěných nad sebou. Provede se průnik feature classes s půdorysy místností v obou podlažích a pokud se protnou půdorysy s účelem „výtah“, pak je zřejmé, že se zde nachází šachta, a může se vyřezat otvor do horizontální konstrukce mezi těmito podlažími. Odstraňovat se bude celá položka tvořící strop místnosti, nebude se provádět pouze rozdíl geometrií. Kromě označení účelu v půdorysu místnosti se ve stavebních výkresech zakresluje půdorys výtahové šachty ještě ve vlastní hladině výkresu. Jedná se o liniové zakreslení půdorysu šachty doplněné zakreslením úhlopříček, tento půdorys se shoduje s půdorysem místnosti výtahové šachty a je tedy jedno, který ze dvou půdorysů se použije na prořezávání otvorů.
STRANA 38
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Pokud předchozí zpracování stavebních prvků ukázala, jaká je ve skutečnosti kvalita dat stavebního pasportu, tak v případě místností bez podlah tomu není jinak. Při prořezávání otvorů do horizontálních konstrukcí záleží na každém milimetru. Jakmile by podlaží ležící nad sebou byla umístěná jen s nepatrnou nepřesností, okamžitě se to ukáže na výsledném 3D modelu budovy. Bohužel takovýchto příkladů se v datech vyskytlo velké množství, jednotlivá podlaží neleží přesně nad sebou, což se velmi dobře ukáže právě na výtahových šachtách nebo vícepodlažních konstrukcí schodišť. Tyto stavební prvky musí ležet v jednotlivých podlažích přesně nad sebou, jinak se do nich neumístí konstrukce schodiště ani jimi neprojede výtahová kabina. Proto se při zpracování kontroluje počet a velikost objektů, které prořezávaný stavební prvek proniká a také dostává přednost, pokud je to možné, odstraňování celých položek z feature class před prořezáváním geometrií pomocí jejich rozdílu.
4.4 Schodiště a rampy Schodiště a rampy jsou díly stavby pro svislou komunikaci v objektu; slouží k spojení jednotlivých podlaží v několikapodlažních budovách [2]. Takto byly definovány stavební prvky rampa a schodiště v odborné literatuře. Doposud se v této diplomové práci zpracovávaly pouze jednoduché stavební prvky s jasně specifikovanými půdorysy, ze kterých se jednoduše pomocí nástrojů ArcGIS a rozšíření 3D Analyst tvořila tělesa. V případě schodišť a ramp bude potřeba, na rozdíl od předchozích těles, zpracovávat více jak jednu souřadnici třetího rozměru. Z půdorysu rampy není možné jednoduše vytvořit těleso pomocí funkce Extrude. U schodišť je to ještě komplikovanější. Aby bylo možné schodiště zachytit ve stavebním výkresu co nejreálněji, pořizuje se kromě zakreslení půdorysu schodiště také jeho svislý řez. Ze zakreslení půdorysu schodiště lze vyčíst základní informace o schodišti: počet stupňů a jejich rozměry, plochu schodiště, jeho směr atd. Jak vypadá konstrukce schodiště, zda se jedná o konstrukční řešení panelové, deskovité, schodnicovité nebo visuté, jak jsou umístěny podesty a mezipodesty (dále pouze odpočívadla), to je zachyceno ve svislém řezu schodiště. V rámci stavebního pasportu MU byla pořízena pouze půdorysná část zakreslení schodišť, proto o konstrukčních řešení schodišť neexistují žádné informace. Pro generování 3D modelů budov to znamená najít univerzální řešení konstrukce schodiště a aplikovat jej na všechny budovy MU, i přes ztrátu autenticity.
4.4.1 Návrh zpracování schodišť Pojem schodiště se bude v následujícím textu užívat jako označení celé konstrukce schodiště, tedy vlastně sjednocení jednotlivých prvků tvořících konstrukci schodiště jako jsou ramena, odpočívadla, výstupní čáry, stupně atd. Podobně jako v předchozích případech již půdorysné zakreslení schodišť prošlo zpracováním a základní 2D části schodišť jsou vloženy v geodatabázi a připraveny k publikaci. Jedná se o půdorysy ramen schodiště, půdorysy odpočívadel a výstupní čáry. Výstupní čára se vždy vztahuje k jednomu rameni schodiště, skládá se ze třech částí: kroužek leží na hraně nástupního stupně, šipka označuje hranu posledního stupně, hlavní linie oba prvky spojuje, má tedy stejnou délku jako je délka ramene schodiště. Půdorys ramene schodiště vznikne projekcí stupňů ramene do roviny podlahy daného podlaží. Orientaci stupňů v rameni určuje výstupní čára. Pokud schodiště tvoří více ramen, bývají mezi sebou ramena spojena odpočívadly. Odpočívadlo je horizontální konstrukce, která spojuje jednotlivá ramena schodiště nebo rameno schodiště s podlahou daného podlaží. [2]
STRANA 39
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Rozlišují se dva základní druhy schodišť. Vyrovnávací schodiště slouží k přechodu mezi podlahami různých výšek v rámci jednoho podlaží. Mezipodlažní schodiště se většinou nachází celou plochou ve speciální místnosti, která obsahuje pouze schodiště, pomocí něj se přechází mezi jednotlivými podlažími. Často mezipodlažní schodiště stoupá i přes několik podlaží.
Obrázek 4.12: Zakreslení schodiště v DWG výkresu stavebního pasportu
Upravené stavební prvky tvořící schodiště byly poskládány pomocí atributů do konstrukcí schodišť nacházející se v jednom podlaží. Ramenům schodiště se přidaly dva atributy, které ramenům přiřazují navazující odpočívadla. Atribut „dolni_odpocivadlo“ přiřadí rameni jeho odpočívadlo nacházející se pod nástupním stupněm daného ramene, identifikátor odpočívadla navazujícího na koncový stupeň ramene je uveden v atributu „horni_odpocivadlo“. Dále byla ramena schodišť ještě ohodnocena atributy s informacemi o stupních schodiště. Z kót ramene schodiště se do atributů vložil počet stupňů ramene, výška a šířka stupně a pokud se liší od ostatních, tak také výška a šířka posledního stupně. Zatím se odpočívadla označovala jednoznačným číselným identifikátorem pouze v rámci jednoho podlaží. Pro potřeby generování 3D modelů budov bude vhodné identifikovat schodiště v rámci celé budovy potažmo univerzity, další důležitou úpravou tedy bude sestavení konstrukcí schodišť, které prochází několika podlažími. Tyto úpravy úzce souvisí s nastavením výšek jednotlivých stavebních prvků tvořících konstrukci schodiště. K ohodnocení prvků výškami se musí nejprve poskládat celé konstrukce schodišť a pak postupně podle směru schodiště výšky dopočítat, výchozí
STRANA 40
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
hodnotou bude absolutní výška podlahy aktuálního podlaží. Po sestavení schodišť podle podlaží se pomocí průniku sestaví také schodiště v rámci celé budovy.
4.4.1.1
Polohový kód schodiště
Sjednocení vícepodlažních konstrukcí schodišť by se do budoucna mělo využít pro orientaci a vyhledávání cest v budově. Pokud bude známa informace o tom, mezi kterými podlažími schodiště vede, lépe se pak určí nejvhodnější cesta mezi dvěma body uvnitř budovy. Z tohoto důvodu je vhodné konstrukce schodišť v budovách jednoznačně identifikovat podobně jako je tomu u podlaží a místností. Jednoznačným identifikátorem (dále jen polohový kód schodiště) se označují všechna schodiště nacházející se v budově, mezipodlažní i vyrovnávací. Pro vytvoření polohového kódu schodiště se použije samozřejmě polohový kód budovy. Podobně jako u jiných objektů v budově (nadzemní podlaží, mezonet, střecha atd.) se zvolí písmeno pro jeho jednoznačnou identifikaci, v případě schodišť bylo zvoleno písmeno „E“. Další položkou kódu schodiště je číslo jednoznačné pro všechna schodiště v budově, toto číslo může být až třímístné. Po spojení jednotlivých částí kódu se dostane následující polohový kód schodiště „BNA01E001“ pro označení některého ze schodišť v budově Fakulty informatiky. Tento polohový kód sice identifikuje dané schodiště v rámci budovy, ale již nepodává další informace, například o typu schodiště nebo jeho podlaží. Nejprve se uvažovalo o zavedení těchto parametrů schodiště do kódu, zejména v případě údaje o podlaží, nakonec ale kód v sobě identifikátor podlaží neobsahuje. Podrobnější informace by učinily kód příliš složitým, proto se přistoupilo k řešení tyto parametry raději evidovat jako atributy schodiště. Souhrnné informace o daném schodišti budou uloženy pouze v tabulce bez geometrie, protože schodiště ve formě jednoho objektu s geometrií se konstruovat nebude. Data z této tabulky se podle polohového kódu kdykoli mohou přiřadit konkrétnímu stavebnímu prvku s geometrií. Generovat se budou pouze 3D objekty jednotlivých konstrukčních prvků schodiště zvlášť, každý má v tributech uveden polohový kód svého schodiště a polohový kód podlaží, ve kterém se nachází.
4.4.1.2
Nastavení výšek schodišť
Než se začnou generovat jednotlivé 3D prvky schodiště, musí se těmto prvkům nastavit výšky, podobně jako při zpracování předchozích stavebních prvků hrají hodnoty třetí souřadnice důležitou roli. Od nich se odvíjí veškeré převádění dvourozměrných prvků do 3D. Jak již bylo řečeno, schodiště v půdorysném zobrazení je tvořeno odpočívadly a rameny, proto prvním krokem při nastavování výšek musí být vyhledání všech objektů tvořících jednu konstrukci schodiště. Po sestavení celých schodišť se již jednoduše dopočítají výšky jednotlivých prvků a také se nastaví všem prvkům jednoho schodiště jeho polohový kód pro identifikaci schodiště v budově, který následně poslouží pro sestavení úplných konstrukcí schodišť napříč budovou. Zpracování schodišť a nastavování výšek tedy proběhne nejprve po podlažích, toto zpracování je popsáno v této podkapitole. Na závěr se pak schodiště protnou po podlažích a sjednotí se jednotlivé konstrukce napříč budovou, tímto zpracováním se zabývá jedna z následujících podkapitol: 4.4.1.3 – Seskupení schodišť v rámci celé budovy. Základním krokem při rozpoznávání konstrukcí schodišť v podlaží je nalezení počátečního stavebního prvku, tímto prvkem může být jak rameno schodiště tak i odpočívadlo, proto jeho nalezení není úplně triviální. K tomuto účelu se využije zpracování schodišť provedené kolegy z ÚVT. Ra-
STRANA 41
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
menům se nastavili atributy „dolni_odpocivadlo“ a „horni_odpocivadlo“ na ID příslušných odpočívadel. Odpočívadlům se vložily hodnoty do atributů „dolni_podlazi“ a „horni_podlazi“ podle toho, mezi kterými podlažími se odpočívadlo nachází. Kombinace hodnot těchto dvou atributů existují dvojí, buď má odpočívadlo nastaveny oba atributy na polohový kód aktuálního podlaží, nebo první atribut obsahuje polohový kód aktuálního podlaží a druhý polohový kód podlaží vyššího.
Obrázek 4.13: Půdorysné zobrazení schodiště; modrá jsou odpočívadla, šedá ramena
Díky tomuto ohodnocení atributů se určení prvního prvku schodiště velmi zjednodušuje. Nejprve se vyhledají odpočívadla, která mají oba atributy s polohovými kód podlaží nastaveny na stejný polohový kód, tedy polohový kód aktuálního podlaží. Toto nastavení označuje, že dané odpočívadlo je umístěno ve stejné úrovni jako podlaha aktuálního podlaží a umožňuje spojení podlahy s prvním ramenem daného schodiště. Takové umístění odpočívadla se může vyskytnout pouze v kombinaci s navazujícím ramenem schodiště, proto se k odpočívadlu bude automaticky hledat rameno, které má ID tohoto odpočívadla uloženo v atributu „dolni_odpocivadlo“. Pokud schodiště nezačíná odpočívadlem ale ramenem, hledá se jako první prvek schodiště takové rameno, které nemá v atributu „dolni_odpocivadlo“ vloženu žádnou hodnotu. Po nalezení ramene s příslušnou hodnotou v prvním atributu se podle hodnoty druhého atributu „horni_odpocivadlo“ jednoduše nalezne odpočívadlo navazující na dané rameno schodiště. Tímto způsobem se postupně vyhledají všechny prvky tvořící jedno schodiště. Odpočívadla a ramena se při konstruování schodiště doplňují o další atributy: absolutní výšky „vyska_od“ a „vyska_do“, polohový kód podlaží a polohový kód schodiště. Řetězec polohového kódu schodiště (viz podkapitola 4.4.1.1 – Polohový kód schodiště) tvoří polohový kód budovy, znak „E“ a třímístný číselný řetězec, který jednoznačně identifikuje schodiště v budově. Při postupném vzájemně nezávislém zpracovávání schodišť v podlažích se musí zaručit, že koncové trojčíslí polohového kódu budovy bude unikátní v rámci jedné budovy. První schodiště prvního zpracovávaného podlaží budovy se začne číslovat od čísla 1 respektive řetězce „001“ na konci polohového kódu schodiště a při číslování dalších schodišť v podlaží se hodnota posledního trojčíslí polohového kódu schodiště o jednu zvedá. Po sestavení schodišť v podlaží se musí trojčíslí posledního okódovaného schodiště předat jako parametr následujícímu podlaží v dané budově, aby
STRANA 42
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
se mohlo navázat na předchozí číslování. Při změně budovy se parametr čísla schodiště v budově vynuluje. Tímto postupem by měla být zachována unikátnost polohového kódu schodiště v rámci budovy. Odpočívadla se budou konstruovat podobným způsobem jako podlaha (viz podkapitola 4.3.3.2 – Horizontální konstrukce), tloušťka této vertikální konstrukce se určí podle výšky běžného schodu na 0,3 metru a tato hodnota bude stejná pro všechna odpočívadla ve všech budovách. Koncová výška odpočívadla (atribut „vyska_do“) má stejnou hodnotu jako koncová výška předchozího prvku v konstrukci schodiště. Pokud je toto odpočívadlo prvním prvkem ve schodišti, pak bude odpovídat jeho koncová výška koncové výšce podlahy aktuálního podlaží. Počáteční výška odpočívadla vznikne odečtením stanovené konstantní tloušťky odpočívadla od jeho koncové výšky. Ramenům schodišť se bude nastavovat počáteční výška jako koncová výška předchozího prvku ve schodišti, v případě, že rameno je prvním prvkem, se opět použije koncová výška podlahy. Koncová výška ramene se vypočte vynásobením hodnot jeho atributů nesoucích informace o počtu stupňů ramene a jejich výšce (atributy „pocet_stupnu“ a „vyska_stupne“), zohlednit se musí také hodnoty atributů s rozměry posledního stupně, pokud nejsou nulová. Tímto způsobem se dopočítají pohodlně absolutní výšky prvků schodiště, nastavení atributů výšek se provádí již při vyhledávání prvků a sestavování schodišť.
4.4.1.3
Seskupení schodišť v rámci celé budovy
Dalším krokem při zpracování schodišť v budově je svázání schodišť s místnostmi, což je důležité zejména u schodišť spojujících více podlaží najednou. Pokud schodiště spojuje dvě podlaží, pak ve vyšším podlaží, do kterého ústí, nahrazuje alespoň částečně podlahu. Většinou však je půdorys místnosti shodný se schodištěm, protože byla pro schodiště vytvořena zvláštní místnost, která nemusí být ohraničena stěnami, ale může se nacházet uvnitř jiné místnosti (ta již zachycuje půdorys reálné místnosti). Otvory v podlaze, kterými prochází schodiště do jiného podlaží se již vytvořily v oddílu (viz podkapitola 4.3.3.3 – Otvory v horizontálních konstrukcích). Nyní zbývá pospojovat všechna schodiště, která se nachází v budově přesně nad sebou (jsou umístěna v jedné schodišťové šachtě napříč podlažími), v jedinou schodišťovou konstrukci. Pro pospojování schodišť se využije skutečnosti, že mezipodlažní schodiště se nacházejí v místnostech označených účelem „schodiště“. Jelikož konstrukce schodiště se skládá z několika nezávislých stavebních prvků, jednotlivá schodiště vedoucí napříč budovou by se po jednotlivých prvcích spojovala příliš složitě. Průnik půdorysů místností mezi dvojicí nad sebou ležících podlaží se bude provádět mnohem jednodušeji. Jednotlivé prvky schodiště v podlaží již mají nastaven polohový kód schodiště. Pro přiřazení schodiště do místnosti se provede průnik půdorysů místností s rameny schodišť a polohový kód schodiště se nastaví jako atribut místnosti, ve které se dané rameno nalézá. S místnostmi se pronikají pouze ramena schodišť, protože ta jsou základem schodiště, samotné odpočívadlo bez příslušného ramene schodiště netvoří. Tímto způsobem se tedy přiřadily schodiště místnostem. Zatím se nerozlišovalo, zda se jedná o schodiště mezipodlažní nebo vyrovnávací, v obou případech je vhodné vědět, ve které místnosti se dané schodiště nachází. Další zpracování se zaměří pouze na mezipodlažní schodiště, která se nalézají v místnostech s účelem „schodiště“. Dalším krokem tedy bude procházení jednotlivých podlaží v budově po dvojicích podobně jako u vytváření otvorů v horizontálních konstrukcích (viz podkapitola 4.3.3.3 – Otvory v horizontálních konstrukcích). Procházení započne v prvním nadzemním podlaží. Vytvoří se průnik půdorysů
STRANA 43
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
místností vyššího a aktuálního podlaží. Z průniku se snadno zjistí, které půdorysy místností označených účelem „schodiště“ leží přímo nad sebou. Atribut místnosti vyššího podlaží s polohovým kódem schodiště se přepíše na polohový kód schodiště, který má přiřazena místnost nacházející se v aktuálním podlaží. Tato změna se také zapíše do fronty. Po přečíslování všech nalezených průniků místností se podle záznamů ve frontě přečíslují i polohové kódy schodišť u všech odpočívadel a ramen ve vyšším podlaží. Stejným způsobem se zpracují všechna podlaží v budově. Po dokončení zpracování nadzemních podlaží se opět u prvního nadzemního podlaží začne s postupným zpracováním podzemních podlaží. Tento postup by měl pomocí polohového kódu schodiště sjednotit všechna schodiště procházející napříč celou budovou, která tvoří celistvou konstrukci.
4.4.1.4
Rozdělení půdorysů ramen schodišť na stupně
K tomu, aby se mohly začít vytvářet 3D konstrukce schodišť, chybí ještě jedna podstatná věc a to namodelovat stupně schodiště, bez nichž by schodiště vlastně ani nebylo schodištěm. Zatím se veškeré úpravy prováděly nad půdorysem ramene schodiště, nyní je potřeba půdorys ramene rozdělit na jednotlivé stupně. Ve stavebních výkresech se sice zakreslují stupně schodiště, bohužel toto zakreslení je pro vytvoření polygonů stupňů nepoužitelné. Tvar schodiště může být velmi různorodý, tudíž není vůbec jednoduché jej zakreslit v rovině. Většinou se sice lze setkat s klasickým tvarem ramene schodiště, jehož půdorys má tvar obdélníku, popřípadě jiného čtyřúhelníku. Ale existují i jiné tvary ramen schodišť, jejichž půdorys nemusí tvořit pouze jednoduché linie svírající úhly, ale část obvodu jejich půdorysu může být tvořena obloukem. Klasickým příkladem je točité schodiště, jehož celý půdorys ani nemusí jít ve stavebním výkresu zachytit, proto se zakresluje pouze taková část půdorysu ramene, která se navzájem nepřekrývá.
Obrázek 4.14: Zakreslení točitého schodiště ve stavebním výkresu
STRANA 44
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
U nepravoúhelných půdorysů ramen je možné se ve stavebních výkresech setkat s nepřesným zakreslením stupňů. Počet zakreslených stupňů často neodpovídá počtu stupňů uvedeném v kótě daného ramene, šířka stupně udaná v kótě se výrazně liší od své skutečné šířky nebo kóta dokonce chybí atd. Často totiž v půdorysném zakreslení ani není možné přesně stupně znázornit. Pokud má každý stupeň ramene jinou šířku a kóta ramene schodiště má přesně daný formát, nelze tuto skutečnost jakkoli zachytit. Další komplikací jsou řezy schodištěm, dvě linie protínající půdorys ramene. Také díky tomuto řezu se zavrhlo využití liniového zakreslení stupňů ve výkresu k vygenerování půdorysů jednotlivých stupňů. Linie značící hranice stupňů jsou přerušeny liniemi řezu, a proto nepoužitelné. Dalším důvodem bylo nastavování výšek jednotlivým stupňům, což se musí provádět od nejnižšího k nejvyššímu stupni a jejich výšky postupně nasčítávat, pořadí stupňů by se těžko určovalo.
Obrázek 4.15: 3D model schodiště
Z výše popsaných důvodů nelze efektivně půdorysy ramen se složitější geometrií rozdělit na stupně. Rozdělovat se tedy budou pouze čtyřúhelníkové půdorysy ramen schodišť. Počet vrcholů mnohoúhelníku půdorysu se určí jednoduše převedením geometrie na jednotlivé lomové body. Dále je potřeba zjistit směr, kterým stupně v rameni vedou. Směr udává výstupní čára. Vyjde se z faktu, že výstupní čára začíná na prvním stupni kolečkem a linie tvořící kolečko je jedinou částí výstupní čáry, kterou je možné převést na polygon. Ostatní části výstupní čáry tvoří pouze rovné linie o dvou lomových bodech: počátečním a konečném, proto je na polygon převést nelze. Po vytvoření polygonů z koleček výstupních čar se provede jejich průnik s vrstvou půdorysů ramen, čímž se přiřadí kolečka jednotlivým ramenům. Kolečko by mělo protínat přímku procházející dvěma vrcholy půdorysu ramene, které jsou zároveň také vrcholy půdorysu prvního schodu. Tyto dva body se tedy musí nacházet mnohem blíže kolečku než zbylé dva vrcholy půdorysu ramene, což se stanoví jednodu-
STRANA 45
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
chým změřením vzdáleností bodů od kolečka. Nyní jsou určeny počáteční dva vrcholy půdorysu ramene a zároveň prvního stupně, k vytvoření půdorysu prvního stupně zbývá určit druhé dva vrcholy. Spojením nalezených vrcholů získáme úsečku, označme ji jako úsečku AB. Body A i B se povedou kolmice na úsečku AB, čímž se získají přímky AC a AD. Body C a D jsou průsečíky přímky AC s přímkou CD, což je rovnoběžka na úsečku AB vzdálená od ní na šířku jednoho stupně ramene. Body C a D jsou hledané vrcholy půdorysu prvního stupně. Podobným způsobem se získají další stupně ramene. Při výpočtu se musí hlídat následující pravidla: body C a D se nachází uvnitř nebo na hranici půdorysu ramene, počet takto vytvořených stupňů odpovídá počtu stupňů uvedenému v kótě ramene. Při vytváření jednotlivých stupňů se jim samozřejmě také nastavují atributy absolutních výšek „vyska_od“ a „vyska_do“. Tímto způsobem nelze vytvářet stupně jiných ramen, než se čtyrstěnným půdorysem, protože nelze určit úhel, pod kterým se ostatní stupně stáčejí oproti prvnímu stupni. Stupně ramen s půdorysy o složitějších geometrií se vytváří ručně. Pokud se ovšem uváží, že většina schodišť má ramena s jednoduchými geometriemi, výše popsané vytváření půdorysů stupňů pokryje valnou většinu případů.
4.4.2 Zpracování ramp Rampy plní v podlaží stejnou funkci jako ramena schodišť, ve většině případů však neslouží k přemisťování mezi podlažími, ale pouze k přechodu mezi různými výškami podlah v podlaží. Také rampy mohou být podobně jako ramena spojeny s odpočívadly, tato kombinace stavebních prvků se však objevuje zřídka.
Obrázek 4.16: Model rampy vytvořený pomocí funkce Extrude
Zpracování ramp se provádí až po zpracování schodišť z prostého důvodu, rampy mohou být součástí schodišť, což se nejlépe ukáže na spojení ramp s odpočívadly. Pokud tedy má rampa k sobě přiřazené nějaké odpočívadlo, kontroluje se, zda odpočívadlo není přiřazeno nějakému schodišti podle jeho polohového kódu schodiště. Když odpočívadlo je již součástí nějakého schodiště, jistě k tomuto schodišti patří i rampa.
STRANA 46
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
Zároveň se rampě podle přiřazení k odpočívadlům nastavují i výšky, počáteční výška rampy jako koncová dolního odpočívadla. Může se stát, že má rampa přiřazeno i horní odpočívadlo, které již má své výšky vypočteny, což usnadní práci a koncová výška rampy se nastaví jako koncová výška příslušného odpočívadla. Většinou se však rampy nacházejí v budovách osaměle bez vazby na jiné stavební prvky, proto se jejich výška musí vypočítat z jejich kót. Rampy se kótují podobně jako ramena schodišť, jen v kótě je místo počtu a šířky stupňů uvedena hodnota sklonu dané rampy ve stupních. Bohužel rampy nemají znázorněnu svou orientaci pomocí výstupních čar jako ramena schodišť, a proto z půdorysu rampy nelze určit, jakým směrem rampa sloupá, tudíž ani její délku. Další úpravy se tedy budou provádět ručně. Pro vytvoření 3D geometrií ramp se využije 3D feature class nástrojů ArcGIS. Zatím jsou půdorysy všech stavebních prvků tvořeny pomocí 2D feature class, převod na 3D feature class má aplikace ArcMap implementován jako svou funkci. Vytvořeným 3D půdorysům ramp se musí změnit výška jejich vrcholů. Dvěma nástupním vrcholům rampy se pomocí editace v ArcMap nastaví jejich třetí souřadnice na počáteční výšku rampy a dvěma koncovým vrcholům na koncovou výšku rampy, pokud je nastavena. V případě, že koncová výška nebyla určena, vypočte se ručně, směr rampy je možné odhadnout přímo ze stavebního výkresu. Editací v aplikaci ArcMap vznikly z půdorysů ramp v rovině mnohostěny v prostoru s nastaveným příslušným sklonem. Nyní stačí z mnohostěnů vytvořit tělesa, což je s funkcí Extrude v aplikaci ArcScene jednoduché, stačí vyplnit prostor pod mnohostěnem rampy až na úroveň počáteční výšky.
Obrázek 4.17: Střecha jako 3D feature class
4.5 Střechy V rámci stavebního pasportu MU se nepořizovalo zakreslení střech, o střechách tedy neexistují žádné informace. Pro účely této diplomové práce se vygenerované 3D modely budov doplnily ručně zakreslenými střechami. U starších budov se zvolilo vytvoření univerzálního tvaru šikmé střechy, budovy s rovnou střechou se nijak dále neupravovaly. Střechy se modelovaly ručně v aplikaci ArcMap. Střecha se vytvořila jako mnohostěn uložený ve 3D feature class. Nejprve se zakreslil polygon střechy v rovině, poté se feature class převedla na 3D a jednotlivým lomovým bodům se nastavily potřebné třetí souřadnice. Samozřejmě nelze střechu vytvořit pomocí jediného polygonu, ale je jich k tomu zapotřebí více. Aby se zachovala možnost se střechou pracovat jako s jednotným objektem, vytvářela se jako polygon skládající se z více nezávislých částí (multipart polygon), ve feature class je
STRANA 47
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
však tento polygon uložen jako jediná položka. Jediný rozdíl spočívá v tom, že při zakreslování se musí polygon po částech uzavírat. Takto vytvořené polygony střech se již nebudou dále převádět na tělesa, zůstanou vlastně pouze povrchem, pro účely naznačení tvaru střechy to je však dostačující.
4.6 Vygenerování 3D modelu budovy Nyní jsou hotové všechny přípravy pro generování modelů budov. Všechny stavební prvky, které budou tvořit budovu mají nastaveny dva atributy s počáteční a konečnou výškou, aby na ně mohla být aplikována funkce Extrude v aplikaci ArcScene (viz podkapitola 2.2.3.5 – ArcScene). Funkce Extrude negeneruje z půdorysů tělesa jako nové objekty v databázi, vytváří vlastně pouze představu tělesa jako součást vizualizace. Proto se nemohou takto změněné objekty ukládat do geodatabáze, ale prvky z databáze poslouží jako předloha pro vytvoření mapových vrstev.
Obrázek 4.18: 3D model budovy – budova BBA01 (Pedagogická fakulta, Poříčí 7, Brno)
Toto zpracování objektů z geodatabáze probíhá opět plně automatizovaně, parametry všech objektů jsou sjednocené, proto by již nemělo docházet k problémům. Objektům v mapové vrstvě se nejprve musí nastavit jejich základní výška, která se rovná hodnotě v atributu s počáteční výškou („vyska_od“). Takto se vlastně objektům nastaví třetí souřadnice a umístí se v prostoru do příslušné výšky od země. Nyní se musí z rovinných objektů vytvořit iluze těles pomocí funkce Extrude. Každému objektu se zvlášť vypočte hodnota jeho relativní výšky, tedy vlastně skutečného rozměru objektu, o kterou se má půdorys „zvednout“ a vytvořit tak těleso. Tato skutečná výška tělesa se získá odečtením počáteční výšky od té koncové, jejím zadáním do parametru funkce Extrude se konečně vytvoří tělesa.
STRANA 48
KAPITOLA 4
GENEROVÁNÍ 3D MODELŮ BUDOV MU
U ramp se postupuje opačně. Jelikož rampy tvoří 3D feature class, mají již nastavené třetí souřadnice a jsou umístěny v prostoru, není potřeba jim nastavovat základní výšku. Těleso rampy se vytvoří taktéž pomocí funkce Extrude, jen se musí jako parametr nastavit výška se zápornou hodnotou. Dále se ještě musí mapové vrstvy představující jednotlivé stavební prvky od sebe vizuálně odlišit. Samozřejmostí je nastavení barev. Okna se mohou zprůhlednit, stěnám přidat stínovaní z různých úhlů. Přesto takto vypadající modely vypadají málo reálně. Ideální by bylo na povrch objektů namapovat rastrové obrázky, bohužel se nepodařilo tuto myšlenku dovést ke zdárnému konci. Využití triangulací pro nastavení vzhledu je příliš složité a zatím se nepodařilo triangulaci přizpůsobit povrchu tělesa vytvořeného funkcí Extrude. Taktéž neúspěšný byl pokus s využitím 3D rastrů.
Obrázek 4.19: 3D model budovy – budova BKA03 (koleje Lomená, Brno)
STRANA 49
5 Závěr Prostřednictvím této diplomové práce se mi podařilo blíže seznámit s několika zajímavými obory. S geografií v kombinaci s informačními systémy jsem se již setkala. Za velký přínos považuji možnost vyzkoušení práce s daty v trojrozměrném prostoru, která se liší od práce s daty v rovině. 3D data nabízí větší variabilitu jak popsat nějakou skutečnost a má také širší paletu možností, jak data vizualizovat. Nejzajímavější pro mne bezesporu bylo nahlédnutí do „stavařiny“, oboru velmi odlišnému od informatiky. Naučila jsem se (alespoň trochu) číst stavební výkresy a rozumět tomu, co znázorňují. Seznámila jsem se blíže s konstrukcí budovy a jejími stavebními prvky. Porozumění stavebním konstrukcím bylo klíčové pro pochopení datového modelu geografické databáze. Jeho rozšiřováním jsem si vyzkoušela modelování vztahů mezi objekty s geometriemi. Při hledání nejlepší varianty pro vytvoření daného stavebního prvku v trojrozměrném prostoru jsem uplatnila také své znalosti z matematiky a informatiky a překvapilo mne zjištění, jak různé obory se prolínají s geografickými informačními systémy. Diplomová práce zahrnovala také implementaci automatického generování 3D modelů budov. Potvrdil se počáteční předpoklad, že se nebude jednat o plně automatické zpracování. U některých stavebních prvků se zpracování podařilo zautomatizovat, u jiných alespoň částečně. Stavební prvky jako rampy a střechy bylo nutné zakreslovat celé manuálně. Přesto si myslím, že se podařilo splnit cíl této diplomové práce a modely 3D budov pomocí kódu vytvořit. Věřím, že po manuálních úpravách by se mohlo pro 3D modely budov MU najít uplatnění v rámci publikace dat stavebního pasportu.
Literatura: [1] [2] [3] [4] [5] [6] [7]
Booth, Bob: Using ArcGIS 3D Analyst. ESRI, 2000. Doseděl, A. a kolektiv: Čítanka stavebních výkresů. Sobotáles, 2004. Horáčková, Lenka: Modelování geografických databází [diplomová práce]. 2004. Encyklopedie Wikipedia, http://cs.wikipedia.org/, 2006 Co je ArcGIS? ESRI, 2005. ESRI, oficiální webová stránka http://www.esri.com/, 2006 Benešovský, M., Glos, Petr: GIS – systém nebo služby? DATAKON 2006, sborník z konference.
Přílohy: A
Seznam entit přidaných do datového modelu 3DGeometrieKlenuteKonstrukce 3DGeometrieMontovaneCastipricky 3DGeometrieOblozeniHoriz 3DGeometrieOblozeniVertik 3DGeometrieSikmeKonstrukce 3DGeometrieStrechy 3DGeometrieVybaveni 3DGeometrieZdeneCastipricky GeometrieKlenuteKonstrukce GeometrieMontovaneCastiPricky GeometrieSikmeKonstrukce GeometrieZdeneCastiPricky Otvor OtvorVeVertikKonstrukci OtvorVHorizKonstrukci PudorysCastiPodlahy PudorysCastiStropu PudorysHorizNosneKonstrukce PudorysMezipodlaznihoOdpocivadla PudorysNajezdoveRampy PudorysOkna PudorysOtvoruVeVertikKonstrukci PudorysOtvoruVHorizKonstrukci PudorysPodlaznihoOdpocivadla PudorysPudniPadaciDvere PudorysRovneKonstrukce PudorysStupne PudorysVenkovniDvere PudorysVnitrniDvere PudorysSchodistovehoRamene TelesoCastiNosneSteny
PŘÍLOHA A
SEZNAM ENTIT PŘIDANÝCH DO DATOVÉHO MODELU
TelesoCastiPodlahy TelesoCastiPricky TelesoCastiSloupu TelesoCastiStropu TelesoHorizNosneKonstrukce TelesoJednopodlMistnosti TelesoMezipodlaznihoOdpocivadla TelesoMistnostiVPodlazi TelesoNajezdoveRampy TelesoOkna TelesoOtvoruVeVertikKonstrukci TelesoOtvoruVHorizKonstrukci TelesoPodkrovMistnosti TelesoPodlaznihoOdpocivadla TelesoPrevisleKonstrukce TelesoPudniPadaciDvere TelesoRovneKonstrukce TelesoStupne TelesoVenkovniDvere TelesoVertikNosneKonstrukce TelesoVnitrniDvere VyplnOtvoru
STRANA 53