Commit: 97b90d89f4744f40241daf19952493bb3d267cca
Author: Sergey Sharybin
Date:   Tue Feb 18 11:51:36 2014 +0600
https://developer.blender.org/rB97b90d89f4744f40241daf19952493bb3d267cca

Fix T38637: Boolean produces faces with holes which isn't supported by BMesh

Simple fix -- use CarveHoleResolver hook for CSG which will split faces
containing holes.

===================================================================

M       extern/carve/carve-capi.cc

===================================================================

diff --git a/extern/carve/carve-capi.cc b/extern/carve/carve-capi.cc
index aaf5761..ed46d19 100644
--- a/extern/carve/carve-capi.cc
+++ b/extern/carve/carve-capi.cc
@@ -29,6 +29,7 @@
 
 #include <carve/interpolator.hpp>
 #include <carve/rescale.hpp>
+#include <carve/csg_triangulator.hpp>
 
 using carve::mesh::MeshSet;
 
@@ -348,6 +349,9 @@ bool carve_performBooleanOperation(CarveMeshDescr 
*left_mesh,
 
                carve::csg::CSG csg;
 
+               csg.hooks.registerHook(new carve::csg::CarveHoleResolver,
+                                      
carve::csg::CSG::Hooks::PROCESS_OUTPUT_FACE_BIT);
+
                output_descr->orig_vert_mapping.installHooks(csg);
                output_descr->orig_face_edge_mapping.installHooks(csg);
                output_descr->orig_face_mapping.installHooks(csg);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to