This presentation was given at FOSS4G Europe 2017 which was held at ENSG, France.
***
Let's integrate BIM and 3D GIS on top of FOSS4G!
Sanghee Shin, Sungdo Son, BJ Jang, JeongDae Cheon, Hakjoon Kim
Although there has been numerous attempts to integrate indoor and outdoor space on a single geospatial platform, the outcome of these attempts are not so satisfactory till to date. Difference of data model, massive number of data to be rendered, big volume of file size are among those major technical barriers that hindered seamless integration of indoor and outdoor space. This talk will introduce a brand-new FOSS4G project called Mago3D that could seamlessly integrate BIM(Building Information Model) and popular 3D GIS model in web browser using Cesium or Web World Wind. Mago3D project aims at developing a JavaScript plug-in for existing WebGL Globe to expand WebGL Globe's functionality and usability even to indoor space and architectural(BIM) areas. To do this, Mago3D.js has been designed and developed as a WebGL independent JavaScript. Mago3D.js is composed of 6 main components like follows:
Mago3D Connector that interacts with WebGL Globe such as Cesium
Mago3D Renderer that shades and renders 3D data
Mago3D Accelerator that carries out performance enhancing algorithms such frustum & occlusion culling, indexing, LOD(Level Of Detail) handing
Mago3D Data Container that contains and manages 3D data
Mago3D Process Manager that manages whole process from data receiving to rendering
Mago3D REST API that provides API for 3D data sending and receiving
By plug in Mago3D.js to Cesium, Web World Wind, users can expand those WebGL functionality and usability to indoor space. One of big hurdle to integrate indoor and outdoor space simultaneously is handling and visualisation of massive 3D data. To overcome this hurdle, new format called F4D has been devised adopting block reference concept. Also a format converter that converts popular 3D format to F4D has been developed. Currently industry standard IFC(Industry Foundation Classes), JT(Jupiter Tessellation), and popular 3D formats such as OBJ, 3DS, COLLADA DAE can be converted to F4D format. F4D format coupled with Mago3D.js has proven that it can increase memory management efficiency and rendering speed drastically. MAGO3D can now visualise massive 3D data including indoor objects, at least 100k objects, in a single scene seamlessly with traditional outdoor 3D GIS objects. Users can now manage and handle almost every geospatial object from bolt & nut level to whole globe level with MAGO3D. This project will evolve to manage and service more dynamic data such as IoT (Internet of Things), point clouds, climate & weather data, and transportation..
Ensuring Technical Readiness For Copilot in Microsoft 365
mago3D: Let's integrate BIM and 3D GIS on top of FOSS4G
1. Let’s Integrate BIM and 3D GIS
on top of FOSS4G!
Sanghee Shin(shshin@gaia3d.com)
Seongdo Son(sdson@gaia3d.com)
Hakjoon Kim(hjkim@gaia3d.com)
Jengdae Cheon(jdcheon@gaia3d.com)
BJ Jang(bjjang@gaia3d.com)
3. Paradigm Shift
Current Future
Concept Object Information Context Awareness
Data Consumer Prosumer/DIY
User Person Things
Visualization Real World Cyber-Physical Space
Application Base Map Key Factor for Fusion
Driving Entity Public Sector Private Sector
Space Outdoor Indoor + Outdoor +
Update Cycle Static Dynamic
<Source: Sakong, Hosang(2016), ‘Policy Directions of Spatial Information for Hyper-connected Society’ modified>
5. mago3D is a platform for …
Indoor and outdoor space integration on a single web browser1
Management/providing various type of GIS data
including vector, raster, point cloud and AEC/BIM/3D …
2
Web based collaborative issue management4
Processing/visualization of real-time massive data
such as weather/climate, IoT, sensor data …
3
14. F4D: Lego Style Service for LOD
Detailed Resolution
Coarse Resolution
15. F4D: Pre-Processed Occlusion Culling
Increase rendering speed by not rendering occluded geometry
If we pre-record visible objects, we can identify the rendering objects very quickly.
<Occlusion culling using visibility indices>
Identify the visible objects by carrying out visibility test at every vision cell
17. mago3D.js: Let’s Piggyback!!
Cesium World Wind WebGL
1. A plug-in to any web 3D engines based on WebGL.
2. A set of JavaScript for web developments.
3. NOT an engine, BUT a plug-in.
ismago3D.js
18. mago3D.js: Components
1. maog3D.js has been designed
and developed as an independent
plug-in to the existing WebGL
Globe.
2. mago3D.js added new
functionalities and enhanced
performance of existing WebGL
Globle.
Mago3D
Cesium/NASA World Wind
WebGL Globe Core
Mago3D Connector
Mago3D.JS
Mago3D Renderer
Shader
Mago3D Accelerator
Performance Enhancer
Mago3D
REST API
request, response
Mago3D
Process
Manager
Mago3D
Data
Container
19. mago3D.js: Components
1. mago3D Connector that interacts with WebGL Globe such as
Cesium, World Wind.
2. mago3D Renderer that shades and renders 3D data.
3. mago3D Accelerator that enhance performance such as frustum &
occlusion culling, indexing, LOD(Level Of Detail) handing.
4. mago3D Data Container that contains and manages 3D data.
5. mago3D Process Manager that manages whole process from data
receiving to rendering.
6. mago3D REST API that provides API for 3D data sending and
receiving.
23. mago3D.js on NASA World Wind
3D visualization with mago3D
on NASA World Wind
24. BIM Integration
Seamless integration of indoor and outdoor space
on the same platform
scene from indoor to outdoor through windows Scene from outdoor to indoor through windows
26. Future Plan – Support New Data Types
meteorological/weather data
real-time data
(IOT, sensor/observation data)
point cloud
mago3D will be capable of handling more types of data in near future!
28. Future Plan – Functionality Enhancements
Type Items
Analysis
Density map, Standard ellipse, Cost surface data, Whisker analysis, Detection
abnormality from IOT data, etc
Operation Raster operation(filtering, smoothing…), Coverage rebuild, etc
Styling Volume rendering, 3D vector/streamline, Cubing, etc
UI Different view controlling at indoor/outdoor space, etc
mago3D will also leverage existing open source projects
29. Wrapping-up
• Open source – Apache and AGPL license
• Web based – no need to install additional program
• Supports industry standard formats(ifc, 3ds, dae, kml, gltf…)
• Massive 3D data rendering
• Realtime 3D transformation on web browser
• Highly extensible architecture
• BIM/AEC and 3D GIS integration
33. mago3D integrates AEC(Architecture, Engineering, Construction) and 3D GIS
in web browser using Cesium or Web World Wind.
To achieve this goal we created a 3D data format named F4D.
Objectives of F4D are:
1- Reduce size of data for network traffic.
2- Create LOD (Level Of Detail) on service data.
3- Make visibility indices for occlusion culling.
4- Divide and group data into spatial octree.
TODAY
34. 1- How to reduce size of data
1 model & multi-instance
→ During processing, detection for geometrical congruence over raw data is carried out.
→ As result, 1 model and transformation matrices for each instance are built up for each congruence case.
With 4 geometric meshes - 4 models 23 objects are created. - 23 instances
Image source : www.vecteezy.com
35. 2- How to make LOD
We want to make simplified data of
Eiffel Tower.
39. Creation of textures for rougher LODs from original textures
taking captures from original texture rendering
rougher LOD meshes with created texture
created texture
41. 3- How to make visibility indices for occlusion culling(OC)
First, enclose the 3d model with
an octree of enough size and depth
※ Size affects to OC range
※ Depth affects to visibility
index data size
42. 360°
Second,
detect IDs of all visible objects
from each leaf octree cell
by rendering with color coding
51. For more information, please visit http://www.mago3d.com
Thank you!
Acknowledgement : This project is funded by Ministry of Land, Transport and Maritime Affairs, Korea, through R&D project(number:16NSIP-B080778-04)