SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Development of an extension
of GeoServer for handling
3D spatial data
Hyung-Gyu Ryoo (hgryoo@pnu.edu)
Soojin Kim (soojin.kim@pnu.edu)
Joonseok Kim (joonseok@pnu.edu)
Ki-Joune Li (lik@pnu.edu)
Pusan National University, South Korea
FOSS4G 2017 Boston - August 18, 2017
1
FOSS4G 2017 Boston
August 18, 2017
About Us
2
Main Developers AdvisorInitial Design
Hyung-Gyu Ryoo
(hgryoo@pnu.edu)
Soojin Kim
(soojin.kim@pnu.edu)
Dr. Joonseok Kim
(joonseok@pnu.edu)
Prof. Ki-Joune Li
(lik@pnu.edu)
FOSS4G 2017 Boston
August 18, 2017
3
FOSS4G 2017 Boston
August 18, 2017
NOTICE
This project is not be perfect
This project is a new challenge
Your insights and feedback
4
FOSS4G 2017 Boston
August 18, 2017
Contents
● Why do we need GeoServer 3D?
● GeoServer/GeoTools 3D
● Demonstration
● Next Steps
● Summary
5
FOSS4G 2017 Boston
August 18, 2017
Common Open Source 2D GIS Architecture
6
Spatial
Databases
File
Sources
Geospatial
Server
Desktop
Client
Web
Client
PostGIS
OpenLayers
QGIS
GeoServer
ESRI Shapefile
FOSS4G 2017 Boston
August 18, 2017
Why we need Geospatial server?
7
Spatial
Databases
File
Sources
Desktop
Client
Web
Client
My Super
Server
My Super
Server2
My Super
Server3
My Super
Server4
FOSS4G 2017 Boston
August 18, 2017
Common Open Source 2D GIS Architecture
8
Spatial
Databases
File
Sources
Geospatial
Server
Desktop
Client
Web
Client
PostGIS
OpenLayers
QGIS
GeoServer
ESRI Shapefile
FOSS4G 2017 Boston
August 18, 2017
Open source 3D GIS data visualization tools
9
(cesiumjs.org) (itowns-project.org)
NASA World Wind
(worldwind.arc.nasa.gov)
FOSS4G 2017 Boston
August 18, 2017
SFCGAL
Data Stores Supporting 3D
10
(postgis.net)
(oracle.com/database/spatial/)
(sfcgal.org)
FOSS4G 2017 Boston
August 18, 2017
For Open Source 3D GIS Architecture?
11
Spatial
Databases
File
Sources
Geospatial
Server
Desktop
Client
Web
Client
FOSS4G 2017 Boston
August 18, 2017
Existing Open Source 3D GIS Stack
12
(3dcitydb.org)
?
FOSS4G 2017 Boston
August 18, 2017
Requirements of a general 3D spatial data server
13
1.Data structures to store features with 3D geometries
2.Functions to process queries on 3D objects
3.Connections to data stores able to store 3D spatial
information
4.Standard web services for sharing 3D spatial information
FOSS4G 2017 Boston
August 18, 2017
For Open Source 3D GIS Architecture?
Spatial
Databases
File
Sources
Desktop
Client
Web
Client
?
GeoServer 3D
14
FOSS4G 2017 Boston
August 18, 2017 15
● Representative open source spatial data servers
● Based on GeoTools
● Provide a variety of spatial data sources by excellent
abstraction
● Geospatial web services that provides functions to share
and query spatial data (OGC - WMS, WFS and WPS).
(geotools.org)(geoserver.org)About GeoServer
FOSS4G 2017 Boston
August 18, 2017
Excellent Abstraction
16
FeatureSource
DataStore
Data Type
Query
Feature Feature
Type
Filter
Function
Expression
WFS
FOSS4G 2017 Boston
August 18, 2017
GeoServer has limitations in handling 3D!
17
GeoServer can handle and store points, curves and surfaces
with z coordinates
But!
It is impossible to store spatial information with solids
Spatial query processing is performed without z coordinates
Why?
FOSS4G 2017 Boston
August 18, 2017
JTS - limitation for supporting 3D in GeoServer
● JTS geometries can carry a Z coordinate
● What about solid geometries?
● What about 3D spatial operations?
18
OGC::Simple Feature Access
based on
<Java Class>
JTS::Geometry
FOSS4G 2017 Boston
August 18, 2017
ISO 19107 spatial schema-based interface
19
<Java Interface>
ISO 19107 Spatial Schema
<Java Class>
ISO 19107 Geometries
Implementation
gt-geometry
● Implementations of ISO Geometry supported as an
unsupported module
● 3D spatial operations are not implemented
FOSS4G 2017 Boston
August 18, 2017
We had two options!
● Options
○ Develop or port every function from scratch
○ Reuse or utilize existing open source libraries
20
● Existing open source library for 3D spatial operations
○ CGAL (GNU LGPL 3+, GNU GPL 3+)
■ C++, A variety of robust computational geometry algorithms in 3D
spaces as well as 2D
■ Different from those in GIS domains
○ Simple Feature CGAL (GNU LGPL 2+) by Oslandia
■ C++, Based on CGAL and Boost
FOSS4G 2017 Boston
August 18, 2017
<Java>
GeoServer
ISO Geometry
Geometry
DirectPosition
Point
Curve
...
Connecting SFCGAL to ISO Geometry module
21
<C++>
SFCGAL
Geometry
Algorithm
CGAL
Boost
SFCGAL
Converter
JavaCPP
SFCGAL
Java Wrapper
Geometry
Algorithm
FOSS4G 2017 Boston
August 18, 2017
Example of performing 3D operations
using SFCGAL
22
Ex) Intersects between Curve and Solid
<ISO 19107>
Curve
<ISO 19107>
Solid
<SFCGAL>
SFLineString
<SFCGAL>
SFSolid
<SFCGAL>
IntersectsOperation
true/false
FOSS4G 2017 Boston
August 18, 2017
New ISO 19107 Geometry Module
● Easy installation for Ubuntu users
○ sudo ./cppbuild.sh //Boost, CGAL and SFCGAL are installed
○ mvn clean install
● Support 3D operations
○ distance, area, volume, convexHull...
○ intersects, contains, within...
○ intersection, difference, union...
23
FOSS4G 2017 Boston
August 18, 2017
Now, Done?
Absolutely
Not!
Long way to go...
24
FOSS4G 2017 Boston
August 18, 2017
Next?
25
Examine GeoTools/GeoServer from bottom to top
WFS
FOSS4G 2017 Boston
August 18, 2017
Codes are coupled with JTS!
26
FOSS4G 2017 Boston
August 18, 2017
Simple strategy
1.Use a well-defined interfaces in GeoServer/GeoTools
2.Copy and rewrite classes to support ISO 19107 geometries
if the class is connected to a JTS geometries
3.Leave codes that are not coupled with JTS as much as
possible
4.For copied codes, perform unit tests
27
FOSS4G 2017 Boston
August 18, 2017
A Data Store for 3D Spatial Information
28
● File data store
○ CSV
○ GeoJSON
○ GML
● Database data store
○ PostGIS
○ Oracle
FOSS4G 2017 Boston
August 18, 2017
A Data Store for 3D Spatial Information
29
Apply the 3D filter condition
using the SFCGAL operation
Candidate
features
Select features
without a 3D filter condition
Result
features
Select features
with a 3D filter condition
supported by data store
Y
N
Get Features
with a 3D spatial filter
Can the filter be supported in data store?
END
FOSS4G 2017 Boston
August 18, 2017
WFS Extension for 3D Queries
30
● Web Feature Service (WFS)
○ An interface for providing spatial data in vector format
○ WFS 1.1 supports GML 3.1.1 used in HTTP requests from and responses
to the client
○ the GML 3.1.1 contains solids element
● Encoding/Decoding of GML Elements contained in 3D filter
conditions.
FOSS4G 2017 Boston
August 18, 2017
WFS Extension for 3D Queries
31
Data Store
WFS Request/Response
Data
Feature
Collection
GML ⇔ Features with ISO Geometry
Filter
GeoServer
WFS Client
Data store
Query region
FOSS4G 2017 Boston
August 18, 2017
3D Open Source Software Stack GeoServer
32
DBMS/File
GeoTools
GeoServer
Services/Applications
OS
Cesium/NASA World Wind/QGIS
Ubuntu/CentOS
Oracle/PostGIS
FeatureStore
(Well defined)
GML/ShapeFile...
I/O Plugins
[GeoJSON, ShapeFIle…]
DataStores
[JDBCDataStore/FileDataStore]
Query/Filter
(JTS Only)
WPS Process
(JTS Only)
SQLDialect
Data Management
[Vector, DB]
Services
[WFS, WCS, WPS, WMS]
Web Administration
UI
Oracle
PostGIS
SFCGAL Extension
New DataStores
(uses ISO Geometry)
New SQLDialect, I/O Plugin
(type mapping to ISO Geometry)
New FilterFactory,
(uses SFCGAL query evaluation)
WPS Process
(new proc using ISO geometry)
GeoServer 3D Extension
XML Binidng
(JTS Only)
XML Binding
(uses ISO geometry)
WFS 1.1 Service
(uses ISO geometry)
Demonstration
33
FOSS4G 2017 Boston
August 18, 2017
Demonstration(1/3) - Overview
34
GeoServer 3D
Draw
WFS
Request
PostGIS 3D
WFS Client
Highlighting
WFS
Response
RegisterStore
FOSS4G 2017 Boston
August 18, 2017
Demonstration(2/3) - Test Data
35
● Test data 1 - Extruded Buildings from OSM data
○ Buildings with height over 3m in Boston
○ 39712 number of buildings
○ Each building is made of solid geometry.
FOSS4G 2017 Boston
August 18, 2017
Demonstration(3/3) - Test Data
36
● Test data 2 - Indoor data with 3D rooms from IndoorGML data
○ Rooms and corridors in a shopping mall in Seoul.
○ 3496 number of rooms
○ Each room is made of solid geometry.
FOSS4G 2017 Boston
August 18, 2017
Next Steps
● Documentation!
● Administration GUI for 3D
● Making a switch between JTS and ISO Geometry
● Supporting WFS 2.0 version to support rich set of
advanced functions
● Plain WFS => Tiling
● Test and improve again and again to be stable
37
FOSS4G 2017 Boston
August 18, 2017
OGC Visualization Model
38
Data
Repository
Select
Display
Element
Generator
Render
Display
Internet
Thin
Server
(WFS)
Thick
Client
Data
Repository
Select
Display
Element
Generator
Internet
Data
Repository
Select
Display
Element
Generator
InternetRender
Display
Render
Display
Medium
Client
Medium
Server
(W3DS)
Thick
Server
Thin
Client
FOSS4G 2017 Boston
August 18, 2017
Summary
● GeoServer does not support 3D spatial data handling
because it has been implemented based on Simple Feature
Access Specification
● We developed new implementation of ISO 19107 geometric
model, which can support 3D spatial geometry and
computation
● We extended lots of modules to support 3D functionalities
based on the geometric model
39
FOSS4G 2017 Boston
August 18, 2017
Thank you!
40
hgryoo@pnu.edu | @hgryoo
https://github.com/STEMLab/geotools-3d-extension
https://github.com/STEMLab/geoserver-3d-extension

