Integration part of tests of grid chl
authorapn <apn@opencascade.com>
Fri, 30 Nov 2012 12:37:32 +0000 (16:37 +0400)
committerapn <apn@opencascade.com>
Fri, 30 Nov 2012 13:53:40 +0000 (17:53 +0400)
419 files changed:
tests/bugs/grids.list
tests/bugs/heal/begin [new file with mode: 0755]
tests/bugs/heal/bug208 [new file with mode: 0755]
tests/bugs/heal/bug209 [new file with mode: 0755]
tests/bugs/heal/bug210_1 [new file with mode: 0755]
tests/bugs/heal/bug210_2 [new file with mode: 0755]
tests/bugs/heal/bug329 [new file with mode: 0755]
tests/bugs/heal/bug482 [new file with mode: 0755]
tests/bugs/heal/bug60940 [new file with mode: 0755]
tests/bugs/heal/bug60950 [new file with mode: 0755]
tests/bugs/iges/bug111_1 [new file with mode: 0755]
tests/bugs/iges/bug111_2 [new file with mode: 0755]
tests/bugs/iges/bug131_1 [new file with mode: 0755]
tests/bugs/iges/bug131_2 [new file with mode: 0755]
tests/bugs/iges/bug131_3 [new file with mode: 0755]
tests/bugs/iges/bug131_4 [new file with mode: 0755]
tests/bugs/iges/bug131_5 [new file with mode: 0755]
tests/bugs/iges/bug131_6 [new file with mode: 0755]
tests/bugs/iges/bug131_7 [new file with mode: 0755]
tests/bugs/iges/bug131_8 [new file with mode: 0755]
tests/bugs/iges/bug133_1 [new file with mode: 0755]
tests/bugs/iges/bug133_10 [new file with mode: 0755]
tests/bugs/iges/bug133_5 [new file with mode: 0755]
tests/bugs/iges/bug133_6 [new file with mode: 0755]
tests/bugs/iges/bug133_7 [new file with mode: 0755]
tests/bugs/iges/bug133_8 [new file with mode: 0755]
tests/bugs/iges/bug156 [new file with mode: 0755]
tests/bugs/iges/bug201 [new file with mode: 0755]
tests/bugs/iges/bug272_1 [new file with mode: 0755]
tests/bugs/iges/bug272_2 [new file with mode: 0755]
tests/bugs/iges/bug272_3 [new file with mode: 0755]
tests/bugs/iges/bug272_4 [new file with mode: 0755]
tests/bugs/iges/bug283 [new file with mode: 0755]
tests/bugs/iges/bug285 [new file with mode: 0755]
tests/bugs/iges/bug306 [new file with mode: 0755]
tests/bugs/iges/bug365_1 [new file with mode: 0755]
tests/bugs/iges/bug365_3 [new file with mode: 0755]
tests/bugs/iges/bug365_4 [new file with mode: 0755]
tests/bugs/iges/bug365_5 [new file with mode: 0755]
tests/bugs/iges/bug386 [new file with mode: 0755]
tests/bugs/iges/bug450_1 [new file with mode: 0755]
tests/bugs/iges/bug450_2 [new file with mode: 0755]
tests/bugs/iges/bug58_1 [new file with mode: 0755]
tests/bugs/iges/bug58_2 [new file with mode: 0755]
tests/bugs/iges/bug58_3 [new file with mode: 0755]
tests/bugs/iges/bug60591_1 [new file with mode: 0755]
tests/bugs/iges/bug60591_2 [new file with mode: 0755]
tests/bugs/iges/bug60591_3 [new file with mode: 0755]
tests/bugs/iges/bug60591_4 [new file with mode: 0755]
tests/bugs/iges/bug60594 [new file with mode: 0755]
tests/bugs/iges/bug60595_1 [new file with mode: 0755]
tests/bugs/iges/bug60595_2 [new file with mode: 0755]
tests/bugs/iges/bug60595_3 [new file with mode: 0755]
tests/bugs/iges/bug60610 [new file with mode: 0755]
tests/bugs/iges/bug60625 [new file with mode: 0755]
tests/bugs/iges/bug60646 [new file with mode: 0755]
tests/bugs/iges/bug60685 [new file with mode: 0755]
tests/bugs/iges/bug60686 [new file with mode: 0755]
tests/bugs/iges/bug60687 [new file with mode: 0755]
tests/bugs/iges/bug60820_1 [new file with mode: 0755]
tests/bugs/iges/bug60820_2 [new file with mode: 0755]
tests/bugs/iges/bug60823 [new file with mode: 0755]
tests/bugs/iges/bug60850 [new file with mode: 0755]
tests/bugs/iges/bug60894 [new file with mode: 0755]
tests/bugs/iges/bug60949 [new file with mode: 0755]
tests/bugs/iges/bug61337 [new file with mode: 0755]
tests/bugs/iges/bug62523 [new file with mode: 0755]
tests/bugs/iges/bug89 [new file with mode: 0755]
tests/bugs/modalg/bug100 [new file with mode: 0755]
tests/bugs/modalg/bug101 [new file with mode: 0755]
tests/bugs/modalg/bug102_1 [new file with mode: 0755]
tests/bugs/modalg/bug102_2 [new file with mode: 0755]
tests/bugs/modalg/bug108 [new file with mode: 0755]
tests/bugs/modalg/bug109 [new file with mode: 0755]
tests/bugs/modalg/bug110_1 [new file with mode: 0755]
tests/bugs/modalg/bug110_2 [new file with mode: 0755]
tests/bugs/modalg/bug110_3 [new file with mode: 0755]
tests/bugs/modalg/bug110_4 [new file with mode: 0755]
tests/bugs/modalg/bug116 [new file with mode: 0755]
tests/bugs/modalg/bug117_1 [new file with mode: 0755]
tests/bugs/modalg/bug117_2 [new file with mode: 0755]
tests/bugs/modalg/bug118_1 [new file with mode: 0755]
tests/bugs/modalg/bug118_2 [new file with mode: 0755]
tests/bugs/modalg/bug122_1 [new file with mode: 0755]
tests/bugs/modalg/bug122_2 [new file with mode: 0755]
tests/bugs/modalg/bug122_3 [new file with mode: 0755]
tests/bugs/modalg/bug122_4 [new file with mode: 0755]
tests/bugs/modalg/bug123_1 [new file with mode: 0755]
tests/bugs/modalg/bug123_2 [new file with mode: 0755]
tests/bugs/modalg/bug140 [new file with mode: 0755]
tests/bugs/modalg/bug144 [new file with mode: 0755]
tests/bugs/modalg/bug16983 [new file with mode: 0755]
tests/bugs/modalg/bug174 [new file with mode: 0755]
tests/bugs/modalg/bug178_1 [new file with mode: 0755]
tests/bugs/modalg/bug178_2 [new file with mode: 0755]
tests/bugs/modalg/bug178_3 [new file with mode: 0755]
tests/bugs/modalg/bug179 [new file with mode: 0755]
tests/bugs/modalg/bug18892 [new file with mode: 0755]
tests/bugs/modalg/bug19424 [new file with mode: 0755]
tests/bugs/modalg/bug19626 [new file with mode: 0755]
tests/bugs/modalg/bug19653 [new file with mode: 0755]
tests/bugs/modalg/bug21 [new file with mode: 0755]
tests/bugs/modalg/bug212_1 [new file with mode: 0755]
tests/bugs/modalg/bug212_2 [new file with mode: 0755]
tests/bugs/modalg/bug213_1 [new file with mode: 0755]
tests/bugs/modalg/bug213_2 [new file with mode: 0755]
tests/bugs/modalg/bug221 [new file with mode: 0755]
tests/bugs/modalg/bug234 [new file with mode: 0755]
tests/bugs/modalg/bug264_0 [new file with mode: 0755]
tests/bugs/modalg/bug264_1 [new file with mode: 0755]
tests/bugs/modalg/bug264_6 [new file with mode: 0755]
tests/bugs/modalg/bug264_7 [new file with mode: 0755]
tests/bugs/modalg/bug269_1 [new file with mode: 0755]
tests/bugs/modalg/bug269_2 [new file with mode: 0755]
tests/bugs/modalg/bug269_3 [new file with mode: 0755]
tests/bugs/modalg/bug269_4 [new file with mode: 0755]
tests/bugs/modalg/bug291 [new file with mode: 0755]
tests/bugs/modalg/bug292 [new file with mode: 0755]
tests/bugs/modalg/bug293 [new file with mode: 0755]
tests/bugs/modalg/bug297_1 [new file with mode: 0755]
tests/bugs/modalg/bug297_2 [new file with mode: 0755]
tests/bugs/modalg/bug297_3 [new file with mode: 0755]
tests/bugs/modalg/bug297_4 [new file with mode: 0755]
tests/bugs/modalg/bug298 [new file with mode: 0755]
tests/bugs/modalg/bug302_1 [new file with mode: 0755]
tests/bugs/modalg/bug302_2 [new file with mode: 0755]
tests/bugs/modalg/bug302_3 [new file with mode: 0755]
tests/bugs/modalg/bug315 [new file with mode: 0755]
tests/bugs/modalg/bug318 [new file with mode: 0755]
tests/bugs/modalg/bug322 [new file with mode: 0755]
tests/bugs/modalg/bug323 [new file with mode: 0755]
tests/bugs/modalg/bug327_1 [new file with mode: 0755]
tests/bugs/modalg/bug327_2 [new file with mode: 0755]
tests/bugs/modalg/bug334 [new file with mode: 0755]
tests/bugs/modalg/bug335 [new file with mode: 0755]
tests/bugs/modalg/bug336 [new file with mode: 0755]
tests/bugs/modalg/bug338 [new file with mode: 0755]
tests/bugs/modalg/bug340 [new file with mode: 0755]
tests/bugs/modalg/bug341 [new file with mode: 0755]
tests/bugs/modalg/bug347_1 [new file with mode: 0755]
tests/bugs/modalg/bug347_2 [new file with mode: 0755]
tests/bugs/modalg/bug356 [new file with mode: 0755]
tests/bugs/modalg/bug407_1 [new file with mode: 0755]
tests/bugs/modalg/bug407_2 [new file with mode: 0755]
tests/bugs/modalg/bug409 [new file with mode: 0755]
tests/bugs/modalg/bug410_1 [new file with mode: 0755]
tests/bugs/modalg/bug410_2 [new file with mode: 0755]
tests/bugs/modalg/bug411 [new file with mode: 0755]
tests/bugs/modalg/bug412 [new file with mode: 0755]
tests/bugs/modalg/bug413_1 [new file with mode: 0755]
tests/bugs/modalg/bug413_2 [new file with mode: 0755]
tests/bugs/modalg/bug415 [new file with mode: 0755]
tests/bugs/modalg/bug417 [new file with mode: 0755]
tests/bugs/modalg/bug437 [new file with mode: 0755]
tests/bugs/modalg/bug442 [new file with mode: 0755]
tests/bugs/modalg/bug446_2 [new file with mode: 0755]
tests/bugs/modalg/bug446_3 [new file with mode: 0755]
tests/bugs/modalg/bug446_4 [new file with mode: 0755]
tests/bugs/modalg/bug449 [new file with mode: 0755]
tests/bugs/modalg/bug474 [new file with mode: 0755]
tests/bugs/modalg/bug481 [new file with mode: 0755]
tests/bugs/modalg/bug485 [new file with mode: 0755]
tests/bugs/modalg/bug487 [new file with mode: 0755]
tests/bugs/modalg/bug488 [new file with mode: 0755]
tests/bugs/modalg/bug490 [new file with mode: 0755]
tests/bugs/modalg/bug492 [new file with mode: 0755]
tests/bugs/modalg/bug497_2 [new file with mode: 0755]
tests/bugs/modalg/bug497_4 [new file with mode: 0755]
tests/bugs/modalg/bug497_5 [new file with mode: 0755]
tests/bugs/modalg/bug500 [new file with mode: 0755]
tests/bugs/modalg/bug501 [new file with mode: 0755]
tests/bugs/modalg/bug60409_1 [new file with mode: 0755]
tests/bugs/modalg/bug60409_2 [new file with mode: 0755]
tests/bugs/modalg/bug60409_3 [new file with mode: 0755]
tests/bugs/modalg/bug60523 [new file with mode: 0755]
tests/bugs/modalg/bug60531_1 [new file with mode: 0755]
tests/bugs/modalg/bug60531_2 [new file with mode: 0755]
tests/bugs/modalg/bug60532 [new file with mode: 0755]
tests/bugs/modalg/bug60532_1 [new file with mode: 0755]
tests/bugs/modalg/bug60532_2 [new file with mode: 0755]
tests/bugs/modalg/bug60533 [new file with mode: 0755]
tests/bugs/modalg/bug60555_1 [new file with mode: 0755]
tests/bugs/modalg/bug60585_2 [new file with mode: 0755]
tests/bugs/modalg/bug60623_1 [new file with mode: 0755]
tests/bugs/modalg/bug60623_2 [new file with mode: 0755]
tests/bugs/modalg/bug60635 [new file with mode: 0755]
tests/bugs/modalg/bug60663_1 [new file with mode: 0755]
tests/bugs/modalg/bug60668 [new file with mode: 0755]
tests/bugs/modalg/bug60684 [new file with mode: 0755]
tests/bugs/modalg/bug60703_2 [new file with mode: 0755]
tests/bugs/modalg/bug60703_3 [new file with mode: 0755]
tests/bugs/modalg/bug60703_4 [new file with mode: 0755]
tests/bugs/modalg/bug60704 [new file with mode: 0755]
tests/bugs/modalg/bug60714 [new file with mode: 0755]
tests/bugs/modalg/bug60728 [new file with mode: 0755]
tests/bugs/modalg/bug60776_1 [new file with mode: 0755]
tests/bugs/modalg/bug60776_2 [new file with mode: 0755]
tests/bugs/modalg/bug60782_1 [new file with mode: 0755]
tests/bugs/modalg/bug60782_3 [new file with mode: 0755]
tests/bugs/modalg/bug60788_1 [new file with mode: 0755]
tests/bugs/modalg/bug60801 [new file with mode: 0755]
tests/bugs/modalg/bug60803 [new file with mode: 0755]
tests/bugs/modalg/bug60839 [new file with mode: 0755]
tests/bugs/modalg/bug60841 [new file with mode: 0755]
tests/bugs/modalg/bug60849 [new file with mode: 0755]
tests/bugs/modalg/bug60865 [new file with mode: 0755]
tests/bugs/modalg/bug60881 [new file with mode: 0755]
tests/bugs/modalg/bug60899_1 [new file with mode: 0755]
tests/bugs/modalg/bug60899_2 [new file with mode: 0755]
tests/bugs/modalg/bug60901 [new file with mode: 0755]
tests/bugs/modalg/bug60905 [new file with mode: 0755]
tests/bugs/modalg/bug60909 [new file with mode: 0755]
tests/bugs/modalg/bug60927 [new file with mode: 0755]
tests/bugs/modalg/bug60930 [new file with mode: 0755]
tests/bugs/modalg/bug60934 [new file with mode: 0755]
tests/bugs/modalg/bug60942 [new file with mode: 0755]
tests/bugs/modalg/bug60971 [new file with mode: 0755]
tests/bugs/modalg/bug62369 [new file with mode: 0755]
tests/bugs/modalg/bug67 [new file with mode: 0755]
tests/bugs/modalg/bug68_1 [new file with mode: 0755]
tests/bugs/modalg/bug68_2 [new file with mode: 0755]
tests/bugs/modalg/bug77 [new file with mode: 0755]
tests/bugs/modalg/bug78 [new file with mode: 0755]
tests/bugs/modalg/bug80 [new file with mode: 0755]
tests/bugs/modalg/bug81 [new file with mode: 0755]
tests/bugs/modalg/bug82 [new file with mode: 0755]
tests/bugs/modalg/bug86 [new file with mode: 0755]
tests/bugs/modalg/end
tests/bugs/moddata/bug103 [new file with mode: 0755]
tests/bugs/moddata/bug104 [new file with mode: 0755]
tests/bugs/moddata/bug105 [new file with mode: 0755]
tests/bugs/moddata/bug106 [new file with mode: 0755]
tests/bugs/moddata/bug107 [new file with mode: 0755]
tests/bugs/moddata/bug12 [new file with mode: 0755]
tests/bugs/moddata/bug126 [new file with mode: 0755]
tests/bugs/moddata/bug13 [new file with mode: 0755]
tests/bugs/moddata/bug130 [new file with mode: 0755]
tests/bugs/moddata/bug134_1 [new file with mode: 0755]
tests/bugs/moddata/bug134_2 [new file with mode: 0755]
tests/bugs/moddata/bug135 [new file with mode: 0755]
tests/bugs/moddata/bug141 [new file with mode: 0755]
tests/bugs/moddata/bug15 [new file with mode: 0755]
tests/bugs/moddata/bug150_1 [new file with mode: 0755]
tests/bugs/moddata/bug150_2 [new file with mode: 0755]
tests/bugs/moddata/bug151_1 [new file with mode: 0755]
tests/bugs/moddata/bug151_2 [new file with mode: 0755]
tests/bugs/moddata/bug152_1 [new file with mode: 0755]
tests/bugs/moddata/bug152_2 [new file with mode: 0755]
tests/bugs/moddata/bug16 [new file with mode: 0755]
tests/bugs/moddata/bug160_1 [new file with mode: 0755]
tests/bugs/moddata/bug160_2 [new file with mode: 0755]
tests/bugs/moddata/bug160_3 [new file with mode: 0755]
tests/bugs/moddata/bug160_4 [new file with mode: 0755]
tests/bugs/moddata/bug160_5 [new file with mode: 0755]
tests/bugs/moddata/bug160_6 [new file with mode: 0755]
tests/bugs/moddata/bug161 [new file with mode: 0755]
tests/bugs/moddata/bug162 [new file with mode: 0755]
tests/bugs/moddata/bug163 [new file with mode: 0755]
tests/bugs/moddata/bug164_1 [new file with mode: 0755]
tests/bugs/moddata/bug164_2 [new file with mode: 0755]
tests/bugs/moddata/bug165_1 [new file with mode: 0755]
tests/bugs/moddata/bug165_2 [new file with mode: 0755]
tests/bugs/moddata/bug165_3 [new file with mode: 0755]
tests/bugs/moddata/bug17 [new file with mode: 0755]
tests/bugs/moddata/bug175 [new file with mode: 0755]
tests/bugs/moddata/bug183_1 [new file with mode: 0755]
tests/bugs/moddata/bug183_2 [new file with mode: 0755]
tests/bugs/moddata/bug183_3 [new file with mode: 0755]
tests/bugs/moddata/bug183_4 [new file with mode: 0755]
tests/bugs/moddata/bug183_5 [new file with mode: 0755]
tests/bugs/moddata/bug183_6 [new file with mode: 0755]
tests/bugs/moddata/bug187 [new file with mode: 0755]
tests/bugs/moddata/bug188 [new file with mode: 0755]
tests/bugs/moddata/bug188_1 [new file with mode: 0755]
tests/bugs/moddata/bug20 [new file with mode: 0755]
tests/bugs/moddata/bug20333 [new file with mode: 0755]
tests/bugs/moddata/bug211_1 [new file with mode: 0755]
tests/bugs/moddata/bug211_2 [new file with mode: 0755]
tests/bugs/moddata/bug217 [new file with mode: 0755]
tests/bugs/moddata/bug227_1 [new file with mode: 0755]
tests/bugs/moddata/bug227_2 [new file with mode: 0755]
tests/bugs/moddata/bug228 [new file with mode: 0755]
tests/bugs/moddata/bug247 [new file with mode: 0755]
tests/bugs/moddata/bug252_1 [new file with mode: 0755]
tests/bugs/moddata/bug252_2 [new file with mode: 0755]
tests/bugs/moddata/bug252_3 [new file with mode: 0755]
tests/bugs/moddata/bug254 [new file with mode: 0755]
tests/bugs/moddata/bug256 [new file with mode: 0755]
tests/bugs/moddata/bug257 [new file with mode: 0755]
tests/bugs/moddata/bug258_1 [new file with mode: 0755]
tests/bugs/moddata/bug258_2 [new file with mode: 0755]
tests/bugs/moddata/bug259 [new file with mode: 0755]
tests/bugs/moddata/bug266 [new file with mode: 0755]
tests/bugs/moddata/bug268 [new file with mode: 0755]
tests/bugs/moddata/bug26_1 [new file with mode: 0755]
tests/bugs/moddata/bug26_2 [new file with mode: 0755]
tests/bugs/moddata/bug276 [new file with mode: 0755]
tests/bugs/moddata/bug278_1 [new file with mode: 0755]
tests/bugs/moddata/bug278_2 [new file with mode: 0755]
tests/bugs/moddata/bug278_3 [new file with mode: 0755]
tests/bugs/moddata/bug27_1 [new file with mode: 0755]
tests/bugs/moddata/bug27_2 [new file with mode: 0755]
tests/bugs/moddata/bug28_1 [new file with mode: 0755]
tests/bugs/moddata/bug28_2 [new file with mode: 0755]
tests/bugs/moddata/bug31 [new file with mode: 0755]
tests/bugs/moddata/bug313 [new file with mode: 0755]
tests/bugs/moddata/bug324_1 [new file with mode: 0755]
tests/bugs/moddata/bug35 [new file with mode: 0755]
tests/bugs/moddata/bug354_1 [new file with mode: 0755]
tests/bugs/moddata/bug354_2 [new file with mode: 0755]
tests/bugs/moddata/bug366 [new file with mode: 0755]
tests/bugs/moddata/bug368 [new file with mode: 0755]
tests/bugs/moddata/bug371 [new file with mode: 0755]
tests/bugs/moddata/bug374_1 [new file with mode: 0755]
tests/bugs/moddata/bug374_2 [new file with mode: 0755]
tests/bugs/moddata/bug376 [new file with mode: 0755]
tests/bugs/moddata/bug37_1 [new file with mode: 0755]
tests/bugs/moddata/bug37_2 [new file with mode: 0755]
tests/bugs/moddata/bug380_1 [new file with mode: 0755]
tests/bugs/moddata/bug380_2 [new file with mode: 0755]
tests/bugs/moddata/bug3_1 [new file with mode: 0755]
tests/bugs/moddata/bug3_2 [new file with mode: 0755]
tests/bugs/moddata/bug4 [new file with mode: 0755]
tests/bugs/moddata/bug41 [new file with mode: 0755]
tests/bugs/moddata/bug42 [new file with mode: 0755]
tests/bugs/moddata/bug432 [new file with mode: 0755]
tests/bugs/moddata/bug444 [new file with mode: 0755]
tests/bugs/moddata/bug466 [new file with mode: 0755]
tests/bugs/moddata/bug469 [new file with mode: 0755]
tests/bugs/moddata/bug498 [new file with mode: 0755]
tests/bugs/moddata/bug49_1 [new file with mode: 0755]
tests/bugs/moddata/bug49_2 [new file with mode: 0755]
tests/bugs/moddata/bug50 [new file with mode: 0755]
tests/bugs/moddata/bug505 [new file with mode: 0755]
tests/bugs/moddata/bug54 [new file with mode: 0755]
tests/bugs/moddata/bug60637 [new file with mode: 0755]
tests/bugs/moddata/bug60652_1 [new file with mode: 0755]
tests/bugs/moddata/bug60652_2 [new file with mode: 0755]
tests/bugs/moddata/bug60652_3 [new file with mode: 0755]
tests/bugs/moddata/bug60652_4 [new file with mode: 0755]
tests/bugs/moddata/bug60667 [new file with mode: 0755]
tests/bugs/moddata/bug60707 [new file with mode: 0755]
tests/bugs/moddata/bug60729 [new file with mode: 0755]
tests/bugs/moddata/bug60755 [new file with mode: 0755]
tests/bugs/moddata/bug60769 [new file with mode: 0755]
tests/bugs/moddata/bug60825 [new file with mode: 0755]
tests/bugs/moddata/bug60828 [new file with mode: 0755]
tests/bugs/moddata/bug60842 [new file with mode: 0755]
tests/bugs/moddata/bug60848 [new file with mode: 0755]
tests/bugs/moddata/bug60852 [new file with mode: 0755]
tests/bugs/moddata/bug60854 [new file with mode: 0755]
tests/bugs/moddata/bug60868 [new file with mode: 0755]
tests/bugs/moddata/bug60870 [new file with mode: 0755]
tests/bugs/moddata/bug60889 [new file with mode: 0755]
tests/bugs/moddata/bug60895 [new file with mode: 0755]
tests/bugs/moddata/bug60897 [new file with mode: 0755]
tests/bugs/moddata/bug60911 [new file with mode: 0755]
tests/bugs/moddata/bug60924 [new file with mode: 0755]
tests/bugs/moddata/bug60955 [new file with mode: 0755]
tests/bugs/moddata/bug60960 [new file with mode: 0755]
tests/bugs/moddata/bug60965 [new file with mode: 0755]
tests/bugs/moddata/bug60967 [new file with mode: 0755]
tests/bugs/moddata/bug60968 [new file with mode: 0755]
tests/bugs/moddata/bug61006 [new file with mode: 0755]
tests/bugs/moddata/bug62476_1 [new file with mode: 0755]
tests/bugs/moddata/bug62476_2 [new file with mode: 0755]
tests/bugs/moddata/bug65 [new file with mode: 0755]
tests/bugs/moddata/bug7 [new file with mode: 0755]
tests/bugs/moddata/bug75_1 [new file with mode: 0755]
tests/bugs/moddata/bug75_2 [new file with mode: 0755]
tests/bugs/moddata/bug76 [new file with mode: 0755]
tests/bugs/moddata/bug8 [new file with mode: 0755]
tests/bugs/moddata/bug88 [new file with mode: 0755]
tests/bugs/moddata/bug9_1 [new file with mode: 0755]
tests/bugs/moddata/bug9_2 [new file with mode: 0755]
tests/bugs/moddata/end [new file with mode: 0755]
tests/bugs/step/bug133_2 [new file with mode: 0755]
tests/bugs/step/bug133_3 [new file with mode: 0755]
tests/bugs/step/bug133_4 [new file with mode: 0755]
tests/bugs/step/bug133_9 [new file with mode: 0755]
tests/bugs/step/bug167 [new file with mode: 0755]
tests/bugs/step/bug171 [new file with mode: 0755]
tests/bugs/step/bug19854 [new file with mode: 0755]
tests/bugs/step/bug19895 [new file with mode: 0755]
tests/bugs/step/bug20361_1 [new file with mode: 0755]
tests/bugs/step/bug20361_2 [new file with mode: 0755]
tests/bugs/step/bug20361_3 [new file with mode: 0755]
tests/bugs/step/bug20362 [new file with mode: 0755]
tests/bugs/step/bug222 [new file with mode: 0755]
tests/bugs/step/bug233 [new file with mode: 0755]
tests/bugs/step/bug272_5 [new file with mode: 0755]
tests/bugs/step/bug272_6 [new file with mode: 0755]
tests/bugs/step/bug272_7 [new file with mode: 0755]
tests/bugs/step/bug29 [new file with mode: 0755]
tests/bugs/step/bug348_1 [new file with mode: 0755]
tests/bugs/step/bug348_2 [new file with mode: 0755]
tests/bugs/step/bug348_3 [new file with mode: 0755]
tests/bugs/step/bug348_4 [new file with mode: 0755]
tests/bugs/step/bug365_2 [new file with mode: 0755]
tests/bugs/step/bug46 [new file with mode: 0755]
tests/bugs/step/bug51 [new file with mode: 0755]
tests/bugs/step/bug55 [new file with mode: 0755]
tests/bugs/step/bug60624 [new file with mode: 0755]
tests/bugs/step/bug60809 [new file with mode: 0755]
tests/bugs/step/bug60810 [new file with mode: 0755]
tests/bugs/step/bug60906 [new file with mode: 0755]
tests/bugs/step/bug60948 [new file with mode: 0755]
tests/bugs/xde/bug125_1 [new file with mode: 0755]
tests/bugs/xde/bug125_2 [new file with mode: 0755]
tests/bugs/xde/bug168 [new file with mode: 0755]
tests/bugs/xde/bug169 [new file with mode: 0755]
tests/bugs/xde/bug184 [new file with mode: 0755]
tests/bugs/xde/bug2 [new file with mode: 0755]
tests/bugs/xde/bug314 [new file with mode: 0755]
tests/bugs/xde/bug321 [new file with mode: 0755]
tests/bugs/xde/bug34 [new file with mode: 0755]
tests/bugs/xde/bug396 [new file with mode: 0755]
tests/bugs/xde/bug445 [new file with mode: 0755]
tests/bugs/xde/bug470 [new file with mode: 0755]

