0

I posted some time ago a CGAL question that was kindly answered by pointing to the Polyhedron demo and the corefinement plugin. The basic idea being that one open polyhedron A is cut by another open polyhedron B, and I need the list of intersection half edges owned by A, or better, A minus the part of A in B.

The co-refinement demo does this, but I want to select, as a result, all parts of A not in B. This does not match the available predicates in the demo (A - B (leaves parts of B inside A) , B - A (leaves parts of B outside A), A inter B, A union B). I tried combining/modifying them to get what I want but I must be missing something. The information on the 'darts' seem to be mutually exclusive.

The picture below illustrates this : A as been cut by B (I have a hole with the shape of B) but some parts of B are still in A (the facets on the hole border). (edit : sorry : not enough reputation to post an image here :-()

Any advices on how to write a predicate that would select only A with a hole, and leave out any face coming from B?

Thank you!

Pascal Ognibene
  • 91
  • 1
  • 2
  • 10
  • This code is not officially documented. What you are looking for is possible and not hard to do but would need some extra code that is not already published. You should directly contact the author. – sloriot Oct 01 '14 at 06:37
  • Understood, thank you. I'll try to contact the author directly if she/he has some time to give some hints. I have implemented a work around but this implies testing the generated faces (and their coordinates), with all the potential numerical approximations coming with it (given the algo uses inexact constructions). I'd rather like using the mesh topology to get a robust algorithm. – Pascal Ognibene Oct 04 '14 at 04:17

0 Answers0