Weitere ähnliche Inhalte

Was ist angesagt?

Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...GeoSolutions
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoSolutions
 
GeoServer on Steroids
GeoServer on Steroids GeoServer on Steroids
GeoServer on Steroids GeoSolutions
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesGeoSolutions
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...GeoSolutions
 
Map box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayersMap box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayersJody Garnett
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServerJody Garnett
 
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013GeoSolutions
 
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...GeoSolutions
 
GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoSolutions
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...GeoSolutions
 
GeoServer on steroids
GeoServer on steroidsGeoServer on steroids
GeoServer on steroidsGeoSolutions
 
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingSpatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingGeoSolutions
 
State of GeoServer 2015
State of GeoServer 2015State of GeoServer 2015
State of GeoServer 2015Jody Garnett
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015GeoSolutions
 
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoSolutions
 
Java Image Processing for Geospatial Community
Java Image Processing for Geospatial CommunityJava Image Processing for Geospatial Community
Java Image Processing for Geospatial CommunityJody Garnett
 
State of GeoServer 2.10
State of GeoServer 2.10State of GeoServer 2.10
State of GeoServer 2.10Jody Garnett
 
Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015GeoSolutions
 
GeoServer Orientation
GeoServer OrientationGeoServer Orientation
GeoServer OrientationJody Garnett
 

