]> OCCT Git - occt.git/commitdiff
0027984: Volume maker algorithm is unable to build all possible solids from the given...
authoremv <emv@opencascade.com>
Thu, 20 Oct 2016 08:31:19 +0000 (11:31 +0300)
committerapn <apn@opencascade.com>
Thu, 27 Oct 2016 14:06:03 +0000 (17:06 +0300)
While checking the section edges between pair of faces on coincidence with the
existing edges use for checking only the edges from these two faces.

Test case for the issue.

src/BOPAlgo/BOPAlgo_PaveFiller_6.cxx
tests/bugs/modalg_6/bug27984 [new file with mode: 0644]

index b6730c0a30144a7869817054a8814b3ceba1b97d..c805f068cb8a92b1f47007085ce213829eb82405 100644 (file)
@@ -432,6 +432,7 @@ void BOPAlgo_PaveFiller::MakeBlocks()
     aMPBOnIn.Clear();
     aDMBV.Clear();
     aMVTol.Clear();
+    aLSE.Clear();
     //
     myDS->VerticesOnIn(nF1, nF2, aMVOnIn, aMPBOnIn);
     myDS->SharedEdges(nF1, nF2, aLSE, aAllocator);
diff --git a/tests/bugs/modalg_6/bug27984 b/tests/bugs/modalg_6/bug27984
new file mode 100644 (file)
index 0000000..12ebf64
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC27984"
+puts "========"
+puts ""
+#################################################
+# Volume maker algorithm is unable to build all possible solids from the given faces
+#################################################
+
+restore [locate_data_file bug27984_faces.brep] lf
+mkvolume result lf -c
+checknbshapes result -solid 28
+checkprops result -s 5.93287e+006 -v 6.99508e+007