Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2012-11-05 16:11:43 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2012-11-05 16:11:43 +0400
commit1231232169034558fdabef9b6b4b3c6b83115064 (patch)
treed51e4c3f583957fa456cc799bcc4c044501cff34 /intern/bsp
parentb74ba5c59547e158c18a5a390d81e12b4c0ad41d (diff)
Partial revert of own rev44548.
That was more like workaround which solved particular issue with freestyle rendering, but introduced some more uncontrollable issues, main of which is recursive fracture would likely suffer from non-manifolds results of previous step. Boolean operation is not the only way to generate zero-area face, it could also happen with character animation and it's indeed better be solved from freestule side. This should fix: #33041 Boolean difference sometimes produces meshes with holes
Diffstat (limited to 'intern/bsp')
-rw-r--r--intern/bsp/intern/BOP_CarveInterface.cpp5
1 files changed, 0 insertions, 5 deletions
diff --git a/intern/bsp/intern/BOP_CarveInterface.cpp b/intern/bsp/intern/BOP_CarveInterface.cpp
index 49c999a1dd4..f7da76e5794 100644
--- a/intern/bsp/intern/BOP_CarveInterface.cpp
+++ b/intern/bsp/intern/BOP_CarveInterface.cpp
@@ -559,8 +559,6 @@ static bool Carve_checkDegeneratedFace(std::map<MeshSet<3>::vertex_t*, uint> *ve
if (v1 == v2 || v2 == v3 || v1 == v3)
return true;
-
- return triangleArea(face->edge->prev->vert->v, face->edge->vert->v, face->edge->next->vert->v) < DBL_EPSILON;
}
else if (face->n_edges == 4) {
uint v1, v2, v3, v4;
@@ -572,9 +570,6 @@ static bool Carve_checkDegeneratedFace(std::map<MeshSet<3>::vertex_t*, uint> *ve
if (v1 == v2 || v1 == v3 || v1 == v4 || v2 == v3 || v2 == v4 || v3 == v4)
return true;
-
- return triangleArea(face->edge->vert->v, face->edge->next->vert->v, face->edge->next->next->vert->v) +
- triangleArea(face->edge->prev->vert->v, face->edge->vert->v, face->edge->next->next->vert->v) < DBL_EPSILON;
}
return false;