From 4df69d1d6da1d5fe9ab099726aeb0bbf79c438d9 Mon Sep 17 00:00:00 2001 From: nbv Date: Mon, 28 Nov 2016 10:44:29 +0300 Subject: [PATCH] 0028091: Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version Creation of test cases. --- tests/bugs/modalg_6/bug28091_102 | 119 ++++ tests/bugs/modalg_6/bug28091_11 | 109 ++++ tests/bugs/modalg_6/bug28091_111 | 86 +++ tests/bugs/modalg_6/bug28091_112 | 70 ++ tests/bugs/modalg_6/bug28091_12 | 110 ++++ tests/bugs/modalg_6/bug28091_121 | 86 +++ tests/bugs/modalg_6/bug28091_122 | 70 ++ tests/bugs/modalg_6/bug28091_131 | 102 +++ tests/bugs/modalg_6/bug28091_132 | 70 ++ tests/bugs/modalg_6/bug28091_21 | 86 +++ tests/bugs/modalg_6/bug28091_22 | 70 ++ tests/bugs/modalg_6/bug28091_31 | 105 +++ tests/bugs/modalg_6/bug28091_32 | 95 +++ tests/bugs/modalg_6/bug28091_41 | 324 ++++++++++ tests/bugs/modalg_6/bug28091_42 | 1017 ++++++++++++++++++++++++++++++ tests/bugs/modalg_6/bug28091_51 | 135 ++++ tests/bugs/modalg_6/bug28091_52 | 134 ++++ tests/bugs/modalg_6/bug28091_61 | 111 ++++ tests/bugs/modalg_6/bug28091_62 | 102 +++ tests/bugs/modalg_6/bug28091_71 | 93 +++ tests/bugs/modalg_6/bug28091_72 | 78 +++ tests/bugs/modalg_6/bug28091_81 | 130 ++++ tests/bugs/modalg_6/bug28091_82 | 118 ++++ tests/bugs/modalg_6/bug28091_91 | 203 ++++++ tests/bugs/modalg_6/bug28091_92 | 199 ++++++ tests/bugs/modalg_6/bug28091_93 | 86 +++ tests/bugs/modalg_7/bug28091_011 | 59 ++ tests/bugs/modalg_7/bug28091_021 | 50 ++ tests/bugs/modalg_7/bug28091_031 | 80 +++ tests/bugs/modalg_7/bug28091_041 | 62 ++ tests/bugs/modalg_7/bug28091_051 | 68 ++ tests/bugs/modalg_7/bug28091_061 | 101 +++ tests/bugs/modalg_7/bug28091_071 | 781 +++++++++++++++++++++++ tests/bugs/modalg_7/bug28091_081 | 52 ++ tests/bugs/modalg_7/bug28091_091 | 98 +++ tests/bugs/modalg_7/bug28091_101 | 41 ++ tests/bugs/modalg_7/bug28091_111 | 74 +++ tests/bugs/modalg_7/bug28091_121 | 110 ++++ tests/bugs/modalg_7/bug28091_131 | 56 ++ tests/bugs/modalg_7/bug28091_141 | 41 ++ tests/bugs/modalg_7/bug28091_151 | 185 ++++++ tests/bugs/modalg_7/bug28091_161 | 54 ++ tests/bugs/modalg_7/bug28091_171 | 100 +++ tests/bugs/modalg_7/bug28091_181 | 97 +++ tests/bugs/modalg_7/bug28091_191 | 188 ++++++ tests/bugs/modalg_7/bug28091_201 | 50 ++ tests/bugs/modalg_7/bug28091_211 | 50 ++ tests/bugs/modalg_7/bug28091_221 | 50 ++ tests/bugs/modalg_7/bug28091_231 | 56 ++ 49 files changed, 6411 insertions(+) create mode 100644 tests/bugs/modalg_6/bug28091_102 create mode 100644 tests/bugs/modalg_6/bug28091_11 create mode 100644 tests/bugs/modalg_6/bug28091_111 create mode 100644 tests/bugs/modalg_6/bug28091_112 create mode 100644 tests/bugs/modalg_6/bug28091_12 create mode 100644 tests/bugs/modalg_6/bug28091_121 create mode 100644 tests/bugs/modalg_6/bug28091_122 create mode 100644 tests/bugs/modalg_6/bug28091_131 create mode 100644 tests/bugs/modalg_6/bug28091_132 create mode 100644 tests/bugs/modalg_6/bug28091_21 create mode 100644 tests/bugs/modalg_6/bug28091_22 create mode 100644 tests/bugs/modalg_6/bug28091_31 create mode 100644 tests/bugs/modalg_6/bug28091_32 create mode 100644 tests/bugs/modalg_6/bug28091_41 create mode 100644 tests/bugs/modalg_6/bug28091_42 create mode 100644 tests/bugs/modalg_6/bug28091_51 create mode 100644 tests/bugs/modalg_6/bug28091_52 create mode 100644 tests/bugs/modalg_6/bug28091_61 create mode 100644 tests/bugs/modalg_6/bug28091_62 create mode 100644 tests/bugs/modalg_6/bug28091_71 create mode 100644 tests/bugs/modalg_6/bug28091_72 create mode 100644 tests/bugs/modalg_6/bug28091_81 create mode 100644 tests/bugs/modalg_6/bug28091_82 create mode 100644 tests/bugs/modalg_6/bug28091_91 create mode 100644 tests/bugs/modalg_6/bug28091_92 create mode 100644 tests/bugs/modalg_6/bug28091_93 create mode 100644 tests/bugs/modalg_7/bug28091_011 create mode 100644 tests/bugs/modalg_7/bug28091_021 create mode 100644 tests/bugs/modalg_7/bug28091_031 create mode 100644 tests/bugs/modalg_7/bug28091_041 create mode 100644 tests/bugs/modalg_7/bug28091_051 create mode 100644 tests/bugs/modalg_7/bug28091_061 create mode 100644 tests/bugs/modalg_7/bug28091_071 create mode 100644 tests/bugs/modalg_7/bug28091_081 create mode 100644 tests/bugs/modalg_7/bug28091_091 create mode 100644 tests/bugs/modalg_7/bug28091_101 create mode 100644 tests/bugs/modalg_7/bug28091_111 create mode 100644 tests/bugs/modalg_7/bug28091_121 create mode 100644 tests/bugs/modalg_7/bug28091_131 create mode 100644 tests/bugs/modalg_7/bug28091_141 create mode 100644 tests/bugs/modalg_7/bug28091_151 create mode 100644 tests/bugs/modalg_7/bug28091_161 create mode 100644 tests/bugs/modalg_7/bug28091_171 create mode 100644 tests/bugs/modalg_7/bug28091_181 create mode 100644 tests/bugs/modalg_7/bug28091_191 create mode 100644 tests/bugs/modalg_7/bug28091_201 create mode 100644 tests/bugs/modalg_7/bug28091_211 create mode 100644 tests/bugs/modalg_7/bug28091_221 create mode 100644 tests/bugs/modalg_7/bug28091_231 diff --git a/tests/bugs/modalg_6/bug28091_102 b/tests/bugs/modalg_6/bug28091_102 new file mode 100644 index 0000000000..a4f21ed923 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_102 @@ -0,0 +1,119 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 18.00373091680785400000 142.00002092741130000000 -2190.47435610915950000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl11 pl11 3.24989999999999980000 2190.47435610915950000000 + +plane pl12 18.00373091680709700000 142.00002092740999000000 6.00000000000000000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl12 pl12 3.24989999999999980000 2190.47435610915950000000 + +plane pl21 18.00373091680745600000 735.33335426074439000000 -2190.47435610915860000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl21 pl21 3.24989999999999980000 2190.47435610915950000000 + +plane pl22 18.00373091680669900000 735.33335426074302000000 6.00000000000099480000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl22 pl22 3.24989999999999980000 2190.47435610915950000000 + +plane pl31 18.00373091680695100000 1328.66668759407640000000 -2190.47435610915860000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl31 pl31 3.24989999999999980000 2190.47435610915950000000 + +plane pl32 18.00373091680619500000 1328.66668759407500000000 6.00000000000099480000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl32 pl32 3.24989999999999980000 2190.47435610915950000000 + +plane pl41 18.00373091680645400000 1922.00002092740940000000 -2190.47435610915770000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl41 pl41 3.24989999999999980000 2190.47435610915950000000 + +plane pl42 18.00373091680569700000 1922.00002092740810000000 6.00000000000198950000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl42 pl42 3.24989999999999980000 2190.47435610915950000000 + +plane pl51 632.00373126567490000000 735.33335426074439000000 -2190.47435610915860000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl51 pl51 3.24989999999999980000 2190.47435610915950000000 + +plane pl52 632.00373126567411000000 735.33335426074302000000 6.00000000000099480000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl52 pl52 3.24989999999999980000 2190.47435610915950000000 + +plane pl61 632.00373126567490000000 1328.66668759407730000000 -2190.47435610915860000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl61 pl61 3.24989999999999980000 2190.47435610915950000000 + +plane pl62 632.00373126567411000000 1328.66668759407590000000 6.00000000000099480000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl62 pl62 3.24989999999999980000 2190.47435610915950000000 + +plane pl71 549.09715848122084000000 142.00002092739834000000 -2190.47435610915860000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl71 pl71 3.24989999999999980000 2190.47435610915950000000 + +plane pl72 549.09715848122005000000 142.00002092739703000000 6.00000000000099480000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl72 pl72 3.24989999999999980000 2190.47435610915950000000 + +plane pl81 549.09715848122084000000 1922.00002092742240000000 -2190.47435610915770000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl81 pl81 3.24989999999999980000 2190.47435610915950000000 + +plane pl82 549.09715848122005000000 1922.00002092742100000000 6.00000000000201790000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 +pcylinder cyl82 pl82 3.24989999999999980000 2190.47435610915950000000 + + +binrestore [locate_data_file bug28091_RB11_PG_00441_02.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6 7 8} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 0 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 0 +checknbshapes r31 -vertex 0 +checknbshapes r32 -vertex 0 +checknbshapes r41 -vertex 0 +checknbshapes r42 -vertex 0 +checknbshapes r51 -vertex 0 +checknbshapes r52 -vertex 0 +checknbshapes r61 -vertex 0 +checknbshapes r62 -vertex 0 +checknbshapes r71 -vertex 0 +checknbshapes r72 -vertex 0 +checknbshapes r81 -vertex 0 +checknbshapes r82 -vertex 0 diff --git a/tests/bugs/modalg_6/bug28091_11 b/tests/bugs/modalg_6/bug28091_11 new file mode 100644 index 0000000000..6b6cd32653 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_11 @@ -0,0 +1,109 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf5 282.33707384194577000000 343.88276232635343000000 884.22469835152799000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 187.00000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -899.22469835152799000000 -854.22469835152799000000 + +cylinder cylf7 418.35216433317999000000 67.43903712333667500000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf8 146.32198335069199000000 67.43903712333667500000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf9 67.33707384193599000000 343.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf10 282.33707384193599000000 557.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf11 496.33707384193599000000 343.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf12 282.33707384193599000000 129.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +binrestore [locate_data_file bug28091_616101.brep] sh +explode sh + +nexplode sh_5 e +nexplode sh_7 e +nexplode sh_8 e +nexplode sh_9 e +nexplode sh_10 e +nexplode sh_11 e +nexplode sh_12 e + +compound sh_5_2 sh_5_3 sh_5_4 cmpde5 +compound sh_7_1 sh_7_3 sh_7_4 cmpde7 +compound sh_8_1 sh_8_3 sh_8_4 cmpde8 +compound sh_9_1 sh_9_3 sh_9_4 cmpde9 +compound sh_10_1 sh_10_3 sh_10_4 cmpde10 +compound sh_11_1 sh_11_3 sh_11_4 cmpde11 +compound sh_12_1 sh_12_3 sh_12_4 cmpde12 + +set FacesList {5 7 8 9 10 11 12} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ llength $FacesList ] +checkprops result -s 21017.3 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_111 b/tests/bugs/modalg_6/bug28091_111 new file mode 100644 index 0000000000..dff44d7bfa --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_111 @@ -0,0 +1,86 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf2 10.08401639903191300000 20.59607727749106900000 11.89638949519049800000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.51367713933409975000 0.85798356425139977000 0.00000000000000000000 1.47068324618069560000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -6.57208607325704720000 13.14417214651409400000 + +cylinder cylf10 10.08401639903186400000 20.59607727749110900000 19.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.58123819371909413000 0.81373347120673667000 0.00000000000000000000 3.32307707578835960000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -7.10361050480950060000 14.20722100961900100000 + +binrestore [locate_data_file bug28091_stufenbohrung.brep] sh +explode sh + +nexplode sh_2 e +nexplode sh_3 e +nexplode sh_4 e +nexplode sh_5 e + +compound sh_2_2 sh_2_3 sh_3_2 sh_3_3 cmpde2 +compound sh_4_3 sh_4_4 sh_5_1 sh_5_2 cmpde10 + +set FacesList {2 10} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ expr [ llength $FacesList ] ] +checkprops result -s 209.05 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_112 b/tests/bugs/modalg_6/bug28091_112 new file mode 100644 index 0000000000..918d23b6e4 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_112 @@ -0,0 +1,70 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 10.08401639903191300000 20.59607727749106900000 99.24525646557512500000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.51367713933409975000 0.85798356425139977000 0.00000000000000000000 +pcylinder cyl11 pl11 1.47068174613069420000 87.34886697038462000000 + +plane pl12 10.08401639903191300000 20.59607727749106900000 5.32430342193345040000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.51367713933409975000 0.85798356425139977000 0.00000000000000000000 +pcylinder cyl12 pl12 1.47068174613069420000 87.34886697038462000000 + +plane pl21 10.08401639903186400000 20.59607727749110900000 106.34886697038462000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.58123819371909413000 0.81373347120673667000 0.00000000000000000000 +pcylinder cyl21 pl21 3.32307248324710480000 87.34886697038462000000 + +plane pl22 10.08401639903186400000 20.59607727749110900000 11.89638949519049900000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.58123819371909413000 0.81373347120673667000 0.00000000000000000000 +pcylinder cyl22 pl22 3.32307248324710480000 87.34886697038462000000 + +binrestore [locate_data_file bug28091_stufenbohrung.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6 7 8} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 2 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 1 \ No newline at end of file diff --git a/tests/bugs/modalg_6/bug28091_12 b/tests/bugs/modalg_6/bug28091_12 new file mode 100644 index 0000000000..cff3f58494 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_12 @@ -0,0 +1,110 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 282.33707384194577000000 343.88276232635343000000 -824.40843480357205000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl11 pl11 186.99994949994999000000 824.40843480357205000000 + +plane pl12 282.33707384194577000000 343.88276232635343000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl12 pl12 186.99994949994999000000 824.40843480357205000000 + +plane pl21 418.35216433317999000000 67.43903712333667500000 -824.40843480357205000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl21 pl21 5.99994949994999870000 824.40843480357205000000 + +plane pl22 418.35216433317999000000 67.43903712333667500000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl22 pl22 5.99994949994999870000 824.40843480357205000000 + +plane pl31 146.32198335069199000000 67.43903712333667500000 -824.40843480357205000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl31 pl31 5.99994949994999870000 824.40843480357205000000 + +plane pl32 146.32198335069199000000 67.43903712333667500000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl32 pl32 5.99994949994999870000 824.40843480357205000000 + +plane pl41 67.33707384193599000000 343.88276232633768000000 -824.40843480357205000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl41 pl41 5.99994949994999870000 824.40843480357205000000 + +plane pl42 67.33707384193599000000 343.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl42 pl42 5.99994949994999870000 824.40843480357205000000 + +plane pl51 282.33707384193599000000 557.88276232633768000000 -824.40843480357205000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl51 pl51 5.99994949994999870000 824.40843480357205000000 + +plane pl52 282.33707384193599000000 557.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl52 pl52 5.99994949994999870000 824.40843480357205000000 + +plane pl61 496.33707384193599000000 343.88276232633768000000 -824.40843480357205000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl61 pl61 5.99994949994999870000 824.40843480357205000000 + +plane pl62 496.33707384193599000000 343.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl62 pl62 5.99994949994999870000 824.40843480357205000000 + +plane pl71 282.33707384193599000000 129.88276232633768000000 -824.40843480357205000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl71 pl71 5.99994949994999870000 824.40843480357205000000 + +plane pl72 282.33707384193599000000 129.88276232633768000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 +pcylinder cyl72 pl72 5.99994949994999870000 824.40843480357205000000 + +binrestore [locate_data_file bug28091_616101.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6 7} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 0 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 0 +checknbshapes r31 -vertex 0 +checknbshapes r32 -vertex 0 +checknbshapes r41 -vertex 0 +checknbshapes r42 -vertex 0 +checknbshapes r51 -vertex 0 +checknbshapes r52 -vertex 0 +checknbshapes r61 -vertex 0 +checknbshapes r62 -vertex 0 +checknbshapes r71 -vertex 0 +checknbshapes r72 -vertex 0 diff --git a/tests/bugs/modalg_6/bug28091_121 b/tests/bugs/modalg_6/bug28091_121 new file mode 100644 index 0000000000..be08cf5b7f --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_121 @@ -0,0 +1,86 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf2 13.96415221911074200000 20.33312885278508700000 8.39403909469959860000 0.28665012516263805000 -0.43666337015615425000 -0.85273489837587468000 0.81818652273596726000 0.57463162728365791000 -0.01921736034324384200 1.47068324618069530000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -6.57208607325704900000 13.14417214651409800000 + +cylinder cylf10 11.92790137880043800000 23.43501535609191000000 14.45153567662009100000 0.28665012516263849000 -0.43666337015615414000 -0.85273489837587468000 -0.12992951695923394000 0.86414424595674832000 -0.48618210868211037000 3.32307707578836010000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -7.10361050480950240000 14.20722100961900500000 + +binrestore [locate_data_file bug28091_stufenbohrung_raum.brep] sh +explode sh + +nexplode sh_2 e +nexplode sh_3 e +nexplode sh_4 e +nexplode sh_5 e + +compound sh_2_2 sh_2_3 sh_3_2 sh_3_3 cmpde2 +compound sh_4_3 sh_4_4 sh_5_1 sh_5_2 cmpde10 + +set FacesList {2 10} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ expr [ llength $FacesList ] ] +checkprops result -s 209.05 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_122 b/tests/bugs/modalg_6/bug28091_122 new file mode 100644 index 0000000000..3dbb566d00 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_122 @@ -0,0 +1,70 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 -11.07441143076466100000 58.47517948339487500000 82.87946629393842100000 0.28665012516263805000 -0.43666337015615425000 -0.85273489837587468000 0.81818652273596726000 0.57463162728365791000 -0.01921736034324384200 +pcylinder cyl11 pl11 1.47068174613069400000 87.34886697038473400000 + +plane pl12 15.84804151458950500000 17.46333959908033900000 2.78979194490324820000 0.28665012516263805000 -0.43666337015615425000 -0.85273489837587468000 0.81818652273596726000 0.57463162728365791000 -0.01921736034324384200 +pcylinder cyl12 pl12 1.47068174613069400000 87.34886697038473400000 + +plane pl21 -13.11066227107500400000 61.57706598670168300000 88.93696287585892400000 0.28665012516263849000 -0.43666337015615414000 -0.85273489837587468000 -0.12992951695923394000 0.86414424595674832000 -0.48618210868211037000 +pcylinder cyl21 pl21 3.32307248324712520000 87.34886697038473400000 + +plane pl22 13.96415221911071600000 20.33312885278513300000 8.39403909469956490000 0.28665012516263849000 -0.43666337015615414000 -0.85273489837587468000 -0.12992951695923394000 0.86414424595674832000 -0.48618210868211037000 +pcylinder cyl22 pl22 3.32307248324712520000 87.34886697038473400000 + +binrestore [locate_data_file bug28091_stufenbohrung_raum.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6 7 8} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 2 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 1 \ No newline at end of file diff --git a/tests/bugs/modalg_6/bug28091_131 b/tests/bugs/modalg_6/bug28091_131 new file mode 100644 index 0000000000..e37929f348 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_131 @@ -0,0 +1,102 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf3 491.77049263985379000000 105.76550774698794000000 25.54655900988967000000 1.00000000000000000000 0.00000000000000107324 0.00000000000000000000 0.00000000000000068226 -0.63570725286118546000 0.77193023561697904000 6.46080374259281240000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -26.48226083260482300000 52.96452166520964500000 + +cylinder cylf5 468.62127160128745000000 106.75790520823148000000 50.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.78631833882242463000 0.61782155193190091000 0.00000000000000000000 24.35252918188250600000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -50.00000000000000000000 100.00000000000000000000 + + +binrestore [locate_data_file bug28091_topfband.brep] sh +explode sh + +nexplode sh_1 e +nexplode sh_2 e +nexplode sh_3 e +nexplode sh_4 e + +compound sh_1_1 sh_1_4 sh_2_1 sh_2_4 cmpde3 +compound sh_3_2 sh_3_3 sh_3_5 sh_4_2 sh_4_3 cmpde5 + +set FacesList {3} +set FacesList1 {5} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +foreach x $FacesList1 { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 5 -face 4 + FindFaces res${x} +} + +checknbshapes result -face [expr [ llength $FacesList ]+2*[ llength $FacesList1 ]] +checkprops result -s 8695.1 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_132 b/tests/bugs/modalg_6/bug28091_132 new file mode 100644 index 0000000000..50c0e54f1d --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_132 @@ -0,0 +1,70 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 -149.53653765210191000000 105.76550774698725000000 25.54655900988967000000 1.00000000000000000000 0.00000000000000107324 0.00000000000000000000 0.00000000000000068226 -0.63570725286118546000 0.77193023561697904000 +pcylinder cyl11 pl11 6.45885919842836300000 641.30703029195570000000 + +plane pl12 518.25275347245861000000 105.76550774698796000000 25.54655900988967000000 1.00000000000000000000 0.00000000000000107324 0.00000000000000000000 0.00000000000000068226 -0.63570725286118546000 0.77193023561697904000 +pcylinder cyl12 pl12 6.45885919842836300000 641.30703029195570000000 + +plane pl21 468.62127160128745000000 106.75790520823148000000 691.30703029195570000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.78631833882242463000 0.61782155193190091000 0.00000000000000000000 +pcylinder cyl21 pl21 24.35058463771805700000 641.30703029195570000000 + +plane pl22 468.62127160128745000000 106.75790520823148000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.78631833882242463000 0.61782155193190091000 0.00000000000000000000 +pcylinder cyl22 pl22 24.35058463771805700000 641.30703029195570000000 + +binrestore [locate_data_file bug28091_topfband.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 3 +checknbshapes r12 -vertex 0 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 0 \ No newline at end of file diff --git a/tests/bugs/modalg_6/bug28091_21 b/tests/bugs/modalg_6/bug28091_21 new file mode 100644 index 0000000000..8cc08b98b5 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_21 @@ -0,0 +1,86 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf7 50.46515887431404900000 25.00000000000000000000 -4.99999999999952930000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 3.00000000000000270000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 0.00000000000009414691 14.99999999999995600000 + +cylinder cylf8 50.46515887431404900000 95.00000000000000000000 -4.99999999999953730000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 3.00000000000000270000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 0.00000000000009414691 14.99999999999995600000 + +binrestore [locate_data_file bug28091_ad1945.brep] sh +explode sh + +nexplode sh_1 e +nexplode sh_2 e +nexplode sh_21 e +nexplode sh_23 e + +compound sh_1_2 sh_1_3 sh_23_2 sh_23_3 cmpde7 +compound sh_2_2 sh_2_3 sh_21_2 sh_21_3 cmpde8 + +set FacesList {7 8} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ llength $FacesList ] +checkprops result -s 188.496 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_22 b/tests/bugs/modalg_6/bug28091_22 new file mode 100644 index 0000000000..dfcc8268d5 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_22 @@ -0,0 +1,70 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 50.46515887431606000000 24.99999999999996800000 -292.97523641183398000000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 +pcylinder cyl11 pl11 2.99999849990000160000 292.97523641183449000000 + +plane pl12 50.46515887431397800000 25.00000000000000000000 5.00000000000047250000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 +pcylinder cyl12 pl12 2.99999849990000160000 292.97523641183449000000 + +plane pl21 50.46515887431606000000 94.99999999999997200000 -292.97523641183398000000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 +pcylinder cyl21 pl21 2.99999849990000160000 292.97523641183449000000 + +plane pl22 50.46515887431397800000 95.00000000000000000000 5.00000000000046450000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 +pcylinder cyl22 pl22 2.99999849990000160000 292.97523641183449000000 + +binrestore [locate_data_file bug28091_ad1945.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 0 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 0 \ No newline at end of file diff --git a/tests/bugs/modalg_6/bug28091_31 b/tests/bugs/modalg_6/bug28091_31 new file mode 100644 index 0000000000..28bce12722 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_31 @@ -0,0 +1,105 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf19 32.00000000016706300000 218.81370849900000000000 38.81370849900000100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -23.00000000000000000000 46.00000000000000000000 + +cylinder cylf21 32.00000000016706300000 196.18629150100000000000 16.18629150099999900000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -23.00000000000000000000 46.00000000000000000000 + +cylinder cylf23 38.81370849916703500000 218.81370849900000000000 23.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000568434 0.00000000000000000000 5.00000000000000000000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -23.00000000000000000000 46.00000000000000000000 + +cylinder cylf25 16.18629150116709100000 196.18629150100000000000 23.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -23.00000000000000000000 46.00000000000000000000 + +cylinder cylf47 9.35849466038116520000 100.00000000000000000000 35.91936957356483600000 0.90707526697824048000 0.00000000000000000000 -0.42096847867311143000 -0.42096847867311143000 0.00000000000001136868 -0.90707526697824048000 4.99999999964020250000 +mkface fcan47 cylf47 0.0 6.28318530717958620000 -20.00000000062111700000 40.00000000124223500000 + + +binrestore [locate_data_file bug28091_BenchLeg.brep] sh +explode sh + +nexplode sh_1 e +nexplode sh_2 e +nexplode sh_37 e +nexplode sh_39 e +nexplode sh_4 e +nexplode sh_41 e +nexplode sh_43 e +nexplode sh_6 e +nexplode sh_65 e +nexplode sh_8 e + +compound sh_6_1 sh_6_4 sh_39_1 sh_39_4 cmpde19 +compound sh_8_1 sh_8_4 sh_37_1 sh_37_4 cmpde21 +compound sh_2_2 sh_2_3 sh_43_2 sh_43_3 cmpde23 +compound sh_4_2 sh_4_3 sh_41_2 sh_41_3 cmpde25 +compound sh_1_1 sh_1_4 sh_65_1 sh_65_4 cmpde47 + +set FacesList {19 21 23 25 47} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ llength $FacesList ] +checkprops result -s 3518.58 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_32 b/tests/bugs/modalg_6/bug28091_32 new file mode 100644 index 0000000000..917d56a335 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_32 @@ -0,0 +1,95 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 -233.33225716327877000000 218.81370849900000000000 38.81370849900000100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl11 pl11 4.99956267577179330000 265.33225716344583000000 + +plane pl12 55.00000000016706300000 218.81370849900000000000 38.81370849900000100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl12 pl12 4.99956267577179330000 265.33225716344583000000 + +plane pl31 -233.33225716327877000000 196.18629150100000000000 16.18629150099999900000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl31 pl31 4.99956256930665170000 265.33225716344583000000 + +plane pl32 55.00000000016706300000 196.18629150100000000000 16.18629150099999900000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl32 pl32 4.99956256930665170000 265.33225716344583000000 + +plane pl51 38.81370849916703500000 218.81370849900000000000 288.33225716344583000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000568434 0.00000000000000000000 +pcylinder cyl51 pl51 4.99956267585773520000 265.33225716344583000000 + +plane pl52 38.81370849916703500000 218.81370849900000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000568434 0.00000000000000000000 +pcylinder cyl52 pl52 4.99956267585773520000 265.33225716344583000000 + +plane pl71 16.18629150116709100000 196.18629150100000000000 288.33225716344583000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl71 pl71 4.99956256941085450000 265.33225716344583000000 + +plane pl72 16.18629150116709100000 196.18629150100000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl72 pl72 4.99956256941085450000 265.33225716344583000000 + +plane pl91 -231.31783334409064000000 100.00000000000000000000 147.61588621456340000000 0.90707526697824048000 0.00000000000000000000 -0.42096847867311143000 -0.42096847867311143000 0.00000000000001136868 -0.90707526697824048000 +pcylinder cyl91 pl91 4.99956264091252310000 265.33225716344583000000 + +plane pl92 27.50000000050937400000 100.00000000000000000000 27.49999999984113700000 0.90707526697824048000 0.00000000000000000000 -0.42096847867311143000 -0.42096847867311143000 0.00000000000001136868 -0.90707526697824048000 +pcylinder cyl92 pl92 4.99956264091252310000 265.33225716344583000000 + +binrestore [locate_data_file bug28091_BenchLeg.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 3 5 7 9} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 3 +checknbshapes r12 -vertex 0 +checknbshapes r21 -vertex 7 +checknbshapes r22 -vertex 0 +checknbshapes r31 -vertex 7 +checknbshapes r32 -vertex 0 +checknbshapes r41 -vertex 3 +checknbshapes r42 -vertex 0 +checknbshapes r51 -vertex 3 +checknbshapes r52 -vertex 0 \ No newline at end of file diff --git a/tests/bugs/modalg_6/bug28091_41 b/tests/bugs/modalg_6/bug28091_41 new file mode 100644 index 0000000000..13808621e2 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_41 @@ -0,0 +1,324 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf1 1206.16230817000000000000 116.04451630099993000000 92.00000000000011400000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf3 1206.16230817000000000000 236.04451630099993000000 92.00000000000009900000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf5 1206.16230817000000000000 356.04451630099993000000 92.00000000000008500000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf7 1206.16230817000000000000 476.04451630099993000000 92.00000000000007100000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf9 127.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf11 248.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf13 369.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf15 490.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf17 801.64327191629991000000 763.46196366859999000000 56.08367445015004900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 8.00000000000000000000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -10.08367445014999200000 58.91632554985000800000 + +cylinder cylf20 1206.16230817000000000000 596.04451630099993000000 92.00000000000005700000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf22 1206.16230817000000000000 716.04451630099993000000 92.00000000000004300000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan22 cylf22 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf24 1206.16230817000000000000 836.04451630099993000000 92.00000000000002800000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf26 611.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan26 cylf26 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf28 732.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan28 cylf28 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf30 853.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan30 cylf30 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf32 105.53679809799996000000 909.25902500140000000000 62.00000000000003600000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 12.00000000000000000000 +mkface fcan32 cylf32 0.0 6.28318530717958620000 -20.87551167546213500000 99.12448832485984000000 + +cylinder cylf35 475.56848832800006000000 374.86539833100005000000 62.00000000000009200000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 12.00000000000000000000 +mkface fcan35 cylf35 0.0 6.28318530717958620000 -20.87551167574295600000 99.12448832499993000000 + +cylinder cylf41 1206.16230817000000000000 116.04451630099993000000 92.00000000000011400000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan41 cylf41 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf44 1246.16230817000000000000 548.74451630099998000000 92.00000000000007100000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 12.00000000000000000000 +mkface fcan44 cylf44 0.0 6.28318530717958620000 -62.00000000000000000000 124.00000000000000000000 + +cylinder cylf57 105.53679809799996000000 909.25902500140000000000 62.00000000000003600000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 10.50000000000000000000 +mkface fcan57 cylf57 0.0 6.28318530717958620000 -40.99301569436870800000 109.18324033408629000000 + +cylinder cylf59 93.92443418900006700000 901.21824301920014000000 92.00000000000002800000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan59 cylf59 0.0 6.28318530717958620000 -20.81201028461609300000 41.62402056923218700000 + +cylinder cylf63 475.56848832800006000000 374.86539833100005000000 62.00000000000009200000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 10.50000000000000000000 +mkface fcan63 cylf63 0.0 6.28318530717958620000 -40.99301638716623600000 109.18324068014375000000 + +cylinder cylf65 463.95612441899993000000 366.82461634900005000000 92.00000000000008500000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan65 cylf65 0.0 6.28318530717958620000 -20.81201028461609300000 41.62402056923218700000 + +cylinder cylf81 560.66230816999996000000 1231.44451630100000000000 91.99999999999998600000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 12.00000000000000000000 +mkface fcan81 cylf81 0.0 6.28318530717958620000 -70.00000627844994500000 140.00000313922499000000 + +cylinder cylf88 1206.16230817000000000000 236.04451630099993000000 92.00000000000009900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan88 cylf88 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf90 1206.16230817000000000000 356.04451630099993000000 92.00000000000008500000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan90 cylf90 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf92 1206.16230817000000000000 476.04451630099993000000 92.00000000000007100000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan92 cylf92 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf94 1206.16230817000000000000 596.04451630099993000000 92.00000000000005700000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan94 cylf94 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf96 1206.16230817000000000000 716.04451630099993000000 92.00000000000004300000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan96 cylf96 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf98 1206.16230817000000000000 836.04451630099993000000 92.00000000000002800000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan98 cylf98 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf100 127.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan100 cylf100 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf102 248.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan102 cylf102 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf104 369.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan104 cylf104 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf106 490.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan106 cylf106 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf108 611.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan108 cylf108 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf110 732.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan110 cylf110 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf112 853.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan112 cylf112 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf199 936.16230816999996000000 385.74451630099998000000 92.00000000000008500000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan199 cylf199 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf267 801.64327191629991000000 763.46196366859999000000 56.08367445015004900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 7.00000000000000000000 +mkface fcan267 cylf267 0.0 6.28318530717958620000 -24.08367445015000600000 65.91632554985001500000 + +binrestore [locate_data_file bug28091_dsk_tl06_111680.brep] sh +explode sh + +nexplode sh_69 e +nexplode sh_70 e +nexplode sh_67 e +nexplode sh_68 e +nexplode sh_35 e +nexplode sh_36 e +nexplode sh_63 e +nexplode sh_64 e +nexplode sh_61 e +nexplode sh_62 e +nexplode sh_32 e +nexplode sh_33 e +nexplode sh_17 e +nexplode sh_18 e +nexplode sh_275 e +nexplode sh_276 e +nexplode sh_48 e +nexplode sh_49 e +nexplode sh_85 e +nexplode sh_86 e +nexplode sh_1 e +nexplode sh_2 e +nexplode sh_39 e +nexplode sh_40 e +nexplode sh_3 e +nexplode sh_4 e +nexplode sh_92 e +nexplode sh_93 e +nexplode sh_5 e +nexplode sh_6 e +nexplode sh_94 e +nexplode sh_95 e +nexplode sh_7 e +nexplode sh_8 e +nexplode sh_96 e +nexplode sh_97 e +nexplode sh_20 e +nexplode sh_21 e +nexplode sh_98 e +nexplode sh_99 e +nexplode sh_22 e +nexplode sh_23 e +nexplode sh_100 e +nexplode sh_101 e +nexplode sh_102 e +nexplode sh_103 e +nexplode sh_24 e +nexplode sh_25 e +nexplode sh_9 e +nexplode sh_10 e +nexplode sh_104 e +nexplode sh_105 e +nexplode sh_11 e +nexplode sh_12 e +nexplode sh_106 e +nexplode sh_107 e +nexplode sh_13 e +nexplode sh_14 e +nexplode sh_108 e +nexplode sh_109 e +nexplode sh_110 e +nexplode sh_111 e +nexplode sh_15 e +nexplode sh_16 e +nexplode sh_26 e +nexplode sh_27 e +nexplode sh_112 e +nexplode sh_113 e +nexplode sh_28 e +nexplode sh_29 e +nexplode sh_114 e +nexplode sh_115 e +nexplode sh_30 e +nexplode sh_31 e +nexplode sh_116 e +nexplode sh_117 e +nexplode sh_216 e +nexplode sh_217 e + +compound sh_1_2 sh_1_3 sh_2_2 sh_2_3 cmpde1 +compound sh_3_2 sh_3_3 sh_4_2 sh_4_3 cmpde3 +compound sh_5_2 sh_5_3 sh_6_2 sh_6_3 cmpde5 +compound sh_7_2 sh_7_3 sh_8_2 sh_8_3 cmpde7 +compound sh_9_2 sh_9_3 sh_10_2 sh_10_3 cmpde9 +compound sh_11_2 sh_11_3 sh_12_2 sh_12_3 cmpde11 +compound sh_13_2 sh_13_3 sh_14_2 sh_14_3 cmpde13 +compound sh_15_2 sh_15_3 sh_16_2 sh_16_3 cmpde15 +compound sh_17_2 sh_17_3 sh_18_2 sh_18_3 cmpde17 +compound sh_20_2 sh_20_3 sh_21_2 sh_21_3 cmpde20 +compound sh_22_2 sh_22_3 sh_23_2 sh_23_3 cmpde22 +compound sh_24_2 sh_24_3 sh_25_2 sh_25_3 cmpde24 +compound sh_26_2 sh_26_3 sh_27_2 sh_27_3 cmpde26 +compound sh_28_2 sh_28_3 sh_29_2 sh_29_3 cmpde28 +compound sh_30_2 sh_30_3 sh_31_2 sh_31_3 cmpde30 +compound sh_32_1 sh_32_4 sh_33_1 sh_33_4 cmpde32 +compound sh_35_1 sh_35_4 sh_36_1 sh_36_4 cmpde35 +compound sh_39_2 sh_39_3 sh_40_2 sh_40_3 cmpde41 +compound sh_48_2 sh_48_3 sh_49_2 sh_49_3 cmpde44 +compound sh_61_1 sh_61_4 sh_62_10 sh_62_11 sh_62_12 sh_62_1 sh_62_4 sh_62_5 sh_62_6 sh_62_7 sh_62_8 sh_62_9 cmpde57 +compound sh_63_2 sh_63_3 sh_64_2 sh_64_3 sh_64_4 sh_64_5 sh_64_6 cmpde59 +compound sh_67_1 sh_67_4 sh_68_1 sh_68_11 sh_68_12 sh_68_4 sh_68_5 sh_68_6 cmpde63 +compound sh_69_2 sh_69_3 sh_70_2 sh_70_3 sh_70_6 cmpde65 +compound sh_85_2 sh_85_3 sh_86_1 sh_86_3 sh_86_4 sh_86_5 cmpde81 +compound sh_92_2 sh_92_3 sh_93_2 sh_93_3 cmpde88 +compound sh_94_2 sh_94_3 sh_95_2 sh_95_3 cmpde90 +compound sh_96_2 sh_96_3 sh_97_2 sh_97_3 cmpde92 +compound sh_98_2 sh_98_3 sh_99_2 sh_99_3 cmpde94 +compound sh_100_2 sh_100_3 sh_101_2 sh_101_3 cmpde96 +compound sh_102_2 sh_102_3 sh_103_2 sh_103_3 cmpde98 +compound sh_104_2 sh_104_3 sh_105_2 sh_105_3 cmpde100 +compound sh_106_2 sh_106_3 sh_107_2 sh_107_3 cmpde102 +compound sh_108_2 sh_108_3 sh_109_2 sh_109_3 cmpde104 +compound sh_110_2 sh_110_3 sh_111_2 sh_111_3 cmpde106 +compound sh_112_2 sh_112_3 sh_113_2 sh_113_3 cmpde108 +compound sh_114_2 sh_114_3 sh_115_2 sh_115_3 cmpde110 +compound sh_116_2 sh_116_3 sh_117_2 sh_117_3 cmpde112 +compound sh_216_2 sh_216_3 sh_217_2 sh_217_3 cmpde199 +compound sh_275_2 sh_275_3 sh_275_4 sh_275_5 sh_275_6 sh_275_7 sh_276_2 sh_276_3 cmpde267 + +set FacesList {1 3 5 7 9 11 13 15 17 20 22 24 26 28 30 32 35 41 44 59 65 81 88 90 92 94 96 98 100 102 104 106 108 110 112 199 267} +set FacesList1 {57 63} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +foreach x $FacesList1 { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 5 -face 4 + FindFaces res${x} +} + + +checknbshapes result -face [expr [ llength $FacesList ]+2*[ llength $FacesList1 ]] +checkprops result -s 182603 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_42 b/tests/bugs/modalg_6/bug28091_42 new file mode 100644 index 0000000000..49c5579acc --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_42 @@ -0,0 +1,1017 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 1206.16230817000000000000 116.04451630100016000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl11 pl11 9.99999900000000070000 2086.06782484938640000000 + +plane pl12 1206.16230817000000000000 116.04451630099992000000 0.00000000000011368684 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl12 pl12 9.99999900000000070000 2086.06782484938640000000 + +plane pl21 1206.16230817000000000000 236.04451630100016000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl21 pl21 9.99999900000000070000 2086.06782484938640000000 + +plane pl22 1206.16230817000000000000 236.04451630099993000000 0.00000000000009947598 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl22 pl22 9.99999900000000070000 2086.06782484938640000000 + +plane pl31 1206.16230817000000000000 356.04451630100016000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl31 pl31 9.99999900000000070000 2086.06782484938640000000 + +plane pl32 1206.16230817000000000000 356.04451630099993000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl32 pl32 9.99999900000000070000 2086.06782484938640000000 + +plane pl41 1206.16230817000000000000 476.04451630100016000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl41 pl41 9.99999900000000070000 2086.06782484938640000000 + +plane pl42 1206.16230817000000000000 476.04451630099993000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl42 pl42 9.99999900000000070000 2086.06782484938640000000 + +plane pl51 127.66230816999996000000 1191.44451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl51 pl51 9.99999900000000070000 2086.06782484938640000000 + +plane pl52 127.66230816999996000000 1191.44451630100000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl52 pl52 9.99999900000000070000 2086.06782484938640000000 + +plane pl61 248.66230816999996000000 1191.44451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl61 pl61 9.99999900000000070000 2086.06782484938640000000 + +plane pl62 248.66230816999996000000 1191.44451630100000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl62 pl62 9.99999900000000070000 2086.06782484938640000000 + +plane pl71 369.66230816999996000000 1191.44451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl71 pl71 9.99999900000000070000 2086.06782484938640000000 + +plane pl72 369.66230816999996000000 1191.44451630100000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl72 pl72 9.99999900000000070000 2086.06782484938640000000 + +plane pl81 490.66230816999996000000 1191.44451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl81 pl81 9.99999900000000070000 2086.06782484938640000000 + +plane pl82 490.66230816999996000000 1191.44451630100000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl82 pl82 9.99999900000000070000 2086.06782484938640000000 + +plane pl91 801.64327191629991000000 763.46196366859976000000 -2017.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl91 pl91 7.99999849989999840000 2086.06782484938640000000 + +plane pl92 801.64327191629991000000 763.46196366859999000000 92.00000000000005700000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl92 pl92 7.99999849989999840000 2086.06782484938640000000 + +plane pl101 1206.16230817000000000000 596.04451630100016000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl101 pl101 9.99999900000000070000 2086.06782484938640000000 + +plane pl102 1206.16230817000000000000 596.04451630099993000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl102 pl102 9.99999900000000070000 2086.06782484938640000000 + +plane pl111 1206.16230817000000000000 716.04451630100016000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl111 pl111 9.99999900000000070000 2086.06782484938640000000 + +plane pl112 1206.16230817000000000000 716.04451630099993000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl112 pl112 9.99999900000000070000 2086.06782484938640000000 + +plane pl121 1206.16230817000000000000 836.04451630100016000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl121 pl121 9.99999900000000070000 2086.06782484938640000000 + +plane pl122 1206.16230817000000000000 836.04451630099993000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl122 pl122 9.99999900000000070000 2086.06782484938640000000 + +plane pl131 611.66230816999996000000 1191.44451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl131 pl131 9.99999900000000070000 2086.06782484938640000000 + +plane pl132 611.66230816999996000000 1191.44451630100000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl132 pl132 9.99999900000000070000 2086.06782484938640000000 + +plane pl141 732.66230816999996000000 1191.44451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl141 pl141 9.99999900000000070000 2086.06782484938640000000 + +plane pl142 732.66230816999996000000 1191.44451630100000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl142 pl142 9.99999900000000070000 2086.06782484938640000000 + +plane pl151 853.66230816999996000000 1191.44451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl151 pl151 9.99999900000000070000 2086.06782484938640000000 + +plane pl152 853.66230816999996000000 1191.44451630100000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl152 pl152 9.99999900000000070000 2086.06782484938640000000 + +plane pl161 1804.86194537002370000000 2085.92754257673820000000 61.99999999999990100000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl161 pl161 11.99999849989999800000 2086.06782484938640000000 + +plane pl162 56.92795234281276600000 875.60066446479311000000 62.00000000000004300000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl162 pl162 11.99999849989999800000 2086.06782484938640000000 + +plane pl171 2174.89363560013950000000 1551.53391590641830000000 61.99999999999995700000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl171 pl171 11.99999849989999800000 2086.06782484938640000000 + +plane pl172 426.95964257281304000000 341.20703779439327000000 62.00000000000009900000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl172 pl172 11.99999849989999800000 2086.06782484938640000000 + +plane pl181 1206.16230817000000000000 116.04451630099969000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl181 pl181 8.99999849989999840000 2086.06782484938640000000 + +plane pl182 1206.16230817000000000000 116.04451630099993000000 92.00000000000011400000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl182 pl182 8.99999849989999840000 2086.06782484938640000000 + +plane pl191 1246.16230817000000000000 548.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl191 pl191 11.99999849989999800000 2086.06782484938640000000 + +plane pl192 1246.16230817000000000000 548.74451630099998000000 30.00000000000007100000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl192 pl192 11.99999849989999800000 2086.06782484938640000000 + +plane pl201 1813.08338578004210000000 2091.62033781084660000000 61.99999999999990100000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl201 pl201 10.49999800000000000000 2086.06782484938640000000 + +plane pl202 56.92795234293712500000 875.60066446487917000000 62.00000000000004300000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl202 pl202 10.49999800000000000000 2086.06782484938640000000 + +plane pl221 2183.11507601040600000000 1557.22671114069820000000 61.99999999999995700000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl221 pl221 10.49999800000000000000 2086.06782484938640000000 + +plane pl222 426.95964257312426000000 341.20703779460877000000 62.00000000000009900000 -0.82214404103074601000 -0.56927952343083188000 0.00000000000000006320 -0.56927952343083188000 0.82214404103074601000 -0.00000000000000009128 +pcylinder cyl222 pl222 10.49999800000000000000 2086.06782484938640000000 + +plane pl241 560.66230816999996000000 1231.44451630100020000000 2177.49059308350800000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl241 pl241 11.93584798940490500000 2086.06782484938640000000 + +plane pl242 560.66230816999996000000 1231.44451630100000000000 21.99999999999998600000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl242 pl242 11.93584798940490500000 2086.06782484938640000000 + +plane pl251 1206.16230817000000000000 236.04451630099970000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl251 pl251 8.99999849989999840000 2086.06782484938640000000 + +plane pl252 1206.16230817000000000000 236.04451630099993000000 92.00000000000009900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl252 pl252 8.99999849989999840000 2086.06782484938640000000 + +plane pl261 1206.16230817000000000000 356.04451630099970000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl261 pl261 8.99999849989999840000 2086.06782484938640000000 + +plane pl262 1206.16230817000000000000 356.04451630099993000000 92.00000000000008500000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl262 pl262 8.99999849989999840000 2086.06782484938640000000 + +plane pl271 1206.16230817000000000000 476.04451630099970000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl271 pl271 8.99999849989999840000 2086.06782484938640000000 + +plane pl272 1206.16230817000000000000 476.04451630099993000000 92.00000000000007100000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl272 pl272 8.99999849989999840000 2086.06782484938640000000 + +plane pl281 1206.16230817000000000000 596.04451630099970000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl281 pl281 8.99999849989999840000 2086.06782484938640000000 + +plane pl282 1206.16230817000000000000 596.04451630099993000000 92.00000000000005700000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl282 pl282 8.99999849989999840000 2086.06782484938640000000 + +plane pl291 1206.16230817000000000000 716.04451630099970000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl291 pl291 8.99999849989999840000 2086.06782484938640000000 + +plane pl292 1206.16230817000000000000 716.04451630099993000000 92.00000000000004300000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl292 pl292 8.99999849989999840000 2086.06782484938640000000 + +plane pl301 1206.16230817000000000000 836.04451630099970000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl301 pl301 8.99999849989999840000 2086.06782484938640000000 + +plane pl302 1206.16230817000000000000 836.04451630099993000000 92.00000000000002800000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl302 pl302 8.99999849989999840000 2086.06782484938640000000 + +plane pl311 127.66230816999996000000 1191.44451630099980000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl311 pl311 8.99999849989999840000 2086.06782484938640000000 + +plane pl312 127.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl312 pl312 8.99999849989999840000 2086.06782484938640000000 + +plane pl321 248.66230816999996000000 1191.44451630099980000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl321 pl321 8.99999849989999840000 2086.06782484938640000000 + +plane pl322 248.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl322 pl322 8.99999849989999840000 2086.06782484938640000000 + +plane pl331 369.66230816999996000000 1191.44451630099980000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl331 pl331 8.99999849989999840000 2086.06782484938640000000 + +plane pl332 369.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl332 pl332 8.99999849989999840000 2086.06782484938640000000 + +plane pl341 490.66230816999996000000 1191.44451630099980000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl341 pl341 8.99999849989999840000 2086.06782484938640000000 + +plane pl342 490.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl342 pl342 8.99999849989999840000 2086.06782484938640000000 + +plane pl351 611.66230816999996000000 1191.44451630099980000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl351 pl351 8.99999849989999840000 2086.06782484938640000000 + +plane pl352 611.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl352 pl352 8.99999849989999840000 2086.06782484938640000000 + +plane pl361 732.66230816999996000000 1191.44451630099980000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl361 pl361 8.99999849989999840000 2086.06782484938640000000 + +plane pl362 732.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl362 pl362 8.99999849989999840000 2086.06782484938640000000 + +plane pl371 853.66230816999996000000 1191.44451630099980000000 -2086.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl371 pl371 8.99999849989999840000 2086.06782484938640000000 + +plane pl372 853.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl372 pl372 8.99999849989999840000 2086.06782484938640000000 + +plane pl381 136.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl381 pl381 4.99999849989999840000 2086.06782484938640000000 + +plane pl382 136.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl382 pl382 4.99999849989999840000 2086.06782484938640000000 + +plane pl391 136.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl391 pl391 4.99999849989999840000 2086.06782484938640000000 + +plane pl392 136.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl392 pl392 4.99999849989999840000 2086.06782484938640000000 + +plane pl401 136.16230816999996000000 885.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl401 pl401 4.99999849989999840000 2086.06782484938640000000 + +plane pl402 136.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl402 pl402 4.99999849989999840000 2086.06782484938640000000 + +plane pl411 236.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl411 pl411 4.99999849989999840000 2086.06782484938640000000 + +plane pl412 236.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl412 pl412 4.99999849989999840000 2086.06782484938640000000 + +plane pl421 236.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl421 pl421 4.99999849989999840000 2086.06782484938640000000 + +plane pl422 236.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl422 pl422 4.99999849989999840000 2086.06782484938640000000 + +plane pl431 236.16230816999996000000 885.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl431 pl431 4.99999849989999840000 2086.06782484938640000000 + +plane pl432 236.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl432 pl432 4.99999849989999840000 2086.06782484938640000000 + +plane pl441 236.16230816999996000000 785.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl441 pl441 4.99999849989999840000 2086.06782484938640000000 + +plane pl442 236.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl442 pl442 4.99999849989999840000 2086.06782484938640000000 + +plane pl451 236.16230816999996000000 685.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl451 pl451 4.99999849989999840000 2086.06782484938640000000 + +plane pl452 236.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl452 pl452 4.99999849989999840000 2086.06782484938640000000 + +plane pl461 336.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl461 pl461 4.99999849989999840000 2086.06782484938640000000 + +plane pl462 336.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl462 pl462 4.99999849989999840000 2086.06782484938640000000 + +plane pl471 336.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl471 pl471 4.99999849989999840000 2086.06782484938640000000 + +plane pl472 336.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl472 pl472 4.99999849989999840000 2086.06782484938640000000 + +plane pl481 436.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl481 pl481 4.99999849989999840000 2086.06782484938640000000 + +plane pl482 436.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl482 pl482 4.99999849989999840000 2086.06782484938640000000 + +plane pl491 436.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl491 pl491 4.99999849989999840000 2086.06782484938640000000 + +plane pl492 436.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl492 pl492 4.99999849989999840000 2086.06782484938640000000 + +plane pl501 536.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl501 pl501 4.99999849989999840000 2086.06782484938640000000 + +plane pl502 536.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl502 pl502 4.99999849989999840000 2086.06782484938640000000 + +plane pl511 536.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl511 pl511 4.99999849989999840000 2086.06782484938640000000 + +plane pl512 536.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl512 pl512 4.99999849989999840000 2086.06782484938640000000 + +plane pl521 636.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl521 pl521 4.99999849989999840000 2086.06782484938640000000 + +plane pl522 636.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl522 pl522 4.99999849989999840000 2086.06782484938640000000 + +plane pl531 736.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl531 pl531 4.99999849989999840000 2086.06782484938640000000 + +plane pl532 736.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl532 pl532 4.99999849989999840000 2086.06782484938640000000 + +plane pl541 736.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl541 pl541 4.99999849989999840000 2086.06782484938640000000 + +plane pl542 736.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl542 pl542 4.99999849989999840000 2086.06782484938640000000 + +plane pl551 736.16230816999996000000 285.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl551 pl551 4.99999849989999840000 2086.06782484938640000000 + +plane pl552 736.16230816999996000000 285.74451630099998000000 0.00000000000009947598 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl552 pl552 4.99999849989999840000 2086.06782484938640000000 + +plane pl561 836.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl561 pl561 4.99999849989999840000 2086.06782484938640000000 + +plane pl562 836.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl562 pl562 4.99999849989999840000 2086.06782484938640000000 + +plane pl571 836.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl571 pl571 4.99999849989999840000 2086.06782484938640000000 + +plane pl572 836.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl572 pl572 4.99999849989999840000 2086.06782484938640000000 + +plane pl581 836.16230816999996000000 285.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl581 pl581 4.99999849989999840000 2086.06782484938640000000 + +plane pl582 836.16230816999996000000 285.74451630099998000000 0.00000000000009947598 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl582 pl582 4.99999849989999840000 2086.06782484938640000000 + +plane pl591 836.16230816999996000000 185.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl591 pl591 4.99999849989999840000 2086.06782484938640000000 + +plane pl592 836.16230816999996000000 185.74451630099998000000 0.00000000000011368684 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl592 pl592 4.99999849989999840000 2086.06782484938640000000 + +plane pl601 936.16230816999996000000 1085.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl601 pl601 4.99999849989999840000 2086.06782484938640000000 + +plane pl602 936.16230816999996000000 1085.74451630100000000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl602 pl602 4.99999849989999840000 2086.06782484938640000000 + +plane pl611 936.16230816999996000000 185.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl611 pl611 4.99999849989999840000 2086.06782484938640000000 + +plane pl612 936.16230816999996000000 185.74451630099998000000 0.00000000000011368684 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl612 pl612 4.99999849989999840000 2086.06782484938640000000 + +plane pl621 1036.16230817000000000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl621 pl621 4.99999849989999840000 2086.06782484938640000000 + +plane pl622 1036.16230817000000000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl622 pl622 4.99999849989999840000 2086.06782484938640000000 + +plane pl631 1036.16230817000000000000 285.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl631 pl631 4.99999849989999840000 2086.06782484938640000000 + +plane pl632 1036.16230817000000000000 285.74451630099998000000 0.00000000000009947598 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl632 pl632 4.99999849989999840000 2086.06782484938640000000 + +plane pl641 1036.16230817000000000000 185.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl641 pl641 4.99999849989999840000 2086.06782484938640000000 + +plane pl642 1036.16230817000000000000 185.74451630099998000000 0.00000000000011368684 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl642 pl642 4.99999849989999840000 2086.06782484938640000000 + +plane pl651 1136.16230817000000000000 285.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl651 pl651 4.99999849989999840000 2086.06782484938640000000 + +plane pl652 1136.16230817000000000000 285.74451630099998000000 0.00000000000009947598 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl652 pl652 4.99999849989999840000 2086.06782484938640000000 + +plane pl661 1136.16230817000000000000 185.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl661 pl661 4.99999849989999840000 2086.06782484938640000000 + +plane pl662 1136.16230817000000000000 185.74451630099998000000 0.00000000000011368684 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl662 pl662 4.99999849989999840000 2086.06782484938640000000 + +plane pl671 1136.16230817000000000000 85.74451630100020300000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl671 pl671 4.99999849989999840000 2086.06782484938640000000 + +plane pl672 1136.16230817000000000000 85.74451630099996200000 0.00000000000011368684 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl672 pl672 4.99999849989999840000 2086.06782484938640000000 + +plane pl681 636.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl681 pl681 4.99999799974998990000 2086.06782484938640000000 + +plane pl682 636.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl682 pl682 4.99999799974998990000 2086.06782484938640000000 + +plane pl691 936.16230816999996000000 385.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl691 pl691 4.99999849989999840000 2086.06782484938640000000 + +plane pl692 936.16230816999996000000 385.74451630099998000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl692 pl692 4.99999849989999840000 2086.06782484938640000000 + +plane pl701 436.16230816999996000000 485.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl701 pl701 4.99999849979999130000 2086.06782484938640000000 + +plane pl702 436.16230816999996000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl702 pl702 4.99999849979999130000 2086.06782484938640000000 + +plane pl711 936.16230816999996000000 985.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl711 pl711 4.99999799974998990000 2086.06782484938640000000 + +plane pl712 936.16230816999996000000 985.74451630099998000000 0.00000000000001421085 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl712 pl712 4.99999799974998990000 2086.06782484938640000000 + +plane pl721 936.16230816999996000000 285.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl721 pl721 4.99999799974998990000 2086.06782484938640000000 + +plane pl722 936.16230816999996000000 285.74451630099998000000 0.00000000000009947598 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl722 pl722 4.99999799974998990000 2086.06782484938640000000 + +plane pl731 536.16230816999996000000 385.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl731 pl731 4.99999849979999130000 2086.06782484938640000000 + +plane pl732 536.16230816999996000000 385.74451630099998000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl732 pl732 4.99999849979999130000 2086.06782484938640000000 + +plane pl741 1136.16230817000000000000 385.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl741 pl741 4.99999849979999130000 2086.06782484938640000000 + +plane pl742 1136.16230817000000000000 385.74451630099998000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl742 pl742 4.99999849979999130000 2086.06782484938640000000 + +plane pl751 336.16230816999996000000 585.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl751 pl751 4.99999849979999130000 2086.06782484938640000000 + +plane pl752 336.16230816999996000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl752 pl752 4.99999849979999130000 2086.06782484938640000000 + +plane pl761 336.16230816999996000000 685.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl761 pl761 4.99999849979999130000 2086.06782484938640000000 + +plane pl762 336.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl762 pl762 4.99999849979999130000 2086.06782484938640000000 + +plane pl771 801.64327191629991000000 763.46196366859976000000 -2024.06782484938640000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl771 pl771 6.99999799999999970000 2086.06782484938640000000 + +plane pl772 801.64327191629991000000 763.46196366859999000000 92.00000000000005700000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl772 pl772 6.99999799999999970000 2086.06782484938640000000 + +plane pl791 1136.16230817000000000000 685.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl791 pl791 4.99999849979999130000 2086.06782484938640000000 + +plane pl792 1136.16230817000000000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl792 pl792 4.99999849979999130000 2086.06782484938640000000 + +plane pl801 1136.16230817000000000000 585.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl801 pl801 4.99999849979999130000 2086.06782484938640000000 + +plane pl802 1136.16230817000000000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl802 pl802 4.99999849979999130000 2086.06782484938640000000 + +plane pl811 336.16230816999996000000 785.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl811 pl811 4.99999849979999130000 2086.06782484938640000000 + +plane pl812 336.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl812 pl812 4.99999849979999130000 2086.06782484938640000000 + +plane pl821 1136.16230817000000000000 785.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl821 pl821 4.99999849979999130000 2086.06782484938640000000 + +plane pl822 1136.16230817000000000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl822 pl822 4.99999849979999130000 2086.06782484938640000000 + +plane pl831 336.16230816999996000000 885.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl831 pl831 4.99999849979999130000 2086.06782484938640000000 + +plane pl832 336.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl832 pl832 4.99999849979999130000 2086.06782484938640000000 + +plane pl841 1136.16230817000000000000 885.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl841 pl841 4.99999849979999130000 2086.06782484938640000000 + +plane pl842 1136.16230817000000000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl842 pl842 4.99999849979999130000 2086.06782484938640000000 + +plane pl851 1136.16230817000000000000 485.74451630100020000000 2178.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl851 pl851 4.99999849979999130000 2086.06782484938640000000 + +plane pl852 1136.16230817000000000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl852 pl852 4.99999849979999130000 2086.06782484938640000000 + +plane pl861 1036.16230817000000000000 385.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl861 pl861 4.99999799972498770000 2086.06782484938640000000 + +plane pl862 1036.16230817000000000000 385.74451630099998000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl862 pl862 4.99999799972498770000 2086.06782484938640000000 + +plane pl871 836.16230816999996000000 385.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl871 pl871 4.99999799972498770000 2086.06782484938640000000 + +plane pl872 836.16230816999996000000 385.74451630099998000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl872 pl872 4.99999799972498770000 2086.06782484938640000000 + +plane pl881 836.16230816999996000000 485.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl881 pl881 4.99999799972498770000 2086.06782484938640000000 + +plane pl882 836.16230816999996000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl882 pl882 4.99999799972498770000 2086.06782484938640000000 + +plane pl891 836.16230816999996000000 585.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl891 pl891 4.99999799972498770000 2086.06782484938640000000 + +plane pl892 836.16230816999996000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl892 pl892 4.99999799972498770000 2086.06782484938640000000 + +plane pl901 836.16230816999996000000 685.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl901 pl901 4.99999799972498770000 2086.06782484938640000000 + +plane pl902 836.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl902 pl902 4.99999799972498770000 2086.06782484938640000000 + +plane pl911 836.16230816999996000000 785.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl911 pl911 4.99999799972498770000 2086.06782484938640000000 + +plane pl912 836.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl912 pl912 4.99999799972498770000 2086.06782484938640000000 + +plane pl921 836.16230816999996000000 885.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl921 pl921 4.99999799972498770000 2086.06782484938640000000 + +plane pl922 836.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl922 pl922 4.99999799972498770000 2086.06782484938640000000 + +plane pl931 1036.16230817000000000000 885.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl931 pl931 4.99999799972498770000 2086.06782484938640000000 + +plane pl932 1036.16230817000000000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl932 pl932 4.99999799972498770000 2086.06782484938640000000 + +plane pl941 1036.16230817000000000000 785.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl941 pl941 4.99999799972498770000 2086.06782484938640000000 + +plane pl942 1036.16230817000000000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl942 pl942 4.99999799972498770000 2086.06782484938640000000 + +plane pl951 1036.16230817000000000000 685.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl951 pl951 4.99999799972498770000 2086.06782484938640000000 + +plane pl952 1036.16230817000000000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl952 pl952 4.99999799972498770000 2086.06782484938640000000 + +plane pl961 1036.16230817000000000000 585.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl961 pl961 4.99999799972498770000 2086.06782484938640000000 + +plane pl962 1036.16230817000000000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl962 pl962 4.99999799972498770000 2086.06782484938640000000 + +plane pl971 1036.16230817000000000000 485.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl971 pl971 4.99999799972498770000 2086.06782484938640000000 + +plane pl972 1036.16230817000000000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl972 pl972 4.99999799972498770000 2086.06782484938640000000 + +plane pl981 736.16230816999996000000 385.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl981 pl981 4.99999799972498770000 2086.06782484938640000000 + +plane pl982 736.16230816999996000000 385.74451630099998000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl982 pl982 4.99999799972498770000 2086.06782484938640000000 + +plane pl991 636.16230816999996000000 385.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl991 pl991 4.99999849979999130000 2086.06782484938640000000 + +plane pl992 636.16230816999996000000 385.74451630099998000000 0.00000000000008526513 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl992 pl992 4.99999849979999130000 2086.06782484938640000000 + +plane pl1001 536.16230816999996000000 485.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1001 pl1001 4.99999799972498770000 2086.06782484938640000000 + +plane pl1002 536.16230816999996000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1002 pl1002 4.99999799972498770000 2086.06782484938640000000 + +plane pl1011 536.16230816999996000000 585.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1011 pl1011 4.99999799972498770000 2086.06782484938640000000 + +plane pl1012 536.16230816999996000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1012 pl1012 4.99999799972498770000 2086.06782484938640000000 + +plane pl1021 536.16230816999996000000 685.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1021 pl1021 4.99999799972498770000 2086.06782484938640000000 + +plane pl1022 536.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1022 pl1022 4.99999799972498770000 2086.06782484938640000000 + +plane pl1031 536.16230816999996000000 785.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1031 pl1031 4.99999799972498770000 2086.06782484938640000000 + +plane pl1032 536.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1032 pl1032 4.99999799972498770000 2086.06782484938640000000 + +plane pl1041 536.16230816999996000000 885.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1041 pl1041 4.99999799972498770000 2086.06782484938640000000 + +plane pl1042 536.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1042 pl1042 4.99999799972498770000 2086.06782484938640000000 + +plane pl1051 736.16230816999996000000 885.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1051 pl1051 4.99999799972498770000 2086.06782484938640000000 + +plane pl1052 736.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1052 pl1052 4.99999799972498770000 2086.06782484938640000000 + +plane pl1061 736.16230816999996000000 785.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1061 pl1061 4.99999799972498770000 2086.06782484938640000000 + +plane pl1062 736.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1062 pl1062 4.99999799972498770000 2086.06782484938640000000 + +plane pl1071 736.16230816999996000000 685.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1071 pl1071 4.99999799972498770000 2086.06782484938640000000 + +plane pl1072 736.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1072 pl1072 4.99999799972498770000 2086.06782484938640000000 + +plane pl1081 736.16230816999996000000 585.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1081 pl1081 4.99999799972498770000 2086.06782484938640000000 + +plane pl1082 736.16230816999996000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1082 pl1082 4.99999799972498770000 2086.06782484938640000000 + +plane pl1091 736.16230816999996000000 485.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1091 pl1091 4.99999799972498770000 2086.06782484938640000000 + +plane pl1092 736.16230816999996000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1092 pl1092 4.99999799972498770000 2086.06782484938640000000 + +plane pl1101 936.16230816999996000000 485.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1101 pl1101 4.99999849989999840000 2086.06782484938640000000 + +plane pl1102 936.16230816999996000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1102 pl1102 4.99999849989999840000 2086.06782484938640000000 + +plane pl1111 636.16230816999996000000 485.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1111 pl1111 4.99999849989999840000 2086.06782484938640000000 + +plane pl1112 636.16230816999996000000 485.74451630099998000000 0.00000000000007105427 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1112 pl1112 4.99999849989999840000 2086.06782484938640000000 + +plane pl1121 936.16230816999996000000 585.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1121 pl1121 4.99999849989999840000 2086.06782484938640000000 + +plane pl1122 936.16230816999996000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1122 pl1122 4.99999849989999840000 2086.06782484938640000000 + +plane pl1131 636.16230816999996000000 585.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1131 pl1131 4.99999849989999840000 2086.06782484938640000000 + +plane pl1132 636.16230816999996000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1132 pl1132 4.99999849989999840000 2086.06782484938640000000 + +plane pl1141 936.16230816999996000000 685.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1141 pl1141 4.99999849989999840000 2086.06782484938640000000 + +plane pl1142 936.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1142 pl1142 4.99999849989999840000 2086.06782484938640000000 + +plane pl1151 636.16230816999996000000 685.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1151 pl1151 4.99999849989999840000 2086.06782484938640000000 + +plane pl1152 636.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1152 pl1152 4.99999849989999840000 2086.06782484938640000000 + +plane pl1161 936.16230816999996000000 785.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1161 pl1161 4.99999849989999840000 2086.06782484938640000000 + +plane pl1162 936.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1162 pl1162 4.99999849989999840000 2086.06782484938640000000 + +plane pl1171 636.16230816999996000000 785.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1171 pl1171 4.99999849989999840000 2086.06782484938640000000 + +plane pl1172 636.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1172 pl1172 4.99999849989999840000 2086.06782484938640000000 + +plane pl1181 436.16230816999996000000 585.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1181 pl1181 4.99999799972498770000 2086.06782484938640000000 + +plane pl1182 436.16230816999996000000 585.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1182 pl1182 4.99999799972498770000 2086.06782484938640000000 + +plane pl1191 436.16230816999996000000 685.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1191 pl1191 4.99999799972498770000 2086.06782484938640000000 + +plane pl1192 436.16230816999996000000 685.74451630099998000000 0.00000000000005684342 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1192 pl1192 4.99999799972498770000 2086.06782484938640000000 + +plane pl1201 436.16230816999996000000 785.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1201 pl1201 4.99999799972498770000 2086.06782484938640000000 + +plane pl1202 436.16230816999996000000 785.74451630099998000000 0.00000000000004263256 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1202 pl1202 4.99999799972498770000 2086.06782484938640000000 + +plane pl1211 436.16230816999996000000 885.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1211 pl1211 4.99999799972498770000 2086.06782484938640000000 + +plane pl1212 436.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1212 pl1212 4.99999799972498770000 2086.06782484938640000000 + +plane pl1221 636.16230816999996000000 885.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1221 pl1221 4.99999849989999840000 2086.06782484938640000000 + +plane pl1222 636.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1222 pl1222 4.99999849989999840000 2086.06782484938640000000 + +plane pl1231 936.16230816999996000000 885.74451630100020000000 2175.06782484938640000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1231 pl1231 4.99999849989999840000 2086.06782484938640000000 + +plane pl1232 936.16230816999996000000 885.74451630099998000000 0.00000000000002842171 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl1232 pl1232 4.99999849989999840000 2086.06782484938640000000 + +######################################### + +binrestore [locate_data_file bug28091_dsk_tl06_111680.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 1 +checknbshapes r12 -vertex 1 +checknbshapes r21 -vertex 1 +checknbshapes r22 -vertex 1 +checknbshapes r31 -vertex 1 +checknbshapes r32 -vertex 1 +checknbshapes r41 -vertex 1 +checknbshapes r42 -vertex 1 +checknbshapes r51 -vertex 1 +checknbshapes r52 -vertex 1 +checknbshapes r61 -vertex 1 +checknbshapes r62 -vertex 1 +checknbshapes r71 -vertex 1 +checknbshapes r72 -vertex 1 +checknbshapes r81 -vertex 1 +checknbshapes r82 -vertex 1 +checknbshapes r91 -vertex 2 +checknbshapes r92 -vertex 3 +checknbshapes r101 -vertex 1 +checknbshapes r102 -vertex 1 +checknbshapes r111 -vertex 1 +checknbshapes r112 -vertex 1 +checknbshapes r121 -vertex 1 +checknbshapes r122 -vertex 1 +checknbshapes r131 -vertex 1 +checknbshapes r132 -vertex 1 +checknbshapes r141 -vertex 1 +checknbshapes r142 -vertex 1 +checknbshapes r151 -vertex 1 +checknbshapes r152 -vertex 1 +checknbshapes r161 -vertex 25 +checknbshapes r162 -vertex 1 +checknbshapes r171 -vertex 13 +checknbshapes r172 -vertex 1 +checknbshapes r181 -vertex 0 +checknbshapes r182 -vertex 0 +checknbshapes r191 -vertex 0 +checknbshapes r192 -vertex 0 +checknbshapes r201 -vertex 27 +checknbshapes r202 -vertex 0 +checknbshapes r211 -vertex 17 +checknbshapes r212 -vertex 0 +checknbshapes r221 -vertex 0 +checknbshapes r222 -vertex 0 +checknbshapes r231 -vertex 0 +checknbshapes r232 -vertex 0 +checknbshapes r241 -vertex 0 +checknbshapes r242 -vertex 0 +checknbshapes r251 -vertex 0 +checknbshapes r252 -vertex 0 +checknbshapes r261 -vertex 0 +checknbshapes r262 -vertex 0 +checknbshapes r271 -vertex 0 +checknbshapes r272 -vertex 0 +checknbshapes r281 -vertex 0 +checknbshapes r282 -vertex 0 +checknbshapes r291 -vertex 0 +checknbshapes r292 -vertex 0 +checknbshapes r301 -vertex 0 +checknbshapes r302 -vertex 0 +checknbshapes r311 -vertex 0 +checknbshapes r312 -vertex 0 +checknbshapes r321 -vertex 0 +checknbshapes r322 -vertex 0 +checknbshapes r331 -vertex 0 +checknbshapes r332 -vertex 0 +checknbshapes r341 -vertex 0 +checknbshapes r342 -vertex 0 +checknbshapes r351 -vertex 0 +checknbshapes r352 -vertex 0 +checknbshapes r361 -vertex 0 +checknbshapes r362 -vertex 0 +checknbshapes r371 -vertex 0 +checknbshapes r372 -vertex 0 +checknbshapes r381 -vertex 0 +checknbshapes r382 -vertex 0 +checknbshapes r391 -vertex 0 +checknbshapes r392 -vertex 0 +checknbshapes r401 -vertex 0 +checknbshapes r402 -vertex 0 +checknbshapes r411 -vertex 0 +checknbshapes r412 -vertex 0 +checknbshapes r421 -vertex 0 +checknbshapes r422 -vertex 0 +checknbshapes r431 -vertex 0 +checknbshapes r432 -vertex 0 +checknbshapes r441 -vertex 0 +checknbshapes r442 -vertex 0 +checknbshapes r451 -vertex 0 +checknbshapes r452 -vertex 0 +checknbshapes r461 -vertex 0 +checknbshapes r462 -vertex 0 +checknbshapes r471 -vertex 0 +checknbshapes r472 -vertex 0 +checknbshapes r481 -vertex 0 +checknbshapes r482 -vertex 0 +checknbshapes r491 -vertex 0 +checknbshapes r492 -vertex 0 +checknbshapes r501 -vertex 0 +checknbshapes r502 -vertex 0 +checknbshapes r511 -vertex 0 +checknbshapes r512 -vertex 0 +checknbshapes r521 -vertex 0 +checknbshapes r522 -vertex 0 +checknbshapes r531 -vertex 0 +checknbshapes r532 -vertex 0 +checknbshapes r541 -vertex 0 +checknbshapes r542 -vertex 0 +checknbshapes r551 -vertex 0 +checknbshapes r552 -vertex 0 +checknbshapes r561 -vertex 0 +checknbshapes r562 -vertex 0 +checknbshapes r571 -vertex 0 +checknbshapes r572 -vertex 0 +checknbshapes r581 -vertex 0 +checknbshapes r582 -vertex 0 +checknbshapes r591 -vertex 0 +checknbshapes r592 -vertex 0 +checknbshapes r601 -vertex 0 +checknbshapes r602 -vertex 0 +checknbshapes r611 -vertex 0 +checknbshapes r612 -vertex 0 +checknbshapes r621 -vertex 0 +checknbshapes r622 -vertex 0 +checknbshapes r631 -vertex 0 +checknbshapes r632 -vertex 0 +checknbshapes r641 -vertex 0 +checknbshapes r642 -vertex 0 +checknbshapes r651 -vertex 0 +checknbshapes r652 -vertex 0 +checknbshapes r661 -vertex 0 +checknbshapes r662 -vertex 0 +checknbshapes r671 -vertex 0 +checknbshapes r672 -vertex 0 +checknbshapes r681 -vertex 0 +checknbshapes r682 -vertex 0 +checknbshapes r691 -vertex 0 +checknbshapes r692 -vertex 0 +checknbshapes r701 -vertex 0 +checknbshapes r702 -vertex 0 +checknbshapes r711 -vertex 0 +checknbshapes r712 -vertex 0 +checknbshapes r721 -vertex 0 +checknbshapes r722 -vertex 0 +checknbshapes r731 -vertex 0 +checknbshapes r732 -vertex 0 +checknbshapes r741 -vertex 0 +checknbshapes r742 -vertex 0 +checknbshapes r751 -vertex 3 +checknbshapes r752 -vertex 0 +checknbshapes r761 -vertex 0 +checknbshapes r762 -vertex 0 +checknbshapes r771 -vertex 0 +checknbshapes r772 -vertex 0 +checknbshapes r781 -vertex 0 +checknbshapes r782 -vertex 0 +checknbshapes r791 -vertex 0 +checknbshapes r792 -vertex 0 +checknbshapes r801 -vertex 0 +checknbshapes r802 -vertex 0 +checknbshapes r811 -vertex 0 +checknbshapes r812 -vertex 0 +checknbshapes r821 -vertex 0 +checknbshapes r822 -vertex 0 +checknbshapes r831 -vertex 0 +checknbshapes r832 -vertex 0 +checknbshapes r841 -vertex 0 +checknbshapes r842 -vertex 0 +checknbshapes r851 -vertex 0 +checknbshapes r852 -vertex 0 +checknbshapes r861 -vertex 0 +checknbshapes r862 -vertex 0 +checknbshapes r871 -vertex 0 +checknbshapes r872 -vertex 0 +checknbshapes r881 -vertex 0 +checknbshapes r882 -vertex 0 +checknbshapes r891 -vertex 0 +checknbshapes r892 -vertex 0 +checknbshapes r901 -vertex 0 +checknbshapes r902 -vertex 0 +checknbshapes r911 -vertex 0 +checknbshapes r912 -vertex 0 +checknbshapes r921 -vertex 0 +checknbshapes r922 -vertex 0 +checknbshapes r931 -vertex 0 +checknbshapes r932 -vertex 0 +checknbshapes r941 -vertex 0 +checknbshapes r942 -vertex 0 +checknbshapes r951 -vertex 0 +checknbshapes r952 -vertex 0 +checknbshapes r961 -vertex 0 +checknbshapes r962 -vertex 0 +checknbshapes r971 -vertex 0 +checknbshapes r972 -vertex 0 +checknbshapes r981 -vertex 0 +checknbshapes r982 -vertex 0 +checknbshapes r991 -vertex 0 +checknbshapes r992 -vertex 0 +checknbshapes r1001 -vertex 0 +checknbshapes r1002 -vertex 0 +checknbshapes r1011 -vertex 0 +checknbshapes r1012 -vertex 0 +checknbshapes r1021 -vertex 0 +checknbshapes r1022 -vertex 0 +checknbshapes r1031 -vertex 0 +checknbshapes r1032 -vertex 0 +checknbshapes r1041 -vertex 0 +checknbshapes r1042 -vertex 0 +checknbshapes r1051 -vertex 0 +checknbshapes r1052 -vertex 0 +checknbshapes r1061 -vertex 0 +checknbshapes r1062 -vertex 0 +checknbshapes r1071 -vertex 0 +checknbshapes r1072 -vertex 0 +checknbshapes r1081 -vertex 0 +checknbshapes r1082 -vertex 0 +checknbshapes r1091 -vertex 0 +checknbshapes r1092 -vertex 0 +checknbshapes r1101 -vertex 0 +checknbshapes r1102 -vertex 0 +checknbshapes r1111 -vertex 0 +checknbshapes r1112 -vertex 0 +checknbshapes r1121 -vertex 0 +checknbshapes r1122 -vertex 0 +checknbshapes r1131 -vertex 0 +checknbshapes r1132 -vertex 0 +checknbshapes r1141 -vertex 0 +checknbshapes r1142 -vertex 0 +checknbshapes r1151 -vertex 0 +checknbshapes r1152 -vertex 0 +checknbshapes r1161 -vertex 0 +checknbshapes r1162 -vertex 0 +checknbshapes r1171 -vertex 0 +checknbshapes r1172 -vertex 0 +checknbshapes r1181 -vertex 0 +checknbshapes r1182 -vertex 0 +checknbshapes r1191 -vertex 0 +checknbshapes r1192 -vertex 0 +checknbshapes r1201 -vertex 0 +checknbshapes r1202 -vertex 0 diff --git a/tests/bugs/modalg_6/bug28091_51 b/tests/bugs/modalg_6/bug28091_51 new file mode 100644 index 0000000000..c3ae0c3525 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_51 @@ -0,0 +1,135 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf17 360.64999999999998000000 363.50000000000000000000 46.70113780300000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -4.89638218170246380000 9.79276436340492750000 + +cylinder cylf18 291.64999999999998000000 363.50000000000000000000 22.38363787700000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -11.49954648770972900000 22.99909297541945800000 + +cylinder cylf19 227.64999999999998000000 70.19999999999998900000 10.60964709900000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -10.28817934401115900000 20.57635868802231700000 + +cylinder cylf20 243.64999999999998000000 70.19999999999998900000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -3.34716577815097920000 6.69433155630195830000 + +cylinder cylf21 243.64999999999998000000 363.50000000000000000000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -3.34716577815097960000 6.69433155630195920000 + +cylinder cylf23 62.64999999999997700000 363.50000000000000000000 46.70113780300000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -4.89631848427361400000 9.79263696854722810000 + +cylinder cylf24 131.64999999999998000000 363.50000000000000000000 22.38363787700000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -11.49961430186068500000 22.99922860372137000000 + +cylinder cylf25 195.64999999999998000000 70.19999999999998900000 10.60964709900000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -10.28818699967075300000 20.57637399934150600000 + +cylinder cylf26 179.64999999999998000000 70.19999999999998900000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan26 cylf26 0.0 6.28318530717958620000 -3.34715305449755360000 6.69430610899510730000 + +cylinder cylf27 179.64999999999998000000 363.50000000000000000000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan27 cylf27 0.0 6.28318530717958620000 -3.34715305449755270000 6.69430610899510550000 + + +binrestore [locate_data_file bug28091_facade.brep] sh +explode sh + +nexplode sh_17 e +nexplode sh_18 e +nexplode sh_19 e +nexplode sh_20 e +nexplode sh_21 e +nexplode sh_23 e +nexplode sh_24 e +nexplode sh_25 e +nexplode sh_26 e +nexplode sh_27 e +nexplode sh_29 e +nexplode sh_31 e +nexplode sh_33 e +nexplode sh_35 e +nexplode sh_37 e +nexplode sh_39 e +nexplode sh_41 e +nexplode sh_43 e +nexplode sh_45 e +nexplode sh_47 e + +compound sh_17_2 sh_17_3 sh_47_2 sh_47_3 cmpde17 +compound sh_18_3 sh_43_3 sh_18_2 sh_43_2 cmpde18 +compound sh_19_3 sh_39_3 sh_19_2 sh_39_2 cmpde19 +compound sh_20_3 sh_33_3 sh_20_2 sh_33_2 cmpde20 +compound sh_21_3 sh_29_3 sh_21_2 sh_29_2 cmpde21 +compound sh_23_3 sh_45_3 sh_45_2 sh_23_2 cmpde23 +compound sh_24_3 sh_41_3 sh_24_2 sh_41_2 cmpde24 +compound sh_25_3 sh_37_3 sh_25_2 sh_37_2 cmpde25 +compound sh_26_3 sh_35_3 sh_26_2 sh_35_2 cmpde26 +compound sh_27_3 sh_31_3 sh_27_2 sh_31_2 cmpde27 + +set FacesList {17 18 19 20 21 23 24 25 26 27} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ llength $FacesList ] +checkprops result -s 850.449 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_52 b/tests/bugs/modalg_6/bug28091_52 new file mode 100644 index 0000000000..a9e008e2b3 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_52 @@ -0,0 +1,134 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 360.64999999999998000000 363.50000000000000000000 887.27057539428915000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl11 pl11 1.44783813410292650000 840.56943759128910000000 + +plane pl12 360.64999999999998000000 363.50000000000000000000 41.80475562129753800000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl12 pl12 1.44783813410292650000 840.56943759128910000000 + +plane pl21 291.64999999999998000000 363.50000000000000000000 862.95307546828906000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl21 pl21 2.45069470748317690000 840.56943759128910000000 + +plane pl22 291.64999999999998000000 363.50000000000000000000 10.88409138929027300000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl22 pl22 2.45069470748317690000 840.56943759128910000000 + +plane pl31 227.64999999999998000000 70.19999999999998900000 851.17908469028907000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl31 pl31 2.45649784765449520000 840.56943759128910000000 + +plane pl32 227.64999999999998000000 70.19999999999998900000 0.32146775498884139000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl32 pl32 2.45649784765449520000 840.56943759128910000000 + +plane pl41 243.64999999999998000000 70.19999999999998900000 845.57346987828907000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl41 pl41 1.49767511899012230000 840.56943759128910000000 + +plane pl42 243.64999999999998000000 70.19999999999998900000 1.65686650884902110000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl42 pl42 1.49767511899012230000 840.56943759128910000000 + +plane pl51 243.64999999999998000000 363.50000000000000000000 845.57346987828907000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl51 pl51 1.49767511899047220000 840.56943759128910000000 + +plane pl52 243.64999999999998000000 363.50000000000000000000 1.65686650884902060000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl52 pl52 1.49767511899047220000 840.56943759128910000000 + +plane pl61 62.64999999999997700000 363.50000000000000000000 887.27057539428915000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl61 pl61 1.44780322481607370000 840.56943759128910000000 + +plane pl62 62.64999999999997700000 363.50000000000000000000 41.80524595691022000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl62 pl62 1.44780322481607370000 840.56943759128910000000 + +plane pl71 131.64999999999998000000 363.50000000000000000000 862.95307546828906000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl71 pl71 2.45057953796842610000 840.56943759128910000000 + +plane pl72 131.64999999999998000000 363.50000000000000000000 10.88499440123908700000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl72 pl72 2.45057953796842610000 840.56943759128910000000 + +plane pl81 195.64999999999998000000 70.19999999999998900000 851.17908469028907000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl81 pl81 2.45650071765638730000 840.56943759128910000000 + +plane pl82 195.64999999999998000000 70.19999999999998900000 0.32171292182658462000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl82 pl82 2.45650071765638730000 840.56943759128910000000 + +plane pl91 179.64999999999998000000 70.19999999999998900000 845.57346987828907000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl91 pl91 1.49767389476371740000 840.56943759128910000000 + +plane pl92 179.64999999999998000000 70.19999999999998900000 1.65700206202671030000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl92 pl92 1.49767389476371740000 840.56943759128910000000 + +plane pl101 179.64999999999998000000 363.50000000000000000000 845.57346987828907000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl101 pl101 1.49767389476351780000 840.56943759128910000000 + +plane pl102 179.64999999999998000000 363.50000000000000000000 1.65700206202670900000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 +pcylinder cyl102 pl102 1.49767389476351780000 840.56943759128910000000 + +binrestore [locate_data_file bug28091_facade.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6 7 8 9 10} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 3 +checknbshapes r12 -vertex 0 +checknbshapes r21 -vertex 3 +checknbshapes r22 -vertex 0 +checknbshapes r31 -vertex 3 +checknbshapes r32 -vertex 0 +checknbshapes r41 -vertex 3 +checknbshapes r42 -vertex 0 +checknbshapes r51 -vertex 3 +checknbshapes r52 -vertex 0 +checknbshapes r61 -vertex 3 +checknbshapes r62 -vertex 0 +checknbshapes r71 -vertex 3 +checknbshapes r72 -vertex 0 +checknbshapes r81 -vertex 3 +checknbshapes r82 -vertex 0 +checknbshapes r91 -vertex 2 +checknbshapes r92 -vertex 0 +checknbshapes r101 -vertex 3 +checknbshapes r102 -vertex 0 diff --git a/tests/bugs/modalg_6/bug28091_61 b/tests/bugs/modalg_6/bug28091_61 new file mode 100644 index 0000000000..b8d8c41c87 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_61 @@ -0,0 +1,111 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf1 178.77237918818810000000 263.62977252858195000000 121.34522213150757000000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 4.00000000000000000000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -37.49999999999999300000 37.50000000000005000000 + +cylinder cylf5 92.07793998599527200000 284.21853767849120000000 88.40319789165270900000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 4.00000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -37.50000000000003600000 37.49999999999998600000 + +cylinder cylf8 265.46681839038092000000 243.04100737867273000000 154.28724637136244000000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 4.00000000000000000000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -37.50000000000004300000 37.50000000000008500000 + +cylinder cylf12 12.50000000000000000000 125.38333636146797000000 21.37167791462789200000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 4.00000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +cylinder cylf16 12.50000000000000000000 220.30381075761164000000 25.25800528259771500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 4.00000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +cylinder cylf19 12.50000000000000000000 30.46286196532426500000 17.48535054665808300000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 4.00000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + + +binrestore [locate_data_file bug28091_handlauf_kruemmer.brep] sh +explode sh + +nexplode sh_1 e +nexplode sh_2 e +nexplode sh_3 e +nexplode sh_4 e +nexplode sh_5 e +nexplode sh_6 e +nexplode sh_8 e +nexplode sh_10 e +nexplode sh_12 e +nexplode sh_15 e +nexplode sh_17 e +nexplode sh_19 e + +compound sh_8_3 sh_8_2 sh_6_2 sh_6_3 cmpde1 +compound sh_10_2 sh_5_2 sh_10_3 sh_5_3 cmpde5 +compound sh_12_2 sh_4_2 sh_12_3 sh_4_3 cmpde8 +compound sh_3_1 sh_15_1 sh_15_4 sh_3_4 cmpde12 +compound sh_17_1 sh_2_1 sh_17_4 sh_2_4 cmpde16 +compound sh_19_1 sh_1_1 sh_19_4 sh_1_4 cmpde19 + +set FacesList {1 5 8 12 16 19} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ llength $FacesList ] +checkprops result -s 3769.91 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_62 b/tests/bugs/modalg_6/bug28091_62 new file mode 100644 index 0000000000..a1acfe6541 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_62 @@ -0,0 +1,102 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 178.77237918818810000000 699.97907525088567000000 394.06353633294685000000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 +pcylinder cyl11 pl11 3.99999849989999890000 502.06388610853338000000 + +plane pl12 178.77237918818810000000 253.02979372851831000000 114.72023538146782000000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 +pcylinder cyl12 pl12 3.99999849989999890000 502.06388610853338000000 + +plane pl21 92.07793998599527200000 720.56784040079503000000 361.12151209309201000000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 +pcylinder cyl21 pl21 3.99999849989999890000 502.06388610853338000000 + +plane pl22 92.07793998599527200000 273.61855887842762000000 81.77821114161297100000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 +pcylinder cyl22 pl22 3.99999849989999890000 502.06388610853338000000 + +plane pl31 265.46681839038092000000 679.39031010097654000000 427.00556057280176000000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 +pcylinder cyl31 pl31 3.99999849989999890000 502.06388610853338000000 + +plane pl32 265.46681839038092000000 232.44102857860909000000 147.66225962132268000000 0.00000000000000000000 -0.84799830400508847000 -0.52999894000317915000 0.91257304423360708000 -0.21672384368325631000 0.34675814989321085000 +pcylinder cyl32 pl32 3.99999849989999890000 502.06388610853338000000 + +plane pl41 -502.06388610853338000000 125.38333636146797000000 21.37167791462789200000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 +pcylinder cyl41 pl41 3.99999849989999890000 502.06388610853338000000 + +plane pl42 25.00000000000000000000 125.38333636146797000000 21.37167791462789200000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 +pcylinder cyl42 pl42 3.99999849989999890000 502.06388610853338000000 + +plane pl51 -502.06388610853338000000 220.30381075761164000000 25.25800528259771500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 +pcylinder cyl51 pl51 3.99999849989999890000 502.06388610853338000000 + +plane pl52 25.00000000000000000000 220.30381075761164000000 25.25800528259771500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 +pcylinder cyl52 pl52 3.99999849989999890000 502.06388610853338000000 + +plane pl61 -502.06388610853338000000 30.46286196532426500000 17.48535054665808300000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 +pcylinder cyl61 pl61 3.99999849989999890000 502.06388610853338000000 + +plane pl62 25.00000000000000000000 30.46286196532426500000 17.48535054665808300000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838046008000 -0.04090870913652000500 +pcylinder cyl62 pl62 3.99999849989999890000 502.06388610853338000000 + +binrestore [locate_data_file bug28091_handlauf_kruemmer.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 3 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 3 +checknbshapes r31 -vertex 0 +checknbshapes r32 -vertex 3 +checknbshapes r41 -vertex 0 +checknbshapes r42 -vertex 3 +checknbshapes r51 -vertex 0 +checknbshapes r52 -vertex 3 +checknbshapes r61 -vertex 0 +checknbshapes r62 -vertex 3 diff --git a/tests/bugs/modalg_6/bug28091_71 b/tests/bugs/modalg_6/bug28091_71 new file mode 100644 index 0000000000..7641102253 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_71 @@ -0,0 +1,93 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf75 0.00000000000003552714 187.50000000000000000000 28.25000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 3.25000000000000000000 +mkface fcan75 cylf75 0.0 6.28318530717958620000 -56.50000000000000000000 113.00000000000000000000 + +cylinder cylf77 22.00000000000003600000 220.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 3.25000000000000000000 +mkface fcan77 cylf77 0.0 6.28318530717958620000 -56.50000000000000000000 113.00000000000000000000 + +cylinder cylf78 34.50000000000003600000 155.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 3.25000000000000000000 +mkface fcan78 cylf78 0.0 6.28318530717958620000 -56.50000000000000000000 113.00000000000000000000 + + +binrestore [locate_data_file bug28091_LG3.brep] sh +explode sh + +nexplode sh_1 e +nexplode sh_2 e +nexplode sh_3 e +nexplode sh_82 e +nexplode sh_83 e +nexplode sh_84 e + +compound sh_1_1 sh_84_1 sh_1_4 sh_84_4 cmpde75 +compound sh_2_3 sh_83_3 sh_2_2 sh_83_2 cmpde77 +compound sh_3_3 sh_82_3 sh_3_2 sh_82_2 cmpde78 + +set FacesList {75 77 78} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ llength $FacesList ] +checkprops result -s 3461.25 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_72 b/tests/bugs/modalg_6/bug28091_72 new file mode 100644 index 0000000000..d5cc9939c7 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_72 @@ -0,0 +1,78 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 -293.98408372464161000000 187.50000000000000000000 28.25000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl11 pl11 3.24971557614911790000 293.98408372464166000000 + +plane pl12 56.50000000000003600000 187.50000000000000000000 28.25000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl12 pl12 3.24971557614911790000 293.98408372464166000000 + +plane pl21 22.00000000000003600000 220.00000000000000000000 -293.98408372464166000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl21 pl21 3.24971556307843730000 293.98408372464166000000 + +plane pl22 22.00000000000003600000 220.00000000000000000000 56.50000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl22 pl22 3.24971556307843730000 293.98408372464166000000 + +plane pl31 34.50000000000003600000 155.00000000000000000000 -293.98408372464166000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl31 pl31 3.24971556312831480000 293.98408372464166000000 + +plane pl32 34.50000000000003600000 155.00000000000000000000 56.50000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 +pcylinder cyl32 pl32 3.24971556312831480000 293.98408372464166000000 + +binrestore [locate_data_file bug28091_LG3.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 0 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 0 +checknbshapes r31 -vertex 0 +checknbshapes r32 -vertex 0 \ No newline at end of file diff --git a/tests/bugs/modalg_6/bug28091_81 b/tests/bugs/modalg_6/bug28091_81 new file mode 100644 index 0000000000..e259512672 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_81 @@ -0,0 +1,130 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cone conf1 17.49915534244081500000 2.75000000000002350000 21.50000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000373970 44.99999999999998600000 4.74999999999997690000 +mkface fcan1 conf1 0.0 6.28318530717958620000 -2.25000000000002400000 4.50000000000004800000 + +cylinder cylf2 17.49915534244081500000 2.75000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000373970 4.75000000000000000000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -17.25000000000000000000 34.50000000000000000000 + +cylinder cylf3 17.49915534244081500000 0.00000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000355271 7.00000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -0.50000000000000000000 1.00000000000000000000 + +cylinder cylf11 182.60536007911978000000 571.25391324377767000000 21.50000000000001800000 -0.95153384789598372000 0.30754403962402360000 0.00000000000000000000 -0.00000000000000022402 -0.00000000000000069311 1.00000000000000000000 11.99999999999998200000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -1.50000000000007330000 3.00000000000014650000 + +cylinder cylf13 204.13344285278077000000 637.86128259650275000000 21.50000000000001400000 -0.95153384789596396000 0.30754403962408455000 0.00000000000000000000 -0.00000000000000022402 -0.00000000000000069311 1.00000000000000000000 11.99999999999998800000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -1.49999999999977570000 2.99999999999955150000 + +cylinder cylf15 202.70614208093713000000 638.32259865593892000000 21.50000000000001400000 -0.95153384789598749000 0.30754403962401156000 0.00000000000000000000 -0.00000000000003662943 -0.00000000000011333057 1.00000000000000000000 4.00000000000000710000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -13.94379826352673000000 27.88759652705346100000 + +cylinder cylf16 187.19811460449708000000 643.33492840883753000000 21.50000000000000000000 0.95153384789600659000 -0.30754403962395255000 0.00000000000000000000 -0.30754403962395255000 -0.95153384789600659000 -0.00000000000000355271 6.00000000000015450000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -0.36666627823598541000 0.73333255647197082000 + +cone conf17 189.43814606495692000000 642.61093070160155000000 21.50000000000000000000 -0.95153384789600393000 0.30754403962396115000 0.00000000000000000000 -0.30754403962396115000 -0.95153384789600393000 0.00000000000000355271 45.00000000002363300000 4.00000000000030110000 +mkface fcan17 conf17 0.0 6.28318530717958620000 -1.99999999999853230000 3.99999999999706460000 + +cylinder cylf18 181.17805930727584000000 571.71522930321407000000 21.50000000000001800000 -0.95153384789598627000 0.30754403962401555000 0.00000000000000000000 -0.00000000000003662943 -0.00000000000011333057 1.00000000000000000000 4.00000000000000360000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -11.95120398358866300000 23.90240796717732500000 + +cylinder cylf19 167.56605273332070000000 576.11474856192967000000 21.50000000000000000000 0.95153384789593232000 -0.30754403962418225000 0.00000000000000000000 -0.30754403962418225000 -0.95153384789593243000 -0.00000000000000355271 5.99999999999976460000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -0.36666627823682046000 0.73333255647364093000 + +cone conf20 169.80608419378072000000 575.39075085469312000000 21.50000000000000000000 -0.95153384789597995000 0.30754403962403498000 0.00000000000000000000 -0.30754403962403504000 -0.95153384789598006000 0.00000000000000355271 45.00000000001099200000 4.00000000000011550000 +mkface fcan20 conf20 0.0 6.28318530717958620000 -1.99999999999879120000 3.99999999999758240000 + + +binrestore [locate_data_file bug28091_PL004_LegTimber.brep] sh +explode sh + +nexplode sh_8 e +nexplode sh_10 e +nexplode sh_12 e +nexplode sh_13 e +nexplode sh_14 e +nexplode sh_15 e +nexplode sh_16 e +nexplode sh_17 e +nexplode sh_52 e +nexplode sh_53 e +nexplode sh_54 e + +compound sh_52_1 sh_52_2 cmpde1 +compound sh_53_1 sh_53_2 cmpde2 +compound sh_54_1 sh_54_2 cmpde3 +compound sh_8_1 sh_8_3 cmpde11 +compound sh_10_1 sh_10_3 cmpde13 +compound sh_16_1 sh_16_2 sh_16_4 cmpde15 +compound sh_12_1 sh_12_2 cmpde16 +compound sh_13_2 sh_13_3 sh_13_4 cmpde17 +compound sh_17_1 sh_17_2 sh_17_4 cmpde18 +compound sh_14_1 sh_14_2 cmpde19 +compound sh_15_2 sh_15_3 sh_15_4 cmpde20 + +set FacesList {1 2 3 11 13 15 16 17 18 19 20} + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +checknbshapes result -face [ llength $FacesList ] +checkprops result -s 1721.88 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_82 b/tests/bugs/modalg_6/bug28091_82 new file mode 100644 index 0000000000..544474e9b1 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_82 @@ -0,0 +1,118 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl21 17.49915534244081500000 -713.98893370960923000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000373970 +pcylinder cyl21 pl21 4.74990000000000020000 716.73893370960923000000 + +plane pl22 17.49915534244081500000 20.00000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000373970 +pcylinder cyl22 pl22 4.74990000000000020000 716.73893370960923000000 + +plane pl31 17.49915534244081500000 -716.73893370960923000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000355271 +pcylinder cyl31 pl31 6.99990000000000020000 716.73893370960923000000 + +plane pl32 17.49915534244081500000 0.50000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000355271 +pcylinder cyl32 pl32 6.99990000000000020000 716.73893370960923000000 + +plane pl41 864.60671560868866000000 350.82512621490918000000 21.50000000000001800000 -0.95153384789598372000 0.30754403962402360000 0.00000000000000000000 -0.00000000000000022402 -0.00000000000000069311 1.00000000000000000000 +pcylinder cyl41 pl41 11.99989999999998200000 716.73893370960923000000 + +plane pl42 181.17805930727573000000 571.71522930321373000000 21.50000000000001800000 -0.95153384789598372000 0.30754403962402360000 0.00000000000000000000 -0.00000000000000022402 -0.00000000000000069311 1.00000000000000000000 +pcylinder cyl42 pl42 11.99989999999998200000 716.73893370960923000000 + +plane pl51 886.13479838233548000000 417.43249556759054000000 21.50000000000001400000 -0.95153384789596396000 0.30754403962408455000 0.00000000000000000000 -0.00000000000000022402 -0.00000000000000069311 1.00000000000000000000 +pcylinder cyl51 pl51 11.99989999999998800000 716.73893370960923000000 + +plane pl52 202.70614208093704000000 638.32259865593880000000 21.50000000000001400000 -0.95153384789596396000 0.30754403962408455000 0.00000000000000000000 -0.00000000000000022402 -0.00000000000000069311 1.00000000000000000000 +pcylinder cyl52 pl52 11.99989999999998800000 716.73893370960923000000 + +plane pl61 884.70749761050865000000 417.89381162707906000000 21.50000000000001400000 -0.95153384789598749000 0.30754403962401156000 0.00000000000000000000 -0.00000000000003662943 -0.00000000000011333057 1.00000000000000000000 +pcylinder cyl61 pl61 3.99990000000000690000 716.73893370960923000000 + +plane pl62 189.43814606495815000000 642.61093070160621000000 21.50000000000001400000 -0.95153384789598749000 0.30754403962401156000 0.00000000000000000000 -0.00000000000003662943 -0.00000000000011333057 1.00000000000000000000 +pcylinder cyl62 pl62 3.99990000000000690000 716.73893370960923000000 + +plane pl71 -494.80324092508818000000 863.76371543765504000000 21.50000000000000000000 0.95153384789600659000 -0.30754403962395255000 0.00000000000000000000 -0.30754403962395255000 -0.95153384789600659000 -0.00000000000000355271 +pcylinder cyl71 pl71 5.99985000000015490000 716.73893370960923000000 + +plane pl72 187.54700997912067000000 643.22216238043495000000 21.50000000000000000000 0.95153384789600659000 -0.30754403962395255000 0.00000000000000000000 -0.30754403962395255000 -0.95153384789600659000 -0.00000000000000355271 +pcylinder cyl72 pl72 5.99985000000015490000 716.73893370960923000000 + +plane pl91 863.17941483684649000000 351.28644227435132000000 21.50000000000001800000 -0.95153384789598627000 0.30754403962401555000 0.00000000000000000000 -0.00000000000003662943 -0.00000000000011333057 1.00000000000000000000 +pcylinder cyl91 pl91 3.99990000000000330000 716.73893370960923000000 + +plane pl92 169.80608419378189000000 575.39075085469756000000 21.50000000000001800000 -0.95153384789598627000 0.30754403962401555000 0.00000000000000000000 -0.00000000000003662943 -0.00000000000011333057 1.00000000000000000000 +pcylinder cyl92 pl92 3.99990000000000330000 716.73893370960923000000 + +plane pl101 -514.43530279621132000000 796.54353559091192000000 21.50000000000000000000 0.95153384789593232000 -0.30754403962418225000 0.00000000000000000000 -0.30754403962418225000 -0.95153384789593243000 -0.00000000000000355271 +pcylinder cyl101 pl101 5.99984999999976500000 716.73893370960923000000 + +plane pl102 167.91494810794507000000 576.00198253352676000000 21.50000000000000000000 0.95153384789593232000 -0.30754403962418225000 0.00000000000000000000 -0.30754403962418225000 -0.95153384789593243000 -0.00000000000000355271 +pcylinder cyl102 pl102 5.99984999999976500000 716.73893370960923000000 + +binrestore [locate_data_file bug28091_PL004_LegTimber.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {2 3 4 5 6 7 9 10} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 2 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 3 +checknbshapes r31 -vertex 0 +checknbshapes r32 -vertex 2 +checknbshapes r41 -vertex 0 +checknbshapes r42 -vertex 2 +checknbshapes r51 -vertex 0 +checknbshapes r52 -vertex 0 +checknbshapes r61 -vertex 0 +checknbshapes r62 -vertex 1 +checknbshapes r71 -vertex 0 +checknbshapes r72 -vertex 0 +checknbshapes r81 -vertex 0 +checknbshapes r82 -vertex 1 diff --git a/tests/bugs/modalg_6/bug28091_91 b/tests/bugs/modalg_6/bug28091_91 new file mode 100644 index 0000000000..618d1f8cc8 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_91 @@ -0,0 +1,203 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +proc FindFaces { boolres } { + upvar ${boolres} ${boolres} + + global result + global ListCanEdges + + foreach ff [explode $boolres f] { + set HasSame 0 + foreach ee [explode $ff e] { + foreach fc $ListCanEdges { + upvar ${fc} ${fc} + if { [regexp "shapes are not same" [ compare $ee $fc ] full ] == 0 } { + set HasSame 1 + break + } + } + + if { $HasSame != 0 } { + break; + } + } + + if { $HasSame == 0 } { + add $ff result + } + } +} + +# The main idea of the test is: obtain set of faces +# (which will be stored in "result" compound). +# Set of faces must be closed in U-direction. + +compound result + +cylinder cylf1 27.29150262212920100000 65.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 6.00000000000000000000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -2.70849737787079900000 5.41699475574159810000 + +cylinder cylf4 22.00000000000000000000 65.00000000000009900000 38.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107758093000 0.01840568251500763000 0.00000000000000000000 8.00000000000000000000 +mkface fcan4 cylf4 0.0 6.28318530717958620000 -26.00000000000000000000 52.00000000000000000000 + +cylinder cylf5 27.29150262212920100000 490.00000000000000000000 19.00000000000000700000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 5.99999999999998130000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -2.70849737787079900000 5.41699475574159810000 + +cylinder cylf8 22.00000000000000400000 489.99999999999983000000 38.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107758037000 0.01840568251503782400 0.00000000000000000000 7.99999999999999910000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -26.00000000000000000000 52.00000000000000000000 + +cylinder cylf15 0.00000000000000000000 39.99999999999999300000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00000000000000142109 1.00000000000000000000 5.00000000000000000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf17 0.00000000000000000000 515.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 5.00000000000000000000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf19 0.00000000000000000000 277.50000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 5.00000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf21 0.00000000000000000000 490.00000000000023000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00171446966710201870 0.99999853029580033000 6.00000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -16.70849737787079900000 33.41699475574159800000 + +cylinder cylf22 0.00000000000000000000 65.00000000000029800000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00171446966709728080 0.99999853029580033000 6.00000000000000090000 +mkface fcan22 cylf22 0.0 6.28318530717958620000 -16.70849737787079900000 33.41699475574159800000 + +cylinder cylf29 600.00000000000000000000 490.00000000000034000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735136420060 -0.99997897276724990000 5.99999999999999910000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -16.70849737787102600000 33.41699475574205300000 + +cylinder cylf30 577.99999999999989000000 490.00000000000807000000 37.99999999999999300000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107759858000 0.01840568251405005600 0.00000000000000000000 8.00000000000001420000 +mkface fcan30 cylf30 0.0 6.28318530717958620000 -25.99999999999999300000 51.99999999999998600000 + +cylinder cylf31 572.70849737787103000000 490.00000000000000000000 18.99999999999999300000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 6.00000000000001870000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -2.70849737787102640000 5.41699475574205280000 + +cylinder cylf35 600.00000000000000000000 65.00000000000118000000 19.00000000000000400000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735120551590 -0.99997897276725090000 6.00000000000000000000 +mkface fcan35 cylf35 0.0 6.28318530717958620000 -16.70849737787102600000 33.41699475574205300000 + +cylinder cylf36 578.00000000000011000000 64.99999999999796800000 38.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107757549000 0.01840568251530781300 0.00000000000000000000 7.99999999999999730000 +mkface fcan36 cylf36 0.0 6.28318530717958620000 -26.00000000000000000000 52.00000000000000000000 + +cylinder cylf37 572.70849737787103000000 65.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 6.00000000000000440000 +mkface fcan37 cylf37 0.0 6.28318530717958620000 -2.70849737787102640000 5.41699475574205280000 + +cylinder cylf43 600.00000000000000000000 277.50000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan43 cylf43 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf45 600.00000000000000000000 40.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 4.99999999999999730000 +mkface fcan45 cylf45 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf47 600.00000000000000000000 515.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan47 cylf47 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + + +binrestore [locate_data_file bug28091_Platte_mit_Minifix.brep] sh +explode sh + +nexplode sh_1 e +nexplode sh_3 e +nexplode sh_5 e +nexplode sh_7 e +nexplode sh_9 e +nexplode sh_11 e +nexplode sh_19 e +nexplode sh_20 e +nexplode sh_21 e +nexplode sh_23 e +nexplode sh_24 e +nexplode sh_25 e +nexplode sh_27 e +nexplode sh_28 e +nexplode sh_29 e +nexplode sh_31 e +nexplode sh_32 e +nexplode sh_33 e +nexplode sh_35 e +nexplode sh_37 e +nexplode sh_39 e +nexplode sh_41 e + + +compound sh_23_1 sh_23_2 sh_24_1 sh_24_2 cmpde1 +compound sh_39_4 sh_39_1 sh_39_2 sh_39_3 sh_39_5 sh_39_6 cmpde4 +compound sh_19_1 sh_19_2 sh_20_1 sh_20_2 cmpde5 +compound sh_37_4 sh_37_1 sh_37_2 sh_37_3 sh_37_5 sh_37_6 cmpde8 +compound sh_7_1 sh_7_3 cmpde15 +compound sh_9_1 sh_9_3 cmpde17 +compound sh_11_1 sh_11_3 cmpde19 +compound sh_21_1 sh_21_3 sh_21_4 cmpde21 +compound sh_25_1 sh_25_3 sh_25_4 cmpde22 +compound sh_29_1 sh_29_2 sh_29_3 sh_29_5 cmpde29 +compound sh_35_1 sh_35_2 sh_35_3 sh_35_4 sh_35_5 sh_35_6 sh_35_7 cmpde30 +compound sh_27_1 sh_27_2 sh_28_1 sh_28_2 cmpde31 +compound sh_33_1 sh_33_2 sh_33_3 sh_33_5 cmpde35 +compound sh_41_1 sh_41_2 sh_41_3 sh_41_4 sh_41_5 sh_41_6 sh_41_7 cmpde36 +compound sh_31_1 sh_31_2 sh_32_1 sh_32_2 cmpde37 +compound sh_1_1 sh_1_3 cmpde43 +compound sh_3_3 sh_3_1 cmpde45 +compound sh_5_1 sh_5_3 cmpde47 + + +set FacesList {15 17 19 21 22 29 35 43 45 47} +set FacesList1 {1 5 31 37} +set FacesList2 {4 8 30 36} + + +################### + +foreach x $FacesList { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 3 -face 3 + FindFaces res${x} +} + +foreach x $FacesList1 { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 4 -face 4 + FindFaces res${x} +} + +foreach x $FacesList2 { + set ListCanEdges [ explode fcan${x} e ] + + bclearobjects + bcleartools + baddobjects fcan${x} + baddctools cmpde${x} + bfillds + bbuild res${x} + + checknbshapes res${x} -wire 7 -face 6 + FindFaces res${x} +} + + +checknbshapes result -face [ expr [ llength $FacesList ]+2*[ llength $FacesList1 ]+4*[ llength $FacesList2 ] ] +checkprops result -s 11496.4 + +smallview +donly result +fit +erase axes + +checkview -screenshot -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_6/bug28091_92 b/tests/bugs/modalg_6/bug28091_92 new file mode 100644 index 0000000000..ebfdcff4be --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_92 @@ -0,0 +1,199 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl11 -791.20078880442713000000 65.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl11 pl11 5.97022933874066020000 818.49229142655633000000 + +plane pl12 30.00000000000000000000 65.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl12 pl12 5.97022933874066020000 818.49229142655633000000 + +plane pl21 22.00000000000000000000 65.00000000000009900000 856.49229142655633000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107758093000 0.01840568251500763000 0.00000000000000000000 +pcylinder cyl21 pl21 7.97022933874066020000 818.49229142655633000000 + +plane pl22 22.00000000000000000000 65.00000000000009900000 12.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107758093000 0.01840568251500763000 0.00000000000000000000 +pcylinder cyl22 pl22 7.97022933874066020000 818.49229142655633000000 + +plane pl31 -791.20078880442713000000 490.00000000000000000000 19.00000000000000700000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl31 pl31 5.97022933874110160000 818.49229142655633000000 + +plane pl32 29.99999999999999600000 490.00000000000000000000 19.00000000000000700000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl32 pl32 5.97022933874110160000 818.49229142655633000000 + +plane pl41 22.00000000000000400000 489.99999999999983000000 856.49229142655633000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107758037000 0.01840568251503782400 0.00000000000000000000 +pcylinder cyl41 pl41 7.97022933874111940000 818.49229142655633000000 + +plane pl42 22.00000000000000400000 489.99999999999983000000 12.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107758037000 0.01840568251503782400 0.00000000000000000000 +pcylinder cyl42 pl42 7.97022933874111940000 818.49229142655633000000 + +plane pl51 -818.49229142655633000000 39.99999999999999300000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00000000000000142109 1.00000000000000000000 +pcylinder cyl51 pl51 4.99999899999999990000 818.49229142655633000000 + +plane pl52 20.00000000000000000000 39.99999999999999300000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00000000000000142109 1.00000000000000000000 +pcylinder cyl52 pl52 4.99999899999999990000 818.49229142655633000000 + +plane pl61 -818.49229142655633000000 515.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl61 pl61 4.99999899999999990000 818.49229142655633000000 + +plane pl62 20.00000000000000000000 515.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl62 pl62 4.99999899999999990000 818.49229142655633000000 + +plane pl71 -818.49229142655633000000 277.50000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl71 pl71 4.99999899999999990000 818.49229142655633000000 + +plane pl72 20.00000000000000000000 277.50000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl72 pl72 4.99999899999999990000 818.49229142655633000000 + +plane pl81 -818.49229142655633000000 490.00000000000023000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00171446966710201870 0.99999853029580033000 +pcylinder cyl81 pl81 5.98315484232304940000 818.49229142655633000000 + +plane pl82 16.70849737787079900000 490.00000000000023000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00171446966710201870 0.99999853029580033000 +pcylinder cyl82 pl82 5.98315484232304940000 818.49229142655633000000 + +plane pl91 -818.49229142655633000000 65.00000000000029800000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00171446966709728080 0.99999853029580033000 +pcylinder cyl91 pl91 5.98315484232236020000 818.49229142655633000000 + +plane pl92 16.70849737787079900000 65.00000000000029800000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00171446966709728080 0.99999853029580033000 +pcylinder cyl92 pl92 5.98315484232236020000 818.49229142655633000000 + +plane pl101 1418.49229142655620000000 490.00000000000034000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735136420060 -0.99997897276724990000 +pcylinder cyl101 pl101 5.98315484232250760000 818.49229142655633000000 + +plane pl102 583.29150262212897000000 490.00000000000034000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735136420060 -0.99997897276724990000 +pcylinder cyl102 pl102 5.98315484232250760000 818.49229142655633000000 + +plane pl111 577.99999999999989000000 490.00000000000807000000 856.49229142655633000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107759858000 0.01840568251405005600 0.00000000000000000000 +pcylinder cyl111 pl111 7.97022933874109980000 818.49229142655633000000 + +plane pl112 577.99999999999989000000 490.00000000000807000000 12.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107759858000 0.01840568251405005600 0.00000000000000000000 +pcylinder cyl112 pl112 7.97022933874109980000 818.49229142655633000000 + +plane pl121 1391.20078880442720000000 490.00000000000000000000 18.99999999999999300000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl121 pl121 5.97022933874110430000 818.49229142655633000000 + +plane pl122 570.00000000000000000000 490.00000000000000000000 18.99999999999999300000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl122 pl122 5.97022933874110430000 818.49229142655633000000 + +plane pl131 1418.49229142655620000000 65.00000000000118000000 19.00000000000000400000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735120551590 -0.99997897276725090000 +pcylinder cyl131 pl131 5.98315484232232460000 818.49229142655633000000 + +plane pl132 583.29150262212897000000 65.00000000000118000000 19.00000000000000400000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735120551590 -0.99997897276725090000 +pcylinder cyl132 pl132 5.98315484232232460000 818.49229142655633000000 + +plane pl141 578.00000000000011000000 64.99999999999796800000 856.49229142655633000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107757549000 0.01840568251530781300 0.00000000000000000000 +pcylinder cyl141 pl141 7.97022933874065750000 818.49229142655633000000 + +plane pl142 578.00000000000011000000 64.99999999999796800000 12.00000000000000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.99983060107757549000 0.01840568251530781300 0.00000000000000000000 +pcylinder cyl142 pl142 7.97022933874065750000 818.49229142655633000000 + +plane pl151 1391.20078880442720000000 65.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl151 pl151 5.97022933874066460000 818.49229142655633000000 + +plane pl152 570.00000000000000000000 65.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl152 pl152 5.97022933874066460000 818.49229142655633000000 + +plane pl161 1418.49229142655620000000 277.50000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl161 pl161 4.99999899999999990000 818.49229142655633000000 + +plane pl162 580.00000000000000000000 277.50000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl162 pl162 4.99999899999999990000 818.49229142655633000000 + +plane pl171 1418.49229142655620000000 40.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl171 pl171 4.99999899999999720000 818.49229142655633000000 + +plane pl172 580.00000000000000000000 40.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl172 pl172 4.99999899999999720000 818.49229142655633000000 + +plane pl181 1418.49229142655620000000 515.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl181 pl181 4.99999899999999990000 818.49229142655633000000 + +plane pl182 580.00000000000000000000 515.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 +pcylinder cyl182 pl182 4.99999899999999990000 818.49229142655633000000 + + +binrestore [locate_data_file bug28091_Platte_mit_Minifix.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +set i 0 +foreach x {1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18} { + incr i + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}1 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}1 sshape $cyf -n2d -na + break + } + } + + copy CmpdSrcFList sshape + foreach cyf [explode cyl${x}2 f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection r${i}2 sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes r11 -vertex 0 +checknbshapes r12 -vertex 3 +checknbshapes r21 -vertex 0 +checknbshapes r22 -vertex 3 +checknbshapes r31 -vertex 0 +checknbshapes r32 -vertex 3 +checknbshapes r41 -vertex 0 +checknbshapes r42 -vertex 3 +checknbshapes r51 -vertex 0 +checknbshapes r52 -vertex 3 +checknbshapes r61 -vertex 1 +checknbshapes r62 -vertex 3 +checknbshapes r71 -vertex 0 +checknbshapes r72 -vertex 3 +checknbshapes r81 -vertex 0 +checknbshapes r82 -vertex 4 +checknbshapes r91 -vertex 0 +checknbshapes r92 -vertex 4 +checknbshapes r101 -vertex 0 +checknbshapes r102 -vertex 4 +checknbshapes r111 -vertex 0 +checknbshapes r112 -vertex 3 +checknbshapes r121 -vertex 0 +checknbshapes r122 -vertex 3 +checknbshapes r131 -vertex 0 +checknbshapes r132 -vertex 4 +checknbshapes r141 -vertex 0 +checknbshapes r142 -vertex 3 +checknbshapes r151 -vertex 0 +checknbshapes r152 -vertex 3 +checknbshapes r161 -vertex 1 +checknbshapes r162 -vertex 3 +checknbshapes r171 -vertex 1 +checknbshapes r172 -vertex 3 +checknbshapes r181 -vertex 1 +checknbshapes r182 -vertex 5 diff --git a/tests/bugs/modalg_6/bug28091_93 b/tests/bugs/modalg_6/bug28091_93 new file mode 100644 index 0000000000..0ffa606de3 --- /dev/null +++ b/tests/bugs/modalg_6/bug28091_93 @@ -0,0 +1,86 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Crash in Boolean operation in OCCT 6.7.0 version +###################################################### + +plane pl21jw5 8.35424868893539950000 490.00000000000023000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl21jw5 pl21jw5 5.99345025452302860000 20.29150262212920100000 + +plane pl22jw1 8.35424868893539950000 65.00000000000029800000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl22jw1 pl22jw1 5.99345025452294600000 20.29150262212920100000 + +plane pl29jw5 28.64575131106460000000 490.00000000000000000000 19.00000000000000700000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl29jw5 pl29jw5 5.99345025452302860000 562.99999999999989000000 + +plane pl31jw5 28.64575131106460000000 490.00000000000000000000 19.00000000000000700000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl31jw5 pl31jw5 5.99345025452302060000 542.70849737787091000000 + +plane pl31jw29 591.64575131106449000000 490.00000000000034000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735136420060 -0.99997897276724990000 +pcylinder cyl31jw29 pl31jw29 5.99345025452303840000 20.29150262212897400000 + +plane pl35jw1 28.64575131106460000000 65.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl35jw1 pl35jw1 5.99345025452294600000 562.99999999999989000000 + +plane pl37jw1 28.64575131106460000000 65.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl37jw1 pl37jw1 5.99345025452294600000 542.70849737787091000000 + +plane pl37jw35 591.64575131106449000000 65.00000000000118000000 19.00000000000000400000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00648490735120551590 -0.99997897276725090000 +pcylinder cyl37jw35 pl37jw35 5.99345025452294600000 20.29150262212897400000 + +plane pl43jw19 10.00000000000000000000 277.50000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl43jw19 pl43jw19 4.99999957999999990000 580.00000000000000000000 + +plane pl45jw15 10.00000000000000000000 39.99999999999999300000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00000000000000142109 1.00000000000000000000 +pcylinder cyl45jw15 pl45jw15 4.99999957999999720000 580.00000000000000000000 + +plane pl47jw17 10.00000000000000000000 515.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 +pcylinder cyl47jw17 pl47jw17 4.99999957999999990000 580.00000000000000000000 + +binrestore [locate_data_file bug28091_Platte_mit_Minifix.brep] sh + +compound CmpdSrcFList + +foreach ff [ explode sh f ] { + settolerance $ff 1.0e-7 + fixshape rf $ff + add rf CmpdSrcFList +} + +puts "" +puts "" + +foreach x {cyl21jw5 cyl22jw1 cyl29jw5 cyl31jw5 cyl31jw29 cyl35jw1 cyl37jw1 cyl37jw35 cyl43jw19 cyl45jw15 cyl47jw17} { + copy CmpdSrcFList sshape + foreach cyf [explode ${x} f] { + mksurface sf $cyf; + if { [ string first "Cylindr" [ dump sf ] ] >= 0 } { + bsection rs${x} sshape $cyf -n2d -na + break + } + } +} + +# The true number of entities is not important. +# The main idea is to check if: +# 1. The result (r*) is empty or not. +# 2. new interfered entities are found or +# if some interferences are not detected but was +# detected earlier. +# +# Changes in behavior at least in one item must be considered (most likely) +# as regression. + +checknbshapes rscyl21jw5 -vertex 0 +checknbshapes rscyl22jw1 -vertex 0 +checknbshapes rscyl29jw5 -vertex 4 +checknbshapes rscyl31jw5 -vertex 4 +checknbshapes rscyl31jw29 -vertex 0 +checknbshapes rscyl35jw1 -vertex 4 +checknbshapes rscyl37jw1 -vertex 4 +checknbshapes rscyl37jw35 -vertex 0 +checknbshapes rscyl43jw19 -vertex 3 +checknbshapes rscyl45jw15 -vertex 3 +checknbshapes rscyl47jw17 -vertex 3 \ No newline at end of file diff --git a/tests/bugs/modalg_7/bug28091_011 b/tests/bugs/modalg_7/bug28091_011 new file mode 100644 index 0000000000..478019f266 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_011 @@ -0,0 +1,59 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_616101.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf5 282.33707384194003000000 343.88276232635002000000 884.22469835152003000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 187.00000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -899.22469835150002000000 -854.22469835150002000000 + +cylinder cylf7 418.35216433317999000000 67.43903712333700200000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf8 146.32198335069000000000 67.43903712333700200000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf9 67.33707384193600400000 343.88276232633001000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf10 282.33707384193002000000 557.88276232632995000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf11 496.33707384193002000000 343.88276232633001000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +cylinder cylf12 282.33707384193002000000 129.88276232633001000000 15.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -30.00000000000000000000 15.00000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 21 +checkshape result +checkprops result -s 63051.8 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_021 b/tests/bugs/modalg_7/bug28091_021 new file mode 100644 index 0000000000..a234f588a0 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_021 @@ -0,0 +1,50 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_ad1945.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf7 50.46515887431400000000 25.00000000000000000000 -5.00000000000000000000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 3.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -0.00000000000000355271 15.00000000000000400000 + +cylinder cylf8 50.46515887431400000000 95.00000000000000000000 -5.00000000000000000000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 3.00000000000000000000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -0.00000000000000355271 15.00000000000000400000 + +cylinder cylf21 50.46515887431400000000 95.00000000000000000000 -5.00000000000000000000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 3.00000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -0.00000000000000355271 15.00000000000000400000 + +cylinder cylf23 50.46515887431400000000 25.00000000000000000000 -5.00000000000000000000 -0.00000000000000698296 0.00000000000000011102 1.00000000000000000000 -1.00000000000000000000 -0.00000000000000000000 -0.00000000000000698296 3.00000000000000000000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -0.00000000000000355271 15.00000000000000400000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 16 +checkshape result +checkprops result -s 1130.97 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_031 b/tests/bugs/modalg_7/bug28091_031 new file mode 100644 index 0000000000..25d4c6c210 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_031 @@ -0,0 +1,80 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_aufnahmeplatte.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf12 475.00000000000000000000 635.00000000000000000000 -0.00000000000000111022 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 3.50000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -12.40000000000000200000 24.80000000000000400000 + +cylinder cylf13 474.99999999999989000000 635.00000000000000000000 -0.00000000000000111022 0.00000000000000916829 0.00000000000000000000 1.00000000000000000000 0.00000000000003248195 1.00000000000000000000 -0.00000000000000000000 3.50000000000000000000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -12.40000000000000200000 24.80000000000000400000 + +cylinder cylf14 475.00000000000000000000 635.00000000000000000000 12.39999999999999900000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 5.50000000000000000000 +mkface fcan14 cylf14 0.0 6.28318530717958620000 -12.60000000002581900000 25.20000000005163800000 + +cylinder cylf15 474.99999999999989000000 635.00000000000000000000 12.39999999999999900000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000002067033 1.00000000000000000000 -0.00000000000000000000 5.50000000000000000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -12.60000000002581900000 25.20000000005163800000 + +cylinder cylf16 575.00000000000000000000 635.00000000000000000000 -0.00000000000000111022 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 3.50000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -12.40000000000000200000 24.80000000000000400000 + +cylinder cylf18 575.00000000000000000000 635.00000000000000000000 -0.00000000000000111022 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 3.50000000000003770000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -12.40000000000000200000 24.80000000000000400000 + +cylinder cylf19 524.99999999999000000000 597.49999999999000000000 -0.00000000000000044409 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 22.50000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -9.00000000000000360000 18.00000000000000700000 + +cylinder cylf21 524.99999999999000000000 597.49999999999000000000 -0.00000000000000044409 0.00000000000000000000 -0.00000000000001263187 1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000001263187 22.50000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -9.00000000000000360000 18.00000000000000700000 + +cylinder cylf22 575.00000000000000000000 635.00000000000000000000 12.39999999999999900000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 5.50000000000000000000 +mkface fcan22 cylf22 0.0 6.28318530717958620000 -12.60000000003306300000 25.20000000006612600000 + +cylinder cylf23 575.00000000000000000000 635.00000000000000000000 12.39999999999999900000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 5.50000000000003820000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -12.60000000003306300000 25.20000000006612600000 + +cylinder cylf24 524.99999999999000000000 597.49999999996908000000 24.99999999999998900000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.74428629599570628000 0.66786069624809630000 0.00000000000000000000 62.70000000002084300000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -5.99999999999999290000 11.99999999999998600000 + +cylinder cylf25 524.99999999999000000000 597.49999999999386000000 25.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.84954643127679985000 0.52751384920668543000 0.00000000000000000000 62.70000000000379700000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -6.00000000000000000000 12.00000000000000000000 + +cylinder cylf26 524.99999999999500000000 597.49999999999500000000 8.99999999999999820000 0.00000000000000000000 -0.00000000000001136868 1.00000000000000000000 -0.00000000000057598646 -1.00000000000000000000 -0.00000000000001136868 8.68461538461497180000 +mkface fcan26 cylf26 0.0 6.28318530717958620000 -10.00000000000000500000 20.00000000000001100000 + +cylinder cylf27 524.99999999999500000000 597.49999999999500000000 8.99999999999999820000 0.00000000000000000000 -0.00000000000002273737 1.00000000000000000000 -0.00000000000057598646 1.00000000000000000000 0.00000000000002273737 8.68461538461500910000 +mkface fcan27 cylf27 0.0 6.28318530717958620000 -10.00000000000000500000 20.00000000000001100000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 54 +checkshape result +checkprops result -s 33587.9 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_041 b/tests/bugs/modalg_7/bug28091_041 new file mode 100644 index 0000000000..77f481ddf2 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_041 @@ -0,0 +1,62 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_B8S1E3.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf7 141.13896526834921000000 -57.63193079361478500000 97.15840195887491900000 0.02162606708575492600 0.98861031704748348000 0.14893607437312376000 0.10558363375035876000 0.14587943147697713000 -0.98365201558072568000 4.99999999999032330000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -26.99999999999790700000 53.99999999999581500000 + +cylinder cylf9 445.15687260000703000000 -62.15630418040014900000 83.04584085044795900000 0.02162606708540712100 0.98861031704746383000 0.14893607437330450000 -0.00278266340739225780 0.14902985777620223000 -0.98882878107161010000 5.00000000000472420000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -26.99999999999844700000 53.99999999999689500000 + +cylinder cylf12 588.72101965685874000000 15.67554118886477700000 126.61932856435985000000 -0.10251720411314132000 0.00966313604260033400 -0.99468429497134758000 -0.88913830517857795000 0.44745921534553212000 0.09598606600193090900 2.49999999999644020000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -51.35083742078565200000 102.70167484157130000000 + +cylinder cylf14 586.74596222808225000000 217.10615429302783000000 133.97492360324981000000 -0.10251720411309666000 0.00966313604271867680 -0.99468429497135102000 -0.88913830517686743000 0.44745921534895838000 0.09598606600180087400 2.49999999999656670000 +mkface fcan14 cylf14 0.0 6.28318530717958620000 -50.36936729123464600000 100.73873458246929000000 + +cylinder cylf16 580.65091872494509000000 417.98823099055784000000 121.03408927474632000000 -0.10251720411306277000 0.00966313604280121150 -0.99468429497135369000 -0.88913830517687764000 0.44745921534893685000 0.09598606600180831200 2.50000000000150100000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -50.84612207431043600000 101.69224414862087000000 + +cylinder cylf18 5.01819988872060210000 342.23441510029500000000 199.58259100209798000000 0.15458533910933014000 0.03542900097478081400 -0.98734399214376256000 -0.81534274695804210000 0.56896035109838550000 -0.10723956294631339000 2.50000000000244250000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -50.93723923133917700000 101.87447846267835000000 + +cylinder cylf20 8.30947167935516970000 173.34730890862892000000 198.05857890514847000000 0.15458533910919400000 0.03542900097451194600 -0.98734399214379354000 -0.81534274695910369000 0.56896035109681486000 -0.10723956294657509000 2.49999999999980500000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -50.47370691608583100000 100.94741383217166000000 + +cylinder cylf22 10.29805893765549900000 4.78779028587434660000 182.14690040452001000000 0.15458533910915162000 0.03542900097443971900 -0.98734399214380286000 -0.81534274696012676000 0.56896035109530729000 -0.10723956294679496000 2.50000000000226970000 +mkface fcan22 cylf22 0.0 6.28318530717958620000 -51.22995051893082800000 102.45990103786166000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 24 +checkshape result +checkprops result -s 19471.9 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_051 b/tests/bugs/modalg_7/bug28091_051 new file mode 100644 index 0000000000..53a58e4293 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_051 @@ -0,0 +1,68 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_BenchLeg.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf1 9.35849466038107990000 100.00000000000000000000 35.91936957356485000000 0.90707526697824037000 0.00000000000000000000 -0.42096847867311160000 -0.42096847867311160000 0.00000000000000000000 -0.90707526697824037000 4.99999999964020600000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -20.00000000062103900000 40.00000000124205700000 + +cylinder cylf2 9.35849466038107280000 100.00000000000000000000 35.91936957356485000000 0.90707526697824037000 0.00000000000000000000 -0.42096847867311143000 -0.42096847867311149000 0.00000000000000000000 -0.90707526697824048000 4.99999999964020780000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -20.00000000062103200000 40.00000000124206400000 + +cylinder cylf3 38.81370849916699900000 218.81370849900000000000 23.00000000000001800000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -23.00000000000004600000 46.00000000000005000000 + +cylinder cylf4 38.81370849916699900000 218.81370849900000000000 23.00000000000003200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan4 cylf4 0.0 6.28318530717958620000 -23.00000000000003200000 46.00000000000006400000 + +cylinder cylf7 16.18629150116699800000 196.18629150100000000000 23.00000000000001800000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.99999999999999820000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -23.00000000000004600000 46.00000000000005000000 + +cylinder cylf8 16.18629150116699800000 196.18629150100000000000 23.00000000000003200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.99999999999999820000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -23.00000000000003200000 46.00000000000006400000 + +cylinder cylf11 32.00000000016698500000 218.81370849900000000000 38.81370849900000100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -23.00000000000005700000 46.00000000000005000000 + +cylinder cylf12 32.00000000016696300000 218.81370849900000000000 38.81370849900000100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -23.00000000000003600000 46.00000000000007100000 + +cylinder cylf15 32.00000000016698500000 196.18629150100000000000 16.18629150099999900000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -23.00000000000005700000 46.00000000000005000000 + +cylinder cylf16 32.00000000016696300000 196.18629150100000000000 16.18629150099999900000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 5.00000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -23.00000000000003600000 46.00000000000007100000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 40 +checkshape result +checkprops result -s 21111.5 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_061 b/tests/bugs/modalg_7/bug28091_061 new file mode 100644 index 0000000000..d85068865b --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_061 @@ -0,0 +1,101 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +puts "TODO OCC28091 ALL: Faulty shapes in variables faulty_1 to faulty_49" + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_Cheese.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf1 60.00000000000000000000 80.00000000000000000000 78.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 17.50000000000000400000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -22.00000000000000000000 44.00000000000000000000 + +cylinder cylf5 130.37424293882501000000 88.20815528236599300000 86.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 -0.00000000000066554170 0.00000000000000000000 6.00000000116500590000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -14.00000000000000000000 28.00000000000000000000 + +cylinder cylf6 267.45509618075499000000 134.55015929529492000000 84.43199999999998800000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000084791433 -0.00000000000000000000 5.99999999923498260000 +mkface fcan6 cylf6 0.0 6.28318530717958620000 -15.56800000000001200000 31.13600000000002400000 + +cylinder cylf8 170.28161561493499000000 152.83457495140496000000 91.00000000000000000000 0.00000000000000000000 0.00000000000000631594 1.00000000000000000000 1.00000000000000000000 0.00000000000125766064 -0.00000000000000000000 3.99999999505500140000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf10 204.60548025404501000000 110.93342602177701000000 69.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000016275943 -0.00000000000000000000 18.33552388594501200000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -31.00000000000001400000 62.00000000000002800000 + +cylinder cylf15 358.55873185822588000000 133.80451318072431000000 59.99994735312635900000 0.30908338989193723000 0.95103494052159243000 -0.00000000000000154623 -0.95103494052076865000 0.30908338989166950000 -0.00000131614099205028 17.50000000008950000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -9.19066500880500210000 18.38133001761000400000 + +cylinder cylf17 224.16329203660513000000 143.83549501511007000000 67.75910386022772500000 0.30908338989189549000 0.95103494052160586000 0.00000000000005934039 -0.95103494052078219000 0.30908338989162781000 -0.00000131614078671860 19.99999999524689900000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -41.19061541702499300000 82.38123083404998700000 + +cylinder cylf19 287.32354610255459000000 144.33791613605808000000 30.39056416016740800000 0.30908338989181011000 0.95103494052163373000 0.00000000000011266280 -0.95103494052080995000 0.30908338989154238000 -0.00000131614078397067 11.99999999952954800000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -21.19087794347910100000 42.38175588695820300000 + +cylinder cylf21 308.95637745096076000000 146.77087858510225000000 69.66668889824464400000 0.30908338989194878000 0.95103494052158855000 -0.00000000000000582864 -0.95103494052076487000 0.30908338989168110000 -0.00000131614106554930 9.99999999535817530000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -12.19054108172832500000 24.38108216345665000000 + +cylinder cylf23 97.57605836056576700000 207.05760452769019000000 72.59321403503813000000 0.30908338989186906000 0.95103494052161452000 -0.00000000000001266907 -0.95103494052079096000 0.30908338989160139000 -0.00000131614100921789 13.00000000294487500000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -20.19053440413856400000 40.38106880827712800000 + +cylinder cylf25 163.40657159830295000000 180.40504566528838000000 39.99968412531741500000 0.30908338989193634000 0.95103494052159265000 -0.00000000000003582220 -0.95103494052076898000 0.30908338989166867000 -0.00000131614104147862 10.00000000008939700000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -25.19078668066805800000 50.38157336133611600000 + +cylinder cylf27 56.91192012263003600000 202.39790739043241000000 31.25451242605524600000 0.30908338989186823000 0.95103494052161475000 -0.00000000000000687790 -0.95103494052079107000 0.30908338989160056000 -0.00000131614101616116 15.00000000254694000000 +mkface fcan27 cylf27 0.0 6.28318530717958620000 -37.19088833964083600000 74.38177667928167100000 + +cylinder cylf31 172.13973013524031000000 89.94009879723540700000 67.75932881005792300000 0.30908670962811158000 -0.95103386161128223000 0.00000000000001626341 -0.95103386161128223000 -0.30908670962811158000 -0.00000000000009023893 19.99999999515231500000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -32.33033361186547000000 64.66066722373094000000 + +cylinder cylf32 100.43020655213624000000 52.61812517876313700000 69.66680890704111600000 0.30908670962811624000 -0.95103386161128067000 -0.00000000000003664855 -0.95103386161128067000 -0.30908670962811624000 -0.00000000000021174174 9.99999999526688480000 +mkface fcan32 cylf32 0.0 6.28318530717958620000 -19.00025840509527300000 38.00051681019054700000 + +cylinder cylf34 50.20967343337242300000 41.55385106381065400000 60.00000000000005000000 0.30908670962808271000 -0.95103386161129155000 0.00000000000000088817 -0.95103386161129166000 -0.30908670962808277000 0.00000000000000406024 17.49999999999993600000 +mkface fcan34 cylf34 0.0 6.28318530717958620000 -24.00021914674909200000 48.00043829349818500000 + +cylinder cylf37 308.71964140461739000000 122.41532036639870000000 72.59362315226593400000 0.30908670962814061000 -0.95103386161127268000 0.00000000000013669215 -0.95103386161127279000 -0.30908670962814067000 0.00000000000008198570 13.00000000285731300000 +mkface fcan37 cylf37 0.0 6.28318530717958620000 -21.00042118362002300000 42.00084236724004700000 + +cylinder cylf38 117.73582563014271000000 63.49990055674456400000 30.39071025628624100000 0.30908670962811363000 -0.95103386161128156000 0.00000000000010006737 -0.95103386161128156000 -0.30908670962811363000 0.00000000000023033427 11.99999999944075500000 +mkface fcan38 cylf38 0.0 6.28318530717958620000 -24.00017548845910300000 48.00035097691820600000 + +cylinder cylf40 243.50731285187388000000 93.86085437339265500000 40.00000000000155600000 0.30908670962809709000 -0.95103386161128689000 -0.00000000000014921098 -0.95103386161128689000 -0.30908670962809709000 -0.00000000000015560886 9.99999999999844210000 +mkface fcan40 cylf40 0.0 6.28318530717958620000 -14.00028143263978100000 28.00056286527956200000 + +cylinder cylf42 347.83836944454447000000 122.51108870692718000000 31.25497054615716400000 0.30908670962821966000 -0.95103386161124714000 -0.00000000000006907790 -0.95103386161124714000 -0.30908670962821966000 -0.00000000000007768601 15.00000000245712800000 +mkface fcan42 cylf42 0.0 6.28318530717958620000 -9.00034460211121610000 18.00068920422243200000 + +cylinder cylf45 60.00000000000000000000 180.00000000000000000000 85.57899999999997900000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 7.50000000000000980000 +mkface fcan45 cylf45 0.0 6.28318530717958620000 -14.42100000000002100000 28.84200000000004100000 + +sewing sh srcshape +fixshape sh sh +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 125 +checkshape result +checkprops result -s 109340 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_071 b/tests/bugs/modalg_7/bug28091_071 new file mode 100644 index 0000000000..af1fa03226 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_071 @@ -0,0 +1,781 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +puts "TODO OCC28091 ALL: Faulty shapes in variables faulty_1 to faulty_2" + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_dsk_tl06_111680_repariert.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf1 1206.16230817000000000000 116.04451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf2 1206.16230817000000000000 116.04451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf3 1206.16230817000000000000 236.04451630099999000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf4 1206.16230817000000000000 236.04451630099999000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan4 cylf4 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf5 1206.16230817000000000000 356.04451630099999000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf6 1206.16230817000000000000 356.04451630099999000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan6 cylf6 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf7 1206.16230817000000000000 476.04451630099999000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf8 1206.16230817000000000000 476.04451630099999000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf9 127.66230817000000000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf10 127.66230817000000000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf11 248.66230816999999000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf12 248.66230816999999000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf13 369.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf14 369.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan14 cylf14 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf15 490.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf16 490.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf17 801.64327191630002000000 763.46196366859999000000 56.08367445014999900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 8.00000000000000000000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -10.08367445014999900000 58.91632554985000100000 + +cylinder cylf18 801.64327191630002000000 763.46196366859999000000 56.08367445014999900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 8.00000000000000000000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -10.08367445014999900000 58.91632554985000100000 + +cylinder cylf20 1206.16230817000000000000 596.04451630100004000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf21 1206.16230817000000000000 596.04451630100004000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf22 1206.16230817000000000000 716.04451630100004000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan22 cylf22 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf23 1206.16230817000000000000 716.04451630100004000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf24 1206.16230817000000000000 836.04451630100004000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf25 1206.16230817000000000000 836.04451630100004000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf26 611.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan26 cylf26 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf27 611.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan27 cylf27 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf28 732.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan28 cylf28 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf29 732.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf30 853.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan30 cylf30 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf31 853.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 10.00000000000000000000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf32 105.53679809800001000000 909.25902500140000000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 12.00000000000000000000 +mkface fcan32 cylf32 0.0 6.28318530717958620000 -20.87551167546319400000 99.12448832486113300000 + +cylinder cylf33 105.53679809800001000000 909.25902500140000000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 12.00000000000000000000 +mkface fcan33 cylf33 0.0 6.28318530717958620000 -20.87551167546319400000 99.12448832486113300000 + +cylinder cylf35 475.56848832800000000000 374.86539833099999000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 12.00000000000000000000 +mkface fcan35 cylf35 0.0 6.28318530717958620000 -20.87551167574294600000 99.12448832499950400000 + +cylinder cylf36 475.56848832800000000000 374.86539833099999000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 12.00000000000000000000 +mkface fcan36 cylf36 0.0 6.28318530717958620000 -20.87551167574294600000 99.12448832499950400000 + +cylinder cylf50 1206.16230817000000000000 116.04451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan50 cylf50 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf51 1206.16230817000000000000 116.04451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan51 cylf51 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf53 1246.16230817000000000000 548.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 12.00000000000000000000 +mkface fcan53 cylf53 0.0 6.28318530717958620000 -62.00000000000000000000 124.00000000000000000000 + +cylinder cylf54 1246.16230817000000000000 548.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 12.00000000000000000000 +mkface fcan54 cylf54 0.0 6.28318530717958620000 -62.00000000000000000000 124.00000000000000000000 + +cylinder cylf58 577.00060166749995000000 293.05883950399999000000 -119.93120000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 0.61668435567499102000 0.78721052169398842000 -0.00000000000000008740 25.00000000000000000000 +mkface fcan58 cylf58 0.0 6.28318530717958620000 27.93120000000001800000 303.93119999999999000000 + +cylinder cylf65 52.63221306300000200000 1024.66763749300000000000 211.93119999999999000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 0.94359731615189923000 0.33109531097696465000 -0.00000000000000003676 25.00000000000000000000 +mkface fcan65 cylf65 0.0 6.28318530717958620000 27.93120000000001800000 303.93119999999999000000 + +cylinder cylf66 105.53679809800001000000 909.25902500140000000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 10.50000000000000000000 +mkface fcan66 cylf66 0.0 6.28318530717958620000 -40.87551167506181600000 109.12448832443334000000 + +cylinder cylf67 105.53679809800001000000 909.25902500140000000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 10.50000000000000000000 +mkface fcan67 cylf67 0.0 6.28318530717958620000 -40.87551167506181600000 109.12448832443334000000 + +cylinder cylf68 93.92443418899999600000 901.21824301920003000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan68 cylf68 0.0 6.28318530717958620000 -20.76709779183400400000 41.53419558366800900000 + +cylinder cylf69 93.92443418899999600000 901.21824301920003000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan69 cylf69 0.0 6.28318530717958620000 -20.76709779183400400000 41.53419558366800900000 + +cylinder cylf72 475.56848832800000000000 374.86539833099999000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 10.50000000000000000000 +mkface fcan72 cylf72 0.0 6.28318530717958620000 -40.87551167526520900000 109.12448832419244000000 + +cylinder cylf73 475.56848832800000000000 374.86539833099999000000 62.00000000000000000000 -0.82214404103074967000 -0.56927952343082666000 0.00000000000000006320 -0.56927952343082666000 0.82214404103074967000 -0.00000000000000009128 10.50000000000000000000 +mkface fcan73 cylf73 0.0 6.28318530717958620000 -40.87551167526520900000 109.12448832419244000000 + +cylinder cylf74 463.95612441899999000000 366.82461634900000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan74 cylf74 0.0 6.28318530717958620000 -20.76709788115700000000 41.53419576231399900000 + +cylinder cylf75 463.95612441899999000000 366.82461634900000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan75 cylf75 0.0 6.28318530717958620000 -20.76709788115700000000 41.53419576231399900000 + +cylinder cylf90 560.66230816999996000000 1231.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 12.00000000000000000000 +mkface fcan90 cylf90 0.0 6.28318530717958620000 -70.00000000000000000000 140.00000000000000000000 + +cylinder cylf91 560.66230816999996000000 1231.44451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 12.00000000000000000000 +mkface fcan91 cylf91 0.0 6.28318530717958620000 -70.00000000000000000000 140.00000000000000000000 + +cylinder cylf97 1206.16230817000000000000 236.04451630099999000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan97 cylf97 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf98 1206.16230817000000000000 236.04451630099999000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan98 cylf98 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf99 1206.16230817000000000000 356.04451630099999000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan99 cylf99 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf100 1206.16230817000000000000 356.04451630099999000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan100 cylf100 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf101 1206.16230817000000000000 476.04451630099999000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan101 cylf101 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf102 1206.16230817000000000000 476.04451630099999000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan102 cylf102 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf103 1206.16230817000000000000 596.04451630100004000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan103 cylf103 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf104 1206.16230817000000000000 596.04451630100004000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan104 cylf104 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf105 1206.16230817000000000000 716.04451630100004000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan105 cylf105 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf106 1206.16230817000000000000 716.04451630100004000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan106 cylf106 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf107 1206.16230817000000000000 836.04451630100004000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan107 cylf107 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf108 1206.16230817000000000000 836.04451630100004000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan108 cylf108 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf109 127.66230817000000000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan109 cylf109 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf110 127.66230817000000000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan110 cylf110 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf111 248.66230816999999000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan111 cylf111 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf112 248.66230816999999000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan112 cylf112 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf113 369.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan113 cylf113 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf114 369.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan114 cylf114 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf115 490.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan115 cylf115 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf116 490.66230817000002000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan116 cylf116 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf117 611.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan117 cylf117 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf118 611.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan118 cylf118 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf119 732.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan119 cylf119 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf120 732.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan120 cylf120 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf121 853.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan121 cylf121 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf122 853.66230816999996000000 1191.44451630100000000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 9.00000000000000000000 +mkface fcan122 cylf122 0.0 6.28318530717958620000 -184.00000000000000000000 92.00000000000000000000 + +cylinder cylf123 136.16230816999999000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan123 cylf123 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf124 136.16230816999999000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan124 cylf124 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf125 136.16230816999999000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan125 cylf125 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf126 136.16230816999999000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan126 cylf126 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf127 136.16230816999999000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan127 cylf127 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf128 136.16230816999999000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan128 cylf128 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf129 236.16230816999999000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan129 cylf129 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf130 236.16230816999999000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan130 cylf130 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf131 236.16230816999999000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan131 cylf131 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf132 236.16230816999999000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan132 cylf132 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf133 236.16230816999999000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan133 cylf133 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf134 236.16230816999999000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan134 cylf134 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf135 236.16230816999999000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan135 cylf135 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf136 236.16230816999999000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan136 cylf136 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf137 236.16230816999999000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan137 cylf137 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf138 236.16230816999999000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan138 cylf138 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf139 336.16230817000002000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan139 cylf139 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf140 336.16230817000002000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan140 cylf140 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf141 336.16230817000002000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan141 cylf141 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf142 336.16230817000002000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan142 cylf142 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf143 436.16230817000002000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan143 cylf143 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf144 436.16230817000002000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan144 cylf144 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf145 436.16230817000002000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan145 cylf145 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf146 436.16230817000002000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan146 cylf146 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf147 536.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan147 cylf147 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf148 536.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan148 cylf148 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf149 536.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan149 cylf149 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf150 536.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan150 cylf150 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf151 636.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan151 cylf151 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf152 636.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan152 cylf152 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf153 736.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan153 cylf153 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf154 736.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan154 cylf154 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf155 736.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan155 cylf155 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf156 736.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan156 cylf156 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf157 736.16230816999996000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan157 cylf157 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf158 736.16230816999996000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan158 cylf158 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf159 836.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan159 cylf159 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf160 836.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan160 cylf160 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf161 836.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan161 cylf161 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf162 836.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan162 cylf162 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf163 836.16230816999996000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan163 cylf163 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf164 836.16230816999996000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan164 cylf164 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf165 836.16230816999996000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan165 cylf165 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf166 836.16230816999996000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan166 cylf166 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf167 936.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan167 cylf167 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf168 936.16230816999996000000 1085.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan168 cylf168 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf169 936.16230816999996000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan169 cylf169 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf170 936.16230816999996000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan170 cylf170 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf171 1036.16230817000000000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan171 cylf171 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf172 1036.16230817000000000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan172 cylf172 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf173 1036.16230817000000000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan173 cylf173 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf174 1036.16230817000000000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan174 cylf174 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf175 1036.16230817000000000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan175 cylf175 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf176 1036.16230817000000000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan176 cylf176 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf177 1136.16230817000000000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan177 cylf177 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf178 1136.16230817000000000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan178 cylf178 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf179 1136.16230817000000000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan179 cylf179 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf180 1136.16230817000000000000 185.74451630100000000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan180 cylf180 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf181 1136.16230817000000000000 85.74451630100000400000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan181 cylf181 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf182 1136.16230817000000000000 85.74451630100000400000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan182 cylf182 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf189 636.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan189 cylf189 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf199 936.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan199 cylf199 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf200 936.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan200 cylf200 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf207 436.16230817000002000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan207 cylf207 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf208 436.16230817000002000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan208 cylf208 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf218 936.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan218 cylf218 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf226 936.16230816999996000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan226 cylf226 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf227 936.16230816999996000000 285.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan227 cylf227 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf230 536.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan230 cylf230 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf231 536.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan231 cylf231 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf232 1136.16230817000000000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan232 cylf232 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf233 1136.16230817000000000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan233 cylf233 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf242 336.16230817000002000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan242 cylf242 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf243 336.16230817000002000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan243 cylf243 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf258 336.16230817000002000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan258 cylf258 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf259 336.16230817000002000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan259 cylf259 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf267 801.64327191630002000000 763.46196366859999000000 56.08367445014999900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 7.00000000000000000000 +mkface fcan267 cylf267 0.0 6.28318530717958620000 -24.08367445014999900000 65.91632554985000100000 + +cylinder cylf268 801.64327191630002000000 763.46196366859999000000 56.08367445014999900000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 7.00000000000000000000 +mkface fcan268 cylf268 0.0 6.28318530717958620000 -24.08367445014999900000 65.91632554985000100000 + +cylinder cylf271 801.64327191630002000000 563.46196366859999000000 92.00000000000000000000 0.00000000000000000000 0.00000000000000011102 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.00000000000000000000 +mkface fcan271 cylf271 0.0 6.28318530717958620000 -6.00000000000000000000 3.00000000000000000000 + +cylinder cylf272 1136.16230817000000000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan272 cylf272 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf273 1136.16230817000000000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan273 cylf273 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf274 1136.16230817000000000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan274 cylf274 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf275 1136.16230817000000000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan275 cylf275 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf283 336.16230817000002000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan283 cylf283 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf284 336.16230817000002000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan284 cylf284 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf288 1136.16230817000000000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan288 cylf288 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf289 1136.16230817000000000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan289 cylf289 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf297 336.16230817000002000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan297 cylf297 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf298 336.16230817000002000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan298 cylf298 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf302 1136.16230817000000000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan302 cylf302 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf303 1136.16230817000000000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan303 cylf303 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf304 936.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan304 cylf304 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf305 1136.16230817000000000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan305 cylf305 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf306 1136.16230817000000000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan306 cylf306 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf307 1036.16230817000000000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan307 cylf307 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf308 1036.16230817000000000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan308 cylf308 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf309 836.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan309 cylf309 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf310 836.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan310 cylf310 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf311 836.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan311 cylf311 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf312 836.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan312 cylf312 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf313 836.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan313 cylf313 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf314 836.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan314 cylf314 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf315 836.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan315 cylf315 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf316 836.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan316 cylf316 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf317 836.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan317 cylf317 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf318 836.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan318 cylf318 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf319 836.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan319 cylf319 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf320 836.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan320 cylf320 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf321 1036.16230817000000000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan321 cylf321 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf322 1036.16230817000000000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan322 cylf322 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf323 1036.16230817000000000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan323 cylf323 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf324 1036.16230817000000000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan324 cylf324 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf325 1036.16230817000000000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan325 cylf325 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf326 1036.16230817000000000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan326 cylf326 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf327 1036.16230817000000000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan327 cylf327 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf328 1036.16230817000000000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan328 cylf328 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf329 1036.16230817000000000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan329 cylf329 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf330 1036.16230817000000000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan330 cylf330 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf331 736.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan331 cylf331 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf332 736.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan332 cylf332 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf333 636.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan333 cylf333 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf334 636.16230816999996000000 385.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan334 cylf334 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf335 536.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan335 cylf335 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf336 536.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan336 cylf336 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf337 536.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan337 cylf337 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf338 536.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan338 cylf338 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf339 536.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan339 cylf339 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf340 536.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan340 cylf340 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf341 536.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan341 cylf341 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf342 536.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan342 cylf342 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf343 536.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan343 cylf343 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf344 536.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan344 cylf344 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf345 636.16230816999996000000 985.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan345 cylf345 0.0 6.28318530717958620000 -92.00000000000000000000 184.00000000000000000000 + +cylinder cylf346 736.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan346 cylf346 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf347 736.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan347 cylf347 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf348 736.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan348 cylf348 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf349 736.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan349 cylf349 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf350 736.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan350 cylf350 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf351 736.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan351 cylf351 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf352 736.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan352 cylf352 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf353 736.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan353 cylf353 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf354 736.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan354 cylf354 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf355 736.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan355 cylf355 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf356 936.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan356 cylf356 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf357 936.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan357 cylf357 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf358 636.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan358 cylf358 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf359 636.16230816999996000000 485.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan359 cylf359 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf360 936.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan360 cylf360 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf361 936.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan361 cylf361 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf362 636.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan362 cylf362 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf363 636.16230816999996000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan363 cylf363 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf364 936.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan364 cylf364 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf365 936.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan365 cylf365 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf366 636.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan366 cylf366 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf367 636.16230816999996000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan367 cylf367 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf368 936.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan368 cylf368 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf369 936.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan369 cylf369 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf370 636.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan370 cylf370 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf371 636.16230816999996000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan371 cylf371 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf372 436.16230817000002000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan372 cylf372 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf373 436.16230817000002000000 585.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan373 cylf373 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf374 436.16230817000002000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan374 cylf374 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf375 436.16230817000002000000 685.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan375 cylf375 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf376 436.16230817000002000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan376 cylf376 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf377 436.16230817000002000000 785.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan377 cylf377 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf378 436.16230817000002000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan378 cylf378 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf379 436.16230817000002000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan379 cylf379 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf380 636.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan380 cylf380 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf381 636.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan381 cylf381 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf382 936.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan382 cylf382 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +cylinder cylf383 936.16230816999996000000 885.74451630099998000000 92.00000000000000000000 0.00000000000000000000 -0.00000000000000011102 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 5.00000000000000000000 +mkface fcan383 cylf383 0.0 6.28318530717958620000 -86.00000000000000000000 181.00000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 1012 +checkshape result +checkprops result -s 2.60238e+006 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_081 b/tests/bugs/modalg_7/bug28091_081 new file mode 100644 index 0000000000..96dd3f99a8 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_081 @@ -0,0 +1,52 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_erkennung.brep] srcshape + +# Test +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf16 181.18212421774314000000 903.93091053446506000000 108.57178024049000000000 0.00000000000000000000 -0.17218151261965906000 0.98506523982526473000 -0.00000000000125055521 -0.98506523982526473000 -0.17218151261965906000 2.50000000000189670000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -11.00152290505177900000 22.00304581010355800000 + +cylinder cylf18 533.11166624520547000000 909.13628791183999000000 109.48851196680999000000 -0.00000000000043401693 -0.17470472026778228000 0.98462087156232680000 -0.00000000000218278728 -0.98462087156232680000 -0.17470472026778228000 2.50000000000420020000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -11.00152290504814800000 22.00304581009629600000 + +cylinder cylf20 323.29210911765227000000 597.76504495086999000000 78.34443162257500100000 0.00000000000000516687 -0.02377343429548441100 0.99971737197159793000 -0.00000000000090949470 -0.99971737197159793000 -0.02377343429548441100 2.50000000000103210000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -11.00152290504753000000 22.00304581009506000000 + +cylinder cylf22 532.96364767070031000000 212.17343598378500000000 105.39773974697000000000 0.00000000000000000000 0.16313476200477076000 0.98660379556620748000 -0.00000000000013642421 -0.98660379556620748000 0.16313476200477076000 2.49999999999914250000 +mkface fcan22 cylf22 0.0 6.28318530717958620000 -11.00152290504950200000 22.00304581009900300000 + +cylinder cylf24 183.23094404108116000000 249.77855872140998000000 99.53557513095049100000 0.00000000000002066747 0.14490639422097762000 0.98944536833211494000 -0.00000000000046611603 -0.98944536833211494000 0.14490639422097762000 2.49999999999987830000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -11.00152290504230200000 22.00304581008460400000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 15 +checkshape result +checkprops result -s 2592.17 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_091 b/tests/bugs/modalg_7/bug28091_091 new file mode 100644 index 0000000000..2c374216df --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_091 @@ -0,0 +1,98 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_facade.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf17 360.64999999999998000000 363.50000000000000000000 46.70113780300000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -4.87628283299999770000 9.75256566599999530000 + +cylinder cylf18 291.64999999999998000000 363.50000000000000000000 22.38363787700000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -11.48500773700000400000 22.97001547400000700000 + +cylinder cylf19 227.65000000000001000000 70.20000000000000300000 10.60964709900000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -10.28517150400000100000 20.57034300800000200000 + +cylinder cylf20 243.65000000000001000000 70.20000000000000300000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -3.34387928367726370000 6.68775856735452750000 + +cylinder cylf21 243.65000000000001000000 363.50000000000000000000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -3.34387928367726370000 6.68775856735452750000 + +cylinder cylf23 62.64999999999999900000 363.50000000000000000000 46.70113780300000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -4.87628283300001190000 9.75256566600002370000 + +cylinder cylf24 131.65000000000001000000 363.50000000000000000000 22.38363787700000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -11.48500773700000000000 22.97001547400000000000 + +cylinder cylf25 195.65000000000001000000 70.20000000000000300000 10.60964709900000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -10.28517150400000100000 20.57034300800000200000 + +cylinder cylf26 179.65000000000001000000 70.20000000000000300000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan26 cylf26 0.0 6.28318530717958620000 -3.34387906900000020000 6.68775813800000040000 + +cylinder cylf27 179.65000000000001000000 363.50000000000000000000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan27 cylf27 0.0 6.28318530717958620000 -3.34387906900000020000 6.68775813800000040000 + +cylinder cylf29 243.65000000000001000000 363.50000000000000000000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -3.34387928367726370000 6.68775856735452750000 + +cylinder cylf31 179.65000000000001000000 363.50000000000000000000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -3.34387906900000020000 6.68775813800000040000 + +cylinder cylf33 243.65000000000001000000 70.20000000000000300000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan33 cylf33 0.0 6.28318530717958620000 -3.34387928367726370000 6.68775856735452750000 + +cylinder cylf35 179.65000000000001000000 70.20000000000000300000 5.00403228700000020000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan35 cylf35 0.0 6.28318530717958620000 -3.34387906900000020000 6.68775813800000040000 + +cylinder cylf37 195.65000000000001000000 70.20000000000000300000 10.60964709900000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan37 cylf37 0.0 6.28318530717958620000 -10.28517150400000100000 20.57034300800000200000 + +cylinder cylf39 227.65000000000001000000 70.20000000000000300000 10.60964709900000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan39 cylf39 0.0 6.28318530717958620000 -10.28517150400000100000 20.57034300800000200000 + +cylinder cylf41 131.65000000000001000000 363.50000000000000000000 22.38363787700000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan41 cylf41 0.0 6.28318530717958620000 -11.48500773700000000000 22.97001547400000000000 + +cylinder cylf43 291.64999999999998000000 363.50000000000000000000 22.38363787700000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 2.50000000000000000000 +mkface fcan43 cylf43 0.0 6.28318530717958620000 -11.48500773700000400000 22.97001547400000700000 + +cylinder cylf45 62.64999999999999900000 363.50000000000000000000 46.70113780300000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan45 cylf45 0.0 6.28318530717958620000 -4.87628283300001190000 9.75256566600002370000 + +cylinder cylf47 360.64999999999998000000 363.50000000000000000000 46.70113780300000200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.50000000000000000000 +mkface fcan47 cylf47 0.0 6.28318530717958620000 -4.87628283299999770000 9.75256566599999530000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 80 +checkshape result +checkprops result -s 5411.44 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_101 b/tests/bugs/modalg_7/bug28091_101 new file mode 100644 index 0000000000..add3473ebd --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_101 @@ -0,0 +1,41 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_feat-bohr-test2.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf5 100.00000000000000000000 90.00000000000000000000 100.00000000000000000000 -0.00000000000000000000 -0.00000000000000000000 -1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 17.50000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -20.00000000000000000000 130.00000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 3 +checkshape result +checkprops result -s 16493.4 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_111 b/tests/bugs/modalg_7/bug28091_111 new file mode 100644 index 0000000000..adfdc4b478 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_111 @@ -0,0 +1,74 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_handlauf_kruemmer.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf1 178.77237918818000000000 263.62977252858002000000 121.34522213149999000000 0.00000000000000000000 -0.84799830400514420000 -0.52999894000309011000 0.91257304423379026000 -0.21672384368300338000 0.34675814989288717000 4.00000000000000000000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -37.50000000000565600000 37.50000000001126900000 + +cylinder cylf3 178.77237918818000000000 263.62977252858002000000 121.34522213149999000000 0.00000000000000000000 -0.84799830400514420000 -0.52999894000309011000 0.91257304423379026000 -0.21672384368300338000 0.34675814989288717000 4.00000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -37.50000000000565600000 37.50000000001126900000 + +cylinder cylf5 92.07793998599500200000 284.21853767849001000000 88.40319789165299400000 0.00000000000000000000 -0.84799830400514420000 -0.52999894000309011000 0.91257304423379026000 -0.21672384368300338000 0.34675814989288717000 4.00000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -37.50000000000213200000 37.50000000000422100000 + +cylinder cylf7 92.07793998599500200000 284.21853767849001000000 88.40319789165299400000 0.00000000000000000000 -0.84799830400514420000 -0.52999894000309011000 0.91257304423379026000 -0.21672384368300338000 0.34675814989288717000 4.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -37.50000000000213200000 37.50000000000422100000 + +cylinder cylf8 265.46681839038001000000 243.04100737867000000000 154.28724637136000000000 0.00000000000000000000 -0.84799830400514420000 -0.52999894000309011000 0.91257304423379026000 -0.21672384368300338000 0.34675814989288717000 4.00000000000000000000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -37.50000000000565600000 37.50000000001126900000 + +cylinder cylf10 265.46681839038001000000 243.04100737867000000000 154.28724637136000000000 0.00000000000000000000 -0.84799830400514420000 -0.52999894000309011000 0.91257304423379026000 -0.21672384368300338000 0.34675814989288717000 4.00000000000000000000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -37.50000000000565600000 37.50000000001126900000 + +cylinder cylf13 12.50000000000000000000 125.38333636146000000000 21.37167791462799800000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838045930000 -0.04090870913653880300 4.00000000000000000000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +cylinder cylf15 12.50000000000000000000 125.38333636146000000000 21.37167791462799800000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838045930000 -0.04090870913653880300 4.00000000000000000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +cylinder cylf16 12.50000000000000000000 220.30381075760999000000 25.25800528259799900000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838045930000 -0.04090870913653880300 4.00000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +cylinder cylf18 12.50000000000000000000 220.30381075760999000000 25.25800528259799900000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838045930000 -0.04090870913653880300 4.00000000000000000000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +cylinder cylf19 12.50000000000000000000 30.46286196532399900000 17.48535054665800100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838045930000 -0.04090870913653880300 4.00000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +cylinder cylf21 12.50000000000000000000 30.46286196532399900000 17.48535054665800100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.99916288838045930000 -0.04090870913653880300 4.00000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -37.50000000000000000000 37.50000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 48 +checkshape result +checkprops result -s 22619.5 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_121 b/tests/bugs/modalg_7/bug28091_121 new file mode 100644 index 0000000000..13a4a6bea8 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_121 @@ -0,0 +1,110 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_kehlbohletest_ursprung.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf13 1736.12448682099990000000 14.21018183879000000000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000090000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf16 1736.12448682099990000000 14.21018183879000100000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf17 1686.12448682099990000000 14.21018183879000000000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000090000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf20 1686.12448682099990000000 14.21018183879000100000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf21 1636.12448682099990000000 14.21018183879000000000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000090000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf24 1636.12448682099990000000 14.21018183879000100000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf25 1586.12448682099970000000 14.21018183879000000000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000090000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf28 1586.12448682100010000000 14.21018183879000100000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan28 cylf28 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf29 1536.12448682100010000000 14.21018183879000000000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000090000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf32 1536.12448682100010000000 14.21018183879000100000 20.49742474627500100000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan32 cylf32 0.0 6.28318530717958620000 -30.00000000000000000000 60.00000000000000000000 + +cylinder cylf33 20.14835165769899900000 3283.32128306100000000000 20.51156429655900100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan33 cylf33 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf36 20.14835165769899900000 3283.32128306100000000000 20.51156429655900500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000088818 4.00000000000000000000 +mkface fcan36 cylf36 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf37 20.14835165769899900000 3193.32128306100000000000 20.51156429655900100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan37 cylf37 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf40 20.14835165769899900000 3193.32128306100000000000 20.51156429655900500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000088818 4.00000000000000000000 +mkface fcan40 cylf40 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf41 20.14835165769899900000 3103.32128306100000000000 20.51156429655900100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan41 cylf41 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf44 20.14835165769899900000 3103.32128306100000000000 20.51156429655900500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000088818 4.00000000000000000000 +mkface fcan44 cylf44 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf45 20.14835165769899900000 3013.32128306100000000000 20.51156429655900100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan45 cylf45 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf48 20.14835165769899900000 3013.32128306100000000000 20.51156429655900500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000088818 4.00000000000000000000 +mkface fcan48 cylf48 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf49 20.14835165769899900000 2923.32128306100000000000 20.51156429655900100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan49 cylf49 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf52 20.14835165769899900000 2923.32128306100000000000 20.51156429655900500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000088818 4.00000000000000000000 +mkface fcan52 cylf52 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf53 20.14835165769899900000 2833.32128306100000000000 20.51156429655900100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan53 cylf53 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf56 20.14835165769899900000 2833.32128306100000000000 20.51156429655900500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000088818 4.00000000000000000000 +mkface fcan56 cylf56 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf57 20.14835165769899900000 2743.32128306100000000000 20.51156429655900100000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 4.00000000000000000000 +mkface fcan57 cylf57 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +cylinder cylf60 20.14835165769899900000 2743.32128306100000000000 20.51156429655900500000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000088818 4.00000000000000000000 +mkface fcan60 cylf60 0.0 6.28318530717958620000 -30.00000000000000400000 60.00000000000000700000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 96 +checkshape result +checkprops result -s 54286.7 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_131 b/tests/bugs/modalg_7/bug28091_131 new file mode 100644 index 0000000000..82320be17d --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_131 @@ -0,0 +1,56 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_LG3.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf1 -0.00000000000000710543 187.50000000000000000000 28.25000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 3.25000000000000000000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -56.50000000000011400000 113.00000000000011000000 + +cylinder cylf2 -0.00000000000004263256 187.50000000000000000000 28.25000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 3.25000000000000000000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -56.50000000000007800000 113.00000000000016000000 + +cylinder cylf3 22.00000000000000000000 220.00000000000000000000 -0.00000000000004263256 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 3.25000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -56.50000000000011400000 113.00000000000011000000 + +cylinder cylf4 22.00000000000000000000 220.00000000000000000000 -0.00000000000007815970 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 -0.00000000000000000000 0.00000000000000000000 3.25000000000000000000 +mkface fcan4 cylf4 0.0 6.28318530717958620000 -56.50000000000007800000 113.00000000000016000000 + +cylinder cylf5 34.50000000000000000000 155.00000000000000000000 -0.00000000000004263256 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 3.25000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -56.50000000000011400000 113.00000000000011000000 + +cylinder cylf6 34.50000000000000000000 155.00000000000000000000 -0.00000000000007815970 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 -0.00000000000000000000 0.00000000000000000000 3.25000000000000000000 +mkface fcan6 cylf6 0.0 6.28318530717958620000 -56.50000000000007800000 113.00000000000016000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 24 +checkshape result +checkprops result -s 20767.5 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_141 b/tests/bugs/modalg_7/bug28091_141 new file mode 100644 index 0000000000..f7f360f836 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_141 @@ -0,0 +1,41 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_Loch_auf_Kante.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf10 62.13887064297946200000 17.24482604878895500000 19.00000000000000000000 -0.00000000000001047116 -0.00000000000000841432 -1.00000000000000000000 0.00000000000032840511 -1.00000000000000000000 0.00000000000000841432 4.67341180101795570000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -19.00000000000000000000 38.00000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 3 +checkshape result +checkprops result -s 1673.74 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_151 b/tests/bugs/modalg_7/bug28091_151 new file mode 100644 index 0000000000..64f4e7583d --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_151 @@ -0,0 +1,185 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_PC23RETROFITVS5.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf2 82.00000000000000000000 65.50000000000000000000 12.00000000000000000000 -0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 -0.00000000000000049343 0.00000000000000000000 1.00000000000000000000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -12.00000000000000000000 12.00000000000000000000 + +cylinder cylf3 20.00000000000000000000 36.00000000000000000000 18.50000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 2.00000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -42.22425723475373600000 34.05448142751686900000 + +cylinder cylf5 82.00000000000000000000 0.00000000000000000000 23.25000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.50000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -0.34999999999999998000 0.69999999999999996000 + +cylinder cylf7 5.00000000000000000000 36.00000000000000000000 30.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.70710678118654757000 0.00000000000000000000 0.70710678118654757000 5.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -108.00000000000000000000 108.00000000000000000000 + +cylinder cylf10 9.50000000000000000000 7.50000000000000000000 20.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 -0.00000000000000008449 5.50000000000000000000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -22.50000000000000000000 22.50000000000000000000 + +cylinder cylf12 39.50000000000000000000 7.50000000000000000000 20.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 -0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 -0.00000000000000008449 5.50000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -22.50000000000000000000 22.50000000000000000000 + +cylinder cylf14 91.00000000000000000000 4.09999999999999960000 30.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 3.00000000000000000000 +mkface fcan14 cylf14 0.0 6.28318530717958620000 -12.29999999999999900000 12.29999999999999900000 + +cylinder cylf16 73.00000000000000000000 4.09999999999999960000 5.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 3.00000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -12.29999999999999900000 12.29999999999999900000 + +cylinder cylf18 91.00000000000000000000 4.09999999999999960000 5.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 3.00000000000000000000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -12.29999999999999900000 12.29999999999999900000 + +cylinder cylf20 73.00000000000000000000 4.09999999999999960000 30.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 3.00000000000000000000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -12.29999999999999900000 12.29999999999999900000 + +cylinder cylf23 82.00000000000000000000 0.00000000000000000000 23.25000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -0.34999999999999998000 0.69999999999999996000 + +cylinder cylf25 9.50000000000000000000 64.50000000000000000000 20.00000000000000000000 -0.00000000000000019032 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000019032 0.00000000000000000000 5.50000000000000000000 +mkface fcan25 cylf25 0.0 6.28318530717958620000 -22.50000000000000000000 22.50000000000000000000 + +cylinder cylf27 39.50000000000000000000 64.50000000000000000000 20.00000000000000000000 -0.00000000000000019032 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000019032 0.00000000000000000000 5.50000000000000000000 +mkface fcan27 cylf27 0.0 6.28318530717958620000 -22.50000000000000000000 22.50000000000000000000 + +cylinder cylf29 73.00000000000000000000 67.90000000000000600000 5.00000000000000000000 -0.00000000000000019032 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000019032 0.00000000000000000000 3.00000000000000000000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -12.29999999999999700000 12.29999999999999000000 + +cylinder cylf31 91.00000000000000000000 67.90000000000000600000 5.00000000000000000000 -0.00000000000000019032 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000019032 0.00000000000000000000 3.00000000000000000000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -12.29999999999999700000 12.29999999999999000000 + +cylinder cylf33 73.00000000000000000000 67.90000000000000600000 30.00000000000000000000 -0.00000000000000019032 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000019032 0.00000000000000000000 3.00000000000000000000 +mkface fcan33 cylf33 0.0 6.28318530717958620000 -12.29999999999999700000 12.29999999999999000000 + +cylinder cylf35 91.00000000000000000000 67.90000000000000600000 30.00000000000000000000 -0.00000000000000019032 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000019032 0.00000000000000000000 3.00000000000000000000 +mkface fcan35 cylf35 0.0 6.28318530717958620000 -12.29999999999999700000 12.29999999999999000000 + +cylinder cylf37 82.00000000000000000000 72.00000000000000000000 23.25000000000000000000 -0.00000000000000014081 1.00000000000000000000 0.00000000000000012246 -1.00000000000000000000 -0.00000000000000014081 -0.00000000000000000000 6.00000000000000000000 +mkface fcan37 cylf37 0.0 6.28318530717958620000 -0.69999999999998863000 0.34999999999999432000 + +cylinder cylf38 82.00000000000000000000 72.00000000000000000000 23.25000000000000000000 -0.00000000000000014081 1.00000000000000000000 0.00000000000000012246 -1.00000000000000000000 -0.00000000000000014081 -0.00000000000000000000 4.50000000000000000000 +mkface fcan38 cylf38 0.0 6.28318530717958620000 -0.69999999999998863000 0.34999999999999432000 + +cylinder cylf41 64.52279384289200000000 53.77612102372499700000 23.25000000000000000000 0.69216658047959478000 0.72173778123857746000 -0.00000000000000009162 -0.72173778123857746000 0.69216658047959478000 0.00000000000000000000 2.00000000000000000000 +mkface fcan41 cylf41 0.0 6.28318530717958620000 -69.31899588837893600000 75.42127531553995800000 + +cylinder cylf42 6.00000000000000000000 36.00000000000000000000 18.50000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 4.28300000000000040000 +mkface fcan42 cylf42 0.0 6.28318530717958620000 -14.00000000000000000000 16.00000000000000000000 + +cylinder cylf43 44.00000000000000000000 36.00000000000000000000 16.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 7.47499999999999960000 +mkface fcan43 cylf43 0.0 6.28318530717958620000 -38.00000000000000000000 43.00000000000000000000 + +cylinder cylf45 64.52279384289200000000 18.22387897627500000000 23.25000000000000000000 -0.69216658047959478000 0.72173778123857746000 0.00000000000000018001 -0.72173778123857746000 -0.69216658047959478000 -0.00000000000000008477 2.00000000000000000000 +mkface fcan45 cylf45 0.0 6.28318530717958620000 -75.41033473486599800000 69.31352559804199100000 + +cylinder cylf46 57.00000000000000000000 3.50000000000000000000 15.50000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 5.72250000000000010000 +mkface fcan46 cylf46 0.0 6.28318530717958620000 -10.50000000000000000000 10.50000000000000000000 + +cylinder cylf48 57.00000000000000000000 68.50000000000000000000 15.50000000000000000000 -0.00000000000000019032 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000019032 0.00000000000000000000 5.72250000000000010000 +mkface fcan48 cylf48 0.0 6.28318530717958620000 -10.50000000000000000000 10.50000000000000000000 + +cylinder cylf50 82.00000000000000000000 70.75000000000000000000 12.00000000000000000000 -0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 -0.00000000000000049343 0.00000000000000000000 4.50000000000000000000 +mkface fcan50 cylf50 0.0 6.28318530717958620000 -3.75000000000000000000 3.75000000000000000000 + +cylinder cylf52 95.00000000000000000000 57.50000000000000000000 15.50000000000000000000 -1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 -1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan52 cylf52 0.0 6.28318530717958620000 -34.22746117386799400000 50.11373058693399700000 + +cylinder cylf55 69.75000000000000000000 57.50000000000000000000 15.50000000000000000000 -1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 -1.00000000000000000000 0.00000000000000000000 3.32350000000000010000 +mkface fcan55 cylf55 0.0 6.28318530717958620000 -8.49699999999600660000 9.12349999999800330000 + +cylinder cylf57 68.38062474979899700000 57.50000000000000000000 15.50000000000000000000 -1.00000000000000000000 -0.00000000000000007041 -0.00000000000001537232 -0.00000000000001537232 0.00000000000000000000 1.00000000000000000000 3.25000000000000000000 +mkface fcan57 cylf57 0.0 6.28318530717958620000 -0.15812575060201084000 5.95812575060101320000 + +cylinder cylf59 61.06803398874900100000 57.50000000000000000000 15.50000000000000000000 -1.00000000000000000000 -0.00000000000000007041 -0.00000000000001537232 -0.00000000000001537232 0.00000000000000000000 1.00000000000000000000 2.00000000000100010000 +mkface fcan59 cylf59 0.0 6.28318530717958620000 -5.49589803375004490000 5.49589803375008050000 + +cylinder cylf61 109.50000000000000000000 57.50000000000000000000 15.50000000000000000000 -1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 -1.00000000000000000000 0.00000000000000000000 7.47499999999999960000 +mkface fcan61 cylf61 0.0 6.28318530717958620000 -22.50000000000000000000 22.50000000000000000000 + +cylinder cylf62 82.00000000000000000000 1.25000000000000000000 12.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 4.50000000000000000000 +mkface fcan62 cylf62 0.0 6.28318530717958620000 -3.75000000000000000000 3.75000000000000000000 + +cylinder cylf64 82.00000000000000000000 6.50000000000000000000 12.00000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 1.00000000000000000000 +mkface fcan64 cylf64 0.0 6.28318530717958620000 -12.00000000000000000000 12.00000000000000000000 + +cylinder cylf66 95.00000000000000000000 14.50000000000000000000 15.50000000000000000000 1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan66 cylf66 0.0 6.28318530717958620000 -50.11373058693399700000 34.22746117386799400000 + +cylinder cylf69 69.75000000000000000000 14.50000000000000000000 15.50000000000000000000 1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 1.00000000000000000000 0.00000000000000000000 3.32350000000000010000 +mkface fcan69 cylf69 0.0 6.28318530717958620000 -9.12349999999800330000 8.49699999999600660000 + +cylinder cylf71 68.38062474979899700000 14.50000000000000000000 15.50000000000000000000 -1.00000000000000000000 -0.00000000000000007041 -0.00000000000001537232 -0.00000000000001537232 0.00000000000000000000 1.00000000000000000000 3.25000000000000000000 +mkface fcan71 cylf71 0.0 6.28318530717958620000 -0.15812575060201084000 5.95812575060101320000 + +cylinder cylf73 61.06803398874900100000 14.50000000000000000000 15.50000000000000000000 -1.00000000000000000000 -0.00000000000000007041 -0.00000000000001537232 -0.00000000000001537232 0.00000000000000000000 1.00000000000000000000 2.00000000000100010000 +mkface fcan73 cylf73 0.0 6.28318530717958620000 -5.49589803375004490000 5.49589803375008050000 + +cylinder cylf75 109.50000000000000000000 14.50000000000000000000 15.50000000000000000000 1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 1.00000000000000000000 0.00000000000000000000 7.47499999999999960000 +mkface fcan75 cylf75 0.0 6.28318530717958620000 -22.50000000000000000000 22.50000000000000000000 + +cylinder cylf76 57.00000000000000000000 138.95682782791999000000 15.50000000000000000000 0.00000000000000049343 -1.00000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000049343 0.00000000000000000000 3.00000000000000000000 +mkface fcan76 cylf76 0.0 6.28318530717958620000 20.86435693383998600000 185.04929872201001000000 + +cylinder cylf77 61.06803398874900100000 36.00000000000000000000 15.50000000000000000000 -1.00000000000000000000 -0.00000000000000007041 -0.00000000000001537232 -0.00000000000001537232 0.00000000000000000000 1.00000000000000000000 2.00000000000100010000 +mkface fcan77 cylf77 0.0 6.28318530717958620000 -5.49589803375004490000 5.49589803375008050000 + +cylinder cylf79 68.38062474979899700000 36.00000000000000000000 15.50000000000000000000 -1.00000000000000000000 -0.00000000000000007041 -0.00000000000001537232 -0.00000000000001537232 0.00000000000000000000 1.00000000000000000000 3.25000000000000000000 +mkface fcan79 cylf79 0.0 6.28318530717958620000 -0.06979923960599876400 5.91396249510300720000 + +cylinder cylf81 83.00000000000000000000 24.00000000000000000000 35.00000000000000000000 0.00000000000000000000 0.66913060635913257000 -0.74314482547714722000 -0.00000000000000027988 -0.74314482547714722000 -0.66913060635913257000 1.25000000000000000000 +mkface fcan81 cylf81 0.0 6.28318530717958620000 -22.14842052283000800000 40.87411100446101400000 + +cylinder cylf82 83.00000000000000000000 48.00000000000000000000 35.00000000000000000000 0.00000000000000000000 0.66913060635913257000 0.74314482547714722000 -0.00000000000000027988 0.74314482547714722000 -0.66913060635913257000 1.25000000000000000000 +mkface fcan82 cylf82 0.0 6.28318530717958620000 -40.87146844009299700000 22.14709924064600300000 + +cylinder cylf83 83.00000000000000000000 24.00000000000000000000 35.00000000000000000000 0.00000000000000000000 0.66913060635913257000 -0.74314482547714722000 -0.00000000000000027988 -0.74314482547714722000 -0.66913060635913257000 1.25000000000000000000 +mkface fcan83 cylf83 0.0 6.28318530717958620000 -22.14842052283000800000 40.87411100446101400000 + +cylinder cylf84 83.00000000000000000000 48.00000000000000000000 35.00000000000000000000 0.00000000000000000000 0.66913060635913257000 0.74314482547714722000 -0.00000000000000027988 0.74314482547714722000 -0.66913060635913257000 1.25000000000000000000 +mkface fcan84 cylf84 0.0 6.28318530717958620000 -40.87146844009299700000 22.14709924064600300000 + +cylinder cylf85 95.00000000000000000000 36.00000000000000000000 15.50000000000000000000 1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 1.00000000000000000000 0.00000000000000000000 6.00000000000000000000 +mkface fcan85 cylf85 0.0 6.28318530717958620000 -50.11373058693399700000 34.22746117386799400000 + +cylinder cylf88 69.75000000000000000000 36.00000000000000000000 15.50000000000000000000 1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 1.00000000000000000000 0.00000000000000000000 3.32350000000000010000 +mkface fcan88 cylf88 0.0 6.28318530717958620000 -9.12349999999800330000 8.49699999999600660000 + +cylinder cylf90 109.50000000000000000000 36.00000000000000000000 15.50000000000000000000 1.00000000000000000000 0.00000000000000007041 0.00000000000000000000 -0.00000000000000007041 1.00000000000000000000 0.00000000000000000000 7.47499999999999960000 +mkface fcan90 cylf90 0.0 6.28318530717958620000 -22.50000000000000000000 22.50000000000000000000 + +cylinder cylf91 112.00000000000000000000 36.00000000000000000000 30.00000000000000000000 0.00000000000000007041 -1.00000000000000000000 0.00000000000000000000 0.70710678118654757000 0.00000000000000004979 0.70710678118654757000 5.00000000000000000000 +mkface fcan91 cylf91 0.0 6.28318530717958620000 -108.00000000000000000000 108.00000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 180 +checkshape result +checkprops result -s 57927.9 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_161 b/tests/bugs/modalg_7/bug28091_161 new file mode 100644 index 0000000000..0691ad6a32 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_161 @@ -0,0 +1,54 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_PL004-LegTimber1.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf24 48.78457060509499900000 165.18622162966000000000 1.00000000000000000000 -0.28034446925607709000 -0.95989946273426396000 0.00000000000000000000 -0.67875141935661720000 0.19823347527908516000 -0.70710678118665637000 1.00000000000000000000 +mkface fcan24 cylf24 0.0 6.28318530717958620000 -1223.51766638117530000000 867.32630001040116000000 + +cylinder cylf29 17.49915534244100000000 2.75000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.75000000000000000000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -17.25000000000000000000 34.50000000000000000000 + +cylinder cylf30 17.49915534244100000000 0.00000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 7.00000000000000000000 +mkface fcan30 cylf30 0.0 6.28318530717958620000 -0.50000000000001998000 1.00000000000004000000 + +cylinder cylf34 72.10916478122800300000 1.00000000000000000000 42.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.70710678118654757000 0.70710678118654757000 1.00000000000000000000 +mkface fcan34 cylf34 0.0 6.28318530717958620000 16.79393532711199600000 97.51692484838299900000 + +cylinder cylf39 183.95619993240999000000 481.13794094135000000000 42.00000000000000000000 -0.30754403962399746000 -0.95153384789599227000 0.00000000000000000000 0.67283603637557454000 -0.21746647593156482000 0.70710678118676873000 1.00000000000000000000 +mkface fcan39 cylf39 0.0 6.28318530717958620000 -901.92092371323815000000 1207.30514789491330000000 + +sewing sh srcshape +fixshape sh sh +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 17 +checkshape result +checkprops result -s 28507.5 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_171 b/tests/bugs/modalg_7/bug28091_171 new file mode 100644 index 0000000000..50c314657a --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_171 @@ -0,0 +1,100 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +puts "TODO OCC28091 ALL: Faulty shapes in variables faulty_1 to faulty_4" + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_PL004-LegTimber.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf1 174.35549121620761000000 545.72901777396430000000 9.67500000000000070000 0.95153384789599194000 -0.30754403962399840000 0.00000000000000000000 -0.21746647593191884000 -0.67283603637666756000 -0.70710678118561976000 3.17500000000372570000 +mkface fcan1 cylf1 0.0 6.28318530717958620000 -29.50000000000546400000 59.00000000001092800000 + +cylinder cylf7 202.42573972914468000000 536.65646860506354000000 33.32500000000000300000 -0.95153384789628448000 0.30754403962309296000 0.00000000000000000000 -0.21746647593121668000 -0.67283603637668277000 0.70710678118582115000 3.17500000000283980000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -29.50000000000544300000 59.00000000001088600000 + +cylinder cylf8 182.60536007912032000000 571.25391324377097000000 21.50000000000000000000 -0.95153384789600015000 0.30754403962397237000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 12.00000000000000200000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -1.50000000000697690000 3.00000000001395370000 + +cylinder cylf10 204.13344285278029000000 637.86128259650104000000 21.50000000000000000000 -0.95153384789598949000 0.30754403962400562000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 12.00000000000000200000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -1.50000000000385760000 3.00000000000771520000 + +cylinder cylf12 202.70614208093605000000 638.32259865593596000000 21.50000000000000000000 -0.95153384789599138000 0.30754403962399984000 0.00000000000000000000 -0.00000000000000067206 -0.00000000000000207932 1.00000000000000000000 4.00000000000000000000 +mkface fcan12 cylf12 0.0 6.28318530717958620000 -13.94379826353244100000 27.88759652706488300000 + +cylinder cylf14 187.20782183225214000000 643.33179094814761000000 21.50000000000000000000 0.95153384789594098000 -0.30754403962415555000 0.00000000000000000000 -0.30754403962415555000 -0.95153384789594109000 0.00000000000000000000 6.00000000000202330000 +mkface fcan14 cylf14 0.0 6.28318530717958620000 -0.34401364011203833000 0.68802728022407666000 + +cylinder cylf15 181.17805930727604000000 571.71522930320589000000 21.50000000000000000000 -0.95153384789599194000 0.30754403962399779000 0.00000000000000000000 -0.00000000000000067206 -0.00000000000000207932 1.00000000000000000000 4.00000000000000000000 +mkface fcan15 cylf15 0.0 6.28318530717958620000 -11.95120398359083000000 23.90240796718165900000 + +cylinder cylf17 167.57575996108213000000 576.11161110123760000000 21.50000000000000000000 0.95153384789603768000 -0.30754403962385635000 0.00000000000000000000 -0.30754403962385635000 -0.95153384789603768000 0.00000000000000000000 6.00000000000263430000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -0.34401364011200330000 0.68802728022400661000 + +cylinder cylf18 228.18375988055999000000 671.50000000000000000000 6.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.70710678118654757000 0.70710678118654757000 0.50000000000000000000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -42.80642219609004000000 46.07887396876003500000 + +cylinder cylf23 228.18375988055999000000 671.50000000000000000000 37.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.70710678118654757000 -0.70710678118654757000 0.50000000000000000000 +mkface fcan23 cylf23 0.0 6.28318530717958620000 -46.07887396876103000000 42.80642219609202900000 + +cylinder cylf29 183.95619993240999000000 481.13794094135000000000 1.00000000000000000000 -0.30754403962399746000 -0.95153384789599227000 0.00000000000000000000 0.67283603637557454000 -0.21746647593156482000 -0.70710678118676873000 1.00000000000000000000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -901.92092371323724000000 1207.30514789492010000000 + +cylinder cylf31 180.70729562234001000000 671.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.70710678118654757000 -0.70710678118654757000 1.00000000000000000000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -31.57066316613799000000 111.67569084111099000000 + +cylinder cylf33 48.78457060509499900000 165.18622162966000000000 1.00000000000000000000 -0.28034446925607709000 -0.95989946273426396000 0.00000000000000000000 -0.67875141935661720000 0.19823347527908516000 -0.70710678118665637000 1.00000000000000000000 +mkface fcan33 cylf33 0.0 6.28318530717958620000 -1223.51766638117530000000 867.32630001040116000000 + +cylinder cylf35 72.10916478122800300000 1.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.70710678118654757000 -0.70710678118654757000 1.00000000000000000000 +mkface fcan35 cylf35 0.0 6.28318530717958620000 -97.51692484838000000000 -16.79393532710000200000 + +cylinder cylf40 17.49915534244100000000 2.75000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 4.75000000000000000000 +mkface fcan40 cylf40 0.0 6.28318530717958620000 -17.25000000000000000000 34.50000000000000000000 + +cylinder cylf41 17.49915534244100000000 0.00000000000000000000 21.50000000000000000000 0.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 7.00000000000000000000 +mkface fcan41 cylf41 0.0 6.28318530717958620000 -0.50000000000001998000 1.00000000000004000000 + +cylinder cylf45 72.10916478122800300000 1.00000000000000000000 42.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.70710678118654757000 0.70710678118654757000 1.00000000000000000000 +mkface fcan45 cylf45 0.0 6.28318530717958620000 16.79393532711199600000 97.51692484838299900000 + +cylinder cylf47 48.78457060509499900000 165.18622162966000000000 42.00000000000000000000 -0.28034446925607709000 -0.95989946273426396000 0.00000000000000000000 -0.67875141935661720000 0.19823347527908516000 0.70710678118665637000 1.00000000000000000000 +mkface fcan47 cylf47 0.0 6.28318530717958620000 -1223.51766638117620000000 867.32630001040764000000 + +cylinder cylf49 180.70729562234001000000 671.00000000000000000000 42.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.70710678118654757000 0.70710678118654757000 1.00000000000000000000 +mkface fcan49 cylf49 0.0 6.28318530717958620000 -111.67569084110002000000 31.57066316614000800000 + +cylinder cylf51 183.95619993240999000000 481.13794094135000000000 42.00000000000000000000 -0.30754403962399746000 -0.95153384789599227000 0.00000000000000000000 0.67283603637557454000 -0.21746647593156482000 0.70710678118676873000 1.00000000000000000000 +mkface fcan51 cylf51 0.0 6.28318530717958620000 -901.92092371323815000000 1207.30514789491330000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 66 +checkshape result +checkprops result -s 64002.9 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_181 b/tests/bugs/modalg_7/bug28091_181 new file mode 100644 index 0000000000..f133072419 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_181 @@ -0,0 +1,97 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_Platte_mit_Minifix.brep] srcshape + +# Test +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf7 0.00000000000000000000 40.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 0.00000000000000142109 1.00000000000000000000 4.99999999999999910000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf9 0.00000000000000000000 515.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000002273737 1.00000000000000000000 4.99999999999999910000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf11 0.00000000000000000000 277.50000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000001136868 1.00000000000000000000 4.99999999999999910000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf13 0.00000000000000000000 490.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000001894781 1.00000000000000000000 6.00000000000000000000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -16.70849737787099800000 33.41699475574199600000 + +cylinder cylf14 27.29150262212899800000 490.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 6.00000000000000000000 +mkface fcan14 cylf14 0.0 6.28318530717958620000 -2.70849737787100150000 5.41699475574200310000 + +cylinder cylf16 27.29150262212899800000 490.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 6.00000000000000000000 +mkface fcan16 cylf16 0.0 6.28318530717958620000 -2.70849737787100150000 5.41699475574200310000 + +cylinder cylf17 21.99999999999999600000 490.00000000000000000000 38.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 1.00000000000000000000 -0.00000000000000000000 0.00000000000000000000 7.99999999999999730000 +mkface fcan17 cylf17 0.0 6.28318530717958620000 -26.00000000000000000000 52.00000000000000000000 + +cylinder cylf18 0.00000000000000000000 65.00000000000001400000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000473695 1.00000000000000000000 5.99999999999999560000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -16.70849737787099800000 33.41699475574199600000 + +cylinder cylf19 27.29150262212899800000 65.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 6.00000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -2.70849737787100150000 5.41699475574200310000 + +cylinder cylf21 27.29150262212899800000 65.00000000000000000000 19.00000000000000000000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 6.00000000000000000000 +mkface fcan21 cylf21 0.0 6.28318530717958620000 -2.70849737787100150000 5.41699475574200310000 + +cylinder cylf22 21.99999999999999600000 65.00000000000001400000 38.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 1.00000000000000000000 -0.00000000000000355271 0.00000000000000000000 7.99999999999999290000 +mkface fcan22 cylf22 0.0 6.28318530717958620000 -26.00000000000000000000 52.00000000000000000000 + +cylinder cylf29 577.99999999999989000000 490.00000000000006000000 38.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 1.00000000000000000000 -0.00000000000000710543 0.00000000000000000000 7.99999999999998130000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -26.00000000000000000000 52.00000000000000000000 + +cylinder cylf30 600.00000000000000000000 490.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 -0.00000000000001894781 -1.00000000000000000000 6.00000000000000000000 +mkface fcan30 cylf30 0.0 6.28318530717958620000 -16.70849737788012100000 33.41699475576024300000 + +cylinder cylf31 572.70849737787000000000 490.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 6.00000000000000000000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -2.70849737787000320000 5.41699475574000640000 + +cylinder cylf35 577.99999999999989000000 65.00000000000005700000 38.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 1.00000000000000000000 -0.00000000000000888178 0.00000000000000000000 7.99999999999998130000 +mkface fcan35 cylf35 0.0 6.28318530717958620000 -26.00000000000000000000 52.00000000000000000000 + +cylinder cylf36 600.00000000000000000000 65.00000000000001400000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 -0.00000000000000473695 -1.00000000000000000000 5.99999999999999560000 +mkface fcan36 cylf36 0.0 6.28318530717958620000 -16.70849737788012100000 33.41699475576024300000 + +cylinder cylf37 572.70849737787000000000 65.00000000000000000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 6.00000000000000000000 +mkface fcan37 cylf37 0.0 6.28318530717958620000 -2.70849737787000320000 5.41699475574000640000 + +cylinder cylf43 600.00000000000000000000 277.50000000000006000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 -0.00000000000002273737 -1.00000000000000000000 4.99999999999997960000 +mkface fcan43 cylf43 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf45 600.00000000000000000000 40.00000000000000700000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 -0.00000000000000000000 -1.00000000000000000000 4.99999999999999640000 +mkface fcan45 cylf45 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +cylinder cylf47 600.00000000000000000000 515.00000000000011000000 19.00000000000000000000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 -0.00000000000004547474 -1.00000000000000000000 4.99999999999996090000 +mkface fcan47 cylf47 0.0 6.28318530717958620000 -20.00000000000000000000 40.00000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 90 +checkshape result +checkprops result -s 36389.3 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_191 b/tests/bugs/modalg_7/bug28091_191 new file mode 100644 index 0000000000..6899139abd --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_191 @@ -0,0 +1,188 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_RB11_PG_00441_02.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf3 273.00373126821000000000 2040.50846494600000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf4 303.00373126821000000000 2022.00002092699990000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan4 cylf4 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf5 321.51217528708997000000 1992.00002092699990000000 0.00000000000099475983 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -9.00000000000200020000 18.00000000000101600000 + +cylinder cylf7 391.39517868869001000000 1992.00002092699990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan7 cylf7 0.0 6.28318530717958620000 -9.00000000000098410000 18.00000000000196800000 + +cylinder cylf8 409.90362270756998000000 2022.00002092699990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf9 439.90162270757003000000 2040.51170631800010000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf13 444.80362270723998000000 1816.99641939200000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 247.00362246442000000000 +mkface fcan13 cylf13 0.0 6.28318530717958620000 -9.00000000000211390000 18.00000000000115800000 + +cylinder cylf18 668.51541665875004000000 1816.90211324900000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan18 cylf18 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf19 650.00373126815998000000 1786.90411324899990000000 0.00000000000099475983 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan19 cylf19 0.0 6.28318530717958620000 -9.00000000000100360000 18.00000000000200700000 + +cylinder cylf20 620.00573126816005000000 1768.39242785900000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan20 cylf20 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf27 628.51206672645003000000 1084.00002092799990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan27 cylf27 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf28 610.00362270757000000000 1054.00002092799990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan28 cylf28 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf29 580.00362270757000000000 1035.49157690900010000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan29 cylf29 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf31 580.00362270757000000000 1028.50846494700000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan31 cylf31 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf32 610.00362270757000000000 1010.00002092800000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan32 cylf32 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf33 628.51206672645003000000 980.00002092783996000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan33 cylf33 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf40 620.00573126816005000000 295.60761399757001000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan40 cylf40 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf41 650.00373126815998000000 277.09592860698001000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan41 cylf41 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf42 668.51541665875004000000 247.09792860697999000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan42 cylf42 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf46 444.80362270723998000000 247.00362246442000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 247.00362246442000000000 +mkface fcan46 cylf46 0.0 6.28318530717958620000 -8.99999999999998050000 17.99999999999996100000 + +cylinder cylf49 70.00373126716499400000 23.49157690663000200000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan49 cylf49 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf50 40.00373126833900300000 42.00002092741600300000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan50 cylf50 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf51 21.49528724945900000000 72.00002092741600300000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan51 cylf51 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf56 52.70369978610200000000 1977.00002092699990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan56 cylf56 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf59 89.89451851081800300000 1992.00002092699990000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan59 cylf59 0.0 6.28318530717958620000 -9.00000000000100540000 18.00000000000201100000 + +cylinder cylf60 108.40296252969000000000 2022.00002092699990000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 5.25000000000000000000 +mkface fcan60 cylf60 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf61 138.40296252969000000000 2040.50846494600000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 30.00000000000000000000 +mkface fcan61 cylf61 0.0 6.28318530717958620000 -9.00000000000000000000 18.00000000000000000000 + +cylinder cylf64 141.39545867509000000000 1385.40740876199990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 10.00000000000000000000 +mkface fcan64 cylf64 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf66 476.39545867509003000000 1385.40740876199990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 10.00000000000000000000 +mkface fcan66 cylf66 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf68 476.39545867509003000000 1907.40740876199990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 10.00000000000000000000 +mkface fcan68 cylf68 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf70 141.39545867509000000000 1907.40740876199990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 10.00000000000000000000 +mkface fcan70 cylf70 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf70 141.39545867509000000000 1907.40740876199990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 10.00000000000000000000 +mkface fcan70 cylf70 0.0 6.28318530717958620000 -9.00000000000204640000 18.00000000000102300000 + +cylinder cylf72 685.80724541490997000000 1792.90411324899990000000 0.00000000000099475983 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan72 cylf72 0.0 6.28318530717958620000 -9.00000000000100010000 18.00000000000200000000 + +cylinder cylf73 644.00374541490999000000 1060.00002092799990000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan73 cylf73 0.0 6.28318530717958620000 -9.00000000000203390000 18.00000000000099800000 + +cylinder cylf74 644.00374541490999000000 1004.00002092800000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan74 cylf74 0.0 6.28318530717958620000 -9.00000000000202680000 18.00000000000098400000 + +cylinder cylf75 685.80724541490997000000 271.09592860698001000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan75 cylf75 0.0 6.28318530717958620000 -9.00000000000202680000 18.00000000000098400000 + +cylinder cylf76 46.00373126605499900000 6.00000000000000000000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan76 cylf76 0.0 6.28318530717958620000 -9.00000000000401630000 18.00000000000197900000 + +cylinder cylf77 6.00000000000000000000 48.00002092741600300000 0.00000000000201794137 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan77 cylf77 0.0 6.28318530717958620000 -9.00000000000401630000 18.00000000000197900000 + +cylinder cylf78 40.70369978610200000000 2016.00002092699990000000 0.00000000000099475983 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan78 cylf78 0.0 6.28318530717958620000 -9.00000000000100010000 18.00000000000200000000 + +cylinder cylf79 64.70369978610200700000 2016.00002092699990000000 0.00000000000099475983 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan79 cylf79 0.0 6.28318530717958620000 -9.00000000000100010000 18.00000000000200000000 + +cylinder cylf80 114.40296252969000000000 2056.00002092700020000000 0.00000000000099475983 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan80 cylf80 0.0 6.28318530717958620000 -9.00000000000298960000 18.00000000000299500000 + +cylinder cylf81 6.00000000000000000000 2016.00002092699990000000 0.00000000000099475983 0.00000000000000000000 0.00000000000000000000 1.00000000000000000000 1.00000000000000000000 0.00000000000000000000 -0.00000000000000000000 6.00000000000000000000 +mkface fcan81 cylf81 0.0 6.28318530717958620000 -9.00000000000100010000 18.00000000000200000000 + +cylinder cylf82 18.00373091680700100000 142.00002092740999000000 0.00000000000000000000 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan82 cylf82 0.0 6.28318530717958620000 -6.00000000000000000000 12.00000000000000000000 + +cylinder cylf83 18.00373091680700100000 735.33335426073995000000 0.00000000000099475983 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan83 cylf83 0.0 6.28318530717958620000 -6.00000000000000000000 12.00000000000000000000 + +cylinder cylf84 18.00373091680599900000 1328.66668759400000000000 0.00000000000099475983 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan84 cylf84 0.0 6.28318530717958620000 -6.00000000000000000000 12.00000000000000000000 + +cylinder cylf85 18.00373091680599900000 1922.00002092699990000000 0.00000000000201794137 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan85 cylf85 0.0 6.28318530717958620000 -6.00000000000000000000 12.00000000000000000000 + +cylinder cylf86 632.00373126567001000000 735.33335426073995000000 -0.01038243931001000100 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan86 cylf86 0.0 6.28318530717958620000 -5.98961756068900010000 12.01038243931100000000 + +cylinder cylf87 632.00373126567001000000 1328.66668759400000000000 -0.01038243931001000100 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan87 cylf87 0.0 6.28318530717958620000 -5.98961756068900010000 12.01038243931100000000 + +cylinder cylf88 549.09715848122005000000 142.00002092739001000000 -0.01038243931001000100 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan88 cylf88 0.0 6.28318530717958620000 -5.98961756068900010000 12.01038243931100000000 + +cylinder cylf89 549.09715848122005000000 1922.00002092699990000000 -0.01038243931001000100 -0.00000000000000034348 -0.00000000000000060120 1.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.00000000000000060120 3.25000000000000000000 +mkface fcan89 cylf89 0.0 6.28318530717958620000 -5.98961756068795910000 12.01038243931197900000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 109 +checkshape result +checkprops result -s 193285 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_201 b/tests/bugs/modalg_7/bug28091_201 new file mode 100644 index 0000000000..f011cf7f3a --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_201 @@ -0,0 +1,50 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_stufenbohrung.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf2 10.08401639903200000000 20.59607727749099800000 11.89638949519100200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.51367713933423498000 0.85798356425131883000 0.00000000000000000000 1.47068324618091430000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -6.57208607325800200000 13.14417214651600400000 + +cylinder cylf3 10.08401639903199900000 20.59607727749099800000 11.89638949519100200000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.51367713933423609000 -0.85798356425131828000 -0.00000000000000000000 1.47068324618091470000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -6.57208607325800200000 13.14417214651600400000 + +cylinder cylf10 10.08401639903206300000 20.59607727749140000000 18.99999999999951700000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.58123819371922270000 0.81373347120664485000 0.00000000000000000000 3.32307707578849690000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -7.10361050480951660000 14.20722100961903300000 + +cylinder cylf11 10.08401639903206600000 20.59607727749140300000 18.99999999999951300000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.58123819371888363000 -0.81373347120688710000 0.00000000000000000000 3.32307707578849550000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -7.10361050480952020000 14.20722100961903000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 16 +checkshape result +checkprops result -s 1254.3 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_211 b/tests/bugs/modalg_7/bug28091_211 new file mode 100644 index 0000000000..a94cfd15c0 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_211 @@ -0,0 +1,50 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_stufenbohrung_raum.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf2 13.96415221911059300000 20.33312885278546000000 8.39403909470043170000 0.28665012516266553000 -0.43666337015619089000 -0.85273489837584671000 0.81818652273592285000 0.57463162728371964000 -0.01921736034328927500 1.47068324618074060000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -6.57208607325767690000 13.14417214651535400000 + +cylinder cylf3 13.96415221911054500000 20.33312885278552400000 8.39403909470038200000 0.28665012516261928000 -0.43666337015612605000 -0.85273489837589544000 -0.81818652273601888000 -0.57463162728358608000 0.01921736034318816500 1.47068324618073980000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -6.57208607325767780000 13.14417214651535200000 + +cylinder cylf10 11.92790137880067300000 23.43501535609184600000 14.45153567662022300000 0.28665012516257687000 -0.43666337015618900000 -0.85273489837587746000 -0.12992951695926458000 0.86414424595672945000 -0.48618210868213541000 3.32307707578809670000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -7.10361050480914540000 14.20722100961829100000 + +cylinder cylf11 11.92790137879992500000 23.43501535609164700000 14.45153567662007200000 0.28665012516268118000 -0.43666337015616163000 -0.85273489837585648000 0.12992951695933019000 -0.86414424595671213000 0.48618210868214867000 3.32307707578809670000 +mkface fcan11 cylf11 0.0 6.28318530717958620000 -7.10361050480914620000 14.20722100961829100000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 16 +checkshape result +checkprops result -s 1254.3 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_221 b/tests/bugs/modalg_7/bug28091_221 new file mode 100644 index 0000000000..4af535945e --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_221 @@ -0,0 +1,50 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_topfband.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf3 491.80421356003006000000 105.76550774698399000000 25.54655900989227700000 1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -0.63570725286187879000 0.77193023561640817000 6.46080374259369440000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -26.44847984267988700000 52.89695968535977500000 + +cylinder cylf4 492.35112239211998000000 105.76550774698248000000 25.54655900989104800000 1.00000000000000000000 0.00000000000000000000 0.00000000000000027434 0.00000000000000021177 0.63570725286087926000 -0.77193023561723129000 6.46080374259369970000 +mkface fcan4 cylf4 0.0 6.28318530717958620000 -26.99538867476979900000 52.35005085326986300000 + +cylinder cylf5 468.62127160128477000000 106.75790520822676000000 50.00000000000000000000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.78631833882254676000 0.61782155193174559000 0.00000000000000000000 24.35252918188169200000 +mkface fcan5 cylf5 0.0 6.28318530717958620000 -50.00000000000000000000 100.00000000000000000000 + +cylinder cylf6 468.62127160128762000000 106.75790520823034000000 49.99999999999999300000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.78631833882244750000 -0.61782155193187183000 0.00000000000000000000 24.35252918188169200000 +mkface fcan6 cylf6 0.0 6.28318530717958620000 -50.00000000000000700000 100.00000000000000000000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 18 +checkshape result +checkprops result -s 52345.4 + +checkview -display result -2d -path ${imagedir}/${test_image}.png diff --git a/tests/bugs/modalg_7/bug28091_231 b/tests/bugs/modalg_7/bug28091_231 new file mode 100644 index 0000000000..4fdd441e86 --- /dev/null +++ b/tests/bugs/modalg_7/bug28091_231 @@ -0,0 +1,56 @@ +puts "============" +puts "OCC28091" +puts "============" +puts "" +###################################################### +# Creation of test cases in order to provide simple porting Hole detection algorithm to new OCCT-version +###################################################### + +# IsCorrectCoincindence method + +restore [locate_data_file bug28091_ZweiLoecher.brep] srcshape + +# Test + +foreach a [ directory fcan* ] { unset $a } + +cylinder cylf2 -2.41553719864093220000 0.14748326353191971000 4.79387040381543980000 -1.00000000000000000000 0.00000000000000006108 0.00000000000000000000 -0.00000000000000003665 -0.59999999999989662000 0.80000000000007754000 3.10024878295539930000 +mkface fcan2 cylf2 0.0 6.28318530717958620000 -5.90730210554406910000 11.81460421108813800000 + +cylinder cylf3 -0.00000000000000027756 -0.00000000000000016653 10.61879497430500100000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 -0.45074535990066139000 0.89265257548949206000 0.00000000000000000000 4.04961392699701420000 +mkface fcan3 cylf3 0.0 6.28318530717958620000 -10.61879497430500100000 21.23758994861000100000 + +cylinder cylf6 6.81078512702200010000 0.14748326353192007000 4.79387040381543980000 -1.00000000000000000000 0.00000000000000011998 0.00000000000000000000 -0.00000000000000007199 -0.59999999999989673000 0.80000000000007743000 3.10024878295540020000 +mkface fcan6 cylf6 0.0 6.28318530717958620000 -4.39528925091800100000 8.79057850183600210000 + +cylinder cylf8 0.00000000000000022204 -0.00000000000000016653 10.61879497430500100000 0.00000000000000000000 0.00000000000000000000 -1.00000000000000000000 0.45074535990066139000 -0.89265257548949206000 0.00000000000000000000 4.04961392699701420000 +mkface fcan8 cylf8 0.0 6.28318530717958620000 -10.61879497430500100000 21.23758994861000100000 + +cylinder cylf9 -2.77051479613699890000 0.14748326353208063000 4.79387040381555970000 -1.00000000000000000000 -0.00000000000000004499 0.00000000000000015997 -0.00000000000000015497 0.59999999999989662000 -0.80000000000007754000 3.10024878295539930000 +mkface fcan9 cylf9 0.0 6.28318530717958620000 -6.26227970304013580000 11.45962661359207100000 + +cylinder cylf10 6.81078512702200010000 0.14748326353208038000 4.79387040381556060000 -1.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.00000000000000000000 0.59999999999989662000 -0.80000000000007765000 3.10024878295540020000 +mkface fcan10 cylf10 0.0 6.28318530717958620000 -4.39528925091800100000 8.79057850183600210000 + +sewing sh srcshape +eval compound [ explode sh w ] cmpwir + +compound result +foreach ff [ directory fcan* ] { + copy cmpwir cco + bclearobjects + bcleartools + eval baddobjects [explode cco] + baddtools $ff + bfillds + bbuild fc + foreach fr [explode fc f] { + add $fr result + } +} + +checknbshapes result -face 32 +checkshape result +checkprops result -s 2825.27 + +checkview -display result -2d -path ${imagedir}/${test_image}.png -- 2.39.5