the OpenSource on GIS

by Paul Ramsey, Director of refractions from The State of Open Source GIS
In this Diagram, we could find out that PostGIS mainly depend on three libraries: GEOS, OGR/GDAL and Proj4. They got their own functions.fortunately, they are all C-based.The shared libraries provide common capabilities across the various C-based applications, allowing applications to easily add features which would ordinarily involve a great deal of implementation.

PostGIS adds spatial database capabilities to the PostgreSQL object-relational database. The PostGIS extension adds:

Proper spatial objects (point, line, polygon, multipoint, multiline, multipolygon, geometrycollection)

Spatial indexing (r-tree)

Simple analytical functions (area, length, distance)

Predicates (via GEOS)

Operators (via GEOS)

Coordinate system metadata

Coordinate reprojection support (via Proj4)

Data import and export tools

The strength of PostGIS is that it has become the standard spatial database backend for all the other open source GIS tools. As a result, a layer in PostGIS can be analyzed with GRASS, published over the web with Mapserver, visualized on the desktop with OpenEV, exported to proprietary formats with OGR.

GDAL/OGR
The GDAL/OGR libraries are really two logically separate pieces of code: GDAL provides an abstraction library for raster data and modules for reading and writing various raster formats; OGR provides an abstraction library for vector data and modules for reading and writing vector formats. However, the two libraries are maintained within the same build system for historical reasons and because both libraries are maintained by the same person.
Maintainer: Frank Warmerdam
Web Site: http://remotesensing.org/gdal/
Implementation Language: C++
Source License: MIT

Proj4
Proj4 is a coordinate re-projection library, capable of executing transformations between cartographic projection systems, and also between different spheroids and datums (where datum grid shifts are available).
The Proj4 library was originally written by Gerald Evenden as a utility library for the US Geological Survey (USGS). The current maintainer is Frank Warmerdam, who began maintaining Proj4 after Evenden ceased actively working on the project. Evenden remains active on the mailing list, and is currently providing new mathematical projections, though not providing code maintenance.
Maintainer: Frank Warmerdam
Web Site: http://remotesensing.org/proj/
Implementation Language: C
Source License: MIT-style

GEOS
GEOS is the “Geometry Engine, Open Source”, a C++ implementation of the JTS topology library. GEOS provides C++ implementations of all the simple features objects found in the OpenGIS “Simple Features for SQL” specification, and implementations of all the methods defined for those objects.
Topological calculations are easy to visualize, but hard to implement in generality. The GEOS/JTS algorithms are robust for all the spatial predicates (geometric comparisons which return true/false values). The GEOS/JTS are also strong in the spatial operators (geometric functions which produce geometric results).
Maintainer: Refractions Research
Web Site: http://geos.refractions.net/
Implementation Language: C++
Source License: LGPL

Share with:

  • email
  • LinkedIn
  • Twitter
  • Facebook
  • del.icio.us
  • StumbleUpon
  • Reddit
  • Digg
  • 豆瓣

Related posts: