“The central difference between DB4GeO and PostGIS 1.x”

Shared via SlashGeo.com

Re: DB4GeO: Open Source Geospatial Database for 3D Data

Dear Alex,

thank you for your question. As you may know, some major changes have taken place in PostGIS 2.0 compared to versions 1.x.

The central difference between DB4GeO and PostGIS 1.x is that DB4GeO is a truly 3D database, that is, the z-coordinate is handled in exactly the same way as the x- and y-coordinate. In DB4GeO, geometric operations (distance calculation, intersection etc.) are truly 3D; a 3D R*-tree is used for indexing.

By contrast, in PostGIS 1.x a z-value can be stored but geometric operations are basically 2-dimensional, for example:

* Relationship operators ignore the 3rd dimension: if two objects lie above each other without intersection, asking if they intersect will result in a positive answer.

* Overlay functions such as intersection or union are carried out, they are calculated only for the 2D part of the geometry, and the z-coordinate is then interpolated.

* The bounding boxes used in PostGIS 1.x are 2-dimensional.

In PostGIS 2.0, support for 3D geometries and a library of 3D functions (e.g. 3D intersections or calculating distances in 3D) have been added; spatial indices consider three dimensions. Since the new version is relatively recent, we have not practically tried it out yet.

And yes, DB4GeO has not gone out of academic environment so far. From the very beginning, it was designed specifically with geoscientific (primarily geology) applications in mind (hence its “real 3D” nature). This is reflected in some of its functionality, e.g. the 3D-to-2D operation (calculates a profile along a given polyline) or the drilling operation (returns the intersection of a polyline with a 3D object). PostGIS was created rather for application areas where traditional (2D) GIS are applied.

The DB3D Core API (db3dcore), which is available at github, is a library of 3D geometric data types (and its methods) written completely in Java and it even provides the possibility to build topologically defined nets (for example triangle nets). The DB4GeO Core API can be used in several kinds of geometric computation settings such as in geoscientific information systems.

The Chair in Geoinformatics of the Geodetic Institute of the Karlsruhe Institute of Technology is additionally providing the following modules that are designed on top of this kernel API:

  * database server
  * complex operations (like cross section operation)
  * project management
  * thematical data
  * time (4D) model

These modules are not part of the open source repository.

We are happy about your interest in DB4GeO and look forward to further questions.

Best wishes,

DB4GeO development team.


Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s