3D Geospatial – Free and Open Source Software v0

This is my list of FOSS products for 3D Geospatial with a focus on web technology/WebGL and Open Standards. These are notes I keep within Evernote as part of the 3D Geospatial Notebook whose public link is: https://www.evernote.com/pub/justb4ever/3d-geospatial. This is also the first experiment to auto sync Evernote to WordPress using Zapier, so beware of any glitches in formatting! I am sure I have missed many other great products. Let me know!

OSLandia

OSLandia from Paris, France is one of the most active companies contributing to 3D Geospatial FOSS. http://www.oslandia.com/

http://www.oslandia.com/postgis-3d-foss4g-video-and-workshop-en.html

– The latest PostGIS and QGIS 3D enhancements presented at FOSS4G by Oslandia – GIS goes 3D : an OpenSource stack – Olivier Courtin – FOSS4G 2014

http://vimeo.com/106846660

Cesium

– General

“Cesium is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin. It uses WebGL for hardware-accelerated graphics, and is cross-platform, cross-browser, and tuned for dynamic-data visualization. Cesium is open source under the Apache 2.0 license. It is free for commercial and non-commercial use.”

http://cesiumjs.org/
http://cesiumjs.org/presentations/Rendering%20the%20Whole%20Wide%20World%20on%20the%20World%20Wide%20Web.pdf great presentation

– Cesium Terrain Service Preparation
https://github.com/giohappy/gdal2cesium
https://github.com/kaktus40/Cesium-GeoserverTerrainProvider

– Creating 3D terrains with Cesium – Bjørn Sandvik
http://blog.thematicmapping.org/2014/10/3d-terrains-with-cesium.html

– Migrating from Google Earth to Cesium
This is a guest post by Greg Angevine, Founder of Cube Cities Inc . His company has used the Google Earth plugin for years and has recently built impressive work with Cesium (like this )
http://cesiumjs.org/2015/01/27/Migrating-from-Earth-to-Cesium/

– Cesium and OpenLayers3
Cesium has a real focus on (OGC) standards and integrating with software implementing OGC standards. I heard that the Cesium-folks are even proposing additions to OGC 3D standards (CZML? or the very compact terrain tiling using quantized mesh?). That would be great in concert with/as payload for the upcoming 3DPS (3D Portrayal Service) standard.

http://openlayers.org/ol3-cesium/

– My Cesium experiments with Dutch OpenTopo tiles and Top10NL-3D Vector

http://app.nlextract.nl/3d/

– My Cesium experiments with Cesium-OpenLayers3 Integration using Dutch Topo Top10NL-3D Vector

http://app.nlextract.nl/3d/

Tangram

From the folks from MapZen who make much more cool stuff: “Tangram is a library for rendering 2D & 3D maps with WebGL, using GeoJSON/TopoJSON or binary vector tiles.”

https://github.com/tangrams/tangram
https://mapzen.com/tangram (demo)

D3JS

– General

D3.js is a JavaScript library for manipulating documents based on data. D3 helps you bring data to life using HTML, SVG and CSS. D3’s emphasis on web standards gives you the full capabilities of modern browsers without tying yourself to a proprietary framework, combining powerful visualization components and a data-driven approach to DOM manipulation.”
http://d3js.org/

– Kind of 3D with D3 – Maps for the Web
http://www.web-maps.com/gisblog/?p=1370

– Creating Charts and Legends for 3D Atlas Maps – A Mashup of D3.js, osgEarth, and the Chromium Embedded Framework — Raimu
http://vimeo.com/106234276

PostGIS

PostGIS has many 3D facilities. Check these out.

– Lidar/Pointclouds in PostGIS: https://github.com/pgpointcloud/pointcloud
http://workshops.boundlessgeo.com/tutorial-lidar/ (tutorial)
http://s3.cleverelephant.ca/foss4gna2013-pointcloud.pdf (paul ramsey slides)
http://boundlessgeo.com/2013/11/manage-lidar-postgis/

– TIN Support
https://smathermather.wordpress.com/2013/12/18/2-5d-tins-in-postgis/ and
https://github.com/smathermather/postgis-etc/blob/master/3D/AsTin.sql – create TINs with ST_DelaunayTriangles
http://www.oslandia.com/full-spatial-database-power-in-2-lines-en.html
also check: GRASS: http://grass.osgeo.org/grass70/manuals/addons/v.delaunay3d.html

