Předpříprava dat

Z důvodu existence rozličných 3D formátu je nutné nejdříve 3D data převést do formátu, který je podporován webovou aplikací. Níže popsané postupy obsahují podrobný návod, jak data pro vkládání předpřipravit. Do návodu jsme začlenili ArcGIS Pro, Blender a SketchUp.

Souřadnicový systém GIS vs. softwaru 3D grafiky

Pro správné umístění modelu je zásadní pochopit, jak se model do webové scény vkládá. Pro názornost využijeme software Blender, ve kterém jsme si vytvořili jednoduchou krychli o velikosti hrany 40 m (ke stažení zde). Umístění objektu se vždy váže k počátku soustavy souřadnic. Jedná se o bod se souřadnicemi 0, 0, 0 – tedy tam, kde se protínají osy X (červená osa), Y (zelená osa) a Z (modrá osa) – tento bod si nazveme jako referenční bod (Obr. 1, Obr. 2).

Obr. 1 Rozložení os X a Y v Blendru
Obr. 1 Rozložení os X a Y v Blendru
Obr. 2 Rozložení os X, Y, Z v Blendru
Obr. 2 Rozložení os X, Y, Z v Blendru

Po exportu z Blendru do glb souboru a nahráním modelu do aplikace je referenční bod brán jako úchopový bod daného modelu. Úchopový bod je střed oranžového kruhu označený malou bílou tečkou (Obr. 3). Pokud se pak s modelem pohybujeme po scéně anebo zadáváme přesné souřadnice, tak umístění je vždy vázáno na tento úchopový bod.

Obr. 3 Model umístěný do scény webové aplikace
Obr. 3 Model umístěný do scény webové aplikace

Pro lepší představu si ještě v blendru posuneme krychli o 20 m po ose Z výš (Obr. 4). A znovu si nahrajeme model do mapové aplikace. V tomto případě se nám krychle neumístí přímo na terén, ale vznáší se ve 20 m výšce nad ním (Obr. 5).

Obr. 4 Krychle 20 m nad počátkem soustavy souřadnic
Obr. 4 Krychle 20 m nad počátkem soustavy souřadnic
Obr. 5 Krychle 20 m nad terénem
Obr. 5 Krychle 20 m nad terénem

Orientace osy Y směřuje z jihu na sever a osa X ze západu na východ (Obr. 6). Osa Z směřuje zespoda nahoru a definuje výšku modelu (Obr. 7).

Obr. 6 Rozložení os X a Y v mapové aplikaci
Obr. 6 Rozložení os X a Y v mapové aplikaci
Obr. 7 Rozložení os X, Y a Z v mapové aplikaci
Obr. 7 Rozložení os X, Y a Z v mapové aplikaci

Stejně jako Blender ani SketchUp nepracuje se souřadnicovými referenčními systémy, proto stejný výše popsaný postup umístění lze použít i u něj (více Předpříprava dat: SketchUp).

Příprava modelu
Rozdíl mezi modelem a projektem lze najít v podsekci Model vs. projekt.
ArcGIS Pro
Import

Pokud nemáme 3D soubor ve formátu multipatch, tak jej pro další krok musíme do tohoto formátu převést. ArcGIS Pro umožňuje převod z rozličných formátů.

Je nutné mít soubor ve správném souřadnicovém systému, který používá webová aplikace. Jedná se o WGS84 s WKID: 4326. Pokud daný model nemáme v tomto systému, tak pro funkcionalitu je nutné jej do něj po importu převést. Využijte nástroj Project.
Polygon Z

Jestliže máme model vytvořený pomocí polygonu, který má přiřazenou souřadnici Z, převedeme daný model do formátu multipatch pomocí nástroje Layer 3D To Feature Class (3D Analyst).

Tento nástroj je dostupný pokud máme extenzi 3D Analyst
Obr. 8 Geoprocesingový nástroj Layer 3D To Feature Class (3D Analyst)
Obr. 8 Geoprocesingový nástroj Layer 3D To Feature Class (3D Analyst)
IFC, DWG

Do formátu multipatch z formátu IFC a .dwg můžeme převést dvěma způsoby. Buď na dané vrstvě zvolíme Data, a poté Export Features (Obr. 9) nebo vyhledáme nástroj Export Features (Obr. 10) v geoprocesingových nástrojích (Obr. 11).

Obr. 9 Vyhledání nástroje na vrstvě
Obr. 9 Vyhledání nástroje na vrstvě
Obr. 10 Vyhledání nástroje v geoprocesingu
Obr. 10 Vyhledání nástroje v geoprocesingu
Obr. 11 Nástroj Export Features
Obr. 11 Nástroj Export Features
Ostatní 3D soubory
Podporované soubory jsou 3D Studio Max (.3ds), VRML and GeoVRML (.wrl), OpenFlight (.flt), COLLADA (.dae) a Wavefront OBJ models (.obj)

