From: nbv Date: Tue, 23 Oct 2018 13:58:59 +0000 (+0300) Subject: 0026509: Intersection algorithm produces set of curves providing closed contour in... X-Git-Tag: V7_4_0_beta~352 X-Git-Url: http://git.dev.opencascade.org/gitweb/?p=occt.git;a=commitdiff_plain;h=cdcf6fc27ae893f873a94eee0e32cebacbea9d7a 0026509: Intersection algorithm produces set of curves providing closed contour in 3D-space and not closed contour in 2D-space Test cases have been created. No fix is needed because the described problem has not to be cause of failing of high-level OCCT-algorithms. See the message ~80300 (issue #26509) for detail information. --- diff --git a/tests/bugs/modalg_7/bug26509_1 b/tests/bugs/modalg_7/bug26509_1 new file mode 100644 index 0000000000..3398637e79 --- /dev/null +++ b/tests/bugs/modalg_7/bug26509_1 @@ -0,0 +1,42 @@ +puts "========" +puts "0026509: Wrong intersection curve(s) obtained for pair of faces." +puts "========" +puts "" + +circle c1 0 0 0 0 -1 0 75 +circle c2 0 0 0 0 -1 0 65 +mkedge c1 c1 +mkedge c2 c2 +wire c1 c1 +wire c2 c2 +orientation c2 R +mkplane f1 c1 1 +add c2 f1 +prism p1 f1 0 1000 0 +trotate p1 0 0 0 0 0 1 180 +circle c3 50 500 -2000 0 0 1 50 +mkedge c3 c3 +wire c3 c3 +mkplane f2 c3 1 +prism p2 f2 0 0 4000 +explode p1 f +explode p2 f +trotate p2_1 0 500 0 1 0 0 -77 +trotate p2_1 0 0 0 0 0 1 180 + +regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} [bopcurves p1_2 p2_1 -2d] full Toler NbCurv + +checkreal Tolerance $Toler 3.6430300265667996e-07 0.0 0.1 + +if {$NbCurv != 3} { + puts "Error: Please check NbCurves for intersector" +} + +puts "Check whether the intersection result is closed in 3D" +bsection result p1_2 p2_1 + +checksection result -r 0 +checkmaxtol result -ref 4.0e-7 +checkprops result -l 1881.92 + +checkview -display result -2d -path ${imagedir}/${test_image}.png \ No newline at end of file diff --git a/tests/bugs/modalg_7/bug26509_2 b/tests/bugs/modalg_7/bug26509_2 new file mode 100644 index 0000000000..3470a53da0 --- /dev/null +++ b/tests/bugs/modalg_7/bug26509_2 @@ -0,0 +1,43 @@ +puts "========" +puts "0026509: Wrong intersection curve(s) obtained for pair of faces." +puts "========" +puts "" + +circle c1 0 0 0 0 -1 0 75 +circle c2 0 0 0 0 -1 0 65 +mkedge c1 c1 +mkedge c2 c2 +wire c1 c1 +wire c2 c2 +orientation c2 R +mkplane f1 c1 1 +add c2 f1 +prism p1 f1 0 1000 0 +trotate p1 0 0 0 0 0 1 180 +circle c3 50 500 -2000 0 0 1 50 +mkedge c3 c3 +wire c3 c3 +mkplane f2 c3 1 +prism p2 f2 0 0 4000 +explode p1 f +explode p2 f +trotate p2_1 0 500 0 1 0 0 -77 +trotate p2_1 0 0 0 0 0 1 180 +trotate p1_2 0 0 0 1.22464679914735e-16 1 0 -1.57079632679489655800*180/pi + +regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} [bopcurves p1_2 p2_1 -2d] full Toler NbCurv + +checkreal Tolerance $Toler 3.6430300265667996e-07 0.0 0.1 + +if {$NbCurv != 1} { + puts "Error: Please check NbCurves for intersector" +} + +puts "Check whether the intersection result is closed in 3D" +bsection result p1_2 p2_1 + +checksection result -r 0 +checkmaxtol result -ref 4.0e-7 +checkprops result -l 1881.92 + +checkview -display result -2d -path ${imagedir}/${test_image}.png \ No newline at end of file diff --git a/tests/bugs/modalg_7/bug26509_3 b/tests/bugs/modalg_7/bug26509_3 new file mode 100644 index 0000000000..67f4309296 --- /dev/null +++ b/tests/bugs/modalg_7/bug26509_3 @@ -0,0 +1,43 @@ +puts "========" +puts "0026509: Wrong intersection curve(s) obtained for pair of faces." +puts "========" +puts "" + +circle c1 0 0 0 0 -1 0 75 +circle c2 0 0 0 0 -1 0 65 +mkedge c1 c1 +mkedge c2 c2 +wire c1 c1 +wire c2 c2 +orientation c2 R +mkplane f1 c1 1 +add c2 f1 +prism p1 f1 0 1000 0 +trotate p1 0 0 0 0 0 1 180 +circle c3 50 500 -2000 0 0 1 50 +mkedge c3 c3 +wire c3 c3 +mkplane f2 c3 1 +prism p2 f2 0 0 4000 +explode p1 f +explode p2 f +trotate p2_1 0 500 0 1 0 0 -77 +trotate p2_1 0 0 0 0 0 1 180 +trotate p1_2 0 0 0 1.22464679914735e-16 1 0 1.57079632679489655800*180/pi + +regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} [bopcurves p1_2 p2_1 -2d] full Toler NbCurv + +checkreal Tolerance $Toler 3.6430300265667996e-07 0.0 0.1 + +if {$NbCurv != 2} { + puts "Error: Please check NbCurves for intersector" +} + +puts "Check whether the intersection result is closed in 3D" +bsection result p1_2 p2_1 + +checksection result -r 0 +checkmaxtol result -ref 4.0e-7 +checkprops result -l 1881.92 + +checkview -display result -2d -path ${imagedir}/${test_image}.png \ No newline at end of file diff --git a/tests/bugs/modalg_7/bug26509_4 b/tests/bugs/modalg_7/bug26509_4 new file mode 100644 index 0000000000..780af19080 --- /dev/null +++ b/tests/bugs/modalg_7/bug26509_4 @@ -0,0 +1,44 @@ +puts "========" +puts "0026509: Wrong intersection curve(s) obtained for pair of faces." +puts "========" +puts "" + +circle c1 0 0 0 0 -1 0 75 +circle c2 0 0 0 0 -1 0 65 +mkedge c1 c1 +mkedge c2 c2 +wire c1 c1 +wire c2 c2 +orientation c2 R +mkplane f1 c1 1 +add c2 f1 +prism p1 f1 0 1000 0 +trotate p1 0 0 0 0 0 1 180 +circle c3 50 500 -2000 0 0 1 50 +mkedge c3 c3 +wire c3 c3 +mkplane f2 c3 1 +prism p2 f2 0 0 4000 +explode p1 f +explode p2 f +trotate p2_1 0 500 0 1 0 0 -77 +trotate p2_1 0 0 0 0 0 1 180 +trotate p1_2 0 0 0 1.22464679914735e-16 1 0 1.57079632679489655800*180/pi +tmirror p1_2 0 -500 0 0 1 0 + +regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} [bopcurves p1_2 p2_1 -2d] full Toler NbCurv + +checkreal Tolerance $Toler 3.6430300265667996e-07 0.0 0.1 + +if {$NbCurv != 2} { + puts "Error: Please check NbCurves for intersector" +} + +puts "Check whether the intersection result is closed in 3D" +bsection result p1_2 p2_1 + +checksection result -r 0 +checkmaxtol result -ref 4.0e-7 +checkprops result -l 1881.92 + +checkview -display result -2d -path ${imagedir}/${test_image}.png \ No newline at end of file diff --git a/tests/bugs/modalg_7/bug26509_5 b/tests/bugs/modalg_7/bug26509_5 new file mode 100644 index 0000000000..c9c68304bf --- /dev/null +++ b/tests/bugs/modalg_7/bug26509_5 @@ -0,0 +1,43 @@ +puts "========" +puts "0026509: Wrong intersection curve(s) obtained for pair of faces." +puts "========" +puts "" + +circle c1 0 0 0 0 -1 0 75 +circle c2 0 0 0 0 -1 0 65 +mkedge c1 c1 +mkedge c2 c2 +wire c1 c1 +wire c2 c2 +orientation c2 R +mkplane f1 c1 1 +add c2 f1 +prism p1 f1 0 1000 0 +trotate p1 0 0 0 0 0 1 180 +circle c3 50 500 -2000 0 0 1 50 +mkedge c3 c3 +wire c3 c3 +mkplane f2 c3 1 +prism p2 f2 0 0 4000 +explode p1 f +explode p2 f +trotate p2_1 0 500 0 1 0 0 -77 +trotate p2_1 0 0 0 0 0 1 180 +trotate p2_1 -49.9999999999998, 1448.74012957047, -449.90210868773 1.19325918102424e-16, 0.974370064785235, -0.224951054343865 -1.26610367277949897868*180/pi + +regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} [bopcurves p1_2 p2_1 -2d] full Toler NbCurv + +checkreal Tolerance $Toler 3.6430300265667996e-07 0.0 0.1 + +if {$NbCurv != 2} { + puts "Error: Please check NbCurves for intersector" +} + +puts "Check whether the intersection result is closed in 3D" +bsection result p1_2 p2_1 + +checksection result -r 0 +checkmaxtol result -ref 4.0e-7 +checkprops result -l 1881.92 + +checkview -display result -2d -path ${imagedir}/${test_image}.png \ No newline at end of file diff --git a/tests/bugs/modalg_7/bug26509_6 b/tests/bugs/modalg_7/bug26509_6 new file mode 100644 index 0000000000..bd6f305874 --- /dev/null +++ b/tests/bugs/modalg_7/bug26509_6 @@ -0,0 +1,44 @@ +puts "========" +puts "0026509: Wrong intersection curve(s) obtained for pair of faces." +puts "========" +puts "" + +circle c1 0 0 0 0 -1 0 75 +circle c2 0 0 0 0 -1 0 65 +mkedge c1 c1 +mkedge c2 c2 +wire c1 c1 +wire c2 c2 +orientation c2 R +mkplane f1 c1 1 +add c2 f1 +prism p1 f1 0 1000 0 +trotate p1 0 0 0 0 0 1 180 +circle c3 50 500 -2000 0 0 1 50 +mkedge c3 c3 +wire c3 c3 +mkplane f2 c3 1 +prism p2 f2 0 0 4000 +explode p1 f +explode p2 f +trotate p2_1 0 500 0 1 0 0 -77 +trotate p2_1 0 0 0 0 0 1 180 +trotate p1_2 0 0 0 1.22464679914735e-16 1 0 -1.57079632679489655800*180/pi +trotate p2_1 -49.9999999999998, 1448.74012957047, -449.90210868773 1.19325918102424e-16, 0.974370064785235, -0.224951054343865 -1.26610367277949897868*180/pi + +regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} [bopcurves p1_2 p2_1 -2d] full Toler NbCurv + +checkreal Tolerance $Toler 3.6430300265667996e-07 0.0 0.1 + +if {$NbCurv != 1} { + puts "Error: Please check NbCurves for intersector" +} + +puts "Check whether the intersection result is closed in 3D" +bsection result p1_2 p2_1 + +checksection result -r 0 +checkmaxtol result -ref 4.0e-7 +checkprops result -l 1881.92 + +checkview -display result -2d -path ${imagedir}/${test_image}.png \ No newline at end of file