[geos-devel] How robust is GEOS?
strk at refractions.net
strk at refractions.net
Fri May 6 12:21:21 EDT 2005
On Fri, May 06, 2005 at 08:43:51AM -0700, Martin Davis wrote:
> Kevin, List, strk:
>
> I've made an enhancement to JTS (based on a suggestion by Kevin) which
> seems to solve the issue of computed intersection points lying outside
> the intersection of the segment envelopes. (This is simply one
> different function in RobustLineIntersector - it's an easy patch, strk).
>
> This still doesn't produce the ultimate desired result of computing
> intersections to the full 56 bits of double precision, however. We're
> working on a solution for that - will post it if and when it's done.
Ok. I'll wait for the final version before applying to GEOS.
Thanks.
--strk;
>
> Martin
>
>
> Martin Davis, Senior Technical Architect
> Vivid Solutions Inc. www.vividsolutions.com
> Suite #1A-2328 Government Street Victoria, B.C. V8T 5G5
> Phone: (250) 385 6040 - Local 308 Fax: (250) 385 6046
>
> -----Original Message-----
> From: geos-devel-bounces at geos.refractions.net
> [mailto:geos-devel-bounces at geos.refractions.net] On Behalf Of Kevin
> Wiebe
> Sent: May 3, 2005 7:00 AM
> To: geos-devel at geos.refractions.net
> Subject: [geos-devel] How robust is GEOS?
>
>
>
> 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
>
> ----------------------------------------------------------------
>
>
>
>
>
>
>
More information about the geos-devel
mailing list