fix for 90224.stl

-> a face restricted to one point (its 2D triangulation is dimension 0)
This commit is contained in:
Laurent Rineau 2024-03-04 10:11:25 +01:00
parent d968bc3f4a
commit 8127850dca
1 changed files with 2 additions and 1 deletions

View File

@ -973,6 +973,7 @@ private:
CDT_2_face_handle fh; CDT_2_face_handle fh;
bool outside; bool outside;
}; };
const auto d = cdt_2.dimension();
std::stack<Face_handle_and_outside> stack; std::stack<Face_handle_and_outside> stack;
stack.push({cdt_2.infinite_face(), true}); stack.push({cdt_2.infinite_face(), true});
while(!stack.empty()) { while(!stack.empty()) {
@ -980,7 +981,7 @@ private:
stack.pop(); stack.pop();
if(fh->info().is_outside_the_face == -1) { if(fh->info().is_outside_the_face == -1) {
fh->info().is_outside_the_face = outside; fh->info().is_outside_the_face = outside;
for(int i = 0; i < 3; ++i) { for(int i = 0; i <= d; ++i) {
const auto neighbor = fh->neighbor(i); const auto neighbor = fh->neighbor(i);
const auto new_outside = fh->is_constrained(i) ? !outside : outside; const auto new_outside = fh->is_constrained(i) ? !outside : outside;
if(neighbor->info().is_outside_the_face == -1) { if(neighbor->info().is_outside_the_face == -1) {