Pro převod do formátu multipatch z výše popsaných souboru využijeme geoprocesingový nástroj Import 3D Files.

Tento nástroj je dostupný pokud máme extenzi 3D Analyst
Obr. 12 Geoprocesingový nástroj Import 3D Files
Obr. 12 Geoprocesingový nástroj Import 3D Files
Export
Převod multipatch do souboru .glb

Nejdříve musíme přiřadit k multipatch správný formát. Použijeme k tomu nástroj Add 3D Formats To Multipatch (Obr. 13). Z vybraných formátu si vybereme formát Khronos Group glTF binary (.glb).

Obr. 13 Geoprocesingový nástroj Add 3D Formats To Multipatch
Obr. 13 Geoprocesingový nástroj Add 3D Formats To Multipatch
Export souboru .glb

Následně vyexportujeme .glb soubor pomocí nástroje Export 3D Objects (Obr. 14). Ve volitelném parametru Output Folder Name Field můžeme zvolit sloupec, který obsahuje název naších modelů, pokud chceme rozdělit model na více částí. Tento název se následně propíše do názvu složky např. OID_1_Building_1 kdy OID_1 je automaticky generovaný jedinečný název z tohoto nástroje a Building_1 je vyčtený název z vybraného sloupce. V příkladu níže je to sloupec Name.

Obr. 14 Geoprocesingový nástroj Export 3D Objects
Obr. 14 Geoprocesingový nástroj Export 3D Objects

Pro každý model vzniká složka se souborem .glb (samotný model), .prj (definice souřadnicového referenčního systému) a JSON (popisuje metadata modelu pro ArcGIS Pro a mj. polohu referenčního bodu). Obsah vidíme i na Obr. 15.

Obr. 15 Struktura exportovaného souboru .glb
Obr. 15 Struktura exportovaného souboru .glb

Nyní můžeme soubory .glb (tedy modely) postupně načíst z jednotlivých složek do webové aplikace a umístit do webové scény, anebo pokračovat v přípravě projektu.

Blender

Stejně jako u následující podsekce SketchUp i Blender přímo nepracuje se souřadnicovými referenčními systémy, proto je nutné mít vždy model umístěn relativně k počátku (více v sekci Souřadnicový systém GIS vs. softwaru 3D grafiky). Pokud se chcete o využití Blendru pro architekty dozvědět více, můžeme vám doporučit tento youtube kanál Blender 3D Architect.

Níže popsaný návod je vytvořen pro verzi Blendru 5.0, v jiných verzích se postupy mohu lišit.
Obr. 16 Krychle v prostředí softwaru Blender
Obr. 16 Krychle v prostředí softwaru Blender
Import

Pokud 3D model přímo nevytváříme v Blendru, je doporučeno vždy neumisťovat model v souřadnicových referenčních systémech např. S-JSTK nebo WGS84. Blender neumí pracovat se souřadnicovými referenčními systémy. Model se nám sice v aplikaci načte, ale bude umístěn ve velké vzdálenosti od počátku. Tím pádem se nám bude s modelem špatně pracovat a umístění na potřebné nulové souřadnice bude nadmíru složité.

Formáty které je možné defaultně vkládat do blendru, jsou závislé na aktuální verzi blendru. Ve verzi 5.0 jsou dostupné formáty uvedeny v Obr. 17.

Obr. 17 Import 3D formátu do Blendru
Obr. 17 Import 3D formátu do Blendru

I když není v základu umožněno do Blendru importovat veškeré soubory, tak většinou se dá v Blendru použit potřebný plugin, který nám to umožní. Např. v tomto videu se můžete dozvědět jak do blendru importovat .dwg.

Export

Pro nahrání modelu do aplikace je potřebné mít model uložený v podporovaném formátu .glb. Na rozdíl od SketchUpu, má Blender ve výchozím nastavení možnost exportu do požadovaného formátu. Soubor do správného formátu .glb exportujeme vyhledáním File > Export > glTF 2.0 (.glb/.gltf).

Obr. 18 Export .glb souboru – volba nástroje
Obr. 18 Export .glb souboru – volba nástroje

Po otevření následujícího okna můžeme vše ponechat ve výchozím nastavení. Jen se ujistíme že Format je nastavený na glTF Binary (.glb) a v sekci Transform je zakliknuté pole +Y Up (Obr. 19).

Obr. 19 Export .glb – nastavení parametrů
Obr. 19 Export .glb – nastavení parametrů

Pokud máme v Blendru více objektů, je doporučené si vybrat jen model, který chceme exportovat, a poté při exportu zaškrtnout políčko Limit to - Selected objects (Obr. 20).

Obr. 20 Export pouze vybraných prvků
Obr. 20 Export pouze vybraných prvků

Nyní můžeme model načíst do webové aplikace a umístit do webové scény.

Obr. 21 Nahraný modelu vytvořený v blendru ve webové scéně aplikace
Obr. 21 Nahraný modelu vytvořený v blendru ve webové scéně aplikace
SketchUp

