Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] Re: [Fwd: CGAL Bug: Constrained_Delaunay_triangulation_2::get_conflicts_and_boundary]

Subject: CGAL users discussion list

List archive

[cgal-discuss] Re: [Fwd: CGAL Bug: Constrained_Delaunay_triangulation_2::get_conflicts_and_boundary]


Chronological Thread 
  • From: Mariette Yvinec <>
  • To:
  • Subject: [cgal-discuss] Re: [Fwd: CGAL Bug: Constrained_Delaunay_triangulation_2::get_conflicts_and_boundary]
  • Date: Thu, 27 Jan 2011 13:50:48 +0100

Dear Michael Adams,

I add a quick look at your fix
and it seems reasonable to report
a conflict region as you do in cases
the query point is included in a constrained edge.

For correctness,  I can't tell. I don't know exactly
what is the intention behind including
a point in  a constrained edge.

Thanks for the bug report
Mariette

Mariette Yvinec wrote:




Subject:
CGAL Bug: Constrained_Delaunay_triangulation_2::get_conflicts_and_boundary
From:
Michael Adams
Date:
Mon, 24 Jan 2011 20:53:31 -0800 (PST)
To:
To:
CC:
,

Dear CGAL Discussion List Members:

I hope that I have managed to find the correct place to send this message.
If not, I would appreciate if you could direct me to the correct place.

It would appear that I have found a bug in the
Constrained_Delaunay_triangulation_2::get_conflicts_and_boundary member
function.  The problem is easy to reproduce.  In short, when the test
point for get_conflicts_and_boundary lies on a constrained edge, the
conflict faces and boundary edges returned by this function are incorrect
(specifying a smaller region than the true region).  The problem was
encountered in an older version of CGAL (3.5.1), but I have confirmed that the
bug is also present in the most recent version 3.7 as well.

I have attached a simple test program to demonstrate the problem along
with a PDF file showing the actual triangulation involved in the test
program.  Comparing what CGAL determines to be the conflict region and
what the true conflict region should be from the diagram, one can see
that something is wrong.

I believe that I have managed to fix the problem.  In this regard, I have
attached a modified version of Constrained_Delaunay_triangulation_2.h
from the version of CGAL in which I first found the error (CGAL 3.5.1).
The bug fix is wrapped by a #ifdef MDADAMS_BUGFIX ... #endif.
If you define MDADAMS_BUGFIX and recompile the demo program with my
modified Constrained_Delaunay_triangulation_2.h file everything seems to work.
Since I am not an expert on the CGAL code, however, I am not absolutely
sure if my bug fix is correct.  A confirmation from a CGAL guru
(like Mariette Yvinec or Jean-Daniel Boissonnat) that this fix is actually
correct would be very much appreciated.  If my fix is correct, please
feel free to include it in the next version of CGAL.

Thank you for your time.

Regards,
Michael Adams

---
Michael Adams, Associate Professor, Ph.D., P.Eng., IEEE Senior Member
Dept. of Electrical and Computer Engineering, University of Victoria
P.O. Box 3055 STN CSC, Victoria, BC, V8W 3P6, CANADA
Tel: +1 250 721 6025, Fax: +1 250 721 6052, Office: EOW 311
E-mail: , Web: www.ece.uvic.ca/~mdadams

-- 
Mariette Yvinec
Geometrica project team
INRIA  Sophia-Antipolis  




  • [cgal-discuss] Re: [Fwd: CGAL Bug: Constrained_Delaunay_triangulation_2::get_conflicts_and_boundary], Mariette Yvinec, 01/27/2011

Archive powered by MHonArc 2.6.16.

Top of Page