[gdal-dev] Open source vector geoprocessing libraries?
jason.roberts at duke.edu
Mon Jan 11 17:32:18 EST 2010
Dear geospatial software experts,
By integrating with GEOS, OGR can perform various spatial operations on
individual geometries, such as buffer, intersection, union, and so on. Is
there a library that efficiently performs these kinds of operations on
entire OGRLayers? For example, this library would have functions that would
buffer all of the features in a layer, or intersect all of the features in
one layer with all of those in another. Basically, I am looking for an open
source technology that replicates the "geoprocessing tools" found in ArcGIS
and other GIS packages. These tools traditionally operate on one or more
layers as input and produce one or more layers as output.
If such a library does not exist, does the OGR team envision that they might
add such capabilities to OGR in the future? From software design and
performance points of view, would it be appropriate to extend OGR to include
functions for spatial operations on entire layers, or is this best left to
other libraries? I can see rudimentary ways to implement such tools (e.g.
for intersecting layers: loop over all features in both layers, calling
OGRGeometry::Touches on all combinations, or something similar). But I am
not a geometry expert and do not know if OGRLayer's cursor-based design is
compatible with such capabilities; I do not know about spatial indexing, for
I develop open source geoprocessing tools that help with spatial ecology
problems. At the moment, my tools depend on heavily on ArcGIS for these
operations with vector layers. I would like to remove this dependency, and,
if possible, develop a toolbox that exposes the same ecology tools to
several GIS packages. Many GIS packages, such as ArcGIS, QGIS, MapWindow,
and OpenJump, support plugin extensions. I am wondering whether how
difficult it would be to develop a package of tools that does not depend on
a specific GIS package but exposes them to several packages via the
package-specific plugin mechanisms. For this to work, I'd have to find a
library that can do the kind of geoprocessing with layers that ArcGIS can
do, or write my own. Writing it myself sounds daunting and am hoping that
there are existing projects to draw from.
Thank you very much for any comments you can provide.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the gdal-dev