Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Possible bug in Arrangement_on_surface_2::merge_edge (CGAL 3.4)

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Possible bug in Arrangement_on_surface_2::merge_edge (CGAL 3.4)


Chronological Thread 
  • From: Ben Supnik <>
  • To:
  • Subject: Re: [cgal-discuss] Possible bug in Arrangement_on_surface_2::merge_edge (CGAL 3.4)
  • Date: Mon, 31 Aug 2009 11:08:03 -0400

Hi Efi,


wrote:

In other words, if the new curve must be the same point as the old two curves, your direction can't change as long as the new curve must be monotone. But this somewhat reduces the utility of the merge_edge for certain weird cases.

The improved (complete) condition is:

The 2 input (x-monotone) curves share a common end-point, and the new (x-monotone) curve is the union of the 2 input (x-monotone) curves (or at least the new curve and the union curve are topologically equivalent.)

Wait - not to beat this to death, but...

It seems that there should be cases where the replacement curve is not the union, is topologically equivalent, but the direction must still be recalculated.

With a curve type of segment_2, Consider a single strictly simple polygon that partitions an arrangement into one bounded face and one unbounded face.

I want to replace a pair of curves (one directed right, and one directed left) with a new curve that directly connects the non-shared end-ponts. (Cutting off the triangle, so to speak.) Because of the shape of the polygon, I can do this without any intersections occuring, and the resulting polygon is still strictly simple - there is no topological change.

But depending on the relative position of the non-shared endpoints, the new edge could be directed right or left, so a recalculation may be necessary.

I think you have to require the new curve to be the union of the old curves with a shared endpoint to avoid a geometric operation.

cheers
ben



Archive powered by MHonArc 2.6.16.

Top of Page