Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Intersections with delta in CGAL

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Intersections with delta in CGAL


Chronological Thread 
  • From: Matthias Teich <>
  • To:
  • Subject: Re: [cgal-discuss] Intersections with delta in CGAL
  • Date: Wed, 06 May 2009 12:51:21 +0200

Hm,

my Kernel is CGAL::Simple_cartesian<double>.

I am computing intersections of offset planes of faces of my polyhedra.
I construct offset-planes with the help of three points of the original facet which were translated in the direction of the normal vector of the facet.
Then I let CGAL compute the intersection lines of this plane with the offsetted planes of its adjacent facets.

Each pair of consecutive intersection-lines has to intersect. Due to rounding errors (which may have happened before) CGAL::squared_distance(line_i, line_j) says there is a distance of aproximately 10^-14, so I cant use CGAL to compute the approximately intersection point, is this right?
Is there a function to compute the points of nearest approach?

I wrote a function which computes the approximate intersection point, but I have problems with getting usable points of the lines with the function Line_3::point(). Sometimes Line_3::point() seems to return overflown values.

Any hint on how I could solve my problem are very appreciated

Best Regards,
Matthias

Max schrieb:
I am using CGAL::Simple_cartesian<double> as Kernel. for Polyhedron_3.
In my algorithm I need to compute the intersections of the planes
induced by the faces of the polyhedra. That seems to work fine.
But when I try to compute the intersections of the resulting
intersection lines there seems to be a problem.
CGAL says there is no intersection, but when I display the lines there
is an intersection.

I guess what I need is an intersection test which accepts a delta value
to be more stable.
I tried to find a function which computes the minimum distance between
the lines and the point where this minimum distance occurs, but without
success.

Do I need to implement my own tests or can I do this with CGAL? A hint
would be nice :)

Best Regards,
Matthias

CGAL will give the exact result, more exact than what you can see with your
eyes, as long as you are using an exact kernel.

Generally, you should use exact kernel types playing with (nef_)polyhedra.

The predefined Exact_predicates_exact_constructions_kernel is a good choice.

HTH.

B/Rgds
Max

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


Eingehende eMail ist virenfrei.
Von AVG uberpruft - www.avg.de Version: 8.5.325 / Virendatenbank: 270.12.16/2094 - Ausgabedatum: 05/03/09 16:51:00




Archive powered by MHonArc 2.6.16.

Top of Page