Stejně jako u softwaru Blender i SketchUp přímo nepracuje se souřadnicovými referenčními systémy, proto je nutné mít vždy model umístěn relativně k počátku (více v sekci Souřadnicový systém GIS vs. softwaru 3D grafiky).

Obr. 22 Krychle v prostředí softwaru SketchUp
Obr. 22 Krychle v prostředí softwaru SketchUp
Import

Pokud do SketchUpu importujeme model, tak vždy se v nastavení (Options; Obr. 23, Obr. 24) ujistíme, že Preserve drawing origin není povolené a Units jsou nastavené na Meters.

Obr. 23 Import - dialogové okno
Obr. 23 Import - dialogové okno
Obr. 24 Import – možnosti nástroje
Obr. 24 Import – možnosti nástroje
Export

Jelikož se model nejdříve musí převést do formátu .glb a tento datový formát není v defaultní podobě u SketchUpu pro export přítomný, je doporučeno si stáhnout extenzi SketchUp glTF Exporter.

Po stažení a nainstalování výše zmíněné extenze můžeme přejít k samotnému exportu. Extension → SKP gLTF Exporter → Export Binary glTF 2.0 (.glb). V tomto kroku je nutné zvolit soubor .glb, nikoliv .gltf.

Obr. 25 Extenze export do .glb
Obr. 25 Extenze export do .glb

Před samotným převodem jsme upozornění na to, že proces může zabrat nějaký čas; záleží vždy na velikosti modelu.

Obr. 26 Extenze export do .glb – upozornění
Obr. 26 Extenze export do .glb – upozornění

V následujícím kroku je zásadní, aby jsme zadali název souboru i s příponou souboru. V našem případě, kdy jsme použili export do souboru .glb, tak za název našeho souboru doplníme extenzi .glb (Obr. 27).

Obr. 27 Korektně zadaný název i s extenzi .glb
Obr. 27 Korektně zadaný název i s extenzi .glb

Pokud by jsme k názvu nepřidali extenzi (Obr. 28), tak tento soubor bychom nemohli nahrát do mapové aplikace.

Obr. 28 Nesprávně zadaný název souboru
Obr. 28 Nesprávně zadaný název souboru

Nyní můžeme model načíst do webové aplikace a umístit do webové scény.

Obr. 29 Nahrání modelu vytvořeného v SketchUp do webové aplikace
Obr. 29 Nahrání modelu vytvořeného v SketchUp do webové aplikace
Příprava projektu
Webová aplikace

Model můžeme exportovat jako projekt pomocí aplikace. Postup je uveden v sekci Export do projektu.

ArcGIS Pro

Projekt můžeme vytvořit i v aplikaci ArcGIS Pro. Nejprve vytvoříme model ve formátu .glb. Poté můžeme na další krok níže.

Vytvoření balíčku ZIP → Projekt

Po exportu si zobrazíme složku z vytvořenými soubory (Obr. 30).

Obr. 30 Složka s vytvořenými prvky z exportu z ArcGIS Pro
Obr. 30 Složka s vytvořenými prvky z exportu z ArcGIS Pro

V našem vzorovém případě se vytvořily ve složce tři podsložky, jelikož vložený model měl tři části. Z kolika častí je model složený, lze zjisti v atributové tabulce dané vrstvy (Obr. 31).

Obr. 31 Atributová tabulka zájmové vrstvy
Obr. 31 Atributová tabulka zájmové vrstvy

Kolik máme v atributové tabulce prvků, na tolik části je naše budova anebo soubor budov rozložen a tolik vzniká projektů. Pro názornost jsme k prvkům přiřadili rozdílnou symbologii (Obr. 32, Obr. 33).

Obr. 32 Rozdílná symbologie zájmové vrstvy – webová scéna ArcGIS Pro
Obr. 32 Rozdílná symbologie zájmové vrstvy – webová scéna ArcGIS Pro
Obr. 33 Rozdílná symbologie zájmové vrstvy – panel obsahu ArcGIS Pro
Obr. 33 Rozdílná symbologie zájmové vrstvy – panel obsahu ArcGIS Pro

Jednotlivé složky komprimujeme pomoci metody ZIP (Obr. 34) a vzniká podporované schéma projektu pro nahrání do aplikace. Pokud chceme zachovat veškeré prvky musíme proces komprimace provést na všech dříve vytvořených složkách (Obr. 35).

Obr. 34 Komprimování pomocí metody ZIP (Windows 11)
Obr. 34 Komprimování pomocí metody ZIP (Windows 11)
Obr. 35 Komprimované soubory zájmových modelů
Obr. 35 Komprimované soubory zájmových modelů

Výsledné jednotlivé soubory (balíčky ZIP = projekty) můžeme postupně načíst do mapové aplikace a umístit automaticky na správné souřadnice jako projekty.

Obr. 36 Vložené modely projektů ve webové scéně aplikace
Obr. 36 Vložené modely projektů ve webové scéně aplikace