[geos-devel] How robust is GEOS?
Martin Davis
mbdavis at VividSolutions.com
Fri May 6 13:56:33 EDT 2005
I would go ahead and implement the patch right now. It's a very easy
patch to apply, and it produces a dramatic improvement in correctness.
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: strk at refractions.net [mailto:strk at refractions.net]
> Sent: May 6, 2005 9:21 AM
> To: Martin Davis
> Cc: GEOS Development List
> Subject: Re: [geos-devel] How robust is GEOS?
>
>
> 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