Difference between revisions of "OSGeo Python Library"

From OSGeo
Jump to navigation Jump to search
(GIS analysis is essential)
Line 26: Line 26:
 
* [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.gdf-hannover.de/wiki/GRASS_and_Python GRASS SWIG Python bindings]
* [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.
 +
** Currently in development:
 +
*** [http://pygps.org/#pygps pygps], a Python GPS
 +
*** [http://pygps.org/#mapview mapview], a Python map viewer
 +
*** [http://pygps.org/#LatLongUTMconversion LatLongUTMconversion], a Python library to convert between Lat/Lon and UTM
 
* ...
 
* ...
  

Revision as of 08:23, 7 April 2008

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