0026896: Wrong result of bsection algorithm
authornbv <nbv@opencascade.com>
Tue, 8 Dec 2015 12:46:26 +0000 (15:46 +0300)
committerbugmaster <bugmaster@opencascade.com>
Thu, 17 Dec 2015 12:18:02 +0000 (15:18 +0300)
Creation test cases for this issue

Small correction of test cases

tests/bugs/modalg_6/bug26896_1 [new file with mode: 0755]
tests/bugs/modalg_6/bug26896_2 [new file with mode: 0755]
tests/bugs/modalg_6/bug26896_3 [new file with mode: 0755]

diff --git a/tests/bugs/modalg_6/bug26896_1 b/tests/bugs/modalg_6/bug26896_1
new file mode 100755 (executable)
index 0000000..3d56c43
--- /dev/null
@@ -0,0 +1,58 @@
+puts "========"
+puts "OCC26896"
+puts "========"
+puts ""
+#################################
+# Wrong result of bsection algorithm
+#################################
+
+restore [locate_data_file bug26896_cutshape1.brep] b1
+
+vertex v1 554.852479447 5561.24970151 -18225.8420231
+vertex v2 19830.8118639 5561.31737822 -18184.3230952
+vertex v3 19967.9643885 5620.52434157 18138.50479
+vertex v4 692.019599679 5620.80022039 18307.753443
+vertex v5 623.443337395 5591.19673871 146.339500409
+vertex v6 623.428741731 5590.85318318 -64.4280804958
+
+edge e1 v1 v2
+edge e2 v2 v3
+edge e3 v3 v4
+edge e4 v4 v5
+edge e5 v5 v6
+edge e6 v6 v1
+
+wire w1 e1 e2 e3 e4 e5 e6
+mkplane f1 w1
+
+bsection result b1 f1
+
+regexp {Tolerance +MAX=([-0-9.+eE]+)} [tolerance result] full MaxTolerance
+
+set expected_MaxTolerance 0.0023471981939699712
+set tol_abs_MaxTolerance 0.0
+set tol_rel_MaxTolerance 1.0e-4
+checkreal "MaxTolerance" ${MaxTolerance} ${expected_MaxTolerance} ${tol_abs_MaxTolerance} ${tol_rel_MaxTolerance}
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 2
+ EDGE      : 1
+ WIRE      : 0
+ FACE      : 0
+ SHELL     : 0
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 4
+"
+
+checknbshapes result -ref ${nbshapes_expected} -t -m "BSECTION"
+
+smallview
+
+donly result
+fit
+display b1 f1
+
+set only_screen_axo 1
diff --git a/tests/bugs/modalg_6/bug26896_2 b/tests/bugs/modalg_6/bug26896_2
new file mode 100755 (executable)
index 0000000..fed54e3
--- /dev/null
@@ -0,0 +1,58 @@
+puts "========"
+puts "OCC26896"
+puts "========"
+puts ""
+#################################
+# Wrong result of bsection algorithm
+#################################
+
+restore [locate_data_file bug26896_cutshape1.brep] b1
+
+vertex v1 554.852479447 5561.24970151 -18225.8420231
+vertex v2 19830.8118639 5561.31737822 -18184.3230952
+vertex v3 19967.9643885 5620.52434157 18138.50479
+vertex v4 692.019599679 5620.80022039 18307.753443
+vertex v5 623.443337395 5591.19673871 146.339500409
+
+edge e1 v1 v2
+edge e2 v2 v3
+edge e3 v3 v4
+edge e4 v4 v5
+edge e7 v5 v1
+
+wire w2 e1 e2 e3 e4 e7
+mkplane f2 w2
+
+donly b1 f2
+
+bsection result b1 f2
+
+regexp {Tolerance +MAX=([-0-9.+eE]+)} [tolerance result] full MaxTolerance
+
+set expected_MaxTolerance 0.0068942263850054935
+set tol_abs_MaxTolerance 0.0
+set tol_rel_MaxTolerance 1.0e-4
+checkreal "MaxTolerance" ${MaxTolerance} ${expected_MaxTolerance} ${tol_abs_MaxTolerance} ${tol_rel_MaxTolerance}
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 2
+ EDGE      : 1
+ WIRE      : 0
+ FACE      : 0
+ SHELL     : 0
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 4
+"
+
+checknbshapes result -ref ${nbshapes_expected} -t -m "BSECTION"
+
+smallview
+
+donly result
+fit
+display b1 f2
+
+set only_screen_axo 1
diff --git a/tests/bugs/modalg_6/bug26896_3 b/tests/bugs/modalg_6/bug26896_3
new file mode 100755 (executable)
index 0000000..70b23ab
--- /dev/null
@@ -0,0 +1,53 @@
+puts "========"
+puts "OCC26896"
+puts "========"
+puts ""
+#################################
+# Wrong result of bsection algorithm
+#################################
+
+restore [locate_data_file bug26896_cutshape1.brep] b1
+
+vertex v1 554.852479447 5561.24970151 -18225.8420231
+vertex v2 19830.8118639 5561.31737822 -18184.3230952
+vertex v3 19967.9643885 5620.52434157 18138.50479
+vertex v4 692.019599679 5620.80022039 18307.753443
+
+edge e1 v1 v2
+edge e2 v2 v3
+edge e3 v3 v4
+edge e8 v4 v1
+
+wire w3 e1 e2 e3 e8
+mkplane f3 w3
+
+bsection result b1 f3
+
+regexp {Tolerance +MAX=([-0-9.+eE]+)} [tolerance result] full MaxTolerance
+
+set expected_MaxTolerance 0.0023476472179396139
+set tol_abs_MaxTolerance 0.0
+set tol_rel_MaxTolerance 1.0e-4
+checkreal "MaxTolerance" ${MaxTolerance} ${expected_MaxTolerance} ${tol_abs_MaxTolerance} ${tol_rel_MaxTolerance}
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 2
+ EDGE      : 1
+ WIRE      : 0
+ FACE      : 0
+ SHELL     : 0
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 4
+"
+checknbshapes result -ref ${nbshapes_expected} -t -m "BSECTION"
+
+smallview
+
+donly result
+fit
+display b1 f3
+
+set only_screen_axo 1