Was ist angesagt? (20)

Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_2015
 
GeoServer on Steroids
GeoServer on Steroids GeoServer on Steroids
GeoServer on Steroids
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...
 
Map box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayersMap box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayers
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServer
 
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
 
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
 
GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginners
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
 
GeoServer on steroids
GeoServer on steroidsGeoServer on steroids
GeoServer on steroids
 
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingSpatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
 
State of GeoServer 2015
State of GeoServer 2015State of GeoServer 2015
State of GeoServer 2015
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015
 
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
 
Java Image Processing for Geospatial Community
Java Image Processing for Geospatial CommunityJava Image Processing for Geospatial Community
Java Image Processing for Geospatial Community
 
State of GeoServer 2.10
State of GeoServer 2.10State of GeoServer 2.10
State of GeoServer 2.10
 
Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015
 
GeoServer Orientation
GeoServer OrientationGeoServer Orientation
GeoServer Orientation
 

Ähnlich wie [FOSS4G 2017 Boston]Development of an extension of Geoserver for handling 3D spatial data

Foss4 g 2017-kansai-ryoo-kim
Foss4 g 2017-kansai-ryoo-kimFoss4 g 2017-kansai-ryoo-kim
Foss4 g 2017-kansai-ryoo-kimOSgeo Japan
 
