+ All Categories
Home > Technology > Foss4 g 2017-kansai-ryoo-kim

Foss4 g 2017-kansai-ryoo-kim

Date post: 23-Jan-2018
Category:
Upload: osgeo-japan
View: 354 times
Download: 2 times
Share this document with a friend
19
Development of GeoTools/Geoserver extension for handling 3-dimensional geospatial information Hyung-Gyu Ryoo ([email protected]) Soojin Kim ([email protected]) Joonseok Kim ([email protected]) Ki-Joune Li ([email protected]) Pusan National University, South Korea FOSS4G Kyoto.Kansai 2017 1
Transcript
Page 1: Foss4 g 2017-kansai-ryoo-kim

Development of GeoTools/Geoserver extension for handling 3-dimensional

geospatial informationHyung-Gyu Ryoo ([email protected])Soojin Kim ([email protected])Joonseok Kim ([email protected])Ki-Joune Li ([email protected])

Pusan National University, South KoreaFOSS4G Kyoto.Kansai 2017

1

Page 2: Foss4 g 2017-kansai-ryoo-kim

3D GIS

NASA World Wind 3.0 2

Page 3: Foss4 g 2017-kansai-ryoo-kim

Common Open Source 2D GIS Architecture

Spatial Databases

File Sources

Geospatial Server

Desktop Client

Web Client

PostGIS

OpenLayers

QGIS

GeoServer

ESRI Shapefile

Data Source Client

3

Page 4: Foss4 g 2017-kansai-ryoo-kim

Bad Architecture

My Super Server

My Super Server2

My Super Server3

My Super Server4

Data Source

PostGIS

ESRI Shapefile

Client

OpenLayers

QGIS

4

Page 5: Foss4 g 2017-kansai-ryoo-kim

Solution?

?

General 3D Spatial Server!Data Source Client

OpenLayers

QGISSpatial Databases

File

GeoServer (3D)

5

Page 6: Foss4 g 2017-kansai-ryoo-kim

66

GeoServer has limitations in handling 3D!GeoServer can handle and store points, curves and surfaces with z coordinates

But!It is impossible to store spatial information with solidsSpatial query processing is performed without z coordinates

Page 7: Foss4 g 2017-kansai-ryoo-kim

GeoServer ignore z coordinates

Front ViewView from Above

7

Page 8: Foss4 g 2017-kansai-ryoo-kim

JTS - limitation for supporting 3D in GeoServer● JTS geometries can carry a Z coordinate● What about solid geometries?● What about 3D spatial operations?

OGC::Simple Feature Access

based on

<Java Class>JTS::Geometry

8

Page 9: Foss4 g 2017-kansai-ryoo-kim

ISO 19107 spatial schema-based interface

<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

9

Page 10: Foss4 g 2017-kansai-ryoo-kim

How to support 3D spatial operations

● 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■ Supporting OGC Simple Features Access 1.2 and ISO 19107:2013 for 3D

operations.

10

Page 11: Foss4 g 2017-kansai-ryoo-kim

11

New ISO 19107 Geometry Module

● Support 3D Geometry including Solid

● Support 3D operations○ distance, area, volume, convexHull...○ intersects, contains, within...○ intersection, difference, union...

Page 12: Foss4 g 2017-kansai-ryoo-kim

12

Codes are coupled with JTS!

Page 13: Foss4 g 2017-kansai-ryoo-kim

13

Simple Strategy

1. Use a well-defined interfaces in GeoServer/GeoTools2. Copy and rewrite classes to support ISO 19107 geometries 3. Leave codes that are not coupled with JTS as much as possible4. For copied codes, perform unit tests

Page 14: Foss4 g 2017-kansai-ryoo-kim

New Open Source 3D GIS Stack

DBMS/File

GeoTools

GeoServer

Services/Applications

OS

Cesium/NASA World Wind/QGIS

Ubuntu/CentOSOracle/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 PostGISSFCGAL 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)

14

Page 15: Foss4 g 2017-kansai-ryoo-kim

Demo

GeoServer 3D

Draw

WFSRequest

3D DataStore

WFS Client Highlighting

WFSResponse

RegisterStore

15

Page 16: Foss4 g 2017-kansai-ryoo-kim

Demonstration Video

16

Page 17: Foss4 g 2017-kansai-ryoo-kim

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● Test and improve again and again to be stable

17

Page 18: Foss4 g 2017-kansai-ryoo-kim

18

“People think that computer science is the art of geniuses but the actual reality is the opposite,

just many people doing things that build on each other, like a wall of mini stones.”

– Donald E. Knuth

Page 19: Foss4 g 2017-kansai-ryoo-kim

Thank you

19

[email protected] | @hg_ryoo (twitter)[email protected] | @soojin_kim_gis (twitter)https://github.com/STEMLab/geotools-3d-extensionhttps://github.com/STEMLab/geoserver-3d-extension


Recommended