– X3D Generation
http://postgis.net/docs/ST_AsX3D.html

– 3ddb for PostGIS (CityGML)
http://www.3dcitydb.org/
https://github.com/3dcitydb GitHub
http://www.3dcitydb.org/3dcitydb/fileadmin/downloaddata/3dcitydb-v2_0_6-postgis-tutorial.pdf

– A New Dimension To PostGIS : 3D – Olivier Courtin (Oslandia) with Hugo Mercier (Oslandia)
http://2013.foss4g.org/conf/programme/presentations/7/index.html
http://www.slideshare.net/SimeonNedkov/postgis-3d-implementation
https://www.youtube.com/watch?v=tQbE6B8JaHI

– PostGIS and CGAL CGAL https://www.cgal.org/ and https://smathermather.wordpress.com/2013/12/05/postgis-with-sfcgal-videos-how-did-i-miss-these-videos/
SFCGAL http://www.sfcgal.org/SFCGAL is a C++ wrapper library around CGAL with the aim of supporting ISO 19107:2013 and OGC Simple Features Access 1.2 for 3D operations.”

– Other PostGIS 3D Stuff
“This post explains how to setup a powerful spatial data store (PostGIS) with a wide range of features (SFCGAL, PgRouting, PostgreSQL PointCloud, PDAL)“
http://www.oslandia.com/full-spatial-database-power-in-2-lines-en.html

http://postgis3d.blogspot.nl/ (Camp2Camp – 2007 – by Mathieu ..?)

XNavigator

“XNavigator is an interactive 3D viewer and integrated client for exploring virtual city and landscape models. Instead of defining its own proprietary communication protocols, open OGC standards are used. The Open Geospatial Consortium (OGC) defines standards for accessing spatial information over the internet. The main 3D content is downloaded from a Web 3D Service (W3DS).

Additional OGC services which can be accessed include:
- Web Map Service (WMS)
- Open Location Services (OpenLS) including Route Service, Directory Service, and Geocoder
- Catalog Service for Web (CSW) ebRIM profile
- Web Feature Service (WFS) serving GML3 and CityGML content “

http://xnavigator.sourceforge.net/doku.php

ThreeJS

“The aim of the project is to create a lightweight 3D library with a very low level of complexity — in other words, for dummies. The library provides <canvas>, <svg>, CSS3D and WebGL renderers.”

http://threejs.org

W3DS

W3DS (Web 3D Service) is a portrayal service for 3D scenes. Early OGC discussion documents. Now superseded by the 3DPS, the 3D Portrayal Service, now (jan 2015) out for public comment in OGC. This is an early W3DS implementation in GeoServer that started from the dissertation work by Nuno Miguel Carvalho Oliveira (professor: Jorge Gustavo Rocha) at the University of Minho (Portugal).

http://mei.di.uminho.pt/sites/default/files/dissertacoes//eeum_di_dissertacao_pg18391.pdf – Dissertation
https://github.com/geoserver/geoserver/tree/master/src/community/w3ds – GeoServer community module
http://osgeo-org.1560.x6.nabble.com/W3DS-Implementation-up-and-running-td4665127.html – email on GeoServer list

QGIS/Horao

By OSLandia

“A simple viewer built around OpenSceneGraph … designed to listen to commands on its standard input. … The other piece is a Python plugin that is used to connect QGIS signals to the viewer (in another process) to allow loading of QGIS layers with 3D geometries.”

https://github.com/Oslandia/horao
http://www.openscenegraph.org/

Cuardo

Again By OSLandia, watch these guys!
“ Cuardo is an OpenSource WebGL 3D data viewer, focusing on urban data analysis and visualization … a 3D GIS web framework based on Three.js and WebGL, oriented toward urban visualization.“

https://github.com/Oslandia/cuardo http://www.oslandia.com/oslandia-releases-cuardo-3d-gis-viewer-en.html

Suggestions from Readers

After the first version I got quite some suggestions. Thanks!

– Glob3Mobile – @DiegoGomezDeck
“ G3M is a framework developed and designed to:
- Develop mobile maps apps in 2D, 2,5D and 3D
- Work with real time data
- Integrate any kind of data (format,size)
- Be integrated on any legacy system
- High performance mobile native development
- Multi Touch screens
- Face the problem of the mobile performance as an integrated problem between server & client

Works on iOS, Android devices and HTML5 environments. “

http://www.glob3mobile.com/