uStorage - A storage architecture to provide Block-level Storage through Obje...
uStorage - A storage architecture to provide Block-level Storage through Obje...uStorage - A storage architecture to provide Block-level Storage through Obje...
uStorage - A storage architecture to provide Block-level Storage through Obje...Felipe Gutierrez
 
Powerful geographic web framework GeoDjango
Powerful geographic web framework GeoDjangoPowerful geographic web framework GeoDjango
Powerful geographic web framework GeoDjangoOMEGA (@equal_001)
 
Readinggroup xiang 24112016
Readinggroup xiang 24112016Readinggroup xiang 24112016
Readinggroup xiang 24112016Xiang Zhang
 
Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"Fwdays
 
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)Oleksandr Tryshchenko
 
Identity & Access Management Briefing
Identity & Access Management BriefingIdentity & Access Management Briefing
Identity & Access Management BriefingCharise Arrowood
 
State of GeoServer 2.13
State of GeoServer 2.13State of GeoServer 2.13
State of GeoServer 2.13Jody Garnett
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GISSANGHEE SHIN
 
gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...
gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...
gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...Giuseppe Broccolo
 
Introduction of MAGO3D
Introduction of MAGO3DIntroduction of MAGO3D
Introduction of MAGO3DSANGHEE SHIN
 
LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...
LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...
LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...Pieter Pauwels
 
State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014Jody Garnett
 
Giving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS CommunityGiving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS CommunityMongoDB
 
What we've done so far with mago3D, an open source based 'Digital Twin' platf...
What we've done so far with mago3D, an open source based 'Digital Twin' platf...What we've done so far with mago3D, an open source based 'Digital Twin' platf...
What we've done so far with mago3D, an open source based 'Digital Twin' platf...SANGHEE SHIN
 
Moving to Web GIS: Transforming an Organization
Moving to Web GIS: Transforming an OrganizationMoving to Web GIS: Transforming an Organization
Moving to Web GIS: Transforming an OrganizationAndrew Valenski
 
Look, Listen and Act [Navigation via Reinforcement Learning]
Look, Listen and Act [Navigation via Reinforcement Learning]Look, Listen and Act [Navigation via Reinforcement Learning]
Look, Listen and Act [Navigation via Reinforcement Learning]이 의령
 
3D Environment : HomeNavigation
3D Environment : HomeNavigation3D Environment : HomeNavigation
3D Environment : HomeNavigationYeChan(Paul) Kim
 
ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!
ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!
ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!EDINA, University of Edinburgh
 

Ähnlich wie [FOSS4G 2017 Boston]Development of an extension of Geoserver for handling 3D spatial data (20)

Foss4 g 2017-kansai-ryoo-kim
Foss4 g 2017-kansai-ryoo-kimFoss4 g 2017-kansai-ryoo-kim
Foss4 g 2017-kansai-ryoo-kim
 
uStorage - A storage architecture to provide Block-level Storage through Obje...
uStorage - A storage architecture to provide Block-level Storage through Obje...uStorage - A storage architecture to provide Block-level Storage through Obje...
uStorage - A storage architecture to provide Block-level Storage through Obje...
 
Powerful geographic web framework GeoDjango
Powerful geographic web framework GeoDjangoPowerful geographic web framework GeoDjango
Powerful geographic web framework GeoDjango
 
Readinggroup xiang 24112016
Readinggroup xiang 24112016Readinggroup xiang 24112016
Readinggroup xiang 24112016
 
Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"
 
GIS PPT
GIS PPTGIS PPT
GIS PPT
 
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
 
Identity & Access Management Briefing
Identity & Access Management BriefingIdentity & Access Management Briefing
Identity & Access Management Briefing
 
State of GeoServer 2.13
State of GeoServer 2.13State of GeoServer 2.13
State of GeoServer 2.13
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GIS
 
gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...
gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...
gbroccolo - Use of Indexes on geospatial databases with PostgreSQL - FOSS4G.E...
 
Introduction of MAGO3D
Introduction of MAGO3DIntroduction of MAGO3D
Introduction of MAGO3D
 
LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...
LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...
LOA seminar 2017 - Product and 3D geometry ontologies at action in constructi...
 
State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014
 
Giving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS CommunityGiving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS Community
 
What we've done so far with mago3D, an open source based 'Digital Twin' platf...
What we've done so far with mago3D, an open source based 'Digital Twin' platf...What we've done so far with mago3D, an open source based 'Digital Twin' platf...
What we've done so far with mago3D, an open source based 'Digital Twin' platf...
 
Moving to Web GIS: Transforming an Organization
Moving to Web GIS: Transforming an OrganizationMoving to Web GIS: Transforming an Organization
Moving to Web GIS: Transforming an Organization
 
Look, Listen and Act [Navigation via Reinforcement Learning]
Look, Listen and Act [Navigation via Reinforcement Learning]Look, Listen and Act [Navigation via Reinforcement Learning]
Look, Listen and Act [Navigation via Reinforcement Learning]
 
3D Environment : HomeNavigation
3D Environment : HomeNavigation3D Environment : HomeNavigation
3D Environment : HomeNavigation
 
ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!
ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!
ShareGeo: Discovering and Sharing Geospatial Data - 12 months on and going open!
 

Kürzlich hochgeladen

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 

Kürzlich hochgeladen (20)

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 

