[geos-devel] Precision Howto

Howard Butler hobu at iastate.edu
Tue Sep 20 16:22:17 EDT 2005


All,

I have two "layers" of geometry, set A and set B.  Set A could be described 
as the base layer, and is what I would like to compare set B to.  Set B is 
actually a bastard child of set A, with some geometries being (exactly) the 
same as those in set A, some being edited manually (actual changes), and 
some being different due to inconsistent precisions (set B was broken into 
many different pieces, edited by many people with many different softwares 
and then recombined back into a single layer).

My question is, how can I use the equals() test and PrecisionModels to weed 
out the truly equal and the "equal except different by some tolerance" from 
the "truly different and edited by human hands"?  Is it possible to say 
with GEOS, "these two geometries are equal if all of their vertices are 
within 2.0 meters"?  If so, how?

Howard

PS, I'm using the Python SWIG bindings, which emit pretty much the whole 
C++ API, but could be convinced to move to C++ if it is deemed necessary.




More information about the geos-devel mailing list