Let’s Integrate BIM and 3D GIS on top of FOSS4G! Sanghee Shin([email protected] ) Seongdo Son([email protected] ) Hakjoon Kim([email protected] ) Jengdae Cheon( [email protected] ) BJ Jang([email protected] )
Let’s Integrate BIM and 3D GIS on top of FOSS4G!
Sanghee Shin([email protected])
Seongdo Son([email protected])
Hakjoon Kim([email protected])
Jengdae Cheon([email protected])
BJ Jang([email protected])
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>
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 management 4
Processing/visualization of real-time massive data
such as weather/climate, IoT, sensor data … 3
Open source based mago3D
3D2D
operation & analysis
IoT Interface
Base Lineup
Enhancement
server
service
functionality
Base Lineup 3D Functionality
F4D: Why We Devised New Format?
Increaserendering
speed
Optimizeweb
service
Make service datalightweight
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
F4D: Model-Instance Concept
Model is 3D geometry info, while Reference is real instance of this model
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
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 RendererShader
Mago3D AcceleratorPerformance Enhancer
Mago3DREST API
request, response
Mago3DProcess Manager
Mago3D Data
Container
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.
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
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!
Future Plan – Support Data Hierarchy
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Node
Geometry
Spatial structure.
Geometry data.
Future Plan – Functionality Enhancements
Type Items
AnalysisDensity 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
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
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
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
Third, mergecollected cubesas much as possible
Second, collect cubes whichintersects withoriginal data
Creation of textures for rougher LODs from original textures
taking captures from original texture rendering
rougher LOD meshes with created texture
created texture
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
360°
Second,detect IDs of all visible objectsfrom each leaf octree cellby rendering with color coding
Assign target meshes intoeach spatially divided octree
How we use created visibility indices for occlusion culling??
Perform frustum culling onspatially divided octreebefore occlusion culling
octree for visibility indexing(for occlusion culling)
octree for spatial division(for frustum culling)