Difference between revisions of "OSGeo Python Library"

From OSGeo
Jump to navigation Jump to search
(+http://download.osgeo.org/grass/grass6_progman/pythonlib.html)
Line 25: Line 25:
 
* [http://mapserver.gis.umn.edu/docs/howto/mapscript_python Mapserver Python bindings]
 
* [http://mapserver.gis.umn.edu/docs/howto/mapscript_python Mapserver Python bindings]
 
* [http://wiki.qgis.org/qgiswiki/PythonBindings QGIS Python bindings]
 
* [http://wiki.qgis.org/qgiswiki/PythonBindings QGIS Python bindings]
* [http://grass.gdf-hannover.de/wiki/GRASS_and_Python GRASS SWIG Python bindings]
+
* [http://grass.osgeo.org/wiki/GRASS_and_Python GRASS SWIG Python bindings] and [http://download.osgeo.org/grass/grass6_progman/pythonlib.html GRASS Python library]
 
* [http://gispython.org PCL and PrimaGIS]
 
* [http://gispython.org PCL and PrimaGIS]
 
* [http://pygps.org/ Python GIS] Working on a pile of GIS programs in Python. Mostly they make maps, but targetting a total replacement of GRASS, so calling it Python GIS.
 
* [http://pygps.org/ Python GIS] Working on a pile of GIS programs in Python. Mostly they make maps, but targetting a total replacement of GRASS, so calling it Python GIS.

Revision as of 12:00, 5 May 2009

Motivation

Several OSGeo software projects support Python. However, a global abstraction layer is lacking which would help to do "OSGeo Python programming". We think of well documented bindings to the various software projects which are handled as plugins (or whatever appropriate).

Functionality

Shared functions may include

  • Import/Export of data
  • Linking to external data sources
  • Reprojection tools
  • GIS analysis
  • Plotting and printing

Programming Language

  • Python
  • SWIG
  • ...

Existing code to be recycled

Architecture

Draft concept:

 +----------------------------------------------------------------+
 |                                                                |
 |                      OSGeo Python Library                      |   User API
 |                                                                |
 +---------+------------+-------------+-----------+---------+-----+
 |         |            |             |           |         |     |
 | File IO | Streams IO | Projections | Analytics |  Print  | ... |   Abstraction Layer
 |         |            |             |           |         |     |
 +---------+------------+-------------+-----------+---------+-----+
 |                      |             |           |         |     |
 |        GDAL/xxx      |   PROJ4     |   GRASS   |  QGIS   | ... |   OSGeo and related projects
 |                      |             |           |Mapserver|     |   with Python bindings
 |                      |             |           |         |     |
 +----------------------+-------------+-----------+---------+-----+


License

It is proposed to license the OSGeo Python Library under ... TBD. Certainly OSI compliant.

Interested people