cgal icon indicating copy to clipboard operation
cgal copied to clipboard

Nef_3: Use the skipVEL parameter to ensure result is always an SFace

Open GilesBathgate opened this issue 2 years ago • 4 comments

Summary of Changes

This sets the skipVEL (Skip SVertices SEdges and SLoops) parameter to true, when calling the locate method in get_visible_facet of SNC_const_decorator. Since it's trying to locate an Sface, it makes no sense for locate to match SVertices, SEdges or SLoops, and if it does the assertion in get_visible_facet will fail.

Release Management

  • Affected package(s): Nef_3
  • Issue(s) solved (if any): #7271
  • Feature/Small Feature (if any): bugfix
  • License and copyright ownership: CGAL authors

GilesBathgate avatar Feb 15 '23 19:02 GilesBathgate

As was previously stated:

In commit https://github.com/CGAL/cgal/commit/ebd5e00ba8e5041e64b415eb9421f89045591ac9 the value of true was passed to L.locate() which skips needless tests.
Applying the same change to the get_visible_facet method of SNC_const_decorator makes the assertion exception never occur. @afabri However I am not sure if it would be correct to apply the same change here or not.

GilesBathgate avatar Feb 15 '23 19:02 GilesBathgate

@GilesBathgate your reasoning makes sense. Did you close the PR out of no-reply-fatigue ?

afabri avatar May 06 '25 16:05 afabri

@GilesBathgate your reasoning makes sense. Did you close the PR out of no-reply-fatigue ?

I am unsure, but I will re-open.

GilesBathgate avatar May 06 '25 16:05 GilesBathgate

Going up in the call stack we find this comment. Reading it, just skipping is maybe not the right solution.

afabri avatar May 06 '25 16:05 afabri