Re: Geometric computation software
Re: Geometric computation software
- Subject: Re: Geometric computation software
- From: Brock Brandenberg <email@hidden>
- Date: Wed, 28 May 2003 00:46:16 -0500
Hi Philip.
>
The GPC looks like exactly what I wanted.
>
>
Brock, if you don't mind me asking, how do you handle floating point
>
accuracy in your applications?
We're currently using doubles, but we're reducing our usage to floats so
that we can do some Altivec accelerations (we don't really need the accuracy
of doubles for the print world that we're working in). The inaccuracies that
we see come from the usual insignificant errors that accumulate during
coordinate transformations. We have shapes that are aligned and positioned
in close proximity to one another during iterative scaling, rotating and
positioning processes, and the inaccuracies can cause the shapes to collide
by insignificant amounts. We're working around the accumulating errors with
overlapping area calculations and rounding to validate collisions.
>
Also, in the software package I use for map analysis, a fuzzy tolerance limit
>
is used to help prevent small, sliver polygons that can arise. For example, if
>
a vertex is within a specified distance of another vertex, they are joined
>
together. Because our map data can often have up to 4 meters location error I
>
would like to be able to specify that any 2 vertices within 2 (or whatever)
>
meters of each other are joined to form one single vertex. Have you done or
>
seen anything like this implemented, and would it greatly slow down
>
processing?
I don't work on the core engine and GPC (my colleague does), but I don't
believe that there is any culling of data being done by GPC. I think you
will have to do it when building the vertex lists for the GPC functions. In
most cases, we're not doing any culling because the data we use is not
nearly as complex as that which you will encounter with map data. In this
way, we're lucky :) But, we do use convex hulls in some cases to reduce the
complexity of font outlines and accelerate things (you don't always care
that font glyphs have holes in them if you're never positioning anything
inside the letter "o"). It should be relatively straightforward to cull
and/or average vertices from map data when creating the vertex lists of the
polygons and contours that the GPC functions use.
Bye.
Brock
----- industrial design @ www.bergdesign.com ------
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.