mago3d: let's integrate bim and 3d gis on top of foss4g

51
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] )

Upload: sanghee-shin

Post on 23-Jan-2018

553 views

Category:

Technology


7 download

TRANSCRIPT

MAGO

Goddess of earth in Korean old myth

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>

Bottle Neck! PointCloud

DroneImage IoT

BIM

LiveData

AEC Self-DrivingCars

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 projects

Base Lineup

Base Lineup packaging

Base Lineup

GeoSHAPE GeoGig

?

Open source based mago3D

3D2D

operation & analysis

IoT Interface

Base Lineup

Enhancement

server

service

functionality

Base Lineup 3D Functionality

Overall System Architecture

Overall System Components

And then,

What’s been newly developed?

2 Main Cores of mago3D…

F4D Format as a service format C01.

Mago3d.js as a improved rendererC02.

F4D: Why We Devised New Format?

Increaserendering

speed

Optimizeweb

service

Make service datalightweight

F4D: Service Format Optimized for Web Service

VS

F4D: Lego Style Service for LOD

Detailed Resolution

Coarse Resolution

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.

mago3D.js: Screen Space Ambient Occlusion

<Before>

<After>

mago3D.js: Screen Space Ambient Occlusion

<Before>

<After>

mago3D.js on Cesium

3D visualization with MAGO3D

on Cesium

mago3D.js on NASA World Wind

3D visualization with mago3D

on NASA World Wind

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

MEP Integration

Integration of large size MEP

on a web browser

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

Seeing is Believing – Indoor & Outdoor Integration

Live Demonstration – http://www.mago3d.com

Let’s look into it technically

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

2- How to make LOD

We want to make simplified data ofEiffel Tower.

First, divide the Bounding Box intoenough small cubes for each LOD

Third, mergecollected cubesas much as possible

Second, collect cubes whichintersects withoriginal data

Last, apply newly created textureson result geometries

Creation of textures for rougher LODs from original textures

taking captures from original texture rendering

rougher LOD meshes with created texture

created texture

Example of mapping original and created textures

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

Example of detection for all visible objects on each leaf octree cell

Example of detection for all visible objects on each leaf octree cell

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)

survived spatial octreefrom frustum culling

IDs of survived objects from frustum cullingare obtained .

At last, intersection betweenvisibility indices and object IDsmakes finally visible objects.

How occlusion culling and frustum culling are performed in mago3d.

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)