[FOSS4G 2017 Boston]Development of an extension of Geoserver for handling 3D spatial data

  • 1. Development of an extension of GeoServer for handling 3D spatial data Hyung-Gyu Ryoo (hgryoo@pnu.edu) Soojin Kim (soojin.kim@pnu.edu) Joonseok Kim (joonseok@pnu.edu) Ki-Joune Li (lik@pnu.edu) Pusan National University, South Korea FOSS4G 2017 Boston - August 18, 2017 1
  • 2. FOSS4G 2017 Boston August 18, 2017 About Us 2 Main Developers AdvisorInitial Design Hyung-Gyu Ryoo (hgryoo@pnu.edu) Soojin Kim (soojin.kim@pnu.edu) Dr. Joonseok Kim (joonseok@pnu.edu) Prof. Ki-Joune Li (lik@pnu.edu)
  • 4. FOSS4G 2017 Boston August 18, 2017 NOTICE This project is not be perfect This project is a new challenge Your insights and feedback 4
  • 5. FOSS4G 2017 Boston August 18, 2017 Contents ● Why do we need GeoServer 3D? ● GeoServer/GeoTools 3D ● Demonstration ● Next Steps ● Summary 5
  • 6. FOSS4G 2017 Boston August 18, 2017 Common Open Source 2D GIS Architecture 6 Spatial Databases File Sources Geospatial Server Desktop Client Web Client PostGIS OpenLayers QGIS GeoServer ESRI Shapefile
  • 7. FOSS4G 2017 Boston August 18, 2017 Why we need Geospatial server? 7 Spatial Databases File Sources Desktop Client Web Client My Super Server My Super Server2 My Super Server3 My Super Server4
  • 8. FOSS4G 2017 Boston August 18, 2017 Common Open Source 2D GIS Architecture 8 Spatial Databases File Sources Geospatial Server Desktop Client Web Client PostGIS OpenLayers QGIS GeoServer ESRI Shapefile
  • 9. FOSS4G 2017 Boston August 18, 2017 Open source 3D GIS data visualization tools 9 (cesiumjs.org) (itowns-project.org) NASA World Wind (worldwind.arc.nasa.gov)
  • 10. FOSS4G 2017 Boston August 18, 2017 SFCGAL Data Stores Supporting 3D 10 (postgis.net) (oracle.com/database/spatial/) (sfcgal.org)
  • 11. FOSS4G 2017 Boston August 18, 2017 For Open Source 3D GIS Architecture? 11 Spatial Databases File Sources Geospatial Server Desktop Client Web Client
  • 12. FOSS4G 2017 Boston August 18, 2017 Existing Open Source 3D GIS Stack 12 (3dcitydb.org) ?
  • 13. FOSS4G 2017 Boston August 18, 2017 Requirements of a general 3D spatial data server 13 1.Data structures to store features with 3D geometries 2.Functions to process queries on 3D objects 3.Connections to data stores able to store 3D spatial information 4.Standard web services for sharing 3D spatial information
  • 14. FOSS4G 2017 Boston August 18, 2017 For Open Source 3D GIS Architecture? Spatial Databases File Sources Desktop Client Web Client ? GeoServer 3D 14
  • 15. FOSS4G 2017 Boston August 18, 2017 15 ● Representative open source spatial data servers ● Based on GeoTools ● Provide a variety of spatial data sources by excellent abstraction ● Geospatial web services that provides functions to share and query spatial data (OGC - WMS, WFS and WPS). (geotools.org)(geoserver.org)About GeoServer
  • 16. FOSS4G 2017 Boston August 18, 2017 Excellent Abstraction 16 FeatureSource DataStore Data Type Query Feature Feature Type Filter Function Expression WFS
  • 17. FOSS4G 2017 Boston August 18, 2017 GeoServer has limitations in handling 3D! 17 GeoServer can handle and store points, curves and surfaces with z coordinates But! It is impossible to store spatial information with solids Spatial query processing is performed without z coordinates Why?
  • 18. FOSS4G 2017 Boston August 18, 2017 JTS - limitation for supporting 3D in GeoServer ● JTS geometries can carry a Z coordinate ● What about solid geometries? ● What about 3D spatial operations? 18 OGC::Simple Feature Access based on <Java Class> JTS::Geometry
  • 19. FOSS4G 2017 Boston August 18, 2017 ISO 19107 spatial schema-based interface 19 <Java Interface> ISO 19107 Spatial Schema <Java Class> ISO 19107 Geometries Implementation gt-geometry ● Implementations of ISO Geometry supported as an unsupported module ● 3D spatial operations are not implemented
  • 20. FOSS4G 2017 Boston August 18, 2017 We had two options! ● Options ○ Develop or port every function from scratch ○ Reuse or utilize existing open source libraries 20 ● Existing open source library for 3D spatial operations ○ CGAL (GNU LGPL 3+, GNU GPL 3+) ■ C++, A variety of robust computational geometry algorithms in 3D spaces as well as 2D ■ Different from those in GIS domains ○ Simple Feature CGAL (GNU LGPL 2+) by Oslandia ■ C++, Based on CGAL and Boost
  • 21. FOSS4G 2017 Boston August 18, 2017 <Java> GeoServer ISO Geometry Geometry DirectPosition Point Curve ... Connecting SFCGAL to ISO Geometry module 21 <C++> SFCGAL Geometry Algorithm CGAL Boost SFCGAL Converter JavaCPP SFCGAL Java Wrapper Geometry Algorithm
  • 22. FOSS4G 2017 Boston August 18, 2017 Example of performing 3D operations using SFCGAL 22 Ex) Intersects between Curve and Solid <ISO 19107> Curve <ISO 19107> Solid <SFCGAL> SFLineString <SFCGAL> SFSolid <SFCGAL> IntersectsOperation true/false
  • 23. FOSS4G 2017 Boston August 18, 2017 New ISO 19107 Geometry Module ● Easy installation for Ubuntu users ○ sudo ./cppbuild.sh //Boost, CGAL and SFCGAL are installed ○ mvn clean install ● Support 3D operations ○ distance, area, volume, convexHull... ○ intersects, contains, within... ○ intersection, difference, union... 23
  • 24. FOSS4G 2017 Boston August 18, 2017 Now, Done? Absolutely Not! Long way to go... 24
  • 25. FOSS4G 2017 Boston August 18, 2017 Next? 25 Examine GeoTools/GeoServer from bottom to top WFS
  • 26. FOSS4G 2017 Boston August 18, 2017 Codes are coupled with JTS! 26
  • 27. FOSS4G 2017 Boston August 18, 2017 Simple strategy 1.Use a well-defined interfaces in GeoServer/GeoTools 2.Copy and rewrite classes to support ISO 19107 geometries if the class is connected to a JTS geometries 3.Leave codes that are not coupled with JTS as much as possible 4.For copied codes, perform unit tests 27
  • 28. FOSS4G 2017 Boston August 18, 2017 A Data Store for 3D Spatial Information 28 ● File data store ○ CSV ○ GeoJSON ○ GML ● Database data store ○ PostGIS ○ Oracle
  • 29. FOSS4G 2017 Boston August 18, 2017 A Data Store for 3D Spatial Information 29 Apply the 3D filter condition using the SFCGAL operation Candidate features Select features without a 3D filter condition Result features Select features with a 3D filter condition supported by data store Y N Get Features with a 3D spatial filter Can the filter be supported in data store? END
  • 30. FOSS4G 2017 Boston August 18, 2017 WFS Extension for 3D Queries 30 ● Web Feature Service (WFS) ○ An interface for providing spatial data in vector format ○ WFS 1.1 supports GML 3.1.1 used in HTTP requests from and responses to the client ○ the GML 3.1.1 contains solids element ● Encoding/Decoding of GML Elements contained in 3D filter conditions.
  • 31. FOSS4G 2017 Boston August 18, 2017 WFS Extension for 3D Queries 31 Data Store WFS Request/Response Data Feature Collection GML ⇔ Features with ISO Geometry Filter GeoServer WFS Client Data store Query region
  • 32. FOSS4G 2017 Boston August 18, 2017 3D Open Source Software Stack GeoServer 32 DBMS/File GeoTools GeoServer Services/Applications OS Cesium/NASA World Wind/QGIS Ubuntu/CentOS Oracle/PostGIS FeatureStore (Well defined) GML/ShapeFile... I/O Plugins [GeoJSON, ShapeFIle…] DataStores [JDBCDataStore/FileDataStore] Query/Filter (JTS Only) WPS Process (JTS Only) SQLDialect Data Management [Vector, DB] Services [WFS, WCS, WPS, WMS] Web Administration UI Oracle PostGIS SFCGAL Extension New DataStores (uses ISO Geometry) New SQLDialect, I/O Plugin (type mapping to ISO Geometry) New FilterFactory, (uses SFCGAL query evaluation) WPS Process (new proc using ISO geometry) GeoServer 3D Extension XML Binidng (JTS Only) XML Binding (uses ISO geometry) WFS 1.1 Service (uses ISO geometry)
  • 34. FOSS4G 2017 Boston August 18, 2017 Demonstration(1/3) - Overview 34 GeoServer 3D Draw WFS Request PostGIS 3D WFS Client Highlighting WFS Response RegisterStore
  • 35. FOSS4G 2017 Boston August 18, 2017 Demonstration(2/3) - Test Data 35 ● Test data 1 - Extruded Buildings from OSM data ○ Buildings with height over 3m in Boston ○ 39712 number of buildings ○ Each building is made of solid geometry.
  • 36. FOSS4G 2017 Boston August 18, 2017 Demonstration(3/3) - Test Data 36 ● Test data 2 - Indoor data with 3D rooms from IndoorGML data ○ Rooms and corridors in a shopping mall in Seoul. ○ 3496 number of rooms ○ Each room is made of solid geometry.
  • 37. FOSS4G 2017 Boston August 18, 2017 Next Steps ● Documentation! ● Administration GUI for 3D ● Making a switch between JTS and ISO Geometry ● Supporting WFS 2.0 version to support rich set of advanced functions ● Plain WFS => Tiling ● Test and improve again and again to be stable 37
  • 38. FOSS4G 2017 Boston August 18, 2017 OGC Visualization Model 38 Data Repository Select Display Element Generator Render Display Internet Thin Server (WFS) Thick Client Data Repository Select Display Element Generator Internet Data Repository Select Display Element Generator InternetRender Display Render Display Medium Client Medium Server (W3DS) Thick Server Thin Client
  • 39. FOSS4G 2017 Boston August 18, 2017 Summary ● GeoServer does not support 3D spatial data handling because it has been implemented based on Simple Feature Access Specification ● We developed new implementation of ISO 19107 geometric model, which can support 3D spatial geometry and computation ● We extended lots of modules to support 3D functionalities based on the geometric model 39
  • 40. FOSS4G 2017 Boston August 18, 2017 Thank you! 40 hgryoo@pnu.edu | @hgryoo https://github.com/STEMLab/geotools-3d-extension https://github.com/STEMLab/geoserver-3d-extension