index 2482b74..d766be7 100755 (executable)
@@ -8,3 +8,5 @@
 008 step
 009 caf
 010 mesh
+011 heal
+
diff --git a/tests/bugs/heal/begin b/tests/bugs/heal/begin
new file mode 100755 (executable)
index 0000000..a4b98f1
--- /dev/null
@@ -0,0 +1,3 @@
+pload XSDRAW
+
+
diff --git a/tests/bugs/heal/bug208 b/tests/bugs/heal/bug208
new file mode 100755 (executable)
index 0000000..028c78e
--- /dev/null
@@ -0,0 +1,18 @@
+#INTERFACE IGES
+puts "========"
+puts "OCC208"
+puts "========"
+
+##########################
+## Incorrect work of ShapeFix
+##########################
+
+restore [locate_data_file OCC208.brep] a 
+
+fixshape result a 0.01 0.01
+
+puts [checkshape result]
+set 2dviewer 0
+
+
+
diff --git a/tests/bugs/heal/bug209 b/tests/bugs/heal/bug209
new file mode 100755 (executable)
index 0000000..f8e5fbe
--- /dev/null
@@ -0,0 +1,19 @@
+#INTERFACE IGES
+puts "========"
+puts "OCC209"
+puts "========"
+
+##########################################
+## FixMissingSeam leads to lost pcurve on neighbouring face
+##########################################
+
+restore [locate_data_file OCC209.brep] a 
+explode a f
+checkshape a_4
+
+fixshape result a 0.01 0.01
+explode result f
+
+puts [checkshape result_4]
+set 2dviewer 1
+
diff --git a/tests/bugs/heal/bug210_1 b/tests/bugs/heal/bug210_1
new file mode 100755 (executable)
index 0000000..158df0f
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC210"
+puts "(case 1)"
+puts "========"
+
+##########################################
+## Improve FixShape to correct case of touching wires 
+##########################################
+
+restore [locate_data_file OCC210a.brep] a 
+
+fixshape result a 0.01 0.01
+
+puts [checkshape result]
+set 2dviewer 1
+
diff --git a/tests/bugs/heal/bug210_2 b/tests/bugs/heal/bug210_2
new file mode 100755 (executable)
index 0000000..906bada
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC210"
+puts "(case 2)"
+puts "========"
+
+##########################################
+## Improve FixShape to correct case of touching wires 
+##########################################
+
+restore [locate_data_file OCC210b.brep] a 
+
+fixshape result a 0.01 0.01
+
+puts [checkshape result]
+set 2dviewer 1
+
diff --git a/tests/bugs/heal/bug329 b/tests/bugs/heal/bug329
new file mode 100755 (executable)
index 0000000..f1719f9
--- /dev/null
@@ -0,0 +1,33 @@
+puts "========================"
+puts " OCC329 "
+puts "========================"
+puts ""
+###########################################################
+##fixshape command does not fix incorrect tolerance order. 
+###########################################################
+
+restore [locate_data_file OCC329.brep] a 
+
+puts [checkshape a]
+set tol1 [maxtolerance a]
+regexp { +Face +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol1 full face1
+regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol1 full edge1
+regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol1 full vert1
+
+fixshape result a 1.e-7 0.1
+
+puts [checkshape result]
+set tol2 [ maxtolerance result]
+regexp { +Face +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol2 full face2
+regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol2 full edge2
+regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol2 full vert2
+
+if { ${face2} > ${face1} || ${edge2} > ${edge1} || ${vert2} > ${vert1} } {
+    puts "Error : Tolerance invalid. Function FixShape works WRONGLY"
+} else {
+    puts "Tolerance valed. Function FixShape works CORRECTLY"
+}
+
+set 2dviewer 1
+
+
diff --git a/tests/bugs/heal/bug482 b/tests/bugs/heal/bug482
new file mode 100755 (executable)
index 0000000..d7ef5ab
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========================"
+puts " OCC482 "
+puts "========================"
+puts ""
+#################################################
+## Regression in ShapeFix_Wireframe (caused by fix on OCC394)
+#################################################
+
+restore [locate_data_file OCC482.brep] a 
+
+fixsmall result a 0.05
+
+puts [checkshape result]
+set 2dviewer 1
+
+
diff --git a/tests/bugs/heal/bug60940 b/tests/bugs/heal/bug60940
new file mode 100755 (executable)
index 0000000..04ff551
--- /dev/null
@@ -0,0 +1,10 @@
+puts "========================"                                                                                      
+puts "BUC60940"                                                                                                      
+puts "========================"                                                                                      
+
+restore [locate_data_file buc60940.rle] a 
+
+fixshape result a 1e-7 1
+puts [checkshape result]
+
+set 2dviewer 1
diff --git a/tests/bugs/heal/bug60950 b/tests/bugs/heal/bug60950
new file mode 100755 (executable)
index 0000000..6d7f171
--- /dev/null
@@ -0,0 +1,15 @@
+puts "==========="
+puts "  BUC60950"
+puts "==========="
+
+restore [locate_data_file buc60950.rle] a 
+checkshape a
+
+fixshape result a 1e-7
+
+puts [checkshape result]
+
+set 2dviewer 1
+
+
+
diff --git a/tests/bugs/iges/bug111_1 b/tests/bugs/iges/bug111_1
new file mode 100755 (executable)
index 0000000..e9e4518
--- /dev/null
@@ -0,0 +1,14 @@
+puts "========"
+puts "BUC61054"
+puts "OCC111"
+puts "(case 1)"
+puts "========"
+
+igesbrep [locate_data_file OCC111a.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug111_2 b/tests/bugs/iges/bug111_2
new file mode 100755 (executable)
index 0000000..072a986
--- /dev/null
@@ -0,0 +1,14 @@
+puts "========"
+puts "BUC61054"
+puts "OCC111"
+puts "(case 2)"
+puts "========"
+
+igesbrep [locate_data_file OCC111b.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug131_1 b/tests/bugs/iges/bug131_1
new file mode 100755 (executable)
index 0000000..7d8ea86
--- /dev/null
@@ -0,0 +1,13 @@
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-1.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug131_2 b/tests/bugs/iges/bug131_2
new file mode 100755 (executable)
index 0000000..a91603e
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-2.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug131_3 b/tests/bugs/iges/bug131_3
new file mode 100755 (executable)
index 0000000..b40f2cf
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-3.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug131_4 b/tests/bugs/iges/bug131_4
new file mode 100755 (executable)
index 0000000..0c2184c
--- /dev/null
@@ -0,0 +1,14 @@
+puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_"
+
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-4.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug131_5 b/tests/bugs/iges/bug131_5
new file mode 100755 (executable)
index 0000000..6abd109
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-5.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug131_6 b/tests/bugs/iges/bug131_6
new file mode 100755 (executable)
index 0000000..a4c6e5d
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-6.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug131_7 b/tests/bugs/iges/bug131_7
new file mode 100755 (executable)
index 0000000..03648f4
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-7.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug131_8 b/tests/bugs/iges/bug131_8
new file mode 100755 (executable)
index 0000000..ff6dfd5
--- /dev/null
@@ -0,0 +1,14 @@
+puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_"
+
+puts "========"
+puts "OCC131"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file OCC131-8.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug133_1 b/tests/bugs/iges/bug133_1
new file mode 100755 (executable)
index 0000000..d399d3d
--- /dev/null
@@ -0,0 +1,18 @@
+puts "========================"
+puts "BUC60993"
+puts "OCC99"
+puts "OCC133"
+puts "========================"
+puts ""
+##############################################
+##Loading phase returns error status (though no exception raised).
+##############################################
+
+igesbrep [locate_data_file igsBF5.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug133_10 b/tests/bugs/iges/bug133_10
new file mode 100755 (executable)
index 0000000..e4474e9
--- /dev/null
@@ -0,0 +1,19 @@
+puts "========================"
+puts "BUC60985"
+puts "OCC92"
+puts "OCC133"
+puts "========================"
+puts ""
+################################################################
+##Many untrimmed faces resulting from translating an IGES file to Open CASCADE
+## Sometimes resulting models look very different.
+################################################################
+
+igesbrep [locate_data_file Cover.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug133_5 b/tests/bugs/iges/bug133_5
new file mode 100755 (executable)
index 0000000..2dbee07
--- /dev/null
@@ -0,0 +1,19 @@
+puts "========================"
+puts "BUC60983"
+puts "OCC90"
+puts "OCC133"
+puts "========================"
+
+#######################################################
+## Exception when translating an IGES file to Open CASCADE (mapping phase).
+#######################################################
+
+igesbrep [locate_data_file Case.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
+
diff --git a/tests/bugs/iges/bug133_6 b/tests/bugs/iges/bug133_6
new file mode 100755 (executable)
index 0000000..86bfd36
--- /dev/null
@@ -0,0 +1,15 @@
+puts "========================"
+puts "BUC60984"
+puts "OCC91"
+puts "OCC133" 
+puts "========================"
+puts ""
+#####################################################
+## Exception when translating an IGES file to Open CASCADE (loading phase).
+#####################################################
+
+catch {param read.iges.faulty.entities 1}
+
+igesbrep [locate_data_file frame.igs] a *
+
+
diff --git a/tests/bugs/iges/bug133_7 b/tests/bugs/iges/bug133_7
new file mode 100755 (executable)
index 0000000..ab0dfac
--- /dev/null
@@ -0,0 +1,21 @@
+puts "========================"
+puts "BUC60986"
+puts "OCC93"
+puts "OCC133"
+puts "========================"
+puts ""
+
+################################################################
+##Exception when translating an IGES file to Open CASCADE (loading phase).
+################################################################
+
+cpulimit 3000
+
+igesbrep [locate_data_file igsBF1.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug133_8 b/tests/bugs/iges/bug133_8
new file mode 100755 (executable)
index 0000000..3c8f876
--- /dev/null
@@ -0,0 +1,18 @@
+puts "========================"
+puts "BUC60988"
+puts "OCC94"
+puts "OCC133"
+puts "========================"
+puts ""
+################################################################
+##Exception when translating an IGES file to Open CASCADE (loading phase).
+################################################################
+
+igesbrep [locate_data_file Rich.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug156 b/tests/bugs/iges/bug156
new file mode 100755 (executable)
index 0000000..328e114
--- /dev/null
@@ -0,0 +1,18 @@
+puts "========"
+puts "OCC156"
+puts "BUC60832"
+puts "SAM392/SAM289"
+puts "========"
+
+#####################################################
+## See also 913 case D1 
+## SAM392, #289: Crash when you want to import the "waaier_para.igs" file
+#####################################################
+
+igesbrep [locate_data_file Samtech_waaier_para.igs] a *
+
+tpcompound result
+
+set 3dviewer 1
+
+
diff --git a/tests/bugs/iges/bug201 b/tests/bugs/iges/bug201
new file mode 100755 (executable)
index 0000000..7522d71
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC201"
+puts "========"
+puts ""
+#########################################################
+## Incorrect face (with wrong boundary) is imported from the file ps1002-v5.igs.
+#########################################################
+
+igesbrep [locate_data_file OCC201.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug272_1 b/tests/bugs/iges/bug272_1
new file mode 100755 (executable)
index 0000000..5a9aeca
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC272"
+puts "========"
+
+igesbrep [locate_data_file 919-001-T02-04-CP-VL.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+if { [llength [whatis result]] == 3 } {
+    puts "Error : There is no result"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug272_2 b/tests/bugs/iges/bug272_2
new file mode 100755 (executable)
index 0000000..01b916c
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC272"
+puts "========"
+
+igesbrep [locate_data_file 919-001-T02-04-FT-VL.igs] a * 
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+if { [llength [whatis result]] == 3 } {
+    puts "Error : There is no result"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug272_3 b/tests/bugs/iges/bug272_3
new file mode 100755 (executable)
index 0000000..7886471
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC272"
+puts "========"
+
+igesbrep [locate_data_file 919-004-T02-01-FT-VL.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+if { [llength [whatis result]] == 3 } {
+    puts "Error : There is no result"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug272_4 b/tests/bugs/iges/bug272_4
new file mode 100755 (executable)
index 0000000..1a4768c
--- /dev/null
@@ -0,0 +1,14 @@
+puts "========"
+puts "OCC272"
+puts "========"
+
+igesbrep [locate_data_file 919-004-T03-04-CP-VL.igs] a *
+
+tpcompound result
+
+if { [llength [whatis result]] == 3 } {
+    puts "Error : There is no result.
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug283 b/tests/bugs/iges/bug283
new file mode 100755 (executable)
index 0000000..2fdc0cd
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC283"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file BUC50030.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug285 b/tests/bugs/iges/bug285
new file mode 100755 (executable)
index 0000000..e77d0e8
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC285"
+puts "========"
+
+igesbrep [locate_data_file OCC285.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug306 b/tests/bugs/iges/bug306
new file mode 100755 (executable)
index 0000000..1995795
--- /dev/null
@@ -0,0 +1,34 @@
+puts "================"
+puts "OCC306"
+puts "================"
+puts ""
+#############################################################################
+##After applying sewing on the model from the file TibTray_Size3.igs (see the attachment) one surface is not shaded.
+#############################################################################
+
+igesbrep [locate_data_file TibTray_Size3.igs] a *
+
+tpcompound a
+tclean a
+
+sewing result a
+
+puts [checkshape result]
+
+vinit
+vsetdispmode result 1
+vdisplay result
+vfit
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { ($tri != 6409 || $nod != 6195) } {
+    puts "Shading problem may be, nb tri & nod"
+} 
+
+set 3dviewer 1
+
+
+
diff --git a/tests/bugs/iges/bug365_1 b/tests/bugs/iges/bug365_1
new file mode 100755 (executable)
index 0000000..0c514dd
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC365"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file BUC61004-1.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug365_3 b/tests/bugs/iges/bug365_3
new file mode 100755 (executable)
index 0000000..bd57997
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC365"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file BUC61004-2.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug365_4 b/tests/bugs/iges/bug365_4
new file mode 100755 (executable)
index 0000000..7046bb1
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC365"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file BUC61004-3.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug365_5 b/tests/bugs/iges/bug365_5
new file mode 100755 (executable)
index 0000000..882fd50
--- /dev/null
@@ -0,0 +1,12 @@
+puts "========"
+puts "OCC365"
+puts "========"
+puts ""
+
+igesbrep [locate_data_file BUC61004-4.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug386 b/tests/bugs/iges/bug386
new file mode 100755 (executable)
index 0000000..8a533fe
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC386"
+puts "========"
+puts ""
+#######################################
+## Crash when reading an IGES file
+#######################################
+
+igesbrep [locate_data_file So5571b.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug450_1 b/tests/bugs/iges/bug450_1
new file mode 100755 (executable)
index 0000000..c761366
--- /dev/null
@@ -0,0 +1,21 @@
+puts "========"
+puts "OCC450"
+puts "========"
+puts "(case 1)"
+puts ""
+#################################################################
+## After reading file5.igs, the surface of revolution written in this file becomes a plane. 
+#################################################################
+
+igesbrep [locate_data_file OCC450a.igs] a *
+
+explode a
+mksurface result a_3
+set info [dump result]
+
+if { [regexp "SurfaceOfRevolution" $info] != 1 } {
+    puts "Error : surface of revolution becomes a plane"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug450_2 b/tests/bugs/iges/bug450_2
new file mode 100755 (executable)
index 0000000..8b692e7
--- /dev/null
@@ -0,0 +1,21 @@
+puts "========"
+puts "OCC450"
+puts "========"
+puts "(case 2)"
+puts ""
+#################################################################
+## After reading file5.igs, the surface of revolution written in this file becomes a plane. 
+#################################################################
+
+igesbrep [locate_data_file NIC_file5.igs] a *
+
+mksurface result a
+
+set info [dump result]
+
+if { [regexp "SurfaceOfRevolution" $info] != 1 } {
+    puts "Error : surface of revolution becomes a plane"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug58_1 b/tests/bugs/iges/bug58_1
new file mode 100755 (executable)
index 0000000..1080b54
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC58"
+puts "========"
+puts ""
+puts "Shape is incorrect after translation"
+puts "case 1 (6546a01.igs)"
+puts ""
+
+igesbrep [locate_data_file OCC58a.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug58_2 b/tests/bugs/iges/bug58_2
new file mode 100755 (executable)
index 0000000..3a4c159
--- /dev/null
@@ -0,0 +1,18 @@
+puts "========"
+puts "OCC58"
+puts "========"
+puts ""
+puts "Shape is incorrect after translation"
+puts "case 2 (JC_Turbine.igs)"
+puts ""
+
+cpulimit 3000
+
+igesbrep [locate_data_file OCC58b.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug58_3 b/tests/bugs/iges/bug58_3
new file mode 100755 (executable)
index 0000000..82c8302
--- /dev/null
@@ -0,0 +1,18 @@
+puts "========"
+puts "OCC58"
+puts "========"
+puts ""
+puts "Shape is incorrect after translation"
+puts "case 3 (MACPartSolid.igs)"
+puts ""
+
+cpulimit 3000
+
+igesbrep [locate_data_file OCC58c.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60591_1 b/tests/bugs/iges/bug60591_1
new file mode 100755 (executable)
index 0000000..bbe9ef7
--- /dev/null
@@ -0,0 +1,41 @@
+puts "=========="
+puts "BUC60591"
+puts "=========="
+puts ""
+puts "=================================="
+puts "It takes visual check for this BUG"
+puts "=================================="
+puts ""
+puts "consideration of \"buc60591a\" model"
+
+igesbrep [locate_data_file buc60591a.igs] a *
+
+tpcompound buc60591a
+
+puts [checkshape buc60591a r]
+
+######################################################################
+
+catch {exec rm ${imagedir}/buc60591a.brep}
+save buc60591a  ${imagedir}/buc60591a.brep
+catch {exec rm ${imagedir}/buc60591a_iges.igs}
+brepiges buc60591a ${imagedir}/buc60591a_iges.igs
+dall
+
+restore  ${imagedir}/buc60591a.brep buc60591a_brep
+catch {exec rm  ${imagedir}/buc60591a_brep.igs}
+brepiges buc60591a_brep ${imagedir}/buc60591a_brep.igs
+dall
+
+igesbrep  ${imagedir}/buc60591a_brep.igs a_brep_iges *
+tpcompound buc60591a_brep_iges
+puts [checkshape buc60591a_brep_iges]
+
+igesbrep  ${imagedir}/buc60591a_iges.igs a_iges *
+tpcompound buc60591a_iges
+puts [checkshape buc60591a_iges]
+
+renamevar buc60591a_iges result
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60591_2 b/tests/bugs/iges/bug60591_2
new file mode 100755 (executable)
index 0000000..d5d3227
--- /dev/null
@@ -0,0 +1,40 @@
+puts "=================================="
+puts "BUC60591"
+puts "=================================="
+puts ""
+puts "It takes visual check for this BUG"
+puts "=================================="
+puts ""
+puts "consideration of \"buc60591b\" model"
+
+igesbrep [locate_data_file buc60591b.igs] a *
+
+tpcompound buc60591b
+
+puts [checkshape buc60591b r]
+
+######################################################################
+
+catch {exec rm ${imagedir}/buc60591b.brep}
+save buc60591b ${imagedir}/buc60591b.brep
+catch {exec rm ${imagedir}/buc60591b_iges.igs}
+brepiges buc60591b ${imagedir}/buc60591b_iges.igs
+dall
+
+restore ${imagedir}/buc60591b.brep buc60591b_brep
+catch {exec rm ${imagedir}/buc60591b_brep.igs}
+brepiges buc60591b_brep ${imagedir}/buc60591b_brep.igs
+dall
+
+igesbrep ${imagedir}/buc60591b_brep.igs b_brep_iges *
+tpcompound buc60591b_brep_iges
+puts [checkshape buc60591b_brep_iges]
+
+igesbrep ${imagedir}/buc60591b_iges.igs b_iges *
+tpcompound buc60591b_iges
+puts [checkshape buc60591b_iges]
+
+renamevar buc60591b_iges result
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60591_3 b/tests/bugs/iges/bug60591_3
new file mode 100755 (executable)
index 0000000..92a4e77
--- /dev/null
@@ -0,0 +1,39 @@
+puts "=================================="
+puts "BUC60591"
+puts "=================================="
+puts ""
+puts "It takes visual check for this BUG"
+puts "=================================="
+puts ""
+puts "consideration of \"buc60591c\" model"
+
+igesbrep [locate_data_file buc60591c.igs] a *
+
+tpcompound buc60591c
+puts [checkshape buc60591c r]
+
+######################################################################
+
+catch {exec rm ${imagedir}/buc60591c.brep}
+save buc60591c ${imagedir}/buc60591c.brep
+catch {exec rm ${imagedir}/buc60591c_iges.igs}
+brepiges buc60591c ${imagedir}/buc60591c_iges.igs
+dall
+
+restore  ${imagedir}/buc60591c.brep buc60591c_brep
+catch {exec rm ${imagedir}/buc60591c_brep.igs}
+brepiges buc60591c_brep ${imagedir}/buc60591c_brep.igs
+dall
+
+igesbrep ${imagedir}/buc60591c_brep.igs c_brep_iges *
+tpcompound buc60591c_brep_iges
+puts [checkshape buc60591c_brep_iges]
+
+igesbrep ${imagedir}/buc60591c_iges.igs c_iges *
+tpcompound buc60591c_iges
+puts [checkshape buc60591c_iges]
+
+renamevar  buc60591c_iges result
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60591_4 b/tests/bugs/iges/bug60591_4
new file mode 100755 (executable)
index 0000000..a5852a4
--- /dev/null
@@ -0,0 +1,38 @@
+puts "BUC60591"
+puts ""
+puts "=================================="
+puts "It takes visual check for this BUG"
+puts "=================================="
+puts ""
+puts "consideration of \"buc60591d\" model"
+
+igesbrep [locate_data_file buc60591d.igs] a *
+
+tpcompound buc60591d
+puts [checkshape buc60591d r]
+
+######################################################################
+
+catch {exec rm ${imagedir}/buc60591d.brep}
+save buc60591d ${imagedir}/buc60591d.brep
+catch {exec rm ${imagedir}/buc60591d_iges.igs}
+brepiges buc60591d ${imagedir}/buc60591d_iges.igs
+dall
+
+restore ${imagedir}/buc60591d.brep buc60591d_brep
+catch {exec rm ${imagedir}/buc60591d_brep.igs}
+brepiges buc60591d_brep ${imagedir}/buc60591d_brep.igs
+dall
+
+igesbrep ${imagedir}/buc60591d_brep.igs d_brep_iges *
+tpcompound buc60591d_brep_iges
+puts [checkshape buc60591d_brep_iges]
+
+igesbrep ${imagedir}/buc60591d_iges.igs d_iges *
+tpcompound buc60591d_iges
+puts [checkshape buc60591d_iges]
+
+renamevar  buc60591d_iges result
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60594 b/tests/bugs/iges/bug60594
new file mode 100755 (executable)
index 0000000..54e7f12
--- /dev/null
@@ -0,0 +1,15 @@
+puts "=================================="
+puts "BUC60594"
+puts "=================================="
+puts ""
+puts "It takes visual check for this BUG"
+puts "=================================="
+puts ""
+
+igesbrep [locate_data_file buc60594a.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug60595_1 b/tests/bugs/iges/bug60595_1
new file mode 100755 (executable)
index 0000000..9f543df
--- /dev/null
@@ -0,0 +1,24 @@
+puts "=================="
+puts "BUC60595"
+puts "=================="
+puts ""
+###################################################################
+## This one relates to the generation of floating point exceptions during the IGE to BRep translation.
+## See the notes in fw_fpe.READ. 
+###################################################################
+
+set bug_var [ igesbrep [locate_data_file buc60595a.igs] a * ] 
+
+tpcompound result
+
+if { [ string match "*Uninspired signal*" $bug_var ] == 1 } {
+    puts "Error : TEST FAILED"
+}
+
+isos 0
+isos result 15
+
+puts "Previously here was message:  Uninspired signal 8"
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60595_2 b/tests/bugs/iges/bug60595_2
new file mode 100755 (executable)
index 0000000..ebc4fbe
--- /dev/null
@@ -0,0 +1,18 @@
+puts "=================="
+puts "BUC60595"
+puts "=================="
+
+set bug_var [ igesbrep [locate_data_file buc60595b.igs] a * ] 
+
+tpcompound result
+
+if { [ string match "*Uninspired signal*" $bug_var ] == 1 } {
+    puts "Error : TEST FAILED"
+}
+
+isos 0
+isos result 15
+
+puts "Previously here was message:  Uninspired signal 8"
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug60595_3 b/tests/bugs/iges/bug60595_3
new file mode 100755 (executable)
index 0000000..349e1c6
--- /dev/null
@@ -0,0 +1,17 @@
+puts "================"
+puts "BUC60595"
+puts "================"
+
+set bug_var [ igesbrep [locate_data_file buc60595c.igs] c * ] 
+if { [ string match "*Uninspired signal*" $bug_var ] == 1 } {
+    puts "Error : TEST FAILED"
+}
+
+tpcompound result
+
+isos result 0
+isos result 15
+
+set 2dviewer 0
+
+
diff --git a/tests/bugs/iges/bug60610 b/tests/bugs/iges/bug60610
new file mode 100755 (executable)
index 0000000..8a25734
--- /dev/null
@@ -0,0 +1,14 @@
+puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_"
+
+puts "========================"
+puts "BUC60610"
+puts "========================"
+
+igesbrep [locate_data_file buc60610a.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60625 b/tests/bugs/iges/bug60625
new file mode 100755 (executable)
index 0000000..37e49d3
--- /dev/null
@@ -0,0 +1,55 @@
+puts "===================="
+puts "BUC60625"
+puts "===================="
+puts "=================================="
+puts "It takes visual check for this BUG"
+puts "=================================="
+
+cpulimit 1500
+
+set l [igesbrep [locate_data_file BUC60625-1.igs] a xst-transferrable-roots] 
+
+tpcompound result
+puts [checkshape result r]
+
+set start [lindex $l 60]
+set bug_list_numb [ llength $l ]
+set bug_list_elem 0
+
+# Search word sequence:        Nb entities selected : XXXX
+while { $bug_list_elem < $bug_list_numb } {
+    if { [ string compare "Nb" [ lindex $l $bug_list_elem ] ] == 0 && [ string compare "entities" [ lindex $l [ expr { $bug_list_elem + 1 } ] ] ] == 0 && [ string compare "selected" [ lindex $l [ expr { $bug_list_elem + 2 } ] ] ] == 0 && [ string compare ":" [ lindex $l [ expr { $bug_list_elem + 3 } ] ] ] == 0 } {
+       set start [ lindex $l [ expr { $bug_list_elem + 4 } ] ]
+       set bug_list_elem [ expr { $bug_list_numb - 1 } ]
+    }
+    set bug_list_elem [ expr { $bug_list_elem + 1 } ]
+}
+
+# Search word sequence:        Nb Shapes successfully produced : XXXX
+set end [lindex $l 0]
+set bug_list_elem 0
+while { $bug_list_elem < $bug_list_numb } {
+    set word_0 [ lindex $l [ expr { $bug_list_elem + 0 } ] ]
+    set word_1 [ lindex $l [ expr { $bug_list_elem + 1 } ] ]
+    set word_2 [ lindex $l [ expr { $bug_list_elem + 2 } ] ]
+    set word_3 [ lindex $l [ expr { $bug_list_elem + 3 } ] ]
+    set word_4 [ lindex $l [ expr { $bug_list_elem + 4 } ] ]
+    if { [ string compare "Nb" ${word_0} ] == 0 &&
+       [ string compare "Shapes" ${word_1} ] == 0 &&
+       [ string compare "successfully" ${word_2} ] == 0 &&
+       [ string compare "produced" ${word_3} ] == 0 &&
+       [ string compare ":" ${word_4} ] == 0 } {
+       set end [ lindex $l [ expr { $bug_list_elem + 5 } ] ]
+       set bug_list_elem [ expr { $bug_list_numb - 1 } ]
+    }
+    set bug_list_elem [ expr { $bug_list_elem + 1 } ]
+}
+
+if { $start != $end } {
+  puts " Error : The number of visible roots ($start) IS NOT EQUAL Nb Shapes successfully produced ($end)"
+} else {
+  puts " The number of visible roots ($start) IS EQUAL Nb Shapes successfully produced ($end)"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60646 b/tests/bugs/iges/bug60646
new file mode 100755 (executable)
index 0000000..f32f8f8
--- /dev/null
@@ -0,0 +1,56 @@
+puts "==============="
+puts "BUC60646"
+puts "==============="
+puts "=================================="
+puts "It takes visual check for this BUG"
+puts "=================================="
+
+set l [igesbrep [locate_data_file BUC60625-1.igs] a xst-transferrable-roots] 
+
+tpcompound res
+puts [checkshape res r]
+
+tcopy res result
+
+set start [lindex $l 60]
+set bug_list_numb [ llength $l ]
+set bug_list_elem 0
+
+# Search word sequence:        Nb entities selected : XXXX
+while { $bug_list_elem < $bug_list_numb } {
+    if { [ string compare "Nb" [ lindex $l $bug_list_elem ] ] == 0 && [ string compare "entities" [ lindex $l [ expr { $bug_list_elem + 1 } ] ] ] == 0 && [ string compare "selected" [ lindex $l [ expr { $bug_list_elem + 2 } ] ] ] == 0 && [ string compare ":" [ lindex $l [ expr { $bug_list_elem + 3 } ] ] ] == 0 } {
+       set start [ lindex $l [ expr { $bug_list_elem + 4 } ] ]
+       set bug_list_elem [ expr { $bug_list_numb - 1 } ]
+    }
+    set bug_list_elem [ expr { $bug_list_elem + 1 } ]
+}
+
+# Search word sequence:        Nb Shapes successfully produced : XXXX
+set end [lindex $l 0]
+set bug_list_elem 0
+while { $bug_list_elem < $bug_list_numb } {
+    set word_0 [ lindex $l [ expr { $bug_list_elem + 0 } ] ]
+    set word_1 [ lindex $l [ expr { $bug_list_elem + 1 } ] ]
+    set word_2 [ lindex $l [ expr { $bug_list_elem + 2 } ] ]
+    set word_3 [ lindex $l [ expr { $bug_list_elem + 3 } ] ]
+    set word_4 [ lindex $l [ expr { $bug_list_elem + 4 } ] ]
+    if { [ string compare "Nb" ${word_0} ] == 0 &&
+       [ string compare "Shapes" ${word_1} ] == 0 &&
+       [ string compare "successfully" ${word_2} ] == 0 &&
+       [ string compare "produced" ${word_3} ] == 0 &&
+       [ string compare ":" ${word_4} ] == 0 } {
+       set end [ lindex $l [ expr { $bug_list_elem + 5 } ] ]
+       set bug_list_elem [ expr { $bug_list_numb - 1 } ]
+    }
+    set bug_list_elem [ expr { $bug_list_elem + 1 } ]
+}
+
+if { $start != $end } {
+    puts " Error : The number of visible roots ($start) IS NOT EQUAL Nb Shapes successfully produced ($end)"
+} else {
+    puts " The number of visible roots ($start) IS EQUAL Nb Shapes successfully produced ($end)"
+}
+
+set 2dviewer 0
+
+
diff --git a/tests/bugs/iges/bug60685 b/tests/bugs/iges/bug60685
new file mode 100755 (executable)
index 0000000..49c415f
--- /dev/null
@@ -0,0 +1,30 @@
+puts "============"
+puts "BUC60685"
+puts "============"
+puts ""
+
+cpulimit 1500
+
+set l [igesbrep [locate_data_file buc60685a.igs] a xst-transferrable-roots] 
+
+tpcompound result
+puts [checkshape result r]
+
+set start [lindex $l 60]
+set bug_list_numb [ llength $l ]
+set bug_list_elem 0
+while { $bug_list_elem != $bug_list_numb } {
+    if { [ string compare "Nb" [ lindex $l $bug_list_elem ] ] == 0 && [ string compare "entities" [ lindex $l [ expr { $bug_list_elem + 1 } ] ] ] == 0 && [ string compare "selected" [ lindex $l [ expr { $bug_list_elem + 2 } ] ] ] == 0 && [ string compare ":" [ lindex $l [ expr { $bug_list_elem + 3 } ] ] ] == 0 } {
+       set start [ lindex $l [ expr { $bug_list_elem + 4 } ] ]
+       set bug_list_elem [ expr { $bug_list_numb - 1 } ]
+    }
+    set bug_list_elem [ expr { $bug_list_elem + 1 } ]
+}
+
+set n [llength $l]
+set end [lindex $l [expr $n-1]]
+if { $start != $end } {
+    puts "Error : wrong number of translated shapes. It is ${end} instead of ${start}"
+}
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug60686 b/tests/bugs/iges/bug60686
new file mode 100755 (executable)
index 0000000..f4c56a9
--- /dev/null
@@ -0,0 +1,15 @@
+puts "=========="
+puts "BUC60686"
+puts "=========="
+puts ""
+#puts "=================================="
+#puts "It takes visual check for this BUG"
+#puts "=================================="
+
+igesbrep [locate_data_file BUC50029.igs] a xst-transferrable-roots
+
+tpcompound result
+
+set 2dviewer 0
+
+
diff --git a/tests/bugs/iges/bug60687 b/tests/bugs/iges/bug60687
new file mode 100755 (executable)
index 0000000..d6ccd82
--- /dev/null
@@ -0,0 +1,11 @@
+puts "=========="
+puts "BUC60687"
+puts "=========="
+
+igesbrep [locate_data_file buc40130.igs] a xst-transferrable-roots
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug60820_1 b/tests/bugs/iges/bug60820_1
new file mode 100755 (executable)
index 0000000..fa64f37
--- /dev/null
@@ -0,0 +1,22 @@
+puts "========================"
+puts "BUC60820"
+puts "========================"
+
+igesbrep [locate_data_file buc60820.igs] a *
+
+tpcompound result
+
+puts [checkshape result r]
+
+tclean result
+incmesh result 0.1
+triangles result
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri <= 0 || $nod <= 0 } {
+    puts "Error : Problems with shading"
+}
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug60820_2 b/tests/bugs/iges/bug60820_2
new file mode 100755 (executable)
index 0000000..cb644f3
--- /dev/null
@@ -0,0 +1,26 @@
+puts "========================"
+puts "BUC60820"
+puts "========================"
+
+igesbrep [locate_data_file buc60820.igs] a *
+
+tpcompound result
+puts [checkshape result r]
+
+tclean result
+vinit
+vdisplay result
+vsetdispmode result 1
+vfit
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nod} $info full nod
+
+
+if { $tri != 1655 || $nod != 1143 } {
+    puts "Shading problem may be, nb tri & nod were changed"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60823 b/tests/bugs/iges/bug60823
new file mode 100755 (executable)
index 0000000..23f226c
--- /dev/null
@@ -0,0 +1,30 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: \\*\\* Exception \\*\\*.*"
+puts "TODO OCC12345 ALL: TEST INCOMPLETE"
+
+puts "========================"                                               
+puts "BUC60823"
+puts "========================"                                                
+
+igesbrep [locate_data_file buc60823.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+tclean result
+vinit
+vdisplay result
+vsetdispmode result 1
+vfit
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri != 17618 || $nod != 11153 } {
+    puts "Shading problem may be, nb tri & nod are changed"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug60850 b/tests/bugs/iges/bug60850
new file mode 100755 (executable)
index 0000000..d491268
--- /dev/null
@@ -0,0 +1,11 @@
+puts "==========="
+puts "  BUC60850"
+puts "==========="
+
+igesbrep [locate_data_file BUC60850.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug60894 b/tests/bugs/iges/bug60894
new file mode 100755 (executable)
index 0000000..48ccf56
--- /dev/null
@@ -0,0 +1,11 @@
+puts "==========="
+puts "  BUC60894"
+puts "==========="
+
+cpulimit 3000
+
+igesbrep [locate_data_file buc60894.igs] a xst-transferrable-roots
+
+tpcompound result
+
+set 2dviewer 0
diff --git a/tests/bugs/iges/bug60949 b/tests/bugs/iges/bug60949
new file mode 100755 (executable)
index 0000000..788453a
--- /dev/null
@@ -0,0 +1,17 @@
+puts "==========="
+puts "  BUC60949"
+puts "==========="
+
+######################################################
+## Can not read iges file in XCAFEXE neither by command ReadIges no igesbrep. 
+######################################################
+
+igesbrep [locate_data_file buc60949.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
+
diff --git a/tests/bugs/iges/bug61337 b/tests/bugs/iges/bug61337
new file mode 100755 (executable)
index 0000000..584022a
--- /dev/null
@@ -0,0 +1,14 @@
+puts "==========="
+puts "GER61337"
+puts "=================================="
+
+cpulimit 3000
+
+igesbrep [locate_data_file ger61337a.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/iges/bug62523 b/tests/bugs/iges/bug62523
new file mode 100755 (executable)
index 0000000..9354754
--- /dev/null
@@ -0,0 +1,19 @@
+puts "============="
+puts "FRA62523"
+puts "============="
+
+igesbrep [locate_data_file fra62523a.igs] a *
+
+# tpcompound b
+# checkshape a_1
+
+vinit
+tclean a_1
+vdisplay a_1
+vsetdispmode a_1 1
+
+defle a_1 .005
+defle a_1 .001
+
+set 3dviewer 1
+
diff --git a/tests/bugs/iges/bug89 b/tests/bugs/iges/bug89
new file mode 100755 (executable)
index 0000000..bb2d1aa
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========================"
+puts "BUC60800 OCC89"
+puts "========================"
+
+#######################################################
+##  Reading of this file crashes  ??? Reading of this file gives invalid shape ??? 
+#######################################################
+
+igesbrep [locate_data_file BUC60800.igs] a *
+
+tpcompound result
+puts [checkshape result]
+puts [checkshape result r]
+
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug100 b/tests/bugs/modalg/bug100
new file mode 100755 (executable)
index 0000000..59fe558
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "================"
+puts "OCC100"
+puts "================"
+puts ""
+########################################
+## Draw is crashed during cut on Windows NT. SAM1185.
+########################################
+
+restore [locate_data_file OCC100_sp.brep] sh1 
+puts [checkshape sh1]
+
+restore [locate_data_file OCC100_cyl.brep] sh2
+puts [checkshape sh2]
+
+#OCC100 : on WNT result is crushed when we make the next command:
+
+bcut result sh1 sh2
+
+set square 2130.25
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug101 b/tests/bugs/modalg/bug101
new file mode 100755 (executable)
index 0000000..3abf8be
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "================"
+puts "BUC60663"
+puts "BUC60662"
+puts "OCC101"
+puts "================"
+puts ""
+######################################
+##  After restore c shell, section is incomplete
+######################################
+restore [locate_data_file buc60663a.brep] sh1 
+puts [checkshape sh1]
+restore [locate_data_file buc60663b.brep] sh2
+puts [checkshape sh2]
+
+bsection result sh1 sh2
+
+set length 26.2001
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug102_1 b/tests/bugs/modalg/bug102_1
new file mode 100755 (executable)
index 0000000..6bd274c
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "================"
+puts "BUC60803"
+puts "OCC102"
+puts "================"
+puts ""
+
+restore [locate_data_file buc60803a.brep] sh1 
+puts [checkshape sh1]
+restore [locate_data_file buc60803b.brep] sh2
+puts [checkshape sh2]
+
+bfuse result sh1 sh2
+
+set square 1.86064e+07
+set 2dviewer 0
+
+
+
diff --git a/tests/bugs/modalg/bug102_2 b/tests/bugs/modalg/bug102_2
new file mode 100755 (executable)
index 0000000..6d59a56
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "================"
+puts "BUC60803"
+puts "OCC102"
+puts "================"
+puts ""
+
+restore [locate_data_file buc60803a.brep] sh1 
+puts [checkshape sh1]
+restore [locate_data_file buc60803b.brep] sh2
+puts [checkshape sh2]
+
+bfuse result sh2 sh1
+
+set square 1.86064e+07
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug108 b/tests/bugs/modalg/bug108
new file mode 100755 (executable)
index 0000000..cdb1f12
--- /dev/null
@@ -0,0 +1,28 @@
+
+puts "================"
+puts "BUC61037"
+puts "OCC108"
+puts "================"
+puts ""
+#####################################################################
+## BRepTools::AddUVBounds for the planar face bounded by a circle returns too small bounding box.
+#####################################################################
+
+restore [locate_data_file bug61037.brep] sh1
+puts [checkshape sh1]
+
+set rr [bounding sh1]
+regexp { *([-0-9.+eE]+) +([-0-9.+eE]+) +([-0-9.+eE]+) +([-0-9.+eE]+) +([-0-9.+eE]+) +([-0-9.+eE]+)} $rr full v1_x v1_y v1_z v2_x v2_y v2_z
+vertex v1 $v1_x $v1_y $v1_z
+vertex v2 $v2_x $v2_y $v2_z 
+edge result v1 v2
+regexp {Mass +: +([-0-9.+eE]+)} [lprops result] full dis
+if { [expr $dis < 0.201357] } {
+   puts "Faulty BUC61037: Planar circle and bounded face a returns too small bounding box"
+} else {
+   puts "OCC134 OK: bounding box is correct"
+}
+
+set length 0.201357
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug109 b/tests/bugs/modalg/bug109
new file mode 100755 (executable)
index 0000000..62a5b67
--- /dev/null
@@ -0,0 +1,33 @@
+puts "TODO OCC12345 ALL: Faulty BUC61057: here can be shading problem"
+
+puts "================"
+puts "BUC61057"
+puts "OCC109"
+puts "================"
+puts ""
+##########################################################
+## Visualisation of the attached shape is wrong in the shading mode.
+##########################################################
+
+restore [locate_data_file OCC109.brep] result
+
+puts [checkshape result]
+
+vinit
+tclean result
+vdisplay result
+vsetdispmode result 1
+vfit
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri != 294 && $nod != 300 }  {
+    puts "Faulty BUC61057: here can be shading problem"
+} else {
+    puts "Shading of BUC61057 is OK"
+}
+
+set square 33.8757
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug110_1 b/tests/bugs/modalg/bug110_1
new file mode 100755 (executable)
index 0000000..08d1c2b
--- /dev/null
@@ -0,0 +1,24 @@
+
+puts "========================"
+puts "  BUC60706 "
+puts " OCC110 "
+puts "(case 1)"
+puts "========================"
+
+restore [locate_data_file buc60706a.brep] f 
+puts [checkshape f]
+
+restore [locate_data_file buc60706b.brep] w
+puts [checkshape w]
+pipe t w f
+
+restore [locate_data_file buc60706c.brep] s
+puts [checkshape s]
+
+bcut result s t
+
+catch {exec rm ${imagedir}/buc60706f.brep}
+save result ${imagedir}/buc60706f.brep
+
+set square 865745
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug110_2 b/tests/bugs/modalg/bug110_2
new file mode 100755 (executable)
index 0000000..d4df9cd
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "========================"
+puts "  BUC60706 "
+puts " OCC110 "
+puts "(case 2)"
+puts "========================"
+
+restore [locate_data_file buc60706d.brep] f 
+puts [checkshape f]
+
+restore [locate_data_file buc60706e.brep] w
+puts [checkshape w]
+pipe t w f
+
+restore ${imagedir}/buc60706f.brep s
+puts [checkshape s]
+
+bcut result s t
+catch {exec rm ${imagedir}/buc60706i.brep}
+save result ${imagedir}/buc60706i.brep
+
+set square 865617
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug110_3 b/tests/bugs/modalg/bug110_3
new file mode 100755 (executable)
index 0000000..40b5564
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "========================"
+puts "  BUC60706 "
+puts " OCC110 "
+puts "(case 3)"
+puts "========================"
+
+restore [locate_data_file buc60706g.brep] f 
+puts [checkshape f]
+
+restore [locate_data_file buc60706h.brep] w
+puts [checkshape w]
+pipe t w f
+
+restore ${imagedir}/buc60706i.brep s
+puts [checkshape s]
+
+bcut result s t
+
+set square 865172
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug110_4 b/tests/bugs/modalg/bug110_4
new file mode 100755 (executable)
index 0000000..06a6ae0
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "========================"
+puts "  BUC60706 "
+puts " OCC110 "
+puts "(case 4)"
+puts "========================"
+
+restore [locate_data_file buc60706j.brep] f 
+puts [checkshape f]
+
+restore [locate_data_file buc60706b.brep] w
+puts [checkshape w]
+pipe t w f
+
+restore [locate_data_file buc60706l.brep] s
+puts [checkshape s]
+
+bcut result s t
+catch {exec rm ${imagedir}/buc60706o.brep}
+save result ${imagedir}/buc60706o.brep
+
+set square 861712
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug116 b/tests/bugs/modalg/bug116
new file mode 100755 (executable)
index 0000000..ae4179d
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "================"
+puts "OCC116"
+puts "================"
+puts ""
+#############################################
+## Creation of chamfer is impossible on attached shape.(SAM1201)
+#############################################
+
+restore [locate_data_file OCC116.brep] sh 
+puts [checkshape sh]
+explode sh f
+explode sh_6 e
+
+if [catch {chamf result sh sh_6_1 sh_6 A 2 45 sh_6_8 sh_6 A 2 45 } catch_result] {
+  puts "1) Faulty  OCC116: chamfer is NOT created properly"
+ } else {
+  puts "1) CHAMF OCC116 OK"
+}
+
+set square 48357.5
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug117_1 b/tests/bugs/modalg/bug117_1
new file mode 100755 (executable)
index 0000000..7099cdb
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "================"
+puts "OCC117"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC117.brep] sh 
+explode sh
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bfuse result sh_1 sh_2
+
+set square 292297
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug117_2 b/tests/bugs/modalg/bug117_2
new file mode 100755 (executable)
index 0000000..db8dcf3
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "OCC117"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC117.brep] sh 
+explode sh
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bfuse result sh_2 sh_1
+
+set square 292297
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug118_1 b/tests/bugs/modalg/bug118_1
new file mode 100755 (executable)
index 0000000..1c71e44
--- /dev/null
@@ -0,0 +1,17 @@
+puts "========"
+puts "OCC118"
+puts "========"
+########################################################
+## The Cone part of final fuse shape becomes invisible
+########################################################
+
+restore [locate_data_file OCC118-1.brep] a 
+puts [checkshape a]
+restore [locate_data_file OCC118-2.brep] b
+puts [checkshape b]
+
+bfuse result a b
+
+set square 4844.63
+set 3dviewer 1
+
diff --git a/tests/bugs/modalg/bug118_2 b/tests/bugs/modalg/bug118_2
new file mode 100755 (executable)
index 0000000..5498302
--- /dev/null
@@ -0,0 +1,17 @@
+puts "========"
+puts "OCC118"
+puts "========"
+########################################################
+## The Cone part of final fuse shape becomes invisible
+########################################################
+
+restore [locate_data_file OCC118-1.brep] a 
+puts [checkshape a]
+restore [locate_data_file OCC118-2.brep] b
+puts [checkshape b]
+
+bfuse result b a
+
+set square 4844.63
+set 3dviewer 1
+
diff --git a/tests/bugs/modalg/bug122_1 b/tests/bugs/modalg/bug122_1
new file mode 100755 (executable)
index 0000000..3f5d022
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "OCC122"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC122.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bfuse result sh_1 sh_2
+
+set square 172790
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug122_2 b/tests/bugs/modalg/bug122_2
new file mode 100755 (executable)
index 0000000..d0abe72
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "OCC122"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC122.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bfuse result sh_2 sh_1
+
+set square 172790
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug122_3 b/tests/bugs/modalg/bug122_3
new file mode 100755 (executable)
index 0000000..c911d14
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "OCC122"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC122.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bcut result sh_1 sh_2
+
+set square 83334.1
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug122_4 b/tests/bugs/modalg/bug122_4
new file mode 100755 (executable)
index 0000000..d7f4bde
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "================"
+puts "OCC122"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC122.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bcut result sh_2 sh_1
+
+set square 132943
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug123_1 b/tests/bugs/modalg/bug123_1
new file mode 100755 (executable)
index 0000000..8c42b00
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "OCC123"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC123.brep] sh 
+puts [checkshape sh]
+
+explode sh
+
+bfuse result sh_1 sh_2
+
+set square 81598.4
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug123_2 b/tests/bugs/modalg/bug123_2
new file mode 100755 (executable)
index 0000000..bb0f9ab
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "================"
+puts "OCC123"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC123.brep] sh 
+puts [checkshape sh]
+
+explode sh
+
+bfuse result sh_2 sh_1
+
+set square 81598.4
+set 2dviewer 0
+
+
+
diff --git a/tests/bugs/modalg/bug140 b/tests/bugs/modalg/bug140
new file mode 100755 (executable)
index 0000000..c132bc0
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "================"
+puts "OCC140"
+puts "================"
+puts ""
+#########################################################
+## Fillet is created incorrectly on attached shape.
+#########################################################
+
+restore [locate_data_file shading_137.brep] s 
+puts [checkshape s]
+
+dset SCALE1 5
+tscale s 0 0 0 SCALE1
+explode s e
+blend sh s  4.5*SCALE1 s_4  4.5*SCALE1 s_5  4.5*SCALE1 s_1
+explode sh so
+
+renamevar sh_1 result 
+fsameparameter result
+
+set square 3.65424e+06
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug144 b/tests/bugs/modalg/bug144
new file mode 100755 (executable)
index 0000000..d58e863
--- /dev/null
@@ -0,0 +1,34 @@
+puts "TODO OCC12345 ALL: Faulty : the distanse is"
+puts "TODO OCC12345 ALL: Error : The length of result shape is"
+
+puts "================"
+puts "BUC60663"
+puts "OCC144"
+puts "================"
+puts ""
+
+restore [locate_data_file buc60663a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60663b.brep] b
+puts [checkshape b]
+
+bsection result a b
+
+puts [checksection result]
+
+regexp {(result_[-0-9.+eE]+$)} [explode result v] full ver
+
+explode b e
+explode b_4 v
+distmini d $ver b_5
+
+regexp {([-0-9.+eE]+)} [dump d_val] full dist
+regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} [ maxtolerance $ver ] full toler
+
+if { [expr $dist > $toler] } {
+    puts "Faulty : the distanse is $dist. It is more $toler."
+}
+
+set length 0
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug16983 b/tests/bugs/modalg/bug16983
new file mode 100755 (executable)
index 0000000..41ca3bf
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "============"
+puts "PRO16983"
+puts "============"
+
+restore [locate_data_file pro16983a.brep] B 
+puts [checkshape B]
+plane p 0 0 0 1 0 0
+vertex v1 0 90.16396 252.4591
+vertex v2 0 252.459 -9.835989
+edge e v2 v1
+wire w e
+featlf B w p -5 0 0 5 0 0 1 1
+featperform lf result
+
+set square 796476
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug174 b/tests/bugs/modalg/bug174
new file mode 100755 (executable)
index 0000000..a59dd68
--- /dev/null
@@ -0,0 +1,15 @@
+#INTERFACE IGES
+puts "========"
+puts "OCC174"
+puts "========"
+puts ""
+###########################################################################
+## After analyze given face (file ff97.brep) using BRepCheck we recieve problem - "Bad Orientation of Subshape".
+## But we believe that this shape must be OK or we have to recieve more detail another reply from BRepCheck.
+###########################################################################
+
+restore [locate_data_file OCC174.brep] result
+
+set square 376.873
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug178_1 b/tests/bugs/modalg/bug178_1
new file mode 100755 (executable)
index 0000000..8e28662
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "================"
+puts "BUC60938"
+puts "OCC178"
+puts "================"
+
+
+restore [locate_data_file BUC60937.brep] a 
+
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bcommon result a_1 a_2
+
+set square 152908
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug178_2 b/tests/bugs/modalg/bug178_2
new file mode 100755 (executable)
index 0000000..e681e48
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "================"
+puts "BUC60937"
+puts "OCC178"
+puts "================"
+
+restore [locate_data_file BUC60937.brep] a 
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bfuse result a_1 a_2
+
+set square 835463
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug178_3 b/tests/bugs/modalg/bug178_3
new file mode 100755 (executable)
index 0000000..beb3466
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "================"
+puts "BUC60936"
+puts "OCC178"
+puts "================"
+
+restore [locate_data_file BUC60937.brep] a 
+
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bcut result a_1 a_2
+
+set square 786002
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug179 b/tests/bugs/modalg/bug179
new file mode 100755 (executable)
index 0000000..e0eeebe
--- /dev/null
@@ -0,0 +1,31 @@
+
+puts "========"
+puts "OCC179"
+puts "========"
+puts ""
+###########################################
+## Bug in meshing of the enclosed face 
+###########################################
+
+restore [locate_data_file OCC179.brep] result
+
+tclean result
+isos result 0
+incmesh result 0.01
+triangles result 
+
+set tri 0
+set nod 0
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri == 1874 || $nod == 1861} {
+    puts " OCC179  shading: OK"
+} else {
+    puts " OCC179  shading: Faulty"
+}
+
+set square 12229.8
+set 3dviewer 0
diff --git a/tests/bugs/modalg/bug18892 b/tests/bugs/modalg/bug18892
new file mode 100755 (executable)
index 0000000..797057c
--- /dev/null
@@ -0,0 +1,36 @@
+puts "TODO OCC12345 ALL: Faulty : Result is BAD. Distance is more than MaxTolerance"
+puts "TODO OCC12345 ALL: Error : The length of result shape is"
+
+puts "=========="
+puts "PRO18892"
+puts "=========="
+# Version de test: K4O, PATCH LEVEL:
+#   GEOMETRY-M4-6A : 3 
+#   GEOMLITE-M4-6A : 1 
+#   TOPOLOGY-M4-6A : 2 
+
+restore [locate_data_file pro18892.rle] a 
+puts [checkshape a]
+
+explode a
+bsection result a_1 a_2 -2d -a
+explode result
+
+mkcurve c result_1
+cvalue c 1 X Y Z 
+vertex v X Y Z
+explode a e
+
+distmini d v a_8
+
+set tol [ maxtolerance a_8 ]
+regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol full MaxEdgeTolerance
+regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol full MaxVertexTolerance
+regexp {([-0-9.+eE]+)} [dump d_val] full d
+
+if { [expr $d > $MaxEdgeTolerance] || [expr $d > $MaxVertexTolerance] } {
+    puts "Faulty : Result is BAD. Distance is more than MaxTolerance"
+}
+
+set length 0
+set 3dviewer 2
\ No newline at end of file
diff --git a/tests/bugs/modalg/bug19424 b/tests/bugs/modalg/bug19424
new file mode 100755 (executable)
index 0000000..d41052b
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "=========="
+puts "PRO19424"
+puts "=========="
+
+restore [locate_data_file pro19424a.brep] b 
+puts [checkshape b]
+restore [locate_data_file pro19424b.brep] p
+puts [checkshape p]
+
+if [catch {evolved result b p o } catch_result] {
+  puts "Faulty PRO19424 : function EVOLVED works wrongly"
+} else {
+  puts "PRO19424 OK: function EVOLVED works properly"
+}
+
+set square 246.506
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug19626 b/tests/bugs/modalg/bug19626
new file mode 100755 (executable)
index 0000000..3eb098b
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "============"
+puts "PRO19626"
+puts "============"
+
+restore [locate_data_file pro19626a.brep] a 
+puts [checkshape a]
+restore [locate_data_file pro19626b.brep] b
+puts [checkshape b]
+
+bsection result a b
+regexp { nb alone Vertices : +([-0-9.+eE]+)} [checksection result] full num
+if { $num != 2 } {
+    puts " Faulty PRO19626: Result shape is INcorrect !!! "
+} else {
+    puts "PRO19626 OK : Result shape is CORRECT !!! "
+}
+
+set length 174.597
+set 3dviewer 2
+
diff --git a/tests/bugs/modalg/bug19653 b/tests/bugs/modalg/bug19653
new file mode 100755 (executable)
index 0000000..f0329c1
--- /dev/null
@@ -0,0 +1,29 @@
+puts "TODO OCC12345 ALL: Faulty : TEST FAILED"
+puts "TODO OCC12345 ALL: Error : The length of result shape is"
+
+puts "============"
+puts "PRO19653"
+puts "BREPALGO_BOOLEANOPERATION does not return result."
+puts "=================================="
+puts "It takes visual check for this BUG"
+puts "=================================="
+
+restore [locate_data_file pro19653a.brep] a 
+puts [checkshape a]
+restore [locate_data_file pro19653b.brep] b
+puts [checkshape b]
+bsection result a b
+
+explode result e
+checkshape result_1
+explode a e
+regexp {Mass +: +([-0-9.+eE]+)} [lprops result_1] full ll_1
+regexp {Mass +: +([-0-9.+eE]+)} [lprops a_4] full ll_2
+if { $ll_1 != $ll_2 } {
+    puts "Faulty : TEST FAILED"
+} else {
+    puts "PRO19653 OK : BREPALGO_BOOLEANOPERATION returns result"
+}
+
+set length 0
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug21 b/tests/bugs/modalg/bug21
new file mode 100755 (executable)
index 0000000..6db7414
--- /dev/null
@@ -0,0 +1,23 @@
+#INTERFACE IGES
+puts "================"
+puts "OCC21"
+puts "================"
+puts ""
+
+#test for XSDRAWEXE application#
+#==============================#
+
+pload XDE
+catch { source $env(CSF_DrawPluginQADefaults)/QARebuildCommands }
+
+restore [locate_data_file OCC21.brep] sh 
+puts [checkshape sh]
+puts "two faces in the compound share one edge"
+
+DT_SplitAngle result sh 90
+
+puts "in the resulting shape sharing is not preserved"
+
+set square 12154.8
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug212_1 b/tests/bugs/modalg/bug212_1
new file mode 100755 (executable)
index 0000000..a6671c7
--- /dev/null
@@ -0,0 +1,17 @@
+puts "========"
+puts "OCC212"
+puts "========"
+################################################
+## Bug in Topological "Common" boolean operation
+################################################
+
+restore [locate_data_file OCC212-1.brep] S1 
+puts [checkshape S1]
+restore [locate_data_file OCC212-2.brep] S2
+puts [checkshape S2]
+
+bcommon result S1 S2
+
+set square 314.301
+set 3dviewer 0
+
diff --git a/tests/bugs/modalg/bug212_2 b/tests/bugs/modalg/bug212_2
new file mode 100755 (executable)
index 0000000..f0c5097
--- /dev/null
@@ -0,0 +1,17 @@
+puts "========"
+puts "OCC212"
+puts "========"
+################################################
+## Bug in Topological "Common" boolean operation
+################################################
+
+restore [locate_data_file OCC212-1.brep] S1 
+puts [checkshape S1]
+restore [locate_data_file OCC212-2.brep] S2
+puts [checkshape S2]
+
+bcommon result S2 S1
+
+set square 314.301
+set 3dviewer 0
+
diff --git a/tests/bugs/modalg/bug213_1 b/tests/bugs/modalg/bug213_1
new file mode 100755 (executable)
index 0000000..bd978a5
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC213"
+puts "========"
+################################################
+## Bug in Topological "fuse" boolean operation
+################################################
+
+restore [locate_data_file OCC213-1.brep] S1 
+puts [checkshape S1]
+restore [locate_data_file OCC213-2.brep] S2
+puts [checkshape S2]
+
+bfuse result S1 S2 
+set square 4835.45
+set 3dviewer 0
+
diff --git a/tests/bugs/modalg/bug213_2 b/tests/bugs/modalg/bug213_2
new file mode 100755 (executable)
index 0000000..bb16519
--- /dev/null
@@ -0,0 +1,15 @@
+puts "========"
+puts "OCC213"
+puts "========"
+################################################
+## Bug in Topological "fuse" boolean operation
+################################################
+
+restore [locate_data_file OCC213-1.brep] S1 
+puts [checkshape S1]
+restore [locate_data_file OCC213-2.brep] S2
+puts [checkshape S2]
+
+bfuse result S2 S1 
+set square 4835.45
+set 3dviewer 0
diff --git a/tests/bugs/modalg/bug221 b/tests/bugs/modalg/bug221
new file mode 100755 (executable)
index 0000000..2042b9e
--- /dev/null
@@ -0,0 +1,30 @@
+#INTERFACE IGES
+puts "========"
+puts "OCC221"
+puts "========"
+puts ""
+######################################################################
+##After loading attached file (one simple face) checkshape give a problem (Bad Orientation of SubShape)
+##  but I believe that this face is correct. Also I believe that face is vitiated during performing checkshape
+##  (perhaps - in BRepCheck_Face::ClassifyWire())
+######################################################################
+
+restore [locate_data_file OCC221.brep] result
+set che [checkshape result r]
+if { [regexp {OK} $che] != 1 } {
+    puts "Faulty OCC221 (checkshape) : Checkshape command works wrongly"
+} else {
+    puts "OCC221 OK (checkshape) : Checkshape command works properly"
+}
+puts ""
+set che [checkshape result]
+if { [regexp {Faulty} $che] == 1} {
+    puts "Faulty OCC221 (checkshape) : Checkshape command works wrongly"
+} else {
+    puts "OCC221 OK (checkshape) : Checkshape command works properly"
+}
+
+set square 425.537
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug234 b/tests/bugs/modalg/bug234
new file mode 100755 (executable)
index 0000000..8aa01c3
--- /dev/null
@@ -0,0 +1,27 @@
+#INTERFACE IGES
+puts "========"
+puts "OCC234"
+puts "========"
+
+######################################################################
+##I believe that attached shape is OK but checkshape finds out some problems (Bad Orientation of Subshape).
+######################################################################
+
+restore [locate_data_file OCC234.brep] result
+
+set che [checkshape result r]
+if { [regexp {OK} $che] != 1 } {
+    puts "Faulty OCC234 (checkshape) : Checkshape command works wrongly"
+} else {
+    puts "OCC234 OK (checkshape) : Checkshape command works properly"
+}
+
+set che [checkshape result]
+if { [regexp {Faulty} $che] == 1 } {
+    puts "Faulty OCC234 (checkshape) : Checkshape command works wrongly"
+} else {
+    puts "OCC234 OK (checkshape) : Checkshape command works properly"
+}
+
+set square 2464.17
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug264_0 b/tests/bugs/modalg/bug264_0
new file mode 100755 (executable)
index 0000000..fb6644c
--- /dev/null
@@ -0,0 +1,29 @@
+
+puts "========"
+puts "OCC264"
+puts " (case 0)"
+puts "========"
+
+restore [locate_data_file OCC264_00.rle] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vclear
+
+isos result 0
+triangles result
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri != 6 && $nod != 8 }  {
+    puts "Faulty OCC264_0: here is shading problem"
+} else {
+    puts "Shading of OCC264_0 is OK"
+}
+
+set square 1.3135
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug264_1 b/tests/bugs/modalg/bug264_1
new file mode 100755 (executable)
index 0000000..904393e
--- /dev/null
@@ -0,0 +1,31 @@
+puts "TODO OCC12345 ALL: Faulty OCC264_1: here is shading problem"
+puts "TODO OCC12345 ALL: Error : The square of result shape is"
+
+puts "========"
+puts "OCC264"
+puts " (case 1)"
+puts "========"
+
+restore [locate_data_file OCC264_01.brep] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vclear
+
+isos result 0
+triangles result
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri != 26 && $nod != 28 }  {
+    puts "Faulty OCC264_1: here is shading problem"
+} else {
+    puts "Shading of OCC264_1 is OK"
+}
+
+set square 0
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug264_6 b/tests/bugs/modalg/bug264_6
new file mode 100755 (executable)
index 0000000..25bc692
--- /dev/null
@@ -0,0 +1,32 @@
+
+puts "========"
+puts "OCC264"
+puts " (case 6)"
+puts "========"
+
+restore [locate_data_file OCC264_06.brep] result 
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vclear
+
+isos result 0
+triangles result
+
+#smallview
+#fit
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri != 18 && $nod != 20 }  {
+    puts "Faulty OCC264_6: here is shading problem"
+} else {
+    puts "Shading of OCC264_6 is OK"
+}
+
+set square 19.2399
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug264_7 b/tests/bugs/modalg/bug264_7
new file mode 100755 (executable)
index 0000000..7c0cf86
--- /dev/null
@@ -0,0 +1,33 @@
+
+puts "========"
+puts "OCC264"
+puts " (case 7)"
+puts "========"
+
+restore [locate_data_file OCC264_07.brep] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vclear
+
+isos result 0
+triangles result
+
+#smallview
+#fit
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { ($tri != 114 && $nod != 116) && ($tri != 116 && $nod != 118) }  {
+    puts "Shady OCC264_7: here may be shading problem"
+} else {
+    puts "Shading of OCC264_7 is OK"
+}
+
+set square 150.283
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug269_1 b/tests/bugs/modalg/bug269_1
new file mode 100755 (executable)
index 0000000..e3c90f2
--- /dev/null
@@ -0,0 +1,26 @@
+
+puts "======== OCC269 ========"
+
+restore [locate_data_file OCC269-1.brep] result
+puts [checkshape result]
+isos result 0
+tclean result
+
+#Creating mesh
+incmesh result 0.01
+
+#View the result of mesh
+triangles result
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+#$tri != 8091 && $nod != 4121,aki251103
+if { $tri != 5853 && $nod !=  2999 }  {
+  puts "Shady OCC269: shading problem may be, nb tri & nod changed"
+} else {
+  puts "Shading of OCC269 is OK"
+}
+set square 32.9479
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug269_2 b/tests/bugs/modalg/bug269_2
new file mode 100755 (executable)
index 0000000..e7120ec
--- /dev/null
@@ -0,0 +1,26 @@
+
+puts "======== OCC269 ========"
+
+restore [locate_data_file OCC269-2.brep] result
+puts [checkshape result]
+isos result 0
+tclean result
+
+#Creating mesh
+incmesh result 0.01
+
+#View the result of mesh
+triangles result
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+# $tri != 7627 && $nod != 3888,aki251103
+if { $tri != 6849 && $nod !=  3498 }  {
+  puts "Shady OCC269: shading problem may be"
+} else {
+  puts "Shading of OCC269 is OK"
+}
+set square 32.9479
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug269_3 b/tests/bugs/modalg/bug269_3
new file mode 100755 (executable)
index 0000000..420cab3
--- /dev/null
@@ -0,0 +1,27 @@
+
+puts "======== OCC269 ========"
+
+restore [locate_data_file OCC269-3.brep] result
+puts [checkshape result]
+isos result 0
+tclean result
+
+#Creating mesh
+incmesh result 0.01
+
+#View the result of mesh
+triangles result
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+# $tri != 7524 && $nod != 3840,aki251103
+if { $tri != 6302 && $nod !=   3226 }  {
+  puts "Shady OCC269: shading problem may be, nb tri & nod changed"
+} else {
+  puts "Shading of OCC269 is OK"
+}
+set square 36.4284
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug269_4 b/tests/bugs/modalg/bug269_4
new file mode 100755 (executable)
index 0000000..22a8f96
--- /dev/null
@@ -0,0 +1,26 @@
+
+puts "======== OCC269 ========"
+
+restore [locate_data_file OCC269-4.brep] result
+puts [checkshape result]
+isos result 0
+tclean result
+
+#Creating mesh
+incmesh result 0.01
+
+#View the result of mesh
+triangles result
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+# $tri != 8362 && $nod != 4257
+if { $tri != 7218 && $nod !=  3685 }  {
+  puts "Shady OCC269: shading problem may be, nb tri & nod changed"
+} else {
+  puts "Shading of OCC269 is OK"
+}
+set square 36.4284
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug291 b/tests/bugs/modalg/bug291
new file mode 100755 (executable)
index 0000000..4b19c83
--- /dev/null
@@ -0,0 +1,33 @@
+
+puts "================= OCC291 ==================="
+
+#################################################################
+## Some triangles of shading mesh are outside of shape boundaries. (See attached shape). 
+#################################################################
+
+restore [locate_data_file shading_171.brep] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vsetdispmode result 1
+
+isos result 0
+triangles result
+
+      set tri 0
+      set nod 0
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+#$tri == 395 && $nod == 350,aki251103.
+if { $tri == 382 && $nod == 343 } {
+       puts " Warning:  OCC291  looks like OK, but visual checking is required !"
+} else {
+       puts " Shady OCC291 : nb tri & nod changed"
+}
+
+set square 376.873
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug292 b/tests/bugs/modalg/bug292
new file mode 100755 (executable)
index 0000000..21a9a53
--- /dev/null
@@ -0,0 +1,35 @@
+
+puts "========================"
+puts " OCC292 "
+puts "========================"
+puts ""
+#################################################################
+## Attached face looks as unclosed but command "checkshape" concludes that it is valid. Inspite of that,
+##  mesh for shading is not creating on this face.
+#################################################################
+
+restore [locate_data_file OCC292.brep] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vsetdispmode result 1
+
+isos result 0
+triangles result
+
+      set tri 0
+      set nod 0
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+if { $tri ==6 && $nod == 8} {
+    puts " Warning:  OCC292  looks like OK, but visual checking is required !!!!"
+} else {
+    puts " OCC292 : Faulty"
+}
+
+set 3dviewer 2
+set square 1.3135
+
diff --git a/tests/bugs/modalg/bug293 b/tests/bugs/modalg/bug293
new file mode 100755 (executable)
index 0000000..a2133c3
--- /dev/null
@@ -0,0 +1,68 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: \\*\\* Exception *\\*\\*.*"
+puts "TODO OCC12345 ALL: TEST INCOMPLETE"
+
+puts "================"
+puts "OCC293"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC293.brep] a 
+tclean a
+puts [checkshape a]
+
+vinit
+#vdisplay a
+#vfit
+
+renamevar a edge
+explode edge e
+
+renamevar edge face
+explode face f
+
+chamf result1 face edge_26 face_5 A 1 45
+puts [checkshape result1]
+
+chamf result2 face edge_30 face_5 A 1 45
+puts [checkshape result2]
+
+chamf result3 face edge_34 face_5 A 1 45
+puts [checkshape result3]
+
+chamf result4 face edge_39 face_5 A 1 45
+puts [checkshape result4]
+
+chamf result5 face edge_35 face_5 A 1 45
+puts [checkshape result5]
+
+chamf result6 face edge_31 face_5 A 1 45
+puts [checkshape result6]
+
+chamf result7 face edge_27 face_5 A 1 45
+puts [checkshape result7]
+
+chamf result8 face edge_24 face_5 A 1 45
+puts [checkshape result8]
+
+# all contour is :
+#chamf result face edge_26 face_5 A 1 45 edge_28 face_5 A 1 45 edge_30 face_5 A 1 45 edge_32 face_5 A 1 45 edge_34 face_5 A 1 45 edge_36 face_5 A 1 45 edge_38 face_5 A 1 45 edge_40 face_5 A 1 45 edge_13 face_5 A 1 45 edge_14 face_5 A 1 45 edge_39 face_5 A 1 45 edge_37 face_5 A 1 45 edge_35 face_5 A 1 45 edge_33 face_5 A 1 45 edge_31 face_5 A 1 45 edge_29 face_5 A 1 45 edge_27 face_5 A 1 45 edge_6 face_5 A 1 45 edge_4 face_5 A 1 45 edge_19 face_5 A 1 45 edge_22 face_5 A 1 45 edge_23 face_5 A 1 45 edge_24 face_5 A 1 45 edge_25 face_5 A 1 45 edge_26 face_5 A 1 45
+
+#checkshape result
+
+vclear
+
+#vdisplay result1
+#vdisplay result2
+#vdisplay result3
+#vdisplay result4
+#vdisplay result5
+#vdisplay result6
+#vdisplay result7
+#vdisplay result8
+compound result1 result2 result3 result4 result5 result6 result7 result8  result
+vdisplay result
+vfit
+
+set square 9.80214e+06
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug297_1 b/tests/bugs/modalg/bug297_1
new file mode 100755 (executable)
index 0000000..6eeb933
--- /dev/null
@@ -0,0 +1,34 @@
+
+puts "========"
+puts "OCC297"
+puts "========"
+
+vertex v1  250  250 0
+vertex v2 -250  250 0
+vertex v3 -250 -250 0
+vertex v4  250 -250 0
+
+edge e1 v1 v2
+edge e2 v2 v3
+edge e3 v3 v4
+edge e4 v4 v1
+
+wire w1 e1 e2 e3 e4
+
+mkplane f w1
+
+set x 0
+set y 0
+
+set Zpoint -100
+set Zbox -30
+
+halfspace hs f $x $y $Zpoint
+
+box b 0 0 $Zbox 150 200 200
+
+bcut result b hs
+
+set square 179000
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug297_2 b/tests/bugs/modalg/bug297_2
new file mode 100755 (executable)
index 0000000..9545811
--- /dev/null
@@ -0,0 +1,33 @@
+
+puts "========"
+puts "OCC297"
+puts "========"
+
+vertex v1  250  250 0
+vertex v2 -250  250 0
+vertex v3 -250 -250 0
+vertex v4  250 -250 0
+
+edge e1 v1 v2
+edge e2 v2 v3
+edge e3 v3 v4
+edge e4 v4 v1
+
+wire w1 e1 e2 e3 e4
+
+mkplane f w1
+
+set x 0
+set y 0
+
+set Zpoint 100
+set Zbox -30
+
+halfspace hs f $x $y $Zpoint
+
+box b 0 0 $Zbox 150 200 200
+
+bcut result b hs
+set square 81000
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug297_3 b/tests/bugs/modalg/bug297_3
new file mode 100755 (executable)
index 0000000..95b0b95
--- /dev/null
@@ -0,0 +1,32 @@
+
+puts "========"
+puts "OCC297"
+puts "========"
+
+vertex v1  250  250 0
+vertex v2 -250  250 0
+vertex v3 -250 -250 0
+vertex v4  250 -250 0
+
+edge e1 v1 v2
+edge e2 v2 v3
+edge e3 v3 v4
+edge e4 v4 v1
+
+wire w1 e1 e2 e3 e4
+
+mkplane f w1
+
+set x 0
+set y 0
+
+set Zpoint -100
+set Zbox -80
+
+halfspace hs f $x $y $Zpoint
+
+box b 0 0 $Zbox 150 200 200
+
+bcut result b hs
+set square 144000
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug297_4 b/tests/bugs/modalg/bug297_4
new file mode 100755 (executable)
index 0000000..9c39fd8
--- /dev/null
@@ -0,0 +1,32 @@
+
+puts "========"
+puts "OCC297"
+puts "========"
+
+vertex v1  250  250 0
+vertex v2 -250  250 0
+vertex v3 -250 -250 0
+vertex v4  250 -250 0
+
+edge e1 v1 v2
+edge e2 v2 v3
+edge e3 v3 v4
+edge e4 v4 v1
+
+wire w1 e1 e2 e3 e4
+
+mkplane f w1
+
+set x 0
+set y 0
+
+set Zpoint 100
+set Zbox -80
+
+halfspace hs f $x $y $Zpoint
+
+box b 0 0 $Zbox 150 200 200
+
+bcut result b hs
+set square 116000
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug298 b/tests/bugs/modalg/bug298
new file mode 100755 (executable)
index 0000000..1865f6e
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "========================"
+puts " OCC298 "
+puts "========================"
+puts ""
+#################################################################
+## Exception during "tcopy" command
+#################################################################
+
+restore [locate_data_file OCC298.brep] result
+puts [checkshape result]
+
+if [catch {tcopy result a } result] {
+  puts "Faulty OCC298: function TCOPY works wrongly"
+} else {
+  puts "OCC298 OK: function TCOPY works properly"
+}
+
+set square 8e+100
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug302_1 b/tests/bugs/modalg/bug302_1
new file mode 100755 (executable)
index 0000000..cc34770
--- /dev/null
@@ -0,0 +1,22 @@
+#INTERFACE IGES
+puts "========================"
+puts " OCC302 "
+puts "(case 1)"
+puts "========================"
+puts ""
+#################################################################
+## After performing command "checkbrep" to attached face I receive "Bad Orientation of Subshape"
+##  but I believe that orientation of this face is correct.
+#################################################################
+
+restore [locate_data_file OCC302a.brep] result
+
+set che [checkshape result r]
+if { [regexp {OK} $che] != 1} {
+    puts "Faulty OCC302 (case 1): command  checkbrep works wrongly"
+} else {
+    puts "OCC302 OK (case 1) :  command  checkbrep works properly"
+}
+
+set square 271.611
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug302_2 b/tests/bugs/modalg/bug302_2
new file mode 100755 (executable)
index 0000000..8cbb70f
--- /dev/null
@@ -0,0 +1,22 @@
+#INTERFACE IGES
+puts "========================"
+puts " OCC302 "
+puts "(case 2)"
+puts "========================"
+puts ""
+#################################################################
+## After performing command "checkbrep" to attached face I receive "Bad Orientation of Subshape"
+##  but I believe that orientation of this face is correct.
+#################################################################
+
+restore [locate_data_file OCC302b.brep] result
+
+set che [checkshape result r]
+if { [regexp {OK} $che] != 1} {
+    puts "Faulty OCC302 (case 2): command  checkbrep works wrongly"
+} else {
+    puts "OCC302 OK (case 2) :  command  checkbrep works properly"
+}
+
+set square 1.93998
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug302_3 b/tests/bugs/modalg/bug302_3
new file mode 100755 (executable)
index 0000000..601bd2b
--- /dev/null
@@ -0,0 +1,22 @@
+#INTERFACE IGES
+puts "========================"
+puts " OCC302 "
+puts "(case 3)"
+puts "========================"
+puts ""
+#################################################################
+## After performing command "checkshape" to attached face I receive "Bad Orientation of Subshape"
+##  but I believe that orientation of this face is correct.
+#################################################################
+
+restore [locate_data_file OCC302c.brep] result
+
+set che [checkshape result r]
+if { [regexp {OK} $che] !=1 } {
+    puts "Faulty OCC302 (case 3): command  checkshape works wrongly"
+} else {
+    puts "OCC302 OK (case 3) :  command  checkshape works properly"
+}
+
+set square 23240.8
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug315 b/tests/bugs/modalg/bug315
new file mode 100755 (executable)
index 0000000..b16f723
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "================"
+puts "OCC315"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC315-1.brep] f1 
+restore [locate_data_file OCC315-2.brep] f2
+puts [checkshape f1]
+puts [checkshape f2]
+
+bcut result f1 f2
+
+set square 58584.1
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug318 b/tests/bugs/modalg/bug318
new file mode 100755 (executable)
index 0000000..07e02d1
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========================"
+puts " OCC318 "
+puts "========================"
+puts ""
+##################################################
+## Checkshape works wrong with Semi-Infinite Prism (s)
+##################################################
+
+box mb -0.5 -0.5 -0.5 1 1 1 
+explode mb F 
+prism result mb_1 1 0 0 SemiInf 
+
+set che [checkshape result]
+if { [regexp {Faulty} $che] == 1} {
+    puts "Faulty OCC318: Result shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC318 OK: Result shape is valid"
+}
+
+set square 8e+100
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug322 b/tests/bugs/modalg/bug322
new file mode 100755 (executable)
index 0000000..77c1979
--- /dev/null
@@ -0,0 +1,30 @@
+pload QAcommands
+puts "================"
+puts "OCC322"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC322.brep] a 
+puts [checkshape a]
+
+sewing result a
+
+vinit
+vdisplay result
+vfit
+
+set Yellow_R 1
+set Yellow_G 1
+set Yellow_B 0
+
+set x1 204
+set y1 297
+
+set x2 251
+set y2 230
+
+QAGetPixelColor $x1 $y1 $Yellow_R $Yellow_G $Yellow_B
+QAGetPixelColor $x2 $y2 $Yellow_R $Yellow_G $Yellow_B
+
+set square 20000
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug323 b/tests/bugs/modalg/bug323
new file mode 100755 (executable)
index 0000000..87a1c60
--- /dev/null
@@ -0,0 +1,51 @@
+
+puts "================"
+puts "OCC323"
+puts "OCC229"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC323.brep] f 
+explode f
+
+decho off
+set che [checkshape f_1]
+decho on
+
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Warning OCC323 (shape1): Source shape is NOT correct. It was detected by Checkshape command"
+} else {
+    puts "OCC323 OK (shape1): Source shape is valid"
+}
+
+decho off
+set che [checkshape f_2]
+decho on
+
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Warning OCC323 (shape2): Source shape is NOT correct. It was detected by Checkshape command"
+} else {
+    puts "OCC323 OK (shape2): Source shape is valid"
+}
+
+bsection r f_1 f_2
+puts [checkshape r]
+puts [checksection r]
+
+decho off
+set che [checkshape f_3]
+decho on
+
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Warning OCC323 (shape3): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC323 OK (shape3): Source shape is valid"
+}
+
+bsection result f_1 f_3
+
+set length 1
+set 2dviewer 0
+
+
+
diff --git a/tests/bugs/modalg/bug327_1 b/tests/bugs/modalg/bug327_1
new file mode 100755 (executable)
index 0000000..f684494
--- /dev/null
@@ -0,0 +1,18 @@
+#INTERFACE IGES
+puts "========================"
+puts " OCC327 "
+puts " case 1 "
+puts "========================"
+
+restore [locate_data_file OCC327a.brep] result
+
+set che [checkshape result r]
+if { [regexp {OK} $che] == 1 } {
+    puts " OCC327  case 1: OK"
+} else {
+    puts " OCC327  case 1: Faulty"
+}
+
+set square 1477.93
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug327_2 b/tests/bugs/modalg/bug327_2
new file mode 100755 (executable)
index 0000000..ab39952
--- /dev/null
@@ -0,0 +1,17 @@
+#INTERFACE IGES
+puts "========================"
+puts " OCC327 "
+puts " case 2 "
+puts "========================"
+
+restore [locate_data_file OCC327b.brep] result
+
+set che [checkshape result r]
+if { [regexp {OK} $che] == 1 } {
+    puts " OCC327  case 2: OK"
+} else {
+    puts " OCC327  case 2: Faulty"
+}
+
+set square 5674.84
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug334 b/tests/bugs/modalg/bug334
new file mode 100755 (executable)
index 0000000..0c81a94
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "============"
+puts "BUC60928"
+puts "OCC334"
+puts "============"
+
+restore [locate_data_file BUC60928.brep] a 
+
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bcut result a_2 a_1
+
+set square 358258
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug335 b/tests/bugs/modalg/bug335
new file mode 100755 (executable)
index 0000000..72684cc
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "============"
+puts "BUC60931"
+puts "OCC335"
+puts "============"
+puts ""
+#################################################################################
+## It's impossible to make boolean operations (common)for the two solids in the file attached. Samcef Modeler project bug
+#################################################################################
+
+restore [locate_data_file BUC60931.brep] a 
+
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bcommon result a_1 a_2
+
+set square 22715.9
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug336 b/tests/bugs/modalg/bug336
new file mode 100755 (executable)
index 0000000..83cbaba
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "============"
+puts "BUC60939"
+puts "OCC336"
+puts "============"
+
+restore [locate_data_file BUC60939.brep] a 
+
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bfuse result a_1 a_2
+
+set square 32903.1
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug338 b/tests/bugs/modalg/bug338
new file mode 100755 (executable)
index 0000000..9b35e2b
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "========"                                                                 
+puts "BUC60996"                                                                 
+puts "OCC338"
+puts "========"                                                                 
+puts ""                                                                         
+
+restore [locate_data_file buc60996.brep] b 
+explode b
+puts [checkshape b_1]
+puts [checkshape b_2]
+
+bfuse f1 b_1 b_2                                                                 
+puts [checkshape f1]
+bfuse result b_2 b_1                                                                 
+
+set square 73561.9
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug340 b/tests/bugs/modalg/bug340
new file mode 100755 (executable)
index 0000000..ed474b7
--- /dev/null
@@ -0,0 +1,13 @@
+
+puts "========"                                                                 
+puts "BUC61005"                                                                 
+puts "OCC340"
+puts "========"                                                                 
+puts ""                                                                         
+
+restore [locate_data_file buc61005.brep] w 
+puts [checkshape w]
+revol result w 0 0 0 0 0 1 360 1                                                     
+
+set square 55795.4
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug341 b/tests/bugs/modalg/bug341
new file mode 100755 (executable)
index 0000000..eafc0ff
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========"
+puts "BUC61008"
+puts "OCC341"
+puts "========"
+puts ""
+
+restore [locate_data_file buc61008.brep] w 
+puts [checkshape w]
+
+mkplane f w
+prism result f 0 0 100
+
+set square 24991
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug347_1 b/tests/bugs/modalg/bug347_1
new file mode 100755 (executable)
index 0000000..3d5bc2b
--- /dev/null
@@ -0,0 +1,31 @@
+puts "========================"
+puts " BUC60959 "
+puts " OCC347 "
+puts " (case 1) "
+puts "========================"
+
+restore [locate_data_file OCC347a.brep] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vfit
+vsetdispmode result 1
+set 3dviewer 1
+
+set tri 0
+set nod 0
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri == 72 && $nod == 74} {
+    puts " OCC347  case 1: OK"
+} else {
+    puts " OCC347  case 1: Faulty"
+}
+
+set square 314.159
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug347_2 b/tests/bugs/modalg/bug347_2
new file mode 100755 (executable)
index 0000000..c371a4c
--- /dev/null
@@ -0,0 +1,32 @@
+puts "========================"
+puts " BUC60959 "
+puts " OCC347 "
+puts " (case 2) "
+puts "========================"
+
+restore [locate_data_file OCC347b.brep] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vfit
+vsetdispmode result 1
+set 3dviewer 1
+
+set tri 0
+set nod 0
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri == 71 && $nod == 73} {
+       puts " OCC347  case 2: OK"
+} else {
+       puts " OCC347  case 2: Faulty"
+}
+
+set square 100.531
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug356 b/tests/bugs/modalg/bug356
new file mode 100755 (executable)
index 0000000..17da7dd
--- /dev/null
@@ -0,0 +1,36 @@
+
+puts "================"
+puts "OCC356"
+puts "================"
+puts ""
+#######################################################
+## The Draw command "wexplo" gives one edge instead of 6 for the face. 
+#######################################################
+
+restore [locate_data_file OCC356.brep] result
+puts [checkshape result]
+
+explode result w
+
+wexplo result_1 result
+
+set nom 0
+set j 1
+repeat 10 {
+    set err ""
+    regexp { is a shape ([A-Z]+)} [whatis WEDGE_$j] full err
+    if { $err != "EDGE"} {
+       break
+    } else {
+       set nom [expr $nom + 1]
+    }
+    incr j
+}
+if { $nom != 6} {
+    puts "Faulty OCC356 : Command WEXPLO works WRONGLY"
+} else {
+    puts "OCC356 OK  :  Command WEXPLO works properly"
+}
+
+set square 6207.83
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug407_1 b/tests/bugs/modalg/bug407_1
new file mode 100755 (executable)
index 0000000..17da337
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "========================"
+puts " OCC407 "
+puts "(case 1)"
+puts "========================"
+puts ""
+
+pcylinder b1 1 4
+pcylinder b2 1 4
+trotate b2 0 0 2 1 0 0 90
+trotate b2 0 0 2 0 1 0 60
+
+bfuse result  b2 b1 
+checkshape -top result
+
+set square 46.8319
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug407_2 b/tests/bugs/modalg/bug407_2
new file mode 100755 (executable)
index 0000000..3d925fc
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "========================"
+puts " OCC407 "
+puts "(case 2)"
+puts "========================"
+puts ""
+
+pcylinder b1 1 4
+pcylinder b2 1 4
+trotate b2 0 0 2 1 0 0 90
+trotate b2 0 0 2 0 1 0 60
+
+bcut result b2 b1 
+checkshape -top result
+
+set square 31.4159
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug409 b/tests/bugs/modalg/bug409
new file mode 100755 (executable)
index 0000000..4b4ab61
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "========================"
+puts " OCC409 "
+puts "========================"
+puts ""
+
+restore [locate_data_file f2] b1 
+puts [checkshape b1]
+
+restore [locate_data_file f6] b2
+puts [checkshape b2]
+
+bcommon result b1 b2
+
+set square 45.5929
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug410_1 b/tests/bugs/modalg/bug410_1
new file mode 100755 (executable)
index 0000000..2e2816c
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "========================"
+puts " OCC410 "
+puts "(case 1)"
+puts "========================"
+puts ""
+
+restore [locate_data_file f7] b1 
+puts [checkshape b1]
+
+restore [locate_data_file f3] b2
+puts [checkshape b2]
+
+bcommon result b1 b2
+
+set square 63.4508
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug410_2 b/tests/bugs/modalg/bug410_2
new file mode 100755 (executable)
index 0000000..61b7625
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "========================"
+puts " OCC410 "
+puts "(case 2)"
+puts "========================"
+puts ""
+
+restore [locate_data_file f7] b1 
+puts [checkshape b1]
+
+restore [locate_data_file f3] b2
+puts [checkshape b2]
+
+bfuse result b1 b2
+
+set square 172.169
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug411 b/tests/bugs/modalg/bug411
new file mode 100755 (executable)
index 0000000..9d051c7
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "========================"
+puts " OCC411 "
+puts "========================"
+puts ""
+
+restore [locate_data_file f4] b1 
+puts [checkshape b1]
+
+restore [locate_data_file f5] b2
+puts [checkshape b2]
+
+bfuse result b1 b2
+
+set square 314.159
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug412 b/tests/bugs/modalg/bug412
new file mode 100755 (executable)
index 0000000..ec3e684
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "========================"
+puts " OCC412 "
+puts "========================"
+puts ""
+
+restore [locate_data_file f2] b1 
+puts [checkshape b1]
+
+restore [locate_data_file f3] b2
+puts [checkshape b2]
+
+bcut result b1 b2
+
+set square 43.6332
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug413_1 b/tests/bugs/modalg/bug413_1
new file mode 100755 (executable)
index 0000000..0c61f3a
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "========================"
+puts " OCC413 "
+puts "(case 1)"
+puts "========================"
+puts ""
+
+restore [locate_data_file so1] b1 
+puts [checkshape b1]
+
+restore [locate_data_file so4] b2
+puts [checkshape b2]
+
+bcommon result b1 b2
+
+set square 549.779
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug413_2 b/tests/bugs/modalg/bug413_2
new file mode 100755 (executable)
index 0000000..39b5bd1
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "========================"
+puts " OCC413 "
+puts "(case 2)"
+puts "========================"
+puts ""
+
+restore [locate_data_file so1] b1 
+puts [checkshape b1]
+
+restore [locate_data_file so4] b2
+puts [checkshape b2]
+
+bcut result b1 b2
+
+set square 863.938
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug415 b/tests/bugs/modalg/bug415
new file mode 100755 (executable)
index 0000000..5a2b3e2
--- /dev/null
@@ -0,0 +1,32 @@
+
+puts "========================"
+puts " OCC415 "
+puts "PRO5557"
+puts "========================"
+puts ""
+
+restore [locate_data_file pro5557_revol.brep] revol1 
+puts [checkshape revol1]
+restore [locate_data_file pro5557_bsurf.brep] bsurf2
+puts [checkshape bsurf2]
+
+zoom 660
+normals bsurf2 0.27
+point pnt1 0 -0.3 0
+halfspace space2 bsurf2 0 -0.3 0
+
+bcut result revol1 space2
+
+set testinfos(info)  \
+    "pro5557 : cut a cylinder by an infinite surface extrusion"
+set testinfos(infoX) -0.2
+set testinfos(infoY) -0.2
+set testinfos(infoZ)  -0.34
+set testinfos(infoZ2) -0.3
+
+checkshape -top result
+
+set square 0.402138
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug417 b/tests/bugs/modalg/bug417
new file mode 100755 (executable)
index 0000000..c6fd611
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "========================"
+puts " OCC417 "
+puts "CTS21128"
+puts "========================"
+puts ""
+
+restore [locate_data_file cts21128c.rle] c 
+puts [checkshape c]
+
+restore [locate_data_file cts21128d.rle] d
+puts [checkshape d]
+
+bcut result c d
+
+set square 2814.01
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug437 b/tests/bugs/modalg/bug437
new file mode 100755 (executable)
index 0000000..6700981
--- /dev/null
@@ -0,0 +1,21 @@
+#INTERFACE IGES
+puts "========================"
+puts " OCC437 "
+puts "========================"
+puts ""
+##########################################
+## different checkshape result under ros and rosdeb in KAS:dev.
+##########################################
+
+restore [locate_data_file OCC437.brep] result
+
+set che [checkshape result r]
+
+if { [regexp {OK} $che] != 1 } {
+    puts " Faulty OCC437: function CHECKSHAPE works wrongly"
+} else {
+    puts " OCC437  OK: function CHECKSHAPE works properly"
+}
+
+set square 0.000201234
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug442 b/tests/bugs/modalg/bug442
new file mode 100755 (executable)
index 0000000..67147dc
--- /dev/null
@@ -0,0 +1,33 @@
+
+puts "========"                                                                 
+puts "OCC442"
+puts "========"                                                                 
+puts ""                                                                         
+########################################################
+## The Revolution Algo produces result, but during check using IsValid method from
+##  BRepAlgoAPI the exception is raised
+########################################################
+
+restore [locate_data_file OCC442.brep] a 
+puts [checkshape a]
+
+explode a v
+
+mkpoint p_1 a_1
+mkpoint p_2 a_3
+coord p_1 x1 y1 z1
+coord p_2 x2 y2 z2
+set ax [dval x1]
+set ay [dval y1]
+set az [dval z1]
+set bx [dval x2]
+set by [dval y2]
+set bz [dval z2]
+set dx [expr $ax - $bx]
+set dy [expr $ay - $by]
+set dz [expr $az - $bz]
+
+revol result a $ax $ay $az $dx $dy $dz 360
+
+set square 692942
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug446_2 b/tests/bugs/modalg/bug446_2
new file mode 100755 (executable)
index 0000000..9fb2504
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "========"
+puts "OCC446"
+puts "OCC447"
+puts "(case 2)"
+puts "========"
+puts ""
+######################################
+## As result I have fail on shape that it is not closed.
+######################################
+
+restore [locate_data_file OCC446b.brep] result
+
+set che [checkshape result]
+if { [regexp {Faulty} $che ] == 1} {
+    puts "Faulty OCC446 (case 2): Source shape is NotClosed"
+} else {
+    puts "OCC446 OK (case 2): Source shape is Closed"
+}
+set square 24272.8
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug446_3 b/tests/bugs/modalg/bug446_3
new file mode 100755 (executable)
index 0000000..bc8bfdb
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========"
+puts "OCC446"
+puts "OCC447"
+puts "(case 3)"
+puts "========"
+puts ""
+######################################
+## As result I have fail on shape that it is not closed.
+######################################
+
+restore [locate_data_file OCC446c.brep] result
+
+set che [checkshape result]
+if { [regexp {Faulty} $che ] == 1} {
+    puts "Faulty OCC446 (case 3): Source shape is NotClosed"
+} else {
+    puts "OCC446 OK (case 3): Source shape is Closed"
+}
+set square 13694.6
+set 3dviewer 2
+
diff --git a/tests/bugs/modalg/bug446_4 b/tests/bugs/modalg/bug446_4
new file mode 100755 (executable)
index 0000000..834f6af
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "========"
+puts "OCC446"
+puts "OCC447"
+puts "(case 4)"
+puts "========"
+puts ""
+######################################
+## As result I have fail on shape that it is not closed.
+######################################
+
+restore [locate_data_file OCC446d.brep] result
+
+set che [checkshape result]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC446 (case 4): Source shape is NotClosed"
+} else {
+    puts "OCC446 OK (case 4): Source shape is Closed"
+}
+set square 629.347
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug449 b/tests/bugs/modalg/bug449
new file mode 100755 (executable)
index 0000000..ef5b99c
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "========================"
+puts " OCC449 "
+puts "========================"
+puts ""
+#######################
+## Invalid cut result
+#######################
+
+restore [locate_data_file OCC449a.brep] b1 
+puts [checkshape b1]
+
+restore [locate_data_file OCC449b.brep] b2
+puts [checkshape b2]
+
+bcut result b1 b2
+
+set square 43401.5
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug474 b/tests/bugs/modalg/bug474
new file mode 100755 (executable)
index 0000000..8c2f82d
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "========================"
+puts " OCC474 "
+puts "========================"
+puts ""
+##################################################
+## impossible to put a fillet to none of 5 edges sharing one vertrex
+##################################################
+
+restore [locate_data_file OCC474.brep] s 
+
+explode s e
+
+blend result s 100 s_16
+
+set square 1.54883e+06
+set 3dviewer 1
diff --git a/tests/bugs/modalg/bug481 b/tests/bugs/modalg/bug481
new file mode 100755 (executable)
index 0000000..00e9059
--- /dev/null
@@ -0,0 +1,33 @@
+puts "========================"
+puts " OCC481 "
+puts "========================"
+puts ""
+##########################################
+##Attached shape could not be displayed in the Shading mode.
+##########################################
+
+restore [locate_data_file OCC481.rle] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vfit
+vsetdispmode result 1
+
+set tri 0
+set nod 0
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+
+if { $tri == 72 && $nod == 74 } {
+    puts " OCC481 : OK"
+} else {
+    puts " OCC481 : Faulty"
+}
+
+set square 314.159
+set 3dviewer 1
diff --git a/tests/bugs/modalg/bug485 b/tests/bugs/modalg/bug485
new file mode 100755 (executable)
index 0000000..9b4fbe0
--- /dev/null
@@ -0,0 +1,24 @@
+
+puts "========="
+puts " OCC485 "
+puts "========="
+puts ""
+#######################################
+## Draw hangs up during performing fuse operation
+#######################################
+
+restore [locate_data_file OCC485a.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC485a.brep] a_2
+puts [checkshape a_2]
+
+if [catch {bfuse result a_1 a_2 } result] {
+    puts "Faulty OCC485: Draw hangs up during performing fuse operation"
+} else {
+    puts "OCC485 OK: function FUSE works without Draw hangs up "
+}
+
+set square 9291.88
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug487 b/tests/bugs/modalg/bug487
new file mode 100755 (executable)
index 0000000..d5303d2
--- /dev/null
@@ -0,0 +1,30 @@
+
+puts "========================"
+puts " OCC487 "
+puts "========================"
+#######################################################
+## Regression on KAS:dev:ros with respect to OCC4.0
+## Case cfi 900 N3.
+## Fillets are created on OCC4.0
+#######################################################
+
+restore [locate_data_file CFI_pro15441.rle] m 
+explode m e
+
+if [catch {blend result  m 2 m_36 2 m_21 } result] {
+    puts "Faulty OCC485: function BLEND works wrongly"
+} else {
+    puts "OCC485 OK: function BLEND works properly "
+}
+
+explode result sh
+
+renamevar result_1 result
+
+set square 6265.68
+set 3dviewer 1
+
+
+
+
+
diff --git a/tests/bugs/modalg/bug488 b/tests/bugs/modalg/bug488
new file mode 100755 (executable)
index 0000000..b3637a8
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========="
+puts " OCC488 "
+puts "========="
+puts ""
+########################################################
+## Boolean operation returns invalid result, it lead to regression on test cfe/002/C1
+########################################################
+
+restore [locate_data_file OCC488a.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC488b.brep] a_2
+puts [checkshape a_2]
+
+if [catch {bcommon result a_1 a_2 } catch_result] {
+    puts "Faulty OCC488: command COMMON works wrongly"
+} else {
+    puts "OCC488 OK: function COMMON works properly "
+}
+set square 92466.8
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug490 b/tests/bugs/modalg/bug490
new file mode 100755 (executable)
index 0000000..874f5c9
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========="
+puts " OCC490 "
+puts "========="
+puts ""
+########################################################
+## Result of fuse operation is faulty shape although arguments are valid
+########################################################
+
+restore [locate_data_file OCC490a.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC490b.brep] a_2
+puts [checkshape a_2]
+
+if [catch {bfuse result a_1 a_2 } catch_result] {
+    puts "Faulty OCC490: command FUSE works wrongly"
+} else {
+    puts "OCC490 : function FUSE works without hangs up "
+}
+set square 2744.08
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug492 b/tests/bugs/modalg/bug492
new file mode 100755 (executable)
index 0000000..864ee44
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========="
+puts " OCC492 "
+puts "========="
+puts ""
+##############################
+## Exception occurs during fuse operation 
+##############################
+
+restore [locate_data_file OCC492a.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC492b.brep] a_2
+puts [checkshape a_2]
+
+if [catch {bfuse result a_1 a_2 } catch_result] {
+    puts "Faulty OCC492: command FUSE works wrongly"
+} else {
+    puts "OCC492 : function FUSE works without hangs up "
+}
+set square 64.2386
+set 3dviewer 1
diff --git a/tests/bugs/modalg/bug497_2 b/tests/bugs/modalg/bug497_2
new file mode 100755 (executable)
index 0000000..d7b82ba
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "========="
+puts " OCC497 "
+puts "(case 2)"
+puts "========="
+puts ""
+########################################################
+## Result of cut and fuse operation are faulty shapes although arguments are valid.
+########################################################
+
+restore [locate_data_file OCC497c.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC497d.brep] a_2
+puts [checkshape a_2]
+
+if [catch {bcut result a_1 a_2 } catch_result] {
+    puts "Faulty OCC497:function CUT works wrongly "
+} else {
+    puts "OCC497 : function CUT works without hangs up "
+}
+set square 2225.65
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug497_4 b/tests/bugs/modalg/bug497_4
new file mode 100755 (executable)
index 0000000..9f62dac
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "========="
+puts " OCC497 "
+puts "(case 4)"
+puts "========="
+puts ""
+########################################################
+## Result of cut and fuse operation are faulty shapes although arguments are valid.
+########################################################
+
+restore [locate_data_file OCC497g.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC497h.brep] a_2
+puts [checkshape a_2]
+
+if [catch {bfuse result a_1 a_2 } catch_result] {
+    puts "Faulty OCC497:function FUSE works wrongly "
+} else {
+    puts "OCC497 : function FUSE works without hangs up "
+}
+set square 8710.56
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug497_5 b/tests/bugs/modalg/bug497_5
new file mode 100755 (executable)
index 0000000..887cfef
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "========="
+puts " OCC497 "
+puts "(case 5)"
+puts "========="
+puts ""
+########################################################
+## Result of cut and fuse operation are faulty shapes although arguments are valid.
+########################################################
+
+restore [locate_data_file OCC497i.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC497j.brep] a_2
+puts [checkshape a_2]
+
+if [catch {bfuse result a_1 a_2 } catch_result] {
+    puts "Faulty OCC497:function FUSE works wrongly "
+} else {
+    puts "OCC497 : function FUSE works without hangs up "
+}
+set square 3233.42
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug500 b/tests/bugs/modalg/bug500
new file mode 100755 (executable)
index 0000000..2df8f63
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========="
+puts " OCC500 "
+puts "========="
+puts ""
+###############################
+## Result of pipe command of Draw is faulty
+###############################
+
+restore [locate_data_file OCC500a.brep] a_1 
+puts [checkshape a_1]
+
+restore [locate_data_file OCC500b.brep] a_2
+puts [checkshape a_2]
+
+if [catch {pipe result a_1 a_2 } catch_result] {
+    puts "Faulty OCC500 : function PIPE works wrongly "
+} else {
+    puts "OCC500 : function PIPE works without hangs up "
+}
+set square 1246.13
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug501 b/tests/bugs/modalg/bug501
new file mode 100755 (executable)
index 0000000..9a0ab77
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "========="
+puts " OCC501 "
+puts "========="
+puts ""
+##################################################
+## Exception during tcopy command (only in 3.0fix), SAM1339 (#2137) 
+###################################################
+
+restore [locate_data_file OCC501.brep] result
+
+if [catch {tcopy result b } catch_result] {
+    puts "Faulty OCC501 : function TCOPY works wrongly "
+} else {
+    puts "OCC501 OK: function TCOPY works without hangs up "
+}
+set square 121895
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60409_1 b/tests/bugs/modalg/bug60409_1
new file mode 100755 (executable)
index 0000000..1aceec9
--- /dev/null
@@ -0,0 +1,28 @@
+
+puts "=============="
+puts "   BUC60409   "
+puts "     FUSE     "
+puts "=============="
+
+restore [locate_data_file buc60409a.brep] c 
+restore [locate_data_file buc60409b.brep] s
+
+set che [checkshape c]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty BUC60409 (shape 1): Source shape is invalid. It was detected by Checkshape command"
+    puts "Body of the script was NOT executed"
+    renamevar c result
+} else {
+    puts "BUC60409 OK (shape 1): Source shape is valid"
+    set che [checkshape s]
+    if { [regexp {Faulty} $che ] == 1 } {
+        puts "Faulty BUC60409 (shape 2): Source shape is invalid. It was detected by Checkshape command"
+       puts "Body of the script was NOT executed"
+       renamevar s result
+    } else {
+       puts "BUC60409 OK (shape 2): Source shape is valid"
+       bfuse result c s
+    }
+}
+set square 39.0894
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60409_2 b/tests/bugs/modalg/bug60409_2
new file mode 100755 (executable)
index 0000000..3ebd2a1
--- /dev/null
@@ -0,0 +1,28 @@
+
+puts "============="
+puts "   BUC60409  "
+puts "     CUT     "
+puts "============="
+
+restore [locate_data_file buc60409a.brep] c 
+restore [locate_data_file buc60409b.brep] s
+
+set che [checkshape c]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty BUC60409 (shape 1): Source shape is invalid. It was detected by Checkshape command"
+    puts "Body of the script was NOT executed"
+    renamevar c result
+} else {
+    puts "BUC60409 OK (shape 1): Source shape is valid"
+    set che [checkshape s]
+    if { [regexp {Faulty} $che ] == 1 } {
+        puts "Faulty BUC60409 (shape 2): Source shape is invalid. It was detected by Checkshape command"
+        puts "Body of the script was NOT executed"
+       renamevar s result
+    } else {
+       puts "BUC60409 OK (shape 2): Source shape is valid"
+       bcut result c s
+    }
+}
+set square 31.8476
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60409_3 b/tests/bugs/modalg/bug60409_3
new file mode 100755 (executable)
index 0000000..824156f
--- /dev/null
@@ -0,0 +1,29 @@
+
+puts "================="
+puts "     BUC60409    "
+puts "      COMMON     "
+puts "================="
+
+restore [locate_data_file buc60409a.brep] c 
+restore [locate_data_file buc60409b.brep] s
+
+set che [checkshape c]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty BUC60409 (shape 1): Source shape is invalid. It was detected by Checkshape command"
+    puts "Body of the script was NOT executed"
+    renamevar c result
+} else {
+    puts "BUC60409 OK (shape 1): Source shape is valid"
+
+    set che [checkshape s]
+    if { [regexp {Faulty} $che ] == 1 } {
+        puts "Faulty BUC60409 (shape 2): Source shape is invalid. It was detected by Checkshape command"
+       puts "Body of the script was NOT executed"
+       renamevar s result
+    } else {
+       puts "BUC60409 OK (shape 2): Source shape is valid"
+       bcommon result c s
+    }
+}
+set square 4.89279
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60523 b/tests/bugs/modalg/bug60523
new file mode 100755 (executable)
index 0000000..9a24899
--- /dev/null
@@ -0,0 +1,12 @@
+
+puts "========================"
+puts "BUC60523"
+puts "========================"
+
+restore [locate_data_file buc60523a.brep] a
+puts [checkshape a]
+sewing result 1.e-7 a
+set square 156.919
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug60531_1 b/tests/bugs/modalg/bug60531_1
new file mode 100755 (executable)
index 0000000..4a8870f
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========================"
+puts "BUC60531"
+puts "========================"
+
+restore [locate_data_file buc60531a.brep] r1
+puts [checkshape r1]
+restore [locate_data_file buc60531b.brep] pl1
+puts [checkshape pl1]
+
+bcut result r1 pl1
+
+set square 115935
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60531_2 b/tests/bugs/modalg/bug60531_2
new file mode 100755 (executable)
index 0000000..ac3d913
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "========================"
+puts "BUC60531"
+puts "========================"
+
+restore [locate_data_file buc60531a.brep] r1
+puts [checkshape r1]
+
+restore [locate_data_file buc60531b.brep] pl1
+puts [checkshape pl1]
+
+bcut r2 r1 pl1
+puts [checkshape r2]
+
+restore [locate_data_file buc60531c.brep] pl2
+puts [checkshape pl2]
+
+bcut result r2 pl2
+
+set square 115935
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60532 b/tests/bugs/modalg/bug60532
new file mode 100755 (executable)
index 0000000..1d3de46
--- /dev/null
@@ -0,0 +1,23 @@
+#INTERFACE IGES
+puts "==========="
+puts "BUC60532"
+puts "==========="
+
+restore [locate_data_file buc60532a.brep] p 
+puts [checkshape p]
+
+restore [locate_data_file buc60532b.brep] t1
+puts [checkshape t1]
+
+restore [locate_data_file buc60532c.brep] t2
+puts [checkshape t2]
+
+# create halfspace
+halfspace h1 t1 20 20 0
+halfspace h2 t2 20 20 0
+
+# first cut
+bcut result p h1
+
+set square 81.8172
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60532_1 b/tests/bugs/modalg/bug60532_1
new file mode 100755 (executable)
index 0000000..4c72b37
--- /dev/null
@@ -0,0 +1,24 @@
+#INTERFACE IGES
+puts "==========="
+puts "BUC60532"
+puts "==========="
+
+restore [locate_data_file buc60532a.brep] p 
+puts [checkshape p]
+
+restore [locate_data_file buc60532b.brep] t1
+puts [checkshape t1]
+
+restore [locate_data_file buc60532c.brep] t2
+puts [checkshape t2]
+
+# create halfspace
+halfspace h1 t1 20 20 0
+halfspace h2 t2 20 20 0
+
+# first cut
+bcut result p h1
+
+set square 81.8172
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60532_2 b/tests/bugs/modalg/bug60532_2
new file mode 100755 (executable)
index 0000000..66d4897
--- /dev/null
@@ -0,0 +1,53 @@
+#INTERFACE IGES
+puts "=========="
+puts "BUC60532"
+puts "=========="
+
+restore [locate_data_file buc60532a.brep] p 
+puts [checkshape p]
+
+restore [locate_data_file buc60532b.brep] t1
+puts [checkshape t1]
+
+restore [locate_data_file buc60532c.brep] t2
+puts [checkshape t2]
+
+# create halfspace
+#vertex v 20 20 0
+halfspace h1 t1 20 20 0
+halfspace h2 t2 20 20 0
+
+# first cut
+bcut res1 p h1
+
+explode res1 e
+mkcurve cu11 res1_1
+mkcurve cu12 res1_2
+mkcurve cu13 res1_3
+mkcurve cu14 res1_4
+mkcurve cu15 res1_5
+
+puts [checkshape res1]
+puts [computetolerance res1]
+
+# second cut
+bcut res2 res1 h2
+tcopy res2 res
+puts [checkshape res2]
+
+explode res2 e
+mkcurve cu21 res2_1
+mkcurve cu22 res2_2
+mkcurve cu23 res2_3
+mkcurve cu24 res2_4
+mkcurve cu25 res2_5
+
+explode res2 face
+
+puts [computetolerance res2]
+
+renamevar res2 result
+
+set square 78.8705
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60533 b/tests/bugs/modalg/bug60533
new file mode 100755 (executable)
index 0000000..de34d22
--- /dev/null
@@ -0,0 +1,70 @@
+#INTERFACE IGES
+puts "=========="
+puts "BUC60533"
+puts "=========="
+
+restore [locate_data_file buc60533a.brep] part 
+puts [checkshape part]
+#puts "Tolerance part"
+#computetolerance part
+
+restore [locate_data_file buc60533b.brep] trTool
+puts [checkshape trTool]
+#puts "Tolerance trTool"
+#computetolerance trTool
+
+# create halfspace
+vertex v  10000 15000 -15000
+halfspace hs trTool 10000 15000 -15000
+#puts "Tolerance hs"
+#computetolerance hs
+
+#*************************************************
+if [catch {bcut result part hs} catch_result] {
+    puts "Faulty BUC60533: function CUT works wrongly"
+} else {
+    puts " BUC60533 OK: function CUT works properly"
+}
+#*************************************************
+
+#set che [checkshape res r]
+#set err [lindex $che [expr [llength $che] - 1]]
+#if { $err != "OK"} {
+#  puts "Faulty : mistakes are found in checked shape by checkshape command"
+#} else {
+#  puts "Checking by checkshape - OK"
+
+#explode res e
+#mkcurve cu1 res_1
+#mkcurve cu2 res_2
+#mkcurve cu3 res_3
+#mkcurve cu4 res_4
+#mkcurve cu5 res_5
+
+#checkshape res
+
+#set tolerance [ maxtolerance res ]
+#set MaxFaceTolerance [ lindex $tolerance 14 ]
+#set MaxEdgeTolerance [ lindex $tolerance 20 ]
+#set MaxVertexTolerance [ lindex $tolerance 26 ]
+#if { $MaxFaceTolerance > 1 || $MaxEdgeTolerance > 1 || $MaxVertexTolerance > 1 } {
+#puts "Faulty :Tolerance of shape is more then 1.0"
+#} else {
+#puts "Tolerance of shape is less then 1.0"
+#}
+#}
+
+# Objectif : Couper part par trTool
+#
+# part est construite a partir d'un semi de point et de telle facon que u=x et v=y.
+# On obtient une Geom_BSplineSurface. On cree alors la topologie a partir de cette
+# surface via BRepAPI::MakeFace(surface)
+# Dans notre code, a aucun moment, nous
+# n'initialisons la tolerance.
+#
+# Le cut n'est pas effectue car une exception est levee :
+#  An exception was caught Standard_ConstructionError: 
+#  ** Exception ** Standard_ConstructionError: 
+set square 1.63191e+07
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60555_1 b/tests/bugs/modalg/bug60555_1
new file mode 100755 (executable)
index 0000000..0d17815
--- /dev/null
@@ -0,0 +1,38 @@
+#INTERFACE IGES
+puts "==========="
+puts "BUC60555"
+puts "CUT Case 1"
+puts "==========="
+#cpulim add aki 070704
+cpulimit 1600
+restore [locate_data_file buc60555a.brep] part 
+puts [checkshape part]
+restore [locate_data_file buc60555b.brep] trTool1
+puts [checkshape trTool1]
+halfspace hs1 trTool1 20000 10000 0
+bcut cut1 part hs1
+
+puts [checkshape cut1]
+
+tcopy cut1 result
+
+explode cut1 e
+mkcurve cu1 cut1_1
+mkcurve cu2 cut1_2
+mkcurve cu3 cut1_3
+mkcurve cu4 cut1_4
+
+set tolerance [ maxtolerance cut1 ]
+
+regexp { +Face +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxFaceTolerance
+regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxEdgeTolerance
+regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxVertexTolerance
+
+if { $MaxFaceTolerance > 1 || $MaxEdgeTolerance > 1 || $MaxVertexTolerance > 1 } {
+    puts "Faulty :Tolerance of shape is more then 1.0"
+} else {
+    puts "Tolerance of shape is less then 1.0"
+}
+
+set square 4.60842e+07
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60585_2 b/tests/bugs/modalg/bug60585_2
new file mode 100755 (executable)
index 0000000..2647039
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========================"
+puts "BUC60585"
+puts "========================"
+
+restore [locate_data_file buc60585b.brep] t
+puts [checkshape t]
+plane pt 2036.25  -97.5  -1460.499755859375  0.0  -1.0  0.0 1.0 0.0 0.0
+
+psection result t pt
+
+set length 22.0446
+set 2dviewer 0
+
+# checksection res
diff --git a/tests/bugs/modalg/bug60623_1 b/tests/bugs/modalg/bug60623_1
new file mode 100755 (executable)
index 0000000..be68670
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========================"
+puts "BUC60623"
+puts "========================"
+
+restore [locate_data_file buc60623a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60623b.brep] b
+puts [checkshape b]
+
+bsection result a b
+
+set length 1475.98
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60623_2 b/tests/bugs/modalg/bug60623_2
new file mode 100755 (executable)
index 0000000..501aba6
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========================"
+puts "BUC60623"
+puts "========================"
+
+restore [locate_data_file buc60623a.brep]  a 
+puts [checkshape a]
+restore [locate_data_file buc60623b.brep] b
+puts [checkshape b]
+
+bsection result b a
+# checksection res
+
+set length 1475.98
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60635 b/tests/bugs/modalg/bug60635
new file mode 100755 (executable)
index 0000000..d33331f
--- /dev/null
@@ -0,0 +1,13 @@
+
+puts "============="
+puts "BUC60635"
+puts "============="
+
+restore [locate_data_file buc60635a.brep] a 
+puts [checkshape a]
+
+mkplane result a
+
+set square 2035.58
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60663_1 b/tests/bugs/modalg/bug60663_1
new file mode 100755 (executable)
index 0000000..c335e40
--- /dev/null
@@ -0,0 +1,26 @@
+
+puts "====================================="
+puts "BUC60663"
+puts "====================================="
+puts ""
+puts "It takes visual check for this BUG. See V2 point"
+puts "====================================="
+puts ""
+
+restore [locate_data_file buc60663a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60663b.brep] b
+puts [checkshape b]
+
+bsection result a b
+
+regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection result] full num
+if { $num != 2 } {
+    puts " Faulty : Result shape is INcorrect !!! "
+}
+
+
+#fsameparameter res
+
+set length 26.2001
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug60668 b/tests/bugs/modalg/bug60668
new file mode 100755 (executable)
index 0000000..0aef85e
--- /dev/null
@@ -0,0 +1,27 @@
+
+puts "===================="
+puts "BUC60668"
+puts "Three boxes must appear on picture"
+puts "===================="
+
+box b 100 0 0 10 10 10
+box b1 10 10 10
+box b2 50 50 50 10 10 10
+box a -10 -10 -10 200 200 200
+
+compound b b1 b2 c 
+
+regexp {Mass +: +([-0-9.+eE]+)} [vprops c] full vcomp
+
+#compound b b1 c
+bcommon result c a
+
+regexp {Mass +: +([-0-9.+eE]+)} [vprops result] full vcomm
+
+if { $vcomp != $vcomm } {
+    puts " Faulty : Common is incorrect"
+} else {
+    puts " BUC60668 OK : Common was made properly"
+}
+set square 1800
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60684 b/tests/bugs/modalg/bug60684
new file mode 100755 (executable)
index 0000000..72663b9
--- /dev/null
@@ -0,0 +1,12 @@
+
+puts "============="
+puts "BUC60684"
+puts "============="
+
+restore [locate_data_file buc60684a.brep] w 
+puts [checkshape w]
+
+prism result w 0 0 10
+
+set square 148.875
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60703_2 b/tests/bugs/modalg/bug60703_2
new file mode 100755 (executable)
index 0000000..b2976f4
--- /dev/null
@@ -0,0 +1,31 @@
+
+puts "========================"
+puts "BUC60703"
+puts "================================="
+puts "Action with models with CORRECT tolerance" 
+puts "================================="
+puts ""
+############################################
+## Crash during a fuse whilst two plans are tangent. 
+############################################
+
+restore [locate_data_file buc60703c.brep] a 
+puts [checkshape a]
+
+restore [locate_data_file buc60703e.brep] b
+puts [checkshape b]
+
+
+if [catch {bfuse result a b } catch_result] {
+    puts "Faulty  BUC60703: here is problem with FUSE operation"
+} else {
+    puts "OK BUC60703: function FUSE works ok"         
+    if [catch {checkshape result } catch_result] {
+       puts "WARNING BUC60703 : Function checkshape gives bad result"
+       puts " See also OCC438: 919 D3 and D4"
+    } else {
+       puts "BUC60703  OK in checkshape"
+    }  
+}
+set square 236.72
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60703_3 b/tests/bugs/modalg/bug60703_3
new file mode 100755 (executable)
index 0000000..1e1578a
--- /dev/null
@@ -0,0 +1,24 @@
+
+puts "========================"
+puts "BUC60703"
+puts "========================"
+
+restore [locate_data_file buc60703e.brep] a 
+#maxtolerance a
+puts [checkshape a]
+restore [locate_data_file buc60703d.brep] b
+#maxtolerance b
+puts [checkshape b]
+
+if [catch {bfuse result a b } catch_result] {
+    puts "Faulty  BUC60703: here is problem with FUSE operation"
+} else {
+    puts "OK OCC348: function FUSE works ok"
+    if [catch {checkshape result} catch_result] {
+       puts "Faulty BUC60703 : here is checking problem. See also OCC438: 919 D3 and D4"
+    } else {
+       puts "BUC60703   : here is NOT checking problem"
+    }
+}
+set square 371.259
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60703_4 b/tests/bugs/modalg/bug60703_4
new file mode 100755 (executable)
index 0000000..ec7ad8f
--- /dev/null
@@ -0,0 +1,35 @@
+
+puts "========================"
+puts "BUC60703"
+puts "========================"
+puts ""
+####################################
+## Crash during a fuse whilst two plans are tangent. 
+####################################
+
+restore [locate_data_file buc60703d.brep] a 
+#maxtolerance a
+puts [checkshape a]
+restore [locate_data_file buc60703f.brep] b
+#maxtolerance b
+puts [checkshape b]
+
+if [catch {bfuse result a b } catch_result] {
+    puts "Faulty  BUC60703: here is problem with FUSE operation"
+} else {
+    puts "OK OCC348: function FUSE works ok"
+    if [catch {checkshape result} catch_result] {
+       set mistake 1
+    } else {
+       set mistake 0
+    }
+
+    if { $mistake != 0} {
+       puts "Faulty BUC60703 : here is checking problem. See also OCC438: 919 D3 and D4"
+    } else {
+       puts "BUC60703   : here is NOT checking problem"
+    }
+}
+set square 505.797
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60704 b/tests/bugs/modalg/bug60704
new file mode 100755 (executable)
index 0000000..5757e01
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========================"
+puts "BUC60704"
+puts "BUC60709"
+puts "========================"
+
+restore [locate_data_file buc60704a.brep] p 
+puts [checkshape p]
+restore [locate_data_file buc60704b.brep] s
+puts [checkshape s]
+
+bfuse result p s
+
+set square 39.0889
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60714 b/tests/bugs/modalg/bug60714
new file mode 100755 (executable)
index 0000000..b0d5e44
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "========================"
+puts "BUC60714"
+puts "========================"
+
+profile f x 30 y 20 x -30
+explode f w 
+vertex v1 0 0 0 
+vertex v2 0 -10 -10
+edge e v1 v2
+
+wire w e
+mksweep f_1
+setsweep -FR
+addsweep w
+
+########
+#does'nt work
+buildsweep result -C -S
+
+set square 1979.9
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60728 b/tests/bugs/modalg/bug60728
new file mode 100755 (executable)
index 0000000..b844711
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========================"
+puts "BUC60728"
+puts "========================"
+puts ""
+####################################################
+## Infinite loop in section. Section between the two attached faces never finish.
+####################################################
+
+restore [locate_data_file buc60728a.brep] s1 
+restore [locate_data_file buc60728b.brep] s2
+build3d s1
+puts [checkshape s1]
+puts [checkshape s2]
+
+bsection result s1 s2
+
+#checksection res
+#checkshape res
+
+set length 238.032
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60776_1 b/tests/bugs/modalg/bug60776_1
new file mode 100755 (executable)
index 0000000..275a0c7
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "========================"
+puts "BUC60776"
+puts "========================"
+
+restore [locate_data_file buc60776a.brep] a
+puts [checkshape a]
+restore [locate_data_file buc60776b.brep] b
+puts [checkshape b]
+bfuse result a b
+
+set square 60771.3
+
+set 2dviewer 1
+
+
diff --git a/tests/bugs/modalg/bug60776_2 b/tests/bugs/modalg/bug60776_2
new file mode 100755 (executable)
index 0000000..ba3caef
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========================"
+puts "BUC60776"
+puts "========================"
+
+restore [locate_data_file buc60776c.brep] a
+puts [checkshape a]
+restore [locate_data_file buc60776d.brep] b
+puts [checkshape b]
+bsection result a b
+
+set length 111.405
+
+set 2dviewer 1
+
diff --git a/tests/bugs/modalg/bug60782_1 b/tests/bugs/modalg/bug60782_1
new file mode 100755 (executable)
index 0000000..b66553a
--- /dev/null
@@ -0,0 +1,39 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: Exception"
+puts "TODO OCC12345 ALL: Faulty BUC60782: mkoffset works wrongly"
+puts "TODO OCC12345 ALL: Error : The square of result shape is"
+
+#INTERFACE IGES
+puts "========================"
+puts "BUC60782"
+puts "CASE 1"
+puts "========================"
+puts ""
+puts "Results of Geom2d_OffsetCurve are sometimes strange (not correct). "
+puts ""
+
+restore [locate_data_file buc60782a.brep] a 
+set che [checkshape a]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty BUC60782 (case 1): Source shape is invalid"
+} else {
+    puts "BUC60782 OK (case 1): Sourse shape is correct"
+}
+
+set che [checkshape a rr]
+if { [regexp {OK} $che ] != 1} {
+    puts "Faulty : mistakes are found in SOURCE  shape by checkshape command"
+    puts "Body of the script was not executed"
+} else {
+    puts "Checking of SOURCE shape by checkshape - OK"
+    if [catch { mkoffset result a 1 10 } catch_result] {
+       puts "Faulty BUC60782: mkoffset works wrongly"
+       renamevar a result
+    } else {
+       puts "OK BUC60782: offset is created"
+       tpcompound result
+    }
+}
+
+set square 0
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60782_3 b/tests/bugs/modalg/bug60782_3
new file mode 100755 (executable)
index 0000000..992c806
--- /dev/null
@@ -0,0 +1,40 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: Exception"
+puts "TODO OCC12345 ALL: Faulty BUC60782: mkoffset works wrongly"
+puts "TODO OCC12345 ALL: Error : The square of result shape is"
+
+
+#INTERFACE IGES
+puts "========================"
+puts "BUC60782"
+puts "CASE 3"
+puts "========================"
+puts ""
+puts "Results of Geom2d_OffsetCurve are sometimes strange (not correct). "
+puts ""
+
+restore [locate_data_file buc60782c.brep] a 
+
+set che [checkshape a]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty BUC60782 (case 3): Source shape is invalid"
+} else {
+    puts "BUC60782 OK (case 3): Sourse shape is correct"
+}
+
+set che [checkshape a rr]
+if { [regexp {OK} $che ] != 1 } {
+    puts "Faulty : mistakes are found in SOURCE  shape by checkshape command"
+    puts "Body of the script was not executed"
+} else {
+    puts "Checking of SOURCE shape by checkshape - OK"
+    if [catch { mkoffset result a 1 10 } catch_result] {
+       puts "Faulty BUC60782: mkoffset works wrongly"
+       renamevar a result
+    } else {
+       puts "OK BUC60782: offset is created"
+       tpcompound result
+    }
+}
+set square 0
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60788_1 b/tests/bugs/modalg/bug60788_1
new file mode 100755 (executable)
index 0000000..51f088d
--- /dev/null
@@ -0,0 +1,28 @@
+
+puts "============"
+puts "BUC60788"
+puts "case 1"
+puts "============"
+
+#restore Intersection_Shell1_Case1.brep S1
+#restore Intersection_Shell2_Case1.brep S2
+
+restore [locate_data_file buc60788a.brep] S1 
+puts [checkshape S1]
+restore [locate_data_file buc60788b.brep] S2
+puts [checkshape S2]
+
+bsection result S1 S2
+
+set nb_info [nbshapes result]
+regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full err
+regexp {SHELL +: +([-0-9.+eE]+)} $nb_info full err1
+
+if { $err != 4 && $err1 != 3} {
+    puts "Faulty :  result (res) is incorrect"
+} else {
+    puts "BUC60788 - OK"
+}
+
+set length 750
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60801 b/tests/bugs/modalg/bug60801
new file mode 100755 (executable)
index 0000000..2adb282
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "========================"
+puts "BUC60801"
+puts "========================"
+
+box b -10 -10 -10 30 40 40 
+box a1 -20 0 -20 20 20 100
+box a2 0 20 -20 50 20 100
+box c -20 -20 20 100 100 100
+bcut r1 b a1
+bcut r2 r1 a2
+bcut r3 r2 c
+checkshape r3
+
+renamevar r3 result
+
+set square 6400
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60803 b/tests/bugs/modalg/bug60803
new file mode 100755 (executable)
index 0000000..d97749a
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========================"
+puts "BUC60803"
+puts "========================"
+
+restore [locate_data_file buc60803a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60803b.brep] b
+puts [checkshape b]
+
+bfuse result a b
+
+set square 1.86064e+07
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60839 b/tests/bugs/modalg/bug60839
new file mode 100755 (executable)
index 0000000..a76ba5b
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "============"
+puts "BUC60839"
+puts "============"
+puts ""                                                                                                                                                                        
+
+restore [locate_data_file BUC60839-1.brep] a 
+puts [checkshape a]
+restore [locate_data_file BUC60839-2.brep] b
+puts [checkshape b]
+
+puts "Starting fuse operation"
+
+bfuse result a b
+
+set square 27341.6
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60841 b/tests/bugs/modalg/bug60841
new file mode 100755 (executable)
index 0000000..a619046
--- /dev/null
@@ -0,0 +1,14 @@
+
+puts "========"
+puts "BUC60841"
+puts "========"
+
+restore [locate_data_file buc60841a.brep] sh1
+puts [checkshape sh1]
+restore [locate_data_file buc60841b.brep] sh2
+puts [checkshape sh2]
+
+bfuse result sh1 sh2
+
+set square 890971
+set 2dviewer 1
diff --git a/tests/bugs/modalg/bug60849 b/tests/bugs/modalg/bug60849
new file mode 100755 (executable)
index 0000000..c6bc356
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "============"
+puts "BUC60849"
+puts "============"
+puts ""
+
+restore [locate_data_file BUC60849.brep] result
+puts [checkshape result]
+
+set bndb [ lindex [bounding result] 3 ]
+
+if { $bndb  > 100.000001 } {
+    puts "Faulty BUC60849 : Bounding box of spherical surface is created wroughly."
+} else {
+    puts "BUC60849 OK :Bounding box of spherical surface is created properly."
+}
+set square 125663
+set 3dviewer 2
diff --git a/tests/bugs/modalg/bug60865 b/tests/bugs/modalg/bug60865
new file mode 100755 (executable)
index 0000000..00cb07d
--- /dev/null
@@ -0,0 +1,29 @@
+
+puts "============"
+puts "BUC60865"
+puts "BUC60864"
+puts "============"
+puts ""
+##########################
+## Section gives duplicate edges. 
+##########################
+
+restore [locate_data_file BUC60865_sh6.brep] sh 
+puts [checkshape sh]
+
+plane pl 1.1 0.99999 1 0 1 0
+mkface f pl
+bsection result sh f
+
+
+set nb_info [nbshapes result]
+regexp {EDGE +: +([-0-9.+eE]+)} $nb_info full ed
+
+if {  $ed == 5 } {
+    puts  " BUC60865 : SECTION operation was made properly"
+} else {
+    puts "Faulty BUC60865: SECTION operation was made wrongly"
+}
+set length 4.5
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60881 b/tests/bugs/modalg/bug60881
new file mode 100755 (executable)
index 0000000..3330cf4
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "============"
+puts "BUC60881"
+puts "============"
+puts ""
+
+restore [locate_data_file BUC60881.brep] a 
+explode a
+puts [checkshape a_1]
+puts [checkshape a_1]
+
+bfuse result a_1 a_2
+
+set square 34069
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60899_1 b/tests/bugs/modalg/bug60899_1
new file mode 100755 (executable)
index 0000000..115e9c8
--- /dev/null
@@ -0,0 +1,48 @@
+
+puts "============"
+puts "BUC60899"
+puts "============"
+puts ""
+#####################################################
+## Execution of the script prism_sec.tcl gives  exception "NumericError". 
+#####################################################
+
+set n 2
+set dx 4
+set sx 1
+set sz 10
+set xc [dval (2*$dx+2*$sx)*$n/2]
+set zc -30
+set r  [dval $xc*0.9]
+
+set x 0
+set y -50
+set z 0
+set pol "polyline w $x $y $z"
+for {set i 1} {$i <= $n} {incr i} {
+    set x [dval $x+$dx]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$sx]
+    set z [dval $z+$sz]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$dx]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$sx]
+    set z [dval $z-$sz]
+    set pol "$pol $x $y $z"
+}
+
+eval $pol
+circle c $xc 0 $zc $r
+mkedge c c
+
+prism cyl c 0 0 -$zc*2 inf
+prism crg w 0 -$y*2 0 inf
+
+bsection result crg cyl
+
+set length 15.1392
+set 2dviewer 0
+
+# checksection res
+# checkshape res
diff --git a/tests/bugs/modalg/bug60899_2 b/tests/bugs/modalg/bug60899_2
new file mode 100755 (executable)
index 0000000..4d79361
--- /dev/null
@@ -0,0 +1,62 @@
+
+puts "============"
+puts "BUC60899"
+puts "============"
+puts ""
+#####################################################
+## Execution of the script prism_sec.tcl gives  exception "NumericError". 
+#####################################################
+
+set n 2
+set dx 4
+set sx 1
+set sz 10
+set xc [dval (2*$dx+2*$sx)*$n/2]
+set zc -30
+set r  [dval $xc*0.9]
+
+set x 0
+set y -50
+set z 0
+set pol "polyline w $x $y $z"
+for {set i 1} {$i <= $n} {incr i} {
+    set x [dval $x+$dx]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$sx]
+    set z [dval $z+$sz]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$dx]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$sx]
+    set z [dval $z-$sz]
+    set pol "$pol $x $y $z"
+}
+
+eval $pol
+polyline c $xc-$r -$r*2 $zc $xc+$r -$r*2 $zc $xc+$r $r*2 $zc $xc-$r $r*2 $zc $xc-$r -$r*2 $zc
+
+prism cyl c 0 0 -$zc*2 inf
+prism crg w 0 -$y*2 0 inf
+bsection result crg cyl
+
+#checksection res
+#checkshape res
+
+set nb_info [nbshapes result]
+regexp {EDGE +: +([-0-9.+eE]+)} $nb_info full edgeness
+
+
+    #set fullness [ nbshapes res ]
+    #puts "$fullness"
+    #set qq [ lindex $fullness 0 ]
+    #set edgeness [ lindex $fullness 10 ]
+    # puts "$edgeness"
+    
+if { $edgeness == 1  } {                                         
+    puts "Shape is empty, it is Faulty result"                                                                               
+} else {                                                                                                                        
+    puts "Shape is not empty, OK"                                                                                                   
+}
+
+set length 162.299
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60901 b/tests/bugs/modalg/bug60901
new file mode 100755 (executable)
index 0000000..7c9395f
--- /dev/null
@@ -0,0 +1,62 @@
+
+puts "============"
+puts "BUC60901"
+puts "============"
+puts ""
+################################################################
+## We should get the edges forming a closed intersection line but we see breaks. 
+################################################################
+
+set n 3
+set dx 1
+set sx 20
+set sz 10
+
+set xc [dval (2*$dx+2*$sx)*$n/2]
+set yc 0
+set zc [dval $sz*10]
+set nxc 0.5
+set nyc -0.3
+set nzc 1
+set r [dval $xc*0.9]
+
+set x 0
+set y [dval -$r*1.2]
+set z 0
+set pol "polyline w $x $y $z"
+for {set i 1} {$i <= $n} {incr i} {
+    set x [dval $x+$dx]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$sx]
+    set z [dval $z+$sz]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$dx]
+    set pol "$pol $x $y $z"
+    set x [dval $x+$sx]
+    set z [dval $z-$sz]
+    set pol "$pol $x $y $z"
+}
+
+eval $pol
+circle c $xc $yc $zc $nxc $nyc $nzc $r
+mkedge c c
+
+set lcyl [dval -$zc*2]
+set lcrg [dval -$y*2]
+
+prism cyl c 0 0 $lcyl
+prism crg w 0 $lcrg 0
+bsection result crg cyl
+
+set nb_info [nbshapes result]
+regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full nb_vertices
+regexp {EDGE +: +([-0-9.+eE]+)} $nb_info full nb_edges
+
+if { $nb_vertices != $nb_edges } {                                         
+    puts "Section is opened: Faulty shape"
+} else {
+    puts "Section is closed: OK"
+}
+
+set length 350.404
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60905 b/tests/bugs/modalg/bug60905
new file mode 100755 (executable)
index 0000000..50df637
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "============"
+puts "BUC60905"
+puts "============"
+puts ""                                                                                                                                                                        
+#########################################################
+## shape contains open shells if sewing would be made with big tolerance invalid shape
+## will be produced, and visualization crashes. 
+#########################################################
+
+restore [locate_data_file BUC60905.brep] a 
+# checkshape a
+
+sewing result 10 a
+
+vinit
+vdisplay result
+
+# checkshape res
+                                                                                                                                                                         
+set square 270868
+set 3dviewer 0
diff --git a/tests/bugs/modalg/bug60909 b/tests/bugs/modalg/bug60909
new file mode 100755 (executable)
index 0000000..afbcfe6
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "============"
+puts "BUC60909"
+puts "============"
+puts ""
+
+box boite 200 200 200 
+nexplode boite F
+profile cont S boite_4 F 0 50 X 50 Y 100 X -50
+featrevol boite cont boite_4 0 0 200 0 -1 0 1 1
+featperform revol result boite_1
+
+set square 265343
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug60927 b/tests/bugs/modalg/bug60927
new file mode 100755 (executable)
index 0000000..abf92db
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "============"
+puts "BUC60927"
+puts "============"
+
+restore [locate_data_file BUC60927.brep] a 
+
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bcut result a_2 a_1
+
+set square 94795.3
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60930 b/tests/bugs/modalg/bug60930
new file mode 100755 (executable)
index 0000000..b25473f
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "============"
+puts "BUC60930"
+puts "============"
+puts ""
+######################################
+## Exception ConstructionError in LocOpe_SplitShape. 
+######################################
+
+restore [locate_data_file BUC60930_splitshape.brep] c 
+explode c
+puts [checkshape c_1]
+puts [checkshape c_2]
+
+renamevar c_1 f
+renamevar c_2 e
+
+splitshape result f f e
+
+set square 13.3392
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60934 b/tests/bugs/modalg/bug60934
new file mode 100755 (executable)
index 0000000..c0ced12
--- /dev/null
@@ -0,0 +1,13 @@
+
+puts "============"
+puts "BUC60934"
+puts "============"
+
+restore [locate_data_file BUC60934.brep] a 
+puts [checkshape a]
+
+mkplane result a
+
+set square 40303.1
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug60942 b/tests/bugs/modalg/bug60942
new file mode 100755 (executable)
index 0000000..ad645da
--- /dev/null
@@ -0,0 +1,35 @@
+
+puts "============"
+puts "BUC60942"
+puts "============"
+###############################################################
+## SplitShape algorithm modifies original shape (increases vertex tolerance of a plitting edge). 
+###############################################################
+
+restore [locate_data_file BUC60942_splitshape.brep] c 
+explode c
+puts [checkshape c_1]
+puts [checkshape c_2]
+
+renamevar c_1 f
+renamevar c_2 w
+
+set tol1 [maxtolerance w]
+regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol1 full MaxEdgeTol1
+regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol1 full MaxVertexTol1
+
+splitshape result f f w
+
+set tol2 [maxtolerance w]
+regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol2 full MaxEdgeTol2
+regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tol2 full MaxVertexTol2
+
+
+if { $MaxEdgeTol1 <  $MaxEdgeTol2 || $MaxVertexTol1 < $MaxVertexTol1 } {
+    puts "Faulty BUC60942: max tolerance of the input wire has been increased by about 10 times."
+} else {
+    puts "BUC60942 OK: Tolerance of shape is correct"
+}
+
+set square 37.7032
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug60971 b/tests/bugs/modalg/bug60971
new file mode 100755 (executable)
index 0000000..fc2502f
--- /dev/null
@@ -0,0 +1,15 @@
+
+puts "========"                                                                                   
+puts "BUC60971"
+puts "CASE 2"                                                                                   
+puts "========"                                                                                   
+puts ""                                                                                           
+
+restore [locate_data_file buc60971.brep] a 
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bfuse result a_2 a_3
+set square 93698.1
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug62369 b/tests/bugs/modalg/bug62369
new file mode 100755 (executable)
index 0000000..af4de49
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "==========="
+puts "FRA62369"
+puts "==========="
+
+restore [locate_data_file fra62369a.brep] a 
+puts [checkshape a]
+
+compound result
+
+set i 1
+repeat 100 { 
+    plane p_$i 0 0 200+$i
+    mkface f_$i p_$i
+    bsection s_$i a f_$i -2d -a
+    compound s_$i result result
+    incr i
+}
+set length 3961.04
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug67 b/tests/bugs/modalg/bug67
new file mode 100755 (executable)
index 0000000..676c4a0
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "================"
+puts "BUC61052"
+puts "OCC67"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC67.brep] sh 
+puts [checkshape sh]
+
+explode sh e
+
+fillet result sh 5 sh_18
+
+set square 64281.8
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug68_1 b/tests/bugs/modalg/bug68_1
new file mode 100755 (executable)
index 0000000..e78bbac
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "BUC61053"
+puts "OCC68"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC68.brep] sh 
+puts [checkshape sh]
+
+explode sh 
+
+bfuse result sh_1 sh_2
+
+set square 3675.77
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug68_2 b/tests/bugs/modalg/bug68_2
new file mode 100755 (executable)
index 0000000..93d1728
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "================"
+puts "BUC61053"
+puts "OCC68"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC68.brep] sh 
+puts [checkshape sh]
+
+explode sh 
+
+bfuse result sh_2 sh_1
+set square 3675.77
+set 2dviewer 0
+
+
+
diff --git a/tests/bugs/modalg/bug77 b/tests/bugs/modalg/bug77
new file mode 100755 (executable)
index 0000000..9dd5798
--- /dev/null
@@ -0,0 +1,21 @@
+puts "========================"
+puts " BUC60866 "
+puts " OCC77 "
+puts "========================"
+puts ""
+######################################################
+# The BRepFill_Pipe fails
+######################################################
+
+restore [locate_data_file buc60866a.rle] f 
+puts [checkshape f]
+
+restore [locate_data_file buc60866b.rle] w
+puts [checkshape w]
+
+pipe result w f
+
+set square 1.12048e+07
+set 2dviewer 0
+
+
diff --git a/tests/bugs/modalg/bug78 b/tests/bugs/modalg/bug78
new file mode 100755 (executable)
index 0000000..865013a
--- /dev/null
@@ -0,0 +1,18 @@
+puts "============"
+puts "BUC60875"
+puts "OCC78"
+puts "============"
+puts ""
+###############################
+## Pipe is created incorrectly on two wires
+###############################
+
+#datadir /disk4/QA/hotline/GRIDS/chl/data
+restore [locate_data_file BUC60875_wire.brep] w 
+restore [locate_data_file BUC60875_profile.brep] p
+puts [checkshape w]
+puts [checkshape p]
+
+pipe result w p
+set square 10191.8
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug80 b/tests/bugs/modalg/bug80
new file mode 100755 (executable)
index 0000000..47b1889
--- /dev/null
@@ -0,0 +1,22 @@
+puts "============"
+puts "BUC60877"
+puts "OCC80"
+puts "============"
+puts ""
+##########################################################
+## The command "section" in Draw gives exception "attempt to access to null objec " 
+##########################################################
+
+restore [locate_data_file BUC60877_lh.brep] sh 
+puts [checkshape sh]
+
+plane pl 820 198 140 -1e-06 0 1
+mkface f pl -1000 500 -300 100
+
+if [catch {bsection result sh f } catch_result] {
+    puts "Faulty BUC60877: function SECTION works wrongly"
+} else {
+    puts "BUC60877 OK: function SECTION works properly"
+}
+set length 1358.63
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug81 b/tests/bugs/modalg/bug81
new file mode 100755 (executable)
index 0000000..63c61bd
--- /dev/null
@@ -0,0 +1,28 @@
+puts "============"
+puts "BUC60907"
+puts "OCC81"
+puts "============"
+puts ""
+###############################
+## Section shell by plane gives overlapped edges
+###############################
+
+restore [locate_data_file BUC60907_px1.rle] sh 
+puts [checkshape sh]
+
+plane f 60 0 0 1 0 0
+mkface f f
+bsection result sh f
+puts "Info: it should be 12 edges"
+
+set nb_info [nbshapes result]
+regexp {EDGE +: +([-0-9.+eE]+)} $nb_info full ne
+
+if { $ne != 12 } {                                         
+    puts "Faulty :Number of edges is wrong"                                                                               
+} else {
+    puts "Number of edges is OK"                                                                                                   
+}
+
+set length 33.6353
+set 2dviewer 0
diff --git a/tests/bugs/modalg/bug82 b/tests/bugs/modalg/bug82
new file mode 100755 (executable)
index 0000000..1bfe646
--- /dev/null
@@ -0,0 +1,32 @@
+puts "============"
+puts "BUC60908"
+puts "OCC82"
+puts "============"
+puts ""
+###############################
+## Incomplete section of shell by plane
+###############################
+
+restore [locate_data_file BUC60907_px1.rle] sh 
+puts [checkshape sh]
+
+plane f 0 14.8053 0 0 1 0
+mkface f f
+bsection result sh f
+
+set nb_info [nbshapes result]
+regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full nb_verices
+regexp {EDGE +: +([-0-9.+eE]+)} $nb_info full nb_edges
+
+set nnv [expr $nb_verices-1]
+
+puts "VERTEX : $nb_verices, EDGE : $nb_edges"  
+
+if { $nnv > $nb_edges } {                                         
+    puts "Surplus of vertices, Faulty section"
+} else {
+    puts "Number of vertices correspond edges: OK"
+}
+set length 113.703
+set 2dviewer 0
+
diff --git a/tests/bugs/modalg/bug86 b/tests/bugs/modalg/bug86
new file mode 100755 (executable)
index 0000000..b41f13f
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "========================"
+puts " BUC60957 "
+puts " OCC86 "
+puts "========================"
+
+puts "Restoring the wires :"
+restore [locate_data_file OCC86a.brep] w1 
+puts [checkshape w1]
+restore [locate_data_file OCC86b.brep] w2
+puts [checkshape w2]
+
+puts "Do Thrusection by following command: thrusections res 0 0 w1 w2 "
+
+thrusections result 0 0 w1 w2
+
+set length 102.832
+set 2dviewer 0
+
index 215479c..1e3fbf0 100755 (executable)
@@ -22,7 +22,7 @@ if { [isdraw result] } {
    #if mass (length or square) is empty in test case then result should be an empty shape.
    if { [string compare "$mass" "empty"] != 0 } {
       if { $m == 0 } {
-                puts "Error : The $command is not valid. The $prop is 0."
+                puts "Error : The command is not valid. The $prop is 0."
       }
       if { $mass > 0 } {
         puts "The expected $prop is $mass"
@@ -115,9 +115,9 @@ if { [isdraw result] } {
 
    } else {
       if { $m != 0 } {
-                puts "Error : The $command is not valid. The $prop is $m"
+                puts "Error : The command is not valid. The $prop is $m"
       }
    }
 } else {
-   puts "Error : The $command can not be build."
+   puts "Error : The command can not be build."
 }
diff --git a/tests/bugs/moddata/bug103 b/tests/bugs/moddata/bug103
new file mode 100755 (executable)
index 0000000..1e65742
--- /dev/null
@@ -0,0 +1,17 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: \\*\\* Exception \\*\\*.*"
+
+puts "================"
+puts "BUC60961"
+puts "OCC103"
+puts "================"
+puts ""
+
+circle c 0 0 10
+to3d c1 c
+
+offset o c -2
+catch {to3d result o}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug104 b/tests/bugs/moddata/bug104
new file mode 100755 (executable)
index 0000000..d00746c
--- /dev/null
@@ -0,0 +1,32 @@
+puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_"
+puts "TODO OCC12345 ALL: Tcl Exception: Error: file OCC104-2.brep could not be found"
+puts "TODO OCC12345 ALL: TEST INCOMPLETE"
+
+puts "================"
+puts "BUC61007"
+puts "OCC104"
+puts "================"
+puts ""
+################################################################
+## These shapes are valid and seems that they have one size, but they volumes of the shapes are
+##  quite different. This looks like a regression in comparing to C31.
+################################################################
+
+cpulimit 3000
+
+restore [locate_data_file OCC104-1.brep] sh1 
+puts [checkshape sh1]
+regexp {Mass +: +([-0-9.+eE]+)} [vprops result] full l1
+
+restore [locate_data_file OCC104-2.brep] sh2
+puts [checkshape sh2]
+regexp {Mass +: +([-0-9.+eE]+)} [vprops result] full l2
+
+set diff [expr abs([expr $l2 - $l1])]
+
+if { $diff > 0.001} {
+   puts "Error : volume of OCC104-1.brep and OCC104-2.brep differ on the value $diff while the shape almost coinsident"
+} else {
+  puts "Volumes of OCC104-1.brep and OCC104-2.brep are right calculated (almost coinsident)"
+}
+
diff --git a/tests/bugs/moddata/bug105 b/tests/bugs/moddata/bug105
new file mode 100755 (executable)
index 0000000..00ebac9
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "================"
+puts "BUC61026"
+puts "OCC105"
+puts "================"
+puts ""
+
+pload QAcommands
+
+restore [locate_data_file OCC105.brep] result
+puts [checkshape result]
+
+if [catch { OCC105 result} ] {
+  puts "Error : BUC61032"
+} else {
+  puts "BUC61032: OK"
+}
+
+set 3dviewer 0
+
diff --git a/tests/bugs/moddata/bug106 b/tests/bugs/moddata/bug106
new file mode 100755 (executable)
index 0000000..031266e
--- /dev/null
@@ -0,0 +1,78 @@
+
+puts "================"
+puts "BUC61032"
+puts "OCC106"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC106-1.draw] sh1 
+####          checkshape sh1 # - not a topological shape
+restore [locate_data_file OCC106-2.draw] sh2
+####          checkshape sh2 # - not a topological shape
+
+trimv s1 sh1 -1000 1000
+trimv s2 sh2 -1000 1000
+
+if [catch {intersect res s1 s2} result] {
+set mistake 1
+} else {
+set  mistake 0
+}
+
+if { $mistake == 0 } {
+ puts ""
+ set nom 0
+   set j 1
+   repeat 10 {
+     set che [whatis res_$j]
+      set che1 [whatis res_$j]
+       set err [lindex $che [expr [llength $che] - 1]]
+        set err1 [lindex $che1 [expr [llength $che1] - 2]]
+
+          if { $err != "curve" && $err1 != "3d"} {
+               break
+              } else {
+              set nom [expr $nom + 1]
+              }
+    incr j}
+ if { $nom == 0} {
+    puts "1) Faulty OCC106: Intersection was made WRONGLY"
+} else {
+  puts [format "1) OCC106 OK : Intersection command works properly: %s curves" $nom]
+  puts ""
+} 
+} else {
+    puts "1) Faulty OCC106: Intersection was made WRONGLY"
+}
+
+if [catch {intersect rrs sh1 sh2} result] {
+set mistake 1
+} else {
+set  mistake 0
+}
+
+if { $mistake == 0 } {
+ puts ""
+ set nom 0
+   set j 1
+   repeat 10 {
+     set che [whatis rrs_$j]
+      set che1 [whatis rrs_$j]
+       set err [lindex $che [expr [llength $che] - 1]]
+        set err1 [lindex $che1 [expr [llength $che1] - 2]]
+
+          if { $err != "curve" && $err1 != "3d"} {
+               break
+              } else {
+              set nom [expr $nom + 1]
+              }
+    incr j}
+ if { $nom == 0} {
+    puts "2) Faulty OCC106: Intersection was made WRONGLY"
+} else {
+  puts [format "2) OCC106 OK : Intersection command works properly: %s curves" $nom]
+}
+} else {
+    puts "2) Faulty OCC106: Intersection was made WRONGLY"
+}
+
diff --git a/tests/bugs/moddata/bug107 b/tests/bugs/moddata/bug107
new file mode 100755 (executable)
index 0000000..bb6245e
--- /dev/null
@@ -0,0 +1,31 @@
+
+puts "================"
+puts "BUC61035"
+puts "OCC107"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC107-1.brep] ee 
+puts [checkshape ee]
+restore [locate_data_file OCC107-2.brep] ff
+puts [checkshape ff]
+
+distmini dd1 ee ff
+
+mkcurve cc ee
+cvalue cc 0 x y z
+vertex vv x y z
+
+distmini dd2 vv ff
+
+set d1 [dset t dd1_val]
+set d2 [dset t dd2_val]
+
+if { [expr abs([expr $d1 - $d2])] > 0.1} then {
+    puts "Faulty :WRONG computation of distances."
+} else {
+    puts "All is OK" 
+}
+
+
+
diff --git a/tests/bugs/moddata/bug12 b/tests/bugs/moddata/bug12
new file mode 100755 (executable)
index 0000000..2cd6fee
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "================"
+puts "OCC12"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC12.brep] f 
+puts [checkshape f]
+
+mksurface su f
+clpoles su
+emptycopy f1 f
+vertex v 0 -170.63226587036002 82.2373635024
+don su v
+distmini d1 v f1
+if [expr [dval d1_val] > 0.01] {
+    set res "failed"
+    puts "Error : Result is incorrect"
+} else { 
+  set res "OK"
+}
+puts "Info: test $res, distance=[dval d1_val]"
+
diff --git a/tests/bugs/moddata/bug126 b/tests/bugs/moddata/bug126
new file mode 100755 (executable)
index 0000000..ed3df11
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "OCC126"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC126-1.brep] sh1 
+puts [checkshape sh1]
+
+restore [locate_data_file OCC126-2.brep] sh2
+puts [checkshape sh2]
+
+compound sh1 sh2 result
+
+set check_square 1
+set square 560.774
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug13 b/tests/bugs/moddata/bug13
new file mode 100755 (executable)
index 0000000..74c7a7e
--- /dev/null
@@ -0,0 +1,37 @@
+
+puts "================"
+puts "OCC13"
+puts "================"
+puts ""
+##################################################
+## It is impossible to intersect two surfaces
+##################################################
+
+restore [locate_data_file OCC13-1.draw] su1 
+############### checkshape su1 # is not a topological shape
+restore [locate_data_file OCC13-2.draw] su2
+############### checkshape su2 # is not a topological shape
+
+#Try to intersect two surfaces with tolerance 0.1
+#note that distance between shapes is about 0.005942345501409
+
+catch {intersect res su1 su2 0.1 } result
+set nom 0
+  set j 1
+   repeat 10 {
+    set che [whatis res_$j]
+     set che1 [whatis res_$j]
+      set err [lindex $che [expr [llength $che] - 1]]
+       set err1 [lindex $che1 [expr [llength $che1] - 2]]
+
+          if { $err != "curve" && $err1 != "3d"} {
+               break
+              } else {
+              set nom [expr $nom + 1]
+              }
+    incr j}
+if { $nom == 0} {
+   puts "Error : Intersection was made WRONGLY"
+}
+
+
diff --git a/tests/bugs/moddata/bug130 b/tests/bugs/moddata/bug130
new file mode 100755 (executable)
index 0000000..1e04475
--- /dev/null
@@ -0,0 +1,48 @@
+
+puts "================"
+puts "OCC130"
+puts "================"
+puts ""
+######################################################
+## Draw Environment: No intersection found between a specific surface and a line
+######################################################
+
+restore [locate_data_file OCC130.brep] sh 
+puts [checkshape sh]
+
+line l -120 -100 400 0 0 1
+mksurface surf sh
+############## checkshape surf   # - not a topological shape
+
+
+if [catch {intersect res l surf } result] {
+set mistake 1
+} else {
+set  mistake 0
+}
+
+if { $mistake == 0} {
+    puts "OCC130 OK : intersection found between a specific surface and a line"
+    puts ""
+ set nom 0
+   set j 1
+   repeat 10 {
+     set che [whatis res_$j]
+       set err [lindex $che [expr [llength $che] - 1]]
+
+          if { $err != "point"} {
+               break
+              } else {
+              set nom [expr $nom + 1]
+              }
+    incr j}
+ if { $nom != 2 && $nom != 0} {
+    puts [format "Faulty OCC130: Intersection was made WRONGLY: %s points" $nom]
+} else {
+    puts [format "OCC130 OK : Intersection command works properly: %s points" $nom]
+}
+
+} else {
+    puts "Faulty OCC130 : NO intersection found between a specific surface and a line"
+}
+
diff --git a/tests/bugs/moddata/bug134_1 b/tests/bugs/moddata/bug134_1
new file mode 100755 (executable)
index 0000000..137a2de
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "================"
+puts "SAM1225"
+puts "OCC134"
+puts "================"
+puts ""
+####################################
+## Faces from attached file are impossible to extrude.
+####################################
+
+restore [locate_data_file OCC134-1.brep] sh 
+puts [checkshape sh]
+
+prism result sh 100 100 100
+puts [checkshape result]
+
+set check_square 1
+set square 104057
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug134_2 b/tests/bugs/moddata/bug134_2
new file mode 100755 (executable)
index 0000000..1a126db
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "================"
+puts "SAM1225"
+puts "OCC134"
+puts "================"
+puts ""
+###########################################################
+## Faces from attached file are impossible to extrude.
+###########################################################
+
+restore [locate_data_file OCC134-2.brep] sh 
+puts [checkshape sh]
+
+prism result sh 100 100 100
+puts [checkshape result]
+
+set check_square 1
+set square 271859
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug135 b/tests/bugs/moddata/bug135
new file mode 100755 (executable)
index 0000000..e00a7e5
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "================"
+puts "OCC135"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC135.brep] sh 
+puts [checkshape sh]
+
+sewing result 1 sh
+puts [checkshape result]
+
+set check_square 1
+set square 273837
+set 2dviewer 0
+
+
+
diff --git a/tests/bugs/moddata/bug141 b/tests/bugs/moddata/bug141
new file mode 100755 (executable)
index 0000000..6c44c83
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "================"
+puts "OCC141"
+puts "================"
+puts ""
+###############################################
+## exception while do segment operation on BSpline curve.
+###############################################
+
+restore [locate_data_file OCC141.draw] result 
+####        checkshape res   # not a topological shape
+
+segment result -4.76283758432072e-05 1.06458532027221
+
+#let's the segment is displaied only
+
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug15 b/tests/bugs/moddata/bug15
new file mode 100755 (executable)
index 0000000..b439c72
--- /dev/null
@@ -0,0 +1,27 @@
+
+puts "================"
+puts "OCC15"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC15.brep] result
+
+puts [checkshape result]
+
+vinit
+tclean result
+vdisplay result
+vsetdispmode result 1
+vfit
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+#($tri != 5370,$nod != 2783)($tri != 5356,$nod != 2774)($tri != 5354,$nod != 2773),aki251103
+if { ($tri != 5643 || $nod != 2915) }  {
+   puts "Shady OCC15 : shading problem may be, nb tri & nod were changed"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug150_1 b/tests/bugs/moddata/bug150_1
new file mode 100755 (executable)
index 0000000..331a9dd
--- /dev/null
@@ -0,0 +1,36 @@
+puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_"
+
+puts "================"
+puts "OCC150"
+puts "SAM1048"
+puts "OCC53"
+puts "================"
+puts ""
+################################################################
+## SAM1048. Crash with all memory exhausted at attempt to fuse two solids in the file attached.
+################################################################
+## Segmentation violation detected during Fuse operation
+################################################################
+
+puts ""
+puts "Bug's advancement"
+puts "#################"
+puts ""
+puts "Customer version                  Development version"
+puts "Status : CLOSED                   Status : CLOSED"
+puts "Resolution : LIMITATION           Resolution : LIMITATION"
+puts "Leave as CLOSED LIMITATION        Leave as CLOSED LIMITATION"
+puts ""
+
+restore [locate_data_file OCC150_compsolid_nofuse.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bfuse result sh_1 sh_2
+puts [checkshape result]
+
+set check_square 1
+set square 700
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug150_2 b/tests/bugs/moddata/bug150_2
new file mode 100755 (executable)
index 0000000..93391ea
--- /dev/null
@@ -0,0 +1,35 @@
+puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_"
+
+puts "================"
+puts "OCC150"
+puts "SAM1048"
+puts "OCC53"
+puts "================"
+puts ""
+################################################################
+## SAM1048. Crash with all memory exhausted at attempt to fuse two solids in the file attached.
+################################################################
+## Segmentation violation detected during Fuse operation
+################################################################
+puts ""
+puts "Bug's advancement"
+puts "#################"
+puts ""
+puts "Customer version                  Development version"
+puts "Status : CLOSED                   Status : CLOSED"
+puts "Resolution : LIMITATION           Resolution : LIMITATION"
+puts "Leave as CLOSED LIMITATION        Leave as CLOSED LIMITATION"
+puts ""
+
+restore [locate_data_file OCC150_compsolid_nofuse.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bfuse result sh_2 sh_1
+puts [checkshape result]
+
+set check_square 1
+set square 700
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug151_1 b/tests/bugs/moddata/bug151_1
new file mode 100755 (executable)
index 0000000..8569b20
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "================"
+puts "OCC151"
+puts "SAM1141"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC3-1.brep] sh1 
+restore [locate_data_file OCC3-2.brep] sh2
+
+puts [checkshape sh1]
+puts [checkshape sh2]
+
+bfuse result sh1 sh2
+puts [checkshape result]
+
+set check_square 1
+set square 11400
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug151_2 b/tests/bugs/moddata/bug151_2
new file mode 100755 (executable)
index 0000000..438b967
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "================"
+puts "OCC151"
+puts "SAM1141"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC3-1.brep] sh1 
+restore [locate_data_file OCC3-2.brep] sh2
+
+puts [checkshape sh1]
+puts [checkshape sh2]
+
+bfuse result sh2 sh1
+puts [checkshape result]
+
+set check_square 1
+set square 11400
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug152_1 b/tests/bugs/moddata/bug152_1
new file mode 100755 (executable)
index 0000000..fe767cd
--- /dev/null
@@ -0,0 +1,26 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: \\*\\* Exception \\*\\*.*"
+puts "TODO OCC12345 ALL: TEST INCOMPLETE"
+
+puts "================"
+puts "OCC152"
+puts "SAM1178"
+puts "================"
+puts ""
+#################################################################
+## SAM1178(#1871): Bad escaped result after a cut operation on the shape.
+#################################################################
+
+restore [locate_data_file OCC152.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bcut result sh_1 sh_2
+puts [checkshape result]
+
+set check_square 1
+set square 10
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug152_2 b/tests/bugs/moddata/bug152_2
new file mode 100755 (executable)
index 0000000..dbd4502
--- /dev/null
@@ -0,0 +1,26 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: \\*\\* Exception \\*\\*.*"
+puts "TODO OCC12345 ALL: TEST INCOMPLETE"
+
+puts "================"
+puts "OCC152"
+puts "SAM1178"
+puts "================"
+puts ""
+#################################################################
+## SAM1178(#1871): Bad escaped result after a cut operation on the shape.
+#################################################################
+
+restore [locate_data_file OCC152.brep] sh 
+explode sh
+
+puts [checkshape sh_1]
+puts [checkshape sh_2]
+
+bcut result sh_2 sh_1
+puts [checkshape result]
+
+set check_square 1
+set square 10
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug16 b/tests/bugs/moddata/bug16
new file mode 100755 (executable)
index 0000000..e44aaed
--- /dev/null
@@ -0,0 +1,24 @@
+
+puts "================"
+puts "OCC16"
+puts "================"
+puts ""
+
+torus a 10 10
+mkface result a
+vinit
+vdisplay result
+vsetdispmode result 1
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri != 2592 || $nod != 1369 }  {
+   puts "Faulty OCC16: here can be shading problem"
+}
+
+puts "If here is bug - face is displaied in wireframe mode"
+
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug160_1 b/tests/bugs/moddata/bug160_1
new file mode 100755 (executable)
index 0000000..706a032
--- /dev/null
@@ -0,0 +1,25 @@
+
+puts "========================"
+puts "BUC60775"
+puts "OCC160"
+puts "(COMMON: A and B)"
+puts "========================"
+
+restore [locate_data_file buc60775a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60775b.brep] b
+puts [checkshape b]
+
+bcommon result a b
+puts [checkshape result]
+
+set nf [llength [explode result f]]
+if {$nf < 6} {
+   puts "Error : the resulting shape is unclosed!!!"
+}
+
+set check_square 1
+set square 94067.7
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug160_2 b/tests/bugs/moddata/bug160_2
new file mode 100755 (executable)
index 0000000..e6f2f34
--- /dev/null
@@ -0,0 +1,24 @@
+
+puts "========================"
+puts "BUC60775"
+puts "OCC160"
+puts "(COMMON: B and A)"
+puts "========================"
+
+restore [locate_data_file buc60775a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60775b.brep] b
+puts [checkshape b]
+
+bcommon result b a
+puts [checkshape result]
+
+set nf [llength [explode result f]]
+if {$nf < 6} {
+   puts "Error : the resulting shape is unclosed!!!"
+}
+
+set check_square 1
+set square 94067.7
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug160_3 b/tests/bugs/moddata/bug160_3
new file mode 100755 (executable)
index 0000000..64c2731
--- /dev/null
@@ -0,0 +1,26 @@
+
+puts "========================"
+puts "BUC60775"
+puts "OCC160"
+puts "(FUSE: A and B)"
+puts "========================"
+
+restore [locate_data_file buc60775a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60775b.brep] b
+puts [checkshape b]
+
+bfuse result a b
+puts [checkshape result]
+
+set nf [llength [explode result f]]
+
+if {$nf < 6} {
+   puts "Error : the resulting shape is unclosed!!!"
+}
+
+set check_square 1
+set square 328116
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug160_4 b/tests/bugs/moddata/bug160_4
new file mode 100755 (executable)
index 0000000..d3b6e0a
--- /dev/null
@@ -0,0 +1,25 @@
+
+puts "========================"
+puts "BUC60775" 
+puts "OCC160"
+puts "(FUSE: B and A)"
+puts "========================"
+
+restore [locate_data_file buc60775a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60775b.brep] b
+puts [checkshape b]
+
+bfuse result b a
+puts [checkshape result]
+
+set nf [llength [explode result f]]
+if {$nf < 6} {
+   puts "Error : the resulting shape is unclosed!!!"
+}
+
+set check_square 1
+set square 328116
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug160_5 b/tests/bugs/moddata/bug160_5
new file mode 100755 (executable)
index 0000000..e99b495
--- /dev/null
@@ -0,0 +1,25 @@
+
+puts "========================"
+puts "BUC60775"
+puts "OCC160"
+puts "(CUT: A and B)"
+puts "========================"
+
+restore [locate_data_file buc60775a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60775b.brep] b
+puts [checkshape b]
+
+bcut result a b
+puts [checkshape result]
+
+set nf [llength [explode result f]]
+if {$nf < 6} {
+   puts "Error : the resulting shape is unclosed!!!"
+}
+
+set check_square 1
+set square 48129.6
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug160_6 b/tests/bugs/moddata/bug160_6
new file mode 100755 (executable)
index 0000000..e59fff5
--- /dev/null
@@ -0,0 +1,26 @@
+puts "TODO OCC12345 ALL: Error : the resulting shape is unclosed!!!"
+
+puts "========================"
+puts "BUC60775" 
+puts "OCC160"
+puts "(CUT: B and A)"
+puts "========================"
+
+restore [locate_data_file buc60775a.brep] a 
+puts [checkshape a]
+restore [locate_data_file buc60775b.brep] b
+puts [checkshape b]
+
+bcut result b a
+puts [checkshape result]
+
+set nf [llength [explode result f]]
+if {$nf < 6} {
+   puts "Error : the resulting shape is unclosed!!!"
+}
+
+set check_square 1
+set square 247636
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug161 b/tests/bugs/moddata/bug161
new file mode 100755 (executable)
index 0000000..5de4f8c
--- /dev/null
@@ -0,0 +1,24 @@
+
+puts "========"
+puts "OCC161"
+puts "========"
+puts ""
+###########################################################
+## The face provided in attachment has single wire that is misoriented, i.e has
+## internal part outside. The checkshape command in DRAW should report that error
+## situation, while it does not.
+###########################################################
+
+restore [locate_data_file OCC161.brep] result
+
+decho off
+set che [checkshape result]
+decho on
+
+if { [regexp {Faulty} $che] != 1 } {
+    puts "Faulty OCC161 : Checkshape command works wrongly"
+} else {
+    puts "OCC161 OK : Checkshape command works properly"
+}
+
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug162 b/tests/bugs/moddata/bug162
new file mode 100755 (executable)
index 0000000..07f2749
--- /dev/null
@@ -0,0 +1,53 @@
+puts "========"
+puts "OCC162"
+puts "========"
+
+pload QAcommands
+pload XDE
+# Gauge for virtual memory
+if ![string compare $tcl_platform(platform) "windows"] {
+    proc VMem { memory } {
+       upvar $memory mem
+       regsub "^.*PeakVirtualSize: *\(\[0-9\]*\) KB.*$" \
+           [exec tlist [pid]] "\\1" mem
+    }
+} else {
+    proc VMem { memory } {
+       upvar $memory mem
+       set mem [lindex [exec ps -o vsz -p [pid]] 1]
+    }
+}
+
+set Mem0 ""
+set Mem1 ""
+VMem Mem0
+
+# vinit
+restore [locate_data_file OCC162.brep] s 
+# vdisplay s
+
+OCC162 s
+
+VMem Mem1
+puts "...  The peak memory consumed: [expr $Mem1 - $Mem0] KB"
+
+set MemoryLeakage 0
+set i_max 5
+for {set i 1} {${i} <= ${i_max}} {incr i} {
+   OCC162 s
+   VMem Mem2
+   set Delta [expr $Mem2 - $Mem1]
+   set MemoryLeakage [expr $MemoryLeakage + $Delta]
+   puts "       $i delta memory consumed: $Delta KB"
+}
+
+set percent_max 5
+set percent [expr ${MemoryLeakage} / (double(${i_max}) * (${Mem1} - ${Mem0})) * 100.]
+puts "percent = ${percent}"
+
+if {${percent} > ${percent_max}} {
+   puts "OCC162: Error : There is memory leakage during sewing operation"
+} else {
+   puts "OCC162: OK"
+}
+
diff --git a/tests/bugs/moddata/bug163 b/tests/bugs/moddata/bug163
new file mode 100755 (executable)
index 0000000..bde980a
--- /dev/null
@@ -0,0 +1,30 @@
+
+puts "========"
+puts "OCC163"
+puts "========"
+puts ""
+###########################################################
+## The result of extrema command is not correct.
+## We have only two "max" extrema, but we should have "min" and "max".
+###########################################################
+
+restore [locate_data_file OCC130.brep] res 
+
+puts [checkshape res]
+
+line l -120 -100 400 0 0 1
+mksurface s res
+
+set che [extrema l s]
+set err [llength $che]
+if { $err < 2} {
+    puts "Error OCC163 (amount): command extrema does NOT work properly"
+}
+
+set dum1 [dump [lindex $che 0]]
+set dum2 [dump [lindex $che 1]]
+
+if { $dum1 == $dum2} {
+    puts "Error OCC163 (dump): command extrema does NOT work properly"
+}
+
diff --git a/tests/bugs/moddata/bug164_1 b/tests/bugs/moddata/bug164_1
new file mode 100755 (executable)
index 0000000..6da9b73
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "================"
+puts "OCC164"
+puts "SAM1478"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC164-1.brep] sh1 
+restore [locate_data_file OCC164-2.brep] sh2
+puts [checkshape sh1]
+puts [checkshape sh2]
+
+bfuse result sh1 sh2
+puts [checkshape result]
+
+set check_square 1
+set square 344595
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug164_2 b/tests/bugs/moddata/bug164_2
new file mode 100755 (executable)
index 0000000..07d07fc
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "================"
+puts "OCC164"
+puts "SAM1478"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC164-1.brep] sh1 
+restore [locate_data_file OCC164-2.brep] sh2
+puts [checkshape sh1]
+puts [checkshape sh2]
+
+bfuse result sh2 sh1
+puts [checkshape result]
+
+set check_square 1
+set square 344595
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug165_1 b/tests/bugs/moddata/bug165_1
new file mode 100755 (executable)
index 0000000..5d89b50
--- /dev/null
@@ -0,0 +1,75 @@
+puts "========"
+puts "OCC165"
+puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
+puts "========"
+
+restore [locate_data_file offset_wire_019.brep] a 
+puts [checkshape a]
+
+mkplane f a
+puts [checkshape f]
+
+set IsGood 1
+if [catch {mkoffset res1 f 1 1 } result] {
+  puts "Faulty OCC165 (case 1) : function MKOFFSET works wrongly"
+  set IsGood 0
+} else {
+  puts "OCC165 OK (case 1): function MKOFFSET works properly"
+  checkshape res1_1
+  mkplane pl1 res1_1
+  checkshape pl1
+}
+
+if [catch {mkoffset res2 f 1 -1 } result] {
+  puts "Faulty OCC165 (case 2) : function MKOFFSET works wrongly"
+  set IsGood 0
+} else {
+  puts "OCC165 OK (case 2): function MKOFFSET works properly"
+  checkshape res2_1
+  mkplane pl2 res2_1 
+  checkshape pl2
+}
+
+if {$IsGood == 1} {
+  compound a res1_1 res2_1 res
+
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res1_1] full len
+
+  set good_len 1088.43
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 3) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+  
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res2_1] full len
+
+  set good_len 1075.87
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 4) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+
+  if {$IsGood == 1} {
+    puts "OCC165 OK"
+  } else {
+    puts "OCC165 FAULTY"
+  }
+
+} else {
+  puts "OCC165 FAULTY"
+}
+
diff --git a/tests/bugs/moddata/bug165_2 b/tests/bugs/moddata/bug165_2
new file mode 100755 (executable)
index 0000000..b06f3a9
--- /dev/null
@@ -0,0 +1,73 @@
+puts "TODO OCC12345 ALL: An exception was caught"
+puts "TODO OCC12345 ALL: \\*\\* Exception \\*\\*.*"
+puts "TODO OCC12345 ALL: OCC165 Faulty"
+puts "========"
+puts "OCC165"
+puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
+puts "========"
+
+restore [locate_data_file offset_wire_019.brep] a 
+puts [checkshape a]
+
+mkplane f a
+puts [checkshape f]
+
+set IsGood 1
+if [catch {mkoffset res1 f 1 4.8 } result] {
+  set IsGood 0
+} else {
+  puts "OCC165 OK (case 1): function MKOFFSET works properly"
+  puts [checkshape res1_1]
+  mkplane pl1 res1_1
+  puts [checkshape pl1]
+}
+
+if [catch {mkoffset res2 f 1 -2.9 } result] {
+  set IsGood 0
+} else {
+  puts "OCC165 OK (case 2): function MKOFFSET works properly"
+  puts [checkshape res2_1]
+  mkplane pl2 res2_1 
+  puts [checkshape pl2]
+}
+
+if {$IsGood == 1} {
+  compound a res1_1 res2_1 res
+  
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res1_1] full len
+
+  set good_len 1112.29
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    set IsGood 0
+  }
+  
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res2_1] full len
+
+  set good_len 1063.91
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    set IsGood 0
+  }
+
+  if {$IsGood == 1} {
+    puts "OCC165 OK"
+  } else {
+    puts "OCC165 Faulty"
+  }
+
+} else {
+  puts "OCC165 Faulty"
+}
diff --git a/tests/bugs/moddata/bug165_3 b/tests/bugs/moddata/bug165_3
new file mode 100755 (executable)
index 0000000..2762f7e
--- /dev/null
@@ -0,0 +1,137 @@
+
+puts "========"
+puts "OCC165"
+puts "========"
+
+restore [locate_data_file OCC165-2.brep] f 
+puts [checkshape f]
+
+set IsGood 1
+if [catch {mkoffset res1 f 3 10 } result] {
+  puts "Faulty OCC165 (case 1) : function MKOFFSET works wrongly"
+  set IsGood 0
+} else {
+  #puts "OCC165 OK (case 1): function MKOFFSET works properly"
+  mkplane pl1_1 res1_1 
+  puts [checkshape pl1_1]
+  mkplane pl1_2 res1_2 
+  puts [checkshape pl1_2]
+  mkplane pl1_3 res1_3 
+  puts [checkshape pl1_3]
+}
+
+if [catch {mkoffset res2 f 3 -10 } result] {
+  puts "Faulty OCC165 (case 2) : function MKOFFSET works wrongly"
+  set IsGood 0
+} else {
+  #puts "OCC165 OK (case 2): function MKOFFSET works properly"
+  mkplane pl2_1 res2_1 
+  puts [checkshape pl2_1]
+  mkplane pl2_2 res2_2 
+  puts [checkshape pl2_2]
+  mkplane pl2_3 res2_3 
+  puts [checkshape pl2_3]
+}
+
+if {$IsGood == 1} {
+  compound f res1_1 res1_2 res1_3 res2_1 res2_2 res2_3 res
+  
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res1_1] full len
+
+  set good_len 462.832
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 3) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res1_2] full len
+
+  set good_len 525.664
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 4) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res1_3] full len
+
+  set good_len 588.496
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 5) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res2_1] full len
+
+  set good_len 320
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 6) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res2_2] full len
+
+  set good_len 240
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 7) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+
+  regexp {Mass +: +([-0-9.+eE]+)} [lprops res2_3] full len
+
+  set good_len 160
+  set percent_max 0.1
+  set percent [expr abs(${len} - ${good_len}) / double(${good_len}) * 100.]
+
+  puts "good_len = ${good_len}"
+  puts "length = ${len}"
+  puts "percent = ${percent}"
+
+  if {${percent} > ${percent_max}} {
+    puts "Faulty OCC165 (case 8) : function MKOFFSET works wrongly"
+    set IsGood 0
+  }
+
+  if {$IsGood == 1} {
+    puts "OCC165 OK"
+  } else {
+    puts "OCC165 FAULTY"
+  }
+
+} else {
+  puts "OCC165 FAULTY"
+}
diff --git a/tests/bugs/moddata/bug17 b/tests/bugs/moddata/bug17
new file mode 100755 (executable)
index 0000000..fbd1d97
--- /dev/null
@@ -0,0 +1,34 @@
+puts "TODO OCC12345 ALL: Faulty OCC17: here can be shading problem"
+
+puts "================"
+puts "OCC17"
+puts "================"
+puts ""
+
+#####################################################
+puts " Solid_14 will be the face which is unvisible during displaying entire solid."
+#####################################################
+
+restore [locate_data_file OCC17.brep] sh 
+
+puts [checkshape sh]
+
+explode sh f
+renamevar sh_14 result
+tclean result
+vinit
+vdisplay result
+vsetdispmode result 1
+vfit
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri != 100 && $nod != 94 }  {
+  puts "Faulty OCC17: here can be shading problem"
+}
+
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug175 b/tests/bugs/moddata/bug175
new file mode 100755 (executable)
index 0000000..5b5ffa4
--- /dev/null
@@ -0,0 +1,24 @@
+
+puts "========"
+puts "OCC175"
+puts "========"
+puts ""
+###########################################
+## ABug of a symmetry on this specific attached BREP shape.
+###########################################
+
+restore [locate_data_file OCC175.brep] result 
+puts [checkshape result]
+
+regexp {SHAPE +: +([-0-9.+eE]+)} [nbshapes result] full col1
+
+tmirror result 0 0 0 0 1 0
+
+regexp {SHAPE +: +([-0-9.+eE]+)} [nbshapes result] full col2
+if { $col1 != $col2} {
+   puts  "Error : Command mirror does NOT work properly. "
+}
+
+set check_square 1
+set square 13091.3
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug183_1 b/tests/bugs/moddata/bug183_1
new file mode 100755 (executable)
index 0000000..c0d92d3
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "========================"
+puts " OCC183 "
+puts "(case 1)"
+puts "========================"
+puts ""
+
+restore [locate_data_file f1] b1 
+puts [checkshape b1]
+
+restore [locate_data_file f4] b2
+puts [checkshape b2]
+
+bcommon result b1 b2
+puts [checkshape result]
+
+set check_square 1
+set square 315.159
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug183_2 b/tests/bugs/moddata/bug183_2
new file mode 100755 (executable)
index 0000000..45c7cd9
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "========================"
+puts " OCC183 "
+puts "(case 2)"
+puts "========================"
+puts ""
+
+restore [locate_data_file so1] b1 
+puts [checkshape b1]
+
+restore [locate_data_file so4] b2
+puts [checkshape b2]
+
+bfuse result b1 b2
+puts [checkshape result]
+
+set check_square 1
+set square 942.478
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug183_3 b/tests/bugs/moddata/bug183_3
new file mode 100755 (executable)
index 0000000..44d93cf
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "========================"
+puts " OCC183 "
+puts "(case 3)"
+puts "========================"
+puts ""
+
+restore [locate_data_file so1] b1 
+puts [checkshape b1]
+
+restore [locate_data_file so4] b2
+puts [checkshape b2]
+
+bcut result b1 b2
+puts [checkshape result]
+
+set check_square 1
+set square 863.938
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug183_4 b/tests/bugs/moddata/bug183_4
new file mode 100755 (executable)
index 0000000..8f2372b
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "========================"
+puts " OCC183 "
+puts "(case 4)"
+puts "========================"
+puts ""
+
+restore [locate_data_file so1] b1 
+puts [checkshape b1]
+
+restore [locate_data_file so2] b2
+puts [checkshape b2]
+
+bcommon result b1 b2
+puts [checkshape result]
+
+set check_square 1
+set square 392.699
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug183_5 b/tests/bugs/moddata/bug183_5
new file mode 100755 (executable)
index 0000000..56bd2de
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "========================"
+puts " OCC183 "
+puts "(case 5)"
+puts "========================"
+puts ""
+
+restore [locate_data_file so4] b1 
+puts [checkshape b1]
+
+restore [locate_data_file so2] b2
+puts [checkshape b2]
+
+bcommon result b1 b2
+puts [checkshape result]
+
+set check_square 1
+set square 198.863
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug183_6 b/tests/bugs/moddata/bug183_6
new file mode 100755 (executable)
index 0000000..730c644
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========================"
+puts " OCC183 "
+puts " CTS16184"
+puts "(case 6)"
+puts "========================"
+puts ""
+
+restore [locate_data_file CTO900_cts16184a.rle] a 
+puts [checkshape a]
+restore [locate_data_file cts16184b.brep] b
+puts [checkshape b]
+
+bop a b
+bopfuse result a b
+puts [checkshape -top result]
+
+set check_square 1
+set square 0.0892544
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug187 b/tests/bugs/moddata/bug187
new file mode 100755 (executable)
index 0000000..dc34ccf
--- /dev/null
@@ -0,0 +1,16 @@
+
+puts "================"
+puts "OCC187"
+puts "SAM1230"
+puts "================"
+puts ""
+
+#################################################################
+## In time document with "1-exhaust.brep" imported shape saving exception "Access Violation" 
+## raises because of wrong PColgp_HArray1 allocation.
+## StandardCSFDB_Allocate badly allocates memory blocks: bad address value retuned.
+#################################################################
+
+restore [locate_data_file OCC187_from_bug_description.brep] result
+
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug188 b/tests/bugs/moddata/bug188
new file mode 100755 (executable)
index 0000000..12fe316
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "============"
+puts "BUC60929"
+puts "OCC188"
+puts "============"
+
+restore [locate_data_file BUC60929.brep] a 
+
+explode a 
+puts [checkshape a_1] 
+puts [checkshape a_2]
+
+bcommon result a_1 a_2
+puts [checkshape result]
+
+set check_square 1
+set square 3739.26
+set 2dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug188_1 b/tests/bugs/moddata/bug188_1
new file mode 100755 (executable)
index 0000000..b23b36d
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "================"
+puts "OCC188"
+puts "================"
+puts ""
+
+restore [locate_data_file BUC60929.brep] a 
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bcut result a_1 a_2
+puts [checkshape result]
+
+set check_square 1
+set square 669659
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug20 b/tests/bugs/moddata/bug20
new file mode 100755 (executable)
index 0000000..9c40c4e
--- /dev/null
@@ -0,0 +1,35 @@
+puts "TODO OCC12345 ALL: Faulty OCC20: here is shading problem"
+
+puts "================"
+puts "OCC20"
+puts "================"
+puts ""
+###############################
+## Face apearence in shading mode is wrong
+###############################
+
+pload QAcommands
+restore [locate_data_file OCC20.brep] result
+
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vsetdispmode result 1
+
+QASetViewCharac 5.1346924 95.358439 -4.910448 0.23495967 -0.302 0.923899 -0.7304302 0.5722587 0.372815 9.550874 -7.55706 -28.83166
+
+isos result 0
+triangles result
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri != 416 || $nod != 367 }  {
+   puts "Faulty OCC20: here is shading problem"
+}
+
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug20333 b/tests/bugs/moddata/bug20333
new file mode 100755 (executable)
index 0000000..dcaf6dc
--- /dev/null
@@ -0,0 +1,26 @@
+puts "TODO OCC12345 ALL: Faulty PRO20333: here is shading problem"
+
+puts "============"
+puts "PRO20333"
+puts ""
+puts "=================================="
+puts "It takes visual check for this BUG"
+puts "=================================="
+
+restore [locate_data_file pro20333a.brep] result
+puts [checkshape result]
+
+tclean result
+isos result 0
+incmesh result .1
+triangles result
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri != 107 || $nod != 109 } {  
+   puts "Faulty PRO20333: here is shading problem"
+}
+
+set 3dviewer 0
diff --git a/tests/bugs/moddata/bug211_1 b/tests/bugs/moddata/bug211_1
new file mode 100755 (executable)
index 0000000..a3764c7
--- /dev/null
@@ -0,0 +1,20 @@
+
+puts "========"
+puts "OCC211"
+puts "========"
+
+##########################################
+##Error of fillet prolongation. 
+##########################################
+
+restore [locate_data_file OCC211.brep] a 
+
+explode a e
+
+blend result a 10 a_24
+puts [checkshape result]
+
+set check_square 1
+set square 1.34399e+06
+set 2dviewer 0
+
diff --git a/tests/bugs/moddata/bug211_2 b/tests/bugs/moddata/bug211_2
new file mode 100755 (executable)
index 0000000..124a01d
--- /dev/null
@@ -0,0 +1,19 @@
+
+puts "========"
+puts "OCC211"
+puts "========"
+
+##########################################
+##Error of fillet prolongation. 
+##########################################
+
+restore [locate_data_file OCC211.brep] a 
+
+explode a e
+
+blend result a 10 a_4
+puts [checkshape result]
+
+set check_square 1
+set square 1.34399e+06
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug217 b/tests/bugs/moddata/bug217
new file mode 100755 (executable)
index 0000000..ce8532b
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "========"
+puts "OCC217"
+puts "========"
+
+##########################################
+##nurbsconvert problem
+##########################################
+
+box b -5 -5 -5 10 10 10 
+psphere s 6 
+
+bfuse result s b 
+puts [checkshape result]
+
+set check_square 1
+set square 618.85
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug227_1 b/tests/bugs/moddata/bug227_1
new file mode 100755 (executable)
index 0000000..773a910
--- /dev/null
@@ -0,0 +1,26 @@
+
+puts "========"
+puts "OCC227"
+puts "(case 1)"
+puts "========"
+
+##############################################################
+##Incorrect result with missing faces after a fuse operation beetween the box and the wedge.
+###############################################################
+
+restore [locate_data_file OCC227a.brep] a 
+fsameparameter a
+updatetolerance a
+puts [checkshape a]
+
+restore [locate_data_file OCC227b.brep] b
+fsameparameter b
+updatetolerance b
+puts [checkshape b]
+
+bfuse result a b 
+puts [checkshape result]
+
+set check_square 1
+set square 1583.92
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug227_2 b/tests/bugs/moddata/bug227_2
new file mode 100755 (executable)
index 0000000..6b3e273
--- /dev/null
@@ -0,0 +1,26 @@
+
+puts "========"
+puts "OCC227"
+puts "(case 2)"
+puts "========"
+
+##############################################################
+##Incorrect result with missing faces after a fuse operation beetween the box and the wedge.
+###############################################################
+
+restore [locate_data_file OCC227a.brep] a 
+fsameparameter a
+updatetolerance a
+puts [checkshape a]
+
+restore [locate_data_file OCC227b.brep] b
+fsameparameter b
+updatetolerance b
+puts [checkshape b]
+
+bfuse result b a 
+puts [checkshape result]
+
+set check_square 1
+set square 1583.92
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug228 b/tests/bugs/moddata/bug228
new file mode 100755 (executable)
index 0000000..1510d87
--- /dev/null
@@ -0,0 +1,21 @@
+
+puts "================"
+puts "OCC228"
+puts "================"
+puts ""
+################################################
+## It's impossible to make common of the two shapes in the file attached.
+################################################
+
+cpulimit 4000
+
+restore [locate_data_file OCC228.brep] a 
+explode a
+puts [checkshape a_1]
+puts [checkshape a_2]
+
+bcommon result a_1 a_2
+
+set check_square 1
+set square 66231.3
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug247 b/tests/bugs/moddata/bug247
new file mode 100755 (executable)
index 0000000..a52c866
--- /dev/null
@@ -0,0 +1,17 @@
+
+puts "========================"
+puts " OCC247 "
+puts "========================"
+
+#################################################
+##Using of function "bop" with attached shapes calls exception. 
+#################################################
+restore [locate_data_file OCC247a.brep] a
+restore [locate_data_file case_8_wire3.brep] b
+
+bop a b
+
+
+
+
\ No newline at end of file
diff --git a/tests/bugs/moddata/bug252_1 b/tests/bugs/moddata/bug252_1
new file mode 100755 (executable)
index 0000000..49ff0d4
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "================"
+puts "OCC252"
+puts "================"
+puts ""
+
+pload QAcommands
+
+restore [locate_data_file OCC252.brep] a 
+
+puts [checkshape a]
+
+explode a w
+
+OCC252 result a_466 a 0
+
+regexp {Mass +: +([-0-9.+eE]+)} [lprops result] full len
+
+if { ${len} <= 0 } {
+   puts "Error : OCC252"
+}
+
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug252_2 b/tests/bugs/moddata/bug252_2
new file mode 100755 (executable)
index 0000000..1265889
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "================"
+puts "OCC252"
+puts "================"
+puts ""
+
+pload QAcommands
+
+restore [locate_data_file OCC252.brep] a 
+puts [checkshape a]
+
+explode a w
+
+OCC252 result a_466 a 1
+
+regexp {Mass +: +([-0-9.+eE]+)} [lprops result] full len
+
+if { ${len} != 0 } {
+   puts "Error : OCC252"
+}
+
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug252_3 b/tests/bugs/moddata/bug252_3
new file mode 100755 (executable)
index 0000000..456c643
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "================"
+puts "OCC252"
+puts "================"
+puts ""
+
+pload QAcommands
+
+restore [locate_data_file OCC252.brep] a 
+puts [checkshape a]
+
+explode a w
+
+OCC252 result a_466 a 2
+
+regexp {Mass +: +([-0-9.+eE]+)} [lprops result] full len 
+
+if { ${len} <= 0 } {
+   puts "Error : OCC252"
+}
+
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug254 b/tests/bugs/moddata/bug254
new file mode 100755 (executable)
index 0000000..f89994e
--- /dev/null
@@ -0,0 +1,18 @@
+
+puts "================"
+puts "OCC254"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC254-1.brep] shape1 
+puts [checkshape shape1]
+restore [locate_data_file OCC254-3.brep] shape3
+puts [checkshape shape3]
+common result shape1 shape3
+puts [checkshape result]
+
+set check_square 1
+set length 1231.07
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug256 b/tests/bugs/moddata/bug256
new file mode 100755 (executable)
index 0000000..02b9cc9
--- /dev/null
@@ -0,0 +1,23 @@
+
+puts "========"
+puts "OCC256"
+puts "========"
+
+restore [locate_data_file OCC256.brep] result
+puts [checkshape result]
+
+tclean result
+vinit
+vdisplay result
+vsetdispmode result 1
+vfit
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri != 66 && $nod != 66 }  {
+  puts "Error : here is shading problem"
+}
+
+set 3dviewer 0
diff --git a/tests/bugs/moddata/bug257 b/tests/bugs/moddata/bug257
new file mode 100755 (executable)
index 0000000..5dff1b7
--- /dev/null
@@ -0,0 +1,49 @@
+puts "TODO OCC12345 ALL: OCC257 - Error : xdelta= 3.6651128509496784"
+puts "TODO OCC12345 ALL: OCC257 - Error : ydelta= 5.840378793387278"
+puts "TODO OCC12345 ALL: OCC257 - Error : zdelta= 1.4898469085120623"
+
+puts "================"
+puts "OCC257"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC257.brep] result 
+puts [checkshape result]
+
+set bb [bounding result]
+
+set list [split ${bb}]
+set listLength [llength ${list}]
+if { ${listLength} < 6 } {
+   puts "Error : listLength = ${listLength}"
+}
+
+set x1 [lindex ${list} 0]
+set y1 [lindex ${list} 1]
+set z1 [lindex ${list} 2]
+set x2 [lindex ${list} 3]
+set y2 [lindex ${list} 4]
+set z2 [lindex ${list} 5]
+
+set len [expr ${x2} - ${x1}]
+set width  [expr ${y2} - ${y1}]
+set height [expr ${z2} - ${z1}]
+
+set R 180
+
+set xdelta [expr abs(${len} - ${R}) / ${R} * 100]
+set ydelta [expr abs(${width}  - ${R}) / ${R} * 100]
+set zdelta [expr abs(${height} - ${R}) / ${R} * 100]
+
+set maxdelta 0.1
+
+if { ${xdelta} > ${maxdelta} } then {puts "OCC257 - Error : xdelta= ${xdelta}"}
+if { ${ydelta} > ${maxdelta} } then {puts "OCC257 - Error : ydelta= ${ydelta}"}
+if { ${zdelta} > ${maxdelta} } then {puts "OCC257 - Error : zdelta= ${zdelta}"}
+
+if { ${xdelta} <= ${maxdelta} && ${ydelta} <= ${maxdelta} && ${zdelta} <= ${maxdelta} } then {
+   puts "OCC257: OK"
+}
+
+set 3dviewer 0
+
diff --git a/tests/bugs/moddata/bug258_1 b/tests/bugs/moddata/bug258_1
new file mode 100755 (executable)
index 0000000..6ad4ae6
--- /dev/null
@@ -0,0 +1,27 @@
+
+puts "========================"
+puts " OCC258 "
+puts "(case 1)"
+puts "========================"
+
+restore [locate_data_file shading_143.brep] result
+puts [checkshape result]
+
+tclean result
+isos result 0
+vinit 
+vdisplay result
+vsetdispmode result 1
+vfit
+triangles result
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri < 71 || $nod < 73 }  {
+  puts "Error (case 1) : here is shading problem"
+}
+
+set 3dviewer 0
+
diff --git a/tests/bugs/moddata/bug258_2 b/tests/bugs/moddata/bug258_2
new file mode 100755 (executable)
index 0000000..62e90ca
--- /dev/null
@@ -0,0 +1,28 @@
+
+puts "========================"
+puts " OCC258 "
+puts "(case 2)"
+puts "========================"
+
+restore [locate_data_file shading_144.brep] result
+puts [checkshape result]
+
+tclean result
+isos result 0
+vinit 
+vdisplay result
+vsetdispmode result 1
+vfit
+triangles result
+
+set info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $info full tri
+regexp { +([-0-9.+eE]+) +nodes} $info full nod
+
+if { $tri < 70 || $nod < 72 }  {
+  puts "Error (case 2) : here is shading problem"
+}
+
+set 3dviewer 0
+
+
diff --git a/tests/bugs/moddata/bug259 b/tests/bugs/moddata/bug259
new file mode 100755 (executable)
index 0000000..c14cb66
--- /dev/null
@@ -0,0 +1,21 @@
+puts "========================"
+puts " OCC259 "
+puts "========================"
+puts ""
+######################################################
+##Inequality behaviour of checkshape -top on SunOS and IRIX.
+######################################################
+
+pcylinder b1 1 2
+
+dset r sqrt(2)/2
+box b2 -r -r 0 2*r 2*r 2
+trotate b2 0 0 0 0 0 1 135
+
+bfuse result b2 b1
+puts [checkshape -top result]
+
+set check_square 1
+set square 18.8496
+set 2dviewer 0
diff --git a/tests/bugs/moddata/bug266 b/tests/bugs/moddata/bug266
new file mode 100755 (executable)
index 0000000..e0d37ad
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "================"
+puts "OCC266"
+puts "================"
+puts ""
+
+restore [locate_data_file OCC266.brep] a 
+puts [checkshape a]
+
+renamevar a edge
+explode edge e
+
+renamevar edge face
+explode face f
+
+chamf result face edge_10 face_3 A 1 45 edge_6 face_3 A 1 45 edge_11 face_3 A 1 45 edge_12 face_3 A 1 45 edge_13 face_3 A 1 45 edge_14 face_3 A 1