[geos-devel] How robust is GEOS?

Kevin Wiebe Kevin.Wiebe at safe.com
Tue May 3 10:00:19 EDT 2005


I'm asking for advice here:  What is the most robust (numerically
stable) way to use GEOS?  What are its limitations?

 

For our purposes we need to use code that is both as fast and accurate
as possible.  As you probably know, when using a complex algorithm
sometimes even small inaccuracies in geometric computations can compound
into drastically incorrect results.

 

Here is a concrete example from real customer data:

I have created two simple 2-point LINEs and used the GEOS call to get
the spot where they intersect:

point = lineA.intersection(lineB);

 

lineA = from (2089426.5233462777,1180182.3877339689) to
(2085646.6891757075,1195618.7333999649)

lineB = from (1889281.8148903656,1997547.0560044837) to
(2259977.3672235999,483675.17050843034)

 

the intersection point I get back is this:

point = (2097408.2633752143,1144595.8008114607)

 

This point is a significant distance away from any part of lineA.  If
one were to place this intersection point between the start and end
points of lineA, the resulting line would look ridiculous.

 

JTS returns the same result.

 

Depending on your explanations for this I may have some technical
advice.

 

Thanks for your comments,

-Kevin-

 

----------------------------------------------------------------

 Kevin Wiebe     Safe Software Inc.              kevin at safe.com

      Senior     Surrey, BC, CANADA       phone: (604) 501-9985

   Developer     http://www.safe.com        fax: (604) 501-9965

----------------------------------------------------------------

 

 

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/geos-devel/attachments/20050503/96c9aa2a/attachment.html


More information about the geos-devel mailing list