diff --git a/src/QADraw/QADraw.cxx b/src/QADraw/QADraw.cxx index dd2f4c5068..9a8b6a27e6 100755 --- a/src/QADraw/QADraw.cxx +++ b/src/QADraw/QADraw.cxx @@ -851,7 +851,7 @@ static int V2dSetHighlightMode (Draw_Interpretor& di, Standard_Integer argc, con return 0; } -#ifndef WNT +//#ifndef WNT //============================================================================== //function : QAAISGetPixelColor2d //purpose : QAAISGetPixelColor2d coord_X coord_Y Red Green Blue @@ -935,7 +935,7 @@ static int QAAISGetPixelColor2d (Draw_Interpretor& di, Standard_Integer argc, co } return 0; } -#endif // !WNT +//#endif // !WNT //============================================================================== //function : QAMoveTo2d @@ -2240,11 +2240,11 @@ void QADraw::CommonCommands(Draw_Interpretor& theCommands) theCommands.Add("QAGetViewCharac", "QAGetViewCharac", __FILE__,QAAISGetViewCharac, group); theCommands.Add("QASetViewCharac", "QASetViewCharac scale center_X center_Y proj_X proj_Y proj_Z up_X up_Y up_Z at_X at_Y at_Z", __FILE__,QAAISSetViewCharac, group); theCommands.Add("QAGetColorCoord", "QAGetColorCoord [3d|2d]", __FILE__,QAAISGetColorCoord, group); -#ifndef WNT +//#ifndef WNT theCommands.Add("QAAISGetPixelColor2d", "QAAISGetPixelColor2d coord_X coord_Y [Red Green Blue] : Check a color of pixel", __FILE__, QAAISGetPixelColor2d, group); -#endif +//#endif theCommands.Add("v2dgetgrid", "v2dgetgrid coord_X coord_Y [grid_X grid_Y] : Get/print coordinates of a grid point near to (coord_X, coord_Y)", diff --git a/tests/bugs/begin b/tests/bugs/begin index aac6c0d3b4..c9605c565a 100755 --- a/tests/bugs/begin +++ b/tests/bugs/begin @@ -35,6 +35,143 @@ proc checkreal {name value expected tol_abs tol_rel} { return } + + +# Procedure to check color in the point near default coordinate + +proc checkpoint {coord_x coord_y rd_ch gr_ch bl_ch} { + set x_start [expr ${coord_x} - 2] + set y_start [expr ${coord_y} - 2] + set mistake 0 + set i 0 + while { $mistake != 1 && $i <= 5 } { + set j 0 + while { $mistake != 1 && $j <= 5 } { + set position_x [expr ${x_start} + $j] + set position_y [expr ${y_start} + $i] + puts $position_x + puts $position_y + global color2d + if { [info exists color2d] } { + set color [ QAAISGetPixelColor2d ${position_x} ${position_y} ] + } else { + set color [ QAGetPixelColor ${position_x} ${position_y} ] + } + regexp {RED +: +([-0-9.+eE]+)} $color full rd + regexp {GREEN +: +([-0-9.+eE]+)} $color full gr + regexp {BLUE +: +([-0-9.+eE]+)} $color full bl + set rd_int [expr int($rd * 1.e+05)] + set gr_int [expr int($gr * 1.e+05)] + set bl_int [expr int($bl * 1.e+05)] + + if { $rd_ch != 0 } { + set tol_rd [expr abs($rd_ch - $rd_int)/$rd_ch] + } else { + set tol_rd $rd_int + } + if { $gr_ch != 0 } { + set tol_gr [expr abs($gr_ch - $gr_int)/$gr_ch] + } else { + set tol_gr $gr_int + } + if { $bl_ch != 0 } { + set tol_bl [expr abs($bl_ch - $bl_int)/$bl_ch] + } else { + set tol_bl $bl_int + } + + if { $tol_rd > 0.2 || $tol_gr > 0.2 || $tol_bl > 0.2 } { + puts "Warning : Point with true color was not found near default coordinates" + set mistake 0 + } else { + set mistake 1 + } + incr j + } + incr i + } + return $mistake +} + +# Procedure to check color using command QAgetPixelColor with tolerance +proc checkcolor { coord_x coord_y rd_get gr_get bl_get } { + puts "Coordinate x = $coord_x" + puts "Coordinate y = $coord_y" + puts "RED color of RGB is $rd_get" + puts "GREEN color of RGB is $gr_get" + puts "BLUE color of RGB is $bl_get" + + if { $coord_x <= 1 || $coord_y <= 1 } { + puts "Error : minimal coordinate is x = 2, y = 2. But we have x = $coord_x y = $coord_y" + return -1 + } + global color2d + if { [info exists color2d] } { + set color [ QAAISGetPixelColor2d ${coord_x} ${coord_y} ] + } else { + set color [ QAGetPixelColor ${coord_x} ${coord_y} ] + } + + regexp {RED +: +([-0-9.+eE]+)} $color full rd + regexp {GREEN +: +([-0-9.+eE]+)} $color full gr + regexp {BLUE +: +([-0-9.+eE]+)} $color full bl + set rd_int [expr int($rd * 1.e+05)] + set gr_int [expr int($gr * 1.e+05)] + set bl_int [expr int($bl * 1.e+05)] + set rd_ch [expr int($rd_get * 1.e+05)] + set gr_ch [expr int($gr_get * 1.e+05)] + set bl_ch [expr int($bl_get * 1.e+05)] + + if { $rd_ch != 0 } { + set tol_rd [expr abs($rd_ch - $rd_int)/$rd_ch] + } else { + set tol_rd $rd_int + } + if { $gr_ch != 0 } { + set tol_gr [expr abs($gr_ch - $gr_int)/$gr_ch] + } else { + set tol_gr $gr_int + } + if { $bl_ch != 0 } { + set tol_bl [expr abs($bl_ch - $bl_int)/$bl_ch] + } else { + set tol_bl $bl_int + } + set status 0 + if { $tol_rd > 0.2 } { + puts "Warning : RED light of additive color model RGB is invalid" + set status 1 + } + if { $tol_gr > 0.2 } { + puts "Warning : GREEN light of additive color model RGB is invalid" + set status 1 + } + if { $tol_bl > 0.2 } { + puts "Warning : BLUE light of additive color model RGB is invalid" + set status 1 + } + + if { $status != 0 } { + puts "Warning : Colors of default coordinate are not equal" + } + + global stat + if { $tol_rd > 0.2 || $tol_gr > 0.2 || $tol_bl > 0.2 } { + set info [checkpoint $coord_x $coord_y $rd_ch $gr_ch $bl_ch] + set stat [lindex $info end] + if { ${stat} != 1 } { + puts "Error : Colors are not equal in default coordinate and in the near coordinates too" + return $stat + } else { + puts "Point with valid color was found" + return $stat + } + } else { + set stat 1 + } +} + + # Procedure to check if sequence of values in listval follows linear trend # adding the same delta on each step. # diff --git a/tests/bugs/demo/bug23410 b/tests/bugs/demo/bug23410 old mode 100644 new mode 100755 index 2a4b9ec643..87393c8e62 --- a/tests/bugs/demo/bug23410 +++ b/tests/bugs/demo/bug23410 @@ -7,52 +7,21 @@ puts "" ####################################################################### pload QAcommands -set r_1 0.4 -set r_2 0.5 -set g_1 0.9 -set g_2 1 -set b_1 0 -set b_2 0.1 -set x1 128 -set y1 235 +set x_coord 128 +set y_coord 235 + box result 100 100 100 vdisplay result vsetdispmode 1 vfit vsetcolor result GREEN -set color [ QAGetPixelColor ${x1} ${y1} ] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl -set red_status 0 -if { $rd < $r_1 || $rd > $r_2 } { - set red_status 1 -} else { - set red_status 0 -} +checkcolor $x_coord $y_coord 0.45 0.95 0.05 -set green_status 0 -if { $gr < $g_1 || $gr > $g_2 } { - set green_status 1 -} else { - set green_status 0 -} - -set blue_status 0 -if { $bl < $b_1 || $bl > $b_2 } { - set blue_status 1 -} else { - set blue_status 0 -} - -if { $red_status != 0 || $green_status != 0 || $blue_status != 0 } { - puts "Error : color are not equal" - puts "Error : QA command QAGetPixelColor doesn't work properly" -} set 3dviewer 1 + diff --git a/tests/bugs/modalg/buc60663_2 b/tests/bugs/modalg/buc60663_2 index 1a075edf34..e6a0c9cd22 100755 --- a/tests/bugs/modalg/buc60663_2 +++ b/tests/bugs/modalg/buc60663_2 @@ -23,7 +23,7 @@ explode b e explode b_4 v distmini d $ver b_5 -regexp {([-0-9.+eE]+)} [dump d_val] full dist +regexp {([-0-9.+eE]+)$} [dump d_val] full dist regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} [maxtolerance $ver] full toler if {$dist > $toler} { diff --git a/tests/bugs/modalg/buc60690 b/tests/bugs/modalg/buc60690 index c14362b9ab..66b214437e 100755 --- a/tests/bugs/modalg/buc60690 +++ b/tests/bugs/modalg/buc60690 @@ -30,13 +30,13 @@ if { [regexp {Faulty} $che ] == 1 } { distmini d1 result_1 b distmini d2 [lindex $le [expr [llength $le] - 1]] b - regexp {([-0-9.+eE]+)} [dump d1_val] full du1 + regexp {([-0-9.+eE]+)$} [dump d1_val] full du1 if { [expr $du1 > 1e-7] } { puts "Faulty : The distance between first vertex and shellB is $du1. It is more then 1e-7." } - regexp {([-0-9.+eE]+)} [dump d2_val] full du2 + regexp {([-0-9.+eE]+)$} [dump d2_val] full du2 if { [expr $du2 > 1e-7] } { puts "Faulty : The distance between last vertex and shellB is $du2. It is more then 1e-7." } diff --git a/tests/bugs/modalg/buc60827 b/tests/bugs/modalg/buc60827 index ac9e510b5c..9776b3621a 100755 --- a/tests/bugs/modalg/buc60827 +++ b/tests/bugs/modalg/buc60827 @@ -34,12 +34,12 @@ if { [regexp {Faulty} $che ] == 1 } { puts "Faulty :The result of section is an empty compound." } else { distmini d1 res_1 a_1 - regexp {([-0-9.+eE]+)} [dump d1_val] full len1 + regexp {([-0-9.+eE]+)$} [dump d1_val] full len1 if ([expr $len1 > 1e-7]) { puts "Faulty :The section is incomplite." } else { distmini d2 res_2 a_2 - regexp {([-0-9.+eE]+)} [dump d2_val] full len2 + regexp {([-0-9.+eE]+)$} [dump d2_val] full len2 if ([expr $len2 > 1e-7]) { puts "Faulty :The section is incomplite." } diff --git a/tests/bugs/modalg/bug1013 b/tests/bugs/modalg/bug1013 new file mode 100755 index 0000000000..2314bb58ed --- /dev/null +++ b/tests/bugs/modalg/bug1013 @@ -0,0 +1,13 @@ +puts "================" +puts "OCC1013" +puts "OCC906" +puts "================" +puts "" + +restore [locate_data_file DXF906.rle] wire +puts [checkshape wire] + +mkplane result wire + +set square 92131.6 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug144 b/tests/bugs/modalg/bug144 index d58e863198..0c521635a0 100755 --- a/tests/bugs/modalg/bug144 +++ b/tests/bugs/modalg/bug144 @@ -22,7 +22,7 @@ explode b e explode b_4 v distmini d $ver b_5 -regexp {([-0-9.+eE]+)} [dump d_val] full dist +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] } { diff --git a/tests/bugs/modalg/bug238_1 b/tests/bugs/modalg/bug238_1 index a972612ebc..fd49fe852b 100755 --- a/tests/bugs/modalg/bug238_1 +++ b/tests/bugs/modalg/bug238_1 @@ -20,7 +20,7 @@ set nb_e_good 7 explode result v explode a e distmini di result_1 a_3 -regexp {([-0-9.+eE]+)} [dump $di_val] full dis +regexp {([-0-9.+eE]+)$} [dump $di_val] full dis if { [expr $dis > 1.e-5] } { puts "Faulty : Result shape is WRONG !!!" } else { diff --git a/tests/bugs/modalg/bug238_2 b/tests/bugs/modalg/bug238_2 index 8118745c11..bb1f0622f8 100755 --- a/tests/bugs/modalg/bug238_2 +++ b/tests/bugs/modalg/bug238_2 @@ -20,7 +20,7 @@ set nb_e_good 7 explode result v explode a e distmini di result_2 a_3 -regexp {([-0-9.+eE]+)} [dump $di_val] full dis +regexp {([-0-9.+eE]+)$} [dump $di_val] full dis if { [expr $dis > 1.e-5] } { puts "Faulty : Result shape is WRONG !!!" } else { diff --git a/tests/bugs/modalg/bug322 b/tests/bugs/modalg/bug322 index acc4752cfe..ac66c96178 100755 --- a/tests/bugs/modalg/bug322 +++ b/tests/bugs/modalg/bug322 @@ -14,18 +14,15 @@ vinit vdisplay result vfit -set Yellow_R 1 -set Yellow_G 1 -set Yellow_B 0 +set x_coord 204 +set y_coord 297 -set x1 204 -set y1 297 +checkcolor $x_coord $y_coord 1 1 0 -set x2 251 -set y2 232 +set x_coord 251 +set y_coord 232 -QAGetPixelColor $x1 $y1 $Yellow_R $Yellow_G $Yellow_B -QAGetPixelColor $x2 $y2 $Yellow_R $Yellow_G $Yellow_B +checkcolor $x_coord $y_coord 1 1 0 set square 20000 set only_screen 1 diff --git a/tests/bugs/modalg/bug397 b/tests/bugs/modalg/bug397 index 8328ceb3ae..1e1f65b05b 100755 --- a/tests/bugs/modalg/bug397 +++ b/tests/bugs/modalg/bug397 @@ -4,19 +4,6 @@ puts "========================" pload QAcommands -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set rd_ch 50196 - set gr_ch 34901 - set bl_ch 5098 -} else { - set rd_ch 50588 - set gr_ch 34901 - set bl_ch 5098 -} - restore [locate_data_file OCC397.brep] a puts [checkshape a] @@ -29,17 +16,12 @@ vdisplay result vfit vsetdispmode result 1 -set color [QAGetPixelColor 235 180] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 235 +set y_coord 180 -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] +checkcolor $x_coord $y_coord 0.5 0.35 0.05 -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { ${stat} != 1 } { puts "Error : Shading is missing in 3D Viewer" } diff --git a/tests/bugs/modalg/bug398 b/tests/bugs/modalg/bug398 new file mode 100755 index 0000000000..0378b709f7 --- /dev/null +++ b/tests/bugs/modalg/bug398 @@ -0,0 +1,37 @@ +#INTERFACE IGES +puts "========" +puts "OCC398" +puts "========" +puts "" +############################################################# +## ShapeHealing modification 1:1 increases number of unique shapes in compound structure. +############################################################# + +pload XDE +catch { source $env(CSF_DrawPluginQADefaults)/QARebuildCommands } + +restore [locate_data_file OCC398.brep] a +#statsh a +#nbshapes a +#Statshape should give 3 solids +#Nbshape should return 1 solid + +scaleshape result a 10 + +#statsh res + + +set nb_info [nbshapes result] +set nb_sol_good 1 + +#if { $sol == 1 } { +# puts " OCC398 : scaleshape operation was made properly" +#} else { +# puts "Faulty OCC398: scaleshape operation was made wrongly" +#} + +#Statshape should give 3 solids +#Nbshape should return 1 solid (3 solids is returned if bug not fixed) + +set square 180000. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug418_1 b/tests/bugs/modalg/bug418_1 new file mode 100755 index 0000000000..f9aef020ef --- /dev/null +++ b/tests/bugs/modalg/bug418_1 @@ -0,0 +1,22 @@ + +puts "========================" +puts " OCC418 " +puts "CTS20370" +puts "(case 1)" +puts "========================" +puts "" + +restore [locate_data_file CTO904_cts20370-part.rle] part +puts [checkshape part] + +restore [locate_data_file cts20370-tool.rle] tool +puts [checkshape tool] + +bsection sec part tool +puts [checkshape -top sec] + +bcut result part tool +puts [checkshape -top result] + +set square 273365. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug418_2 b/tests/bugs/modalg/bug418_2 new file mode 100755 index 0000000000..67c9b3409c --- /dev/null +++ b/tests/bugs/modalg/bug418_2 @@ -0,0 +1,22 @@ + +puts "========================" +puts " OCC418 " +puts "CTS20370" +puts "(case 2)" +puts "========================" +puts "" + +restore [locate_data_file CTO904_cts20370-part.rle] a +puts [checkshape a] + +restore [locate_data_file cts20370-tool.rle] b +puts [checkshape b] + +bsection sec a b + +bfuse result a b +puts [checkshape -top result] + +set square 261265. +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug419 b/tests/bugs/modalg/bug419 new file mode 100755 index 0000000000..6952e27a75 --- /dev/null +++ b/tests/bugs/modalg/bug419 @@ -0,0 +1,22 @@ +# Original bug : + +puts "========================" +puts " OCC419 " +puts "FRA50047" +puts "========================" +puts "" + +restore [locate_data_file CTO904_fra50047a.rle] a +puts [checkshape a] + +restore [locate_data_file fra50047b.rle] b +puts [checkshape b] + +bsection sec a b +puts [checkshape -top sec] + +bfuse result a b +puts [checkshape -top result] + +set square 508496. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug420 b/tests/bugs/modalg/bug420 new file mode 100755 index 0000000000..de8f7e51f4 --- /dev/null +++ b/tests/bugs/modalg/bug420 @@ -0,0 +1,25 @@ +puts "TODO OCC12345 ALL: Error : The square of result shape is" +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" + +puts "========================" +puts " OCC420 " +puts "PRO12473" +puts "========================" +puts "" + +restore [locate_data_file CTO909_objects.brep] a +puts [checkshape a] + +restore [locate_data_file CTO909_tool_4.brep] b +puts [checkshape b] + +bsection sec a b +puts [checksection sec] +puts [checkshape sec] +explode a so +renamevar a_1 a + +bcut result a b + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug421 b/tests/bugs/modalg/bug421 new file mode 100755 index 0000000000..b8be0ec45c --- /dev/null +++ b/tests/bugs/modalg/bug421 @@ -0,0 +1,18 @@ + +puts "========================" +puts " OCC421 " +puts "========================" +puts "" + +profile p c 5 180 l 5 t 0 5 d -1 0 c 5 180 l 5 +polyline w 0 0 0 0 0 10 +pipe p w p +nexplode p f + +depouille result p 0 0 1 p_1 5 0 0 0 0 0 1 \ +p_7 1 0 0 0 0 0 1 \ +p_8 5 0 0 0 0 0 1 \ +p_2 1 0 0 0 0 0 1 + +set square 659.647 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug422_1 b/tests/bugs/modalg/bug422_1 new file mode 100755 index 0000000000..e7cb936edb --- /dev/null +++ b/tests/bugs/modalg/bug422_1 @@ -0,0 +1,19 @@ + +puts "========================" +puts " OCC422 " +puts "(case 1)" +puts "========================" +puts "" + +plane p 0 0 0 0 0 1 -1 0 0 +psphere p p 20 0 90 +#profile pf o -4 -4 1 l 8 d 0 1 l 8 d -1 0 l 8 +profile pf o -4 -4 1 l 8 c 2 90 l 8 d -1 0 l 8 +prism p2 pf 0 0 40 +bfuse f p p2 +nexplode f f + +depouille result f 0 0 1 f_7 5 0 0 40 0 0 1 + +set square 4630.78 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug422_2 b/tests/bugs/modalg/bug422_2 new file mode 100755 index 0000000000..f5a230891d --- /dev/null +++ b/tests/bugs/modalg/bug422_2 @@ -0,0 +1,19 @@ + +puts "========================" +puts " OCC422 " +puts "(case 2)" +puts "========================" +puts "" + +plane ps 10 -3 0 1 0 0 0 .2 1 +psphere ps ps 20 +profile pf o 5 1 5 l 10 c 2 90 l 5 d -1 0 \ +l 14 d 0 -1 l 5 c 2 90 +prism pr pf 0 0 30 +bfuse f ps pr +nexplode f f + +depouille result f 0 0 1 f_4 4 0 0 30 0 0 1 + +set square 5719.09 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug423_1 b/tests/bugs/modalg/bug423_1 new file mode 100755 index 0000000000..ff302a5519 --- /dev/null +++ b/tests/bugs/modalg/bug423_1 @@ -0,0 +1,27 @@ + +puts "========================" +puts " OCC423 " +puts "(case 1)" +puts "========================" +puts "" + +restore [locate_data_file cylindre.rle] cyl +puts [checkshape cyl] + +restore [locate_data_file contour.rle] cont +puts [checkshape cont] + +mkplane cont cont +nexplode cyl F + +ttranslate cont 0 200 0 +featdprism cyl cont cont 10 1 1 + +if [catch {featperformval dprism result 55 cyl_3 } catch_result] { + puts "Faulty OCC423 (case 1): function FEATPERFORMVAL works wrongly" +} else { + puts "OCC423 OK (case 1): function FEATPERFORMVAL works properly" +} + +set square 94944.4 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug423_2 b/tests/bugs/modalg/bug423_2 new file mode 100755 index 0000000000..a60ae4254d --- /dev/null +++ b/tests/bugs/modalg/bug423_2 @@ -0,0 +1,23 @@ + +puts "========================" +puts " OCC423 " +puts "(case 2)" +puts "========================" +puts "" + +restore [locate_data_file pro15515_base.rle] base +puts [checkshape base] + +restore [locate_data_file pro15515_face.rle] cont +puts [checkshape cont] + +explode base face +copy base_4 ffrom +copy base_3 funtil + +### From Until +featrevol base cont cont 54.06494140625 70.2841796875 0 0 0 1 1 1 +featperform revol result funtil ffrom + +set square 560028. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug424_1 b/tests/bugs/modalg/bug424_1 new file mode 100755 index 0000000000..81ed440127 --- /dev/null +++ b/tests/bugs/modalg/bug424_1 @@ -0,0 +1,21 @@ + +puts "========================" +puts " OCC424 " +puts "(case 1)" +puts "========================" +puts "" + +restore [locate_data_file CFE_e_lonfzx.rle] E +nexplode E f + +profile cont S E_10 F 50 -100 X 50 Y -100 X -50 +featdprism E cont E_10 10 1 1 + +if [catch {featperform dprism result E_5 E_6 } catch_result] { + puts "Faulty OCC424 (case 1): function FEATPERFORM works wrongly" +} else { + puts "OCC424 OK (case 1): function FEATPERFORM works properly" +} + +set square 978236. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug424_2 b/tests/bugs/modalg/bug424_2 new file mode 100755 index 0000000000..4c46214524 --- /dev/null +++ b/tests/bugs/modalg/bug424_2 @@ -0,0 +1,21 @@ + +puts "========================" +puts " OCC424 " +puts "(case 2)" +puts "========================" +puts "" + +restore [locate_data_file CFE_e_lonfzx.rle] E +nexplode E f + +profile cont S E_10 F 50 -100 X 50 Y -100 X -50 +featdprism E cont E_10 10 1 1 + +if [catch {featperform dprism result } catch_result] { + puts "Faulty OCC424 (case 2): function FEATPERFORM works wrongly" +} else { + puts "OCC424 OK (case 2): function FEATPERFORM works properly" +} + +set square 978236. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug427_1 b/tests/bugs/modalg/bug427_1 new file mode 100755 index 0000000000..3366b36c8f --- /dev/null +++ b/tests/bugs/modalg/bug427_1 @@ -0,0 +1,26 @@ + +puts "=========" +puts " OCC427 " +puts "(case 1)" +puts "=========" +puts "" +cpulimit 1200 +proc OFFSETSHAPE {distance faces calcul type} { + uplevel #0 explode s f + uplevel #0 offsetparameter 1e-7 $calcul $type + uplevel #0 offsetload s $distance $faces + uplevel #0 offsetperform result +} + +#Shell no rough and rounded mode + +set calcul "c" +set type "i" + +pcone s 9 4 15 90 +trotate s 0 0 0 0 0 1 90 + +OFFSETSHAPE 1 {} $calcul $type + +set square 671.382 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug427_2 b/tests/bugs/modalg/bug427_2 new file mode 100755 index 0000000000..785a8dd3dd --- /dev/null +++ b/tests/bugs/modalg/bug427_2 @@ -0,0 +1,26 @@ + +puts "========================" +puts " OCC427 " +puts "(case 2)" +puts "========================" +puts "" +cpulimit 1200 +proc OFFSETSHAPE {distance faces calcul type} { + uplevel #0 explode s f + uplevel #0 offsetparameter 1e-7 $calcul $type + uplevel #0 offsetload s $distance $faces + uplevel #0 offsetperform result +} + +#Shell no rough and rounded mode + +set calcul "c" +set type "i" + +pcone s 9 4 15 90 +trotate s 0 0 0 0 0 1 90 + +OFFSETSHAPE 1 {s_5} $calcul $type + +set square 858.167 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug427_3 b/tests/bugs/modalg/bug427_3 new file mode 100755 index 0000000000..e260fb5023 --- /dev/null +++ b/tests/bugs/modalg/bug427_3 @@ -0,0 +1,26 @@ + +puts "========================" +puts " OCC427 " +puts "(case 3)" +puts "========================" +puts "" +cpulimit 1200 +proc OFFSETSHAPE {distance faces calcul type} { + uplevel #0 explode s f + uplevel #0 offsetparameter 1e-7 $calcul $type + uplevel #0 offsetload s $distance $faces + uplevel #0 offsetperform result +} + +#Shell no rough and rounded mode + +set calcul "c" +set type "i" + +pcone s 9 4 15 90 +trotate s 0 0 0 0 0 1 90 + +OFFSETSHAPE 1 {s_2 s_3} $calcul $type + +set square 885.688 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug427_4 b/tests/bugs/modalg/bug427_4 new file mode 100755 index 0000000000..010e2aa3ed --- /dev/null +++ b/tests/bugs/modalg/bug427_4 @@ -0,0 +1,30 @@ + +puts "========================" +puts " OCC427 " +puts "(case 4)" +puts "========================" +puts "" +cpulimit 1200 +proc OFFSETSHAPE {distance faces calcul type} { + uplevel #0 explode s f + uplevel #0 offsetparameter 1e-7 $calcul $type + uplevel #0 offsetload s $distance $faces + uplevel #0 offsetperform result +} + +#Shell no rough and rounded mode + +set calcul "c" +set type "i" + +circle w -20 0 0 20 +mkedge w w 0 pi*2/5 +wire w w +polyline profile 0 0 0 10 0 0 5 0 5 0 0 0 +mkplane profile profile +pipe s w profile + +OFFSETSHAPE 1 {} $calcul $type + +set square 1306.3 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug427_5 b/tests/bugs/modalg/bug427_5 new file mode 100755 index 0000000000..d469afa53a --- /dev/null +++ b/tests/bugs/modalg/bug427_5 @@ -0,0 +1,30 @@ + +puts "========================" +puts " OCC427 " +puts "(case 5)" +puts "========================" +puts "" +cpulimit 1200 +proc OFFSETSHAPE {distance faces calcul type} { + uplevel #0 explode s f + uplevel #0 offsetparameter 1e-7 $calcul $type + uplevel #0 offsetload s $distance $faces + uplevel #0 offsetperform result +} + +#Shell no rough and rounded mode + +set calcul "c" +set type "i" + +circle w -20 0 0 20 +mkedge w w 0 pi*2/5 +wire w w +polyline profile 0 0 0 10 0 0 5 0 5 0 0 0 +mkplane profile profile +pipe s w profile + +OFFSETSHAPE 1 {s_2} $calcul $type + +set square 1297.39 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug427_6 b/tests/bugs/modalg/bug427_6 new file mode 100755 index 0000000000..5065de996a --- /dev/null +++ b/tests/bugs/modalg/bug427_6 @@ -0,0 +1,30 @@ + +puts "========================" +puts " OCC427 " +puts "(case 6)" +puts "========================" +puts "" +cpulimit 1200 +proc OFFSETSHAPE {distance faces calcul type} { + uplevel #0 explode s f + uplevel #0 offsetparameter 1e-7 $calcul $type + uplevel #0 offsetload s $distance $faces + uplevel #0 offsetperform result +} + +#Shell no rough and rounded mode + +set calcul "c" +set type "i" + +circle w -20 0 0 20 +mkedge w w 0 pi*2/5 +wire w w +polyline profile 0 0 0 10 0 0 5 0 5 0 0 0 +mkplane profile profile +pipe s w profile + +OFFSETSHAPE 1 {s_4 s_5} $calcul $type + +set square 808.448 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug516 b/tests/bugs/modalg/bug516 new file mode 100755 index 0000000000..a260ef015b --- /dev/null +++ b/tests/bugs/modalg/bug516 @@ -0,0 +1,23 @@ + +puts "========" +puts "OCC516" +puts "========" +puts "" +######################################### +## Wrong classification of the 3D-point with the Solid . +######################################### + +point p 14.99999878745701 5.52319672860377e-07 7.78393041 +vertex v 14.99999878745701 5.52319672860377e-07 7.78393041 +restore [locate_data_file OCC516.brep] result + +set cls [bclassify result p] + +if { [regexp {OUT} $cls] } { + puts "Faulty : Wrong classification of the 3D-point with the Solid" +} else { + puts "CORRECT classification of the 3D-point with the Solid" +} + +set square 7752.98 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug539_1 b/tests/bugs/modalg/bug539_1 new file mode 100755 index 0000000000..17d2f24340 --- /dev/null +++ b/tests/bugs/modalg/bug539_1 @@ -0,0 +1,21 @@ + +puts "========================" +puts " OCC539 " +puts "(case 1)" +puts "========================" +puts "" + + puts "===========================================" + puts " BOPCOMMON case_4_shell.brep and case_4_wire3.brep" + puts "===========================================" + puts " " + puts [restore [locate_data_file case_4_shell.brep] a] + puts [restore [locate_data_file case_4_wire3.brep] b] + puts [bop a b] + puts [bopcommon result] +set nb_info [nbshapes result] +set nb_v_good 15 +set nb_e_good 10 + +set length 1150.78 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug539_2 b/tests/bugs/modalg/bug539_2 new file mode 100755 index 0000000000..abdaf6a222 --- /dev/null +++ b/tests/bugs/modalg/bug539_2 @@ -0,0 +1,23 @@ + +puts "========================" +puts " OCC539 " +puts "(case 2)" +puts "========================" +puts "" + + puts "============================================" + puts " BOPTUC case_4_shell.brep and case_4_wire3.brep" + puts "============================================" + puts " " + puts [restore [locate_data_file case_4_shell.brep] a] + puts [restore [locate_data_file case_4_wire3.brep] b] + puts [bop a b] + puts [boptuc result] + +set nb_info [nbshapes result] +set nb_v_good 16 +set nb_e_good 11 + +set length 929.278 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug571_1 b/tests/bugs/modalg/bug571_1 new file mode 100755 index 0000000000..f53d376ec3 --- /dev/null +++ b/tests/bugs/modalg/bug571_1 @@ -0,0 +1,22 @@ +puts "========" +puts "OCC571" +puts "========" +puts "" +########################## +## Fillet operation fails on given shape +########################## +## LIMITATION: Builds fillet with 0.03<=r<=1.2 +########################## + +restore [locate_data_file OCC571.brep] a +puts [checkshape a] +explode a + +if [catch {fillet result a_1 1.2 a_2 } catch_result] { + puts "Faulty OCC571 exception (case 1): Fillet operation fails on given shape " +} else { + puts " OCC571 (case 1) OK: Fillet operation was made" +} + +set square 21118.1 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug571_2 b/tests/bugs/modalg/bug571_2 new file mode 100755 index 0000000000..6d4add64e2 --- /dev/null +++ b/tests/bugs/modalg/bug571_2 @@ -0,0 +1,22 @@ +puts "========" +puts "OCC571" +puts "========" +puts "" +########################## +## Fillet operation fails on given shape +########################## +## LIMITATION: Builds fillet with 0.03<=r<=1.2 +########################## + +restore [locate_data_file OCC571.brep] a +puts [checkshape a] +explode a + +if [catch {fillet result a_1 0.03 a_2 } catch_result] { + puts "Faulty OCC571 exception (case 2): Fillet operation fails on given shape " +} else { + puts " OCC571 (case 2) OK: Fillet operation was made" +} + +set square 21209.9 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug594 b/tests/bugs/modalg/bug594 new file mode 100755 index 0000000000..625301ed9f --- /dev/null +++ b/tests/bugs/modalg/bug594 @@ -0,0 +1,26 @@ + +puts "========================" +puts " SAL594 " +puts "========================" +puts "" +################################### +## It is impossible to put correct fillets on the shape +################################### + +restore [locate_data_file SAL594.brep] a +explode a e + +if [catch {blend result1 a 20 a_23 20 a_25 20 a_26 20 a_28} catch_result] { + puts "Faulty SAL594 (case 1): function BLEND works wrongly" +} else { + puts "SAL594 OK (case 1): function BLEND works OK" +} + +if [catch {blend result result1 2.5 a_15 2.5 a_12 2.5 a_4} catch_result] { + puts "Faulty SAL594 (case 2): function BLEND works wrongly." +} else { + puts "SAL594 OK (case 2): function BLEND works OK" +} + +set square 60513.1 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug600 b/tests/bugs/modalg/bug600 new file mode 100755 index 0000000000..0444f1f00f --- /dev/null +++ b/tests/bugs/modalg/bug600 @@ -0,0 +1,19 @@ +puts "TODO ?OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO ?OCC12345 ALL: Error : The square of result shape is" + +puts "========================" +puts " OCC600" +puts "========================" +## Result of BOPCOMMON operation is unclosed shape inspite of source solids are valid +############################################################ +cpulimit 5000 +restore [locate_data_file OCC600_1.brep] a +puts [checkshape a] +restore [locate_data_file OCC600_2.brep] b +puts [checkshape b] +bop b a + +bopcommon result + +set square 41970.8 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug602 b/tests/bugs/modalg/bug602 new file mode 100755 index 0000000000..a1666fb1f6 --- /dev/null +++ b/tests/bugs/modalg/bug602 @@ -0,0 +1,24 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is" + +puts "========================" +puts " OCC602 " +puts "========================" +puts "" +########################################### +## Exception during filet creation if it cross samedge of cylinder. +########################################### + +restore [locate_data_file OCC602.brep] a +puts [checkshape a] + +explode a e + +if [catch {blend result a 20 a_9 } catch_result] { + puts "Faulty OCC602: function BLEND works wrongly" +} else { + puts "OCC602 OK: function BLEND works OK" +} + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug605 b/tests/bugs/modalg/bug605 new file mode 100755 index 0000000000..03af86bbdd --- /dev/null +++ b/tests/bugs/modalg/bug605 @@ -0,0 +1,37 @@ + +puts "========================" +puts " OCC605" +puts "========================" +puts "" +############################## +## No any faces in result of pipe command. +############################## + +restore [locate_data_file OCC605a.brep] w1 +puts [checkshape w1] +restore [locate_data_file OCC605b.brep] w2 +puts [checkshape w2] + +if { [catch {pipe result w2 w1 } catch_result] } { + puts "Faulty OCC605: function PIPE works with exception." +} else { + explode result f + set nom 0 + set j 1 + repeat 20 { + if { [regexp {FACE} [whatis result_$j]] != 1 } { + break + } else { + set nom [expr $nom + 1] + } + incr j + } + if { $nom == 0 } { + puts " Faulty OCC605: Result of PIPE operation is incorrect !!! " + } else { + puts "OCC605 OK : Result of PIPE operation is NOT empty shell!!! " + } +} + +set square 20.6253 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug615 b/tests/bugs/modalg/bug615 new file mode 100755 index 0000000000..62099e0fd5 --- /dev/null +++ b/tests/bugs/modalg/bug615 @@ -0,0 +1,22 @@ +puts "TODO ?OCC12345 ALL: Error : The square of result shape is" + +puts "========================" +puts " OCC615" +puts "========================" +puts "" +############################# +## Wrong resultat of BLEND operation +############################# + +restore [locate_data_file OCC615.brep] a +puts [checkshape a] +explode a e + +if [catch {blend result a 9 a_15 } catch_result] { + puts "Faulty OCC615: function BLEND works with exception" +} else { + puts "OCC615 OK: function CHAMF works OK" +} + +set square 197055. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug616 b/tests/bugs/modalg/bug616 new file mode 100755 index 0000000000..f5bfc8861b --- /dev/null +++ b/tests/bugs/modalg/bug616 @@ -0,0 +1,22 @@ + +puts "========================" +puts " OCC616" +puts "========================" +puts "" +######################################## +## Function MKOFFSET gives exception for attached face +######################################## + +restore [locate_data_file OCC616.brep] a +puts [checkshape a] + +if { [catch {mkoffset result a 5 -2} catch_result] } { + puts "Faulty OCC616: function MKOFFSET works with exception" +} else { + renamevar result_1 result + puts [checkshape result] + puts "OCC616 OK: function MKOFFSET works OK" +} + +set length 1062.78 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug620_1 b/tests/bugs/modalg/bug620_1 new file mode 100755 index 0000000000..e29df95fa1 --- /dev/null +++ b/tests/bugs/modalg/bug620_1 @@ -0,0 +1,24 @@ + +puts "========================" +puts "OCC620" +puts "========================" +puts "" +############################ +## No possibility to cut the shapes. +############################ + +restore [locate_data_file OCC620a.brep] a +puts [checkshape a] +restore [locate_data_file OCC620b.brep] b +puts [checkshape b] + +bop a b + +if [catch { bopcut result } catch_result] { + puts "Faulty OCC620 : BOPCUT operation was made wrongly" +} else { + puts "OCC620 OK: BOPCUT operation works OK" +} + +set square 314742. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug620_2 b/tests/bugs/modalg/bug620_2 new file mode 100755 index 0000000000..c6e6ad1cd1 --- /dev/null +++ b/tests/bugs/modalg/bug620_2 @@ -0,0 +1,24 @@ + +puts "========================" +puts "OCC620" +puts "========================" +puts "" +############################ +## No possibility to cut the shapes. +############################ + +restore [locate_data_file OCC620a.brep] a +puts [checkshape a] +restore [locate_data_file OCC620b.brep] b +puts [checkshape b] + +bop a b + +if [catch { boptuc result } catch_result] { + puts "Faulty OCC620 : BOPTUC operation was made wrongly" +} else { + puts "OCC620 OK: BOPTUC operation works OK" +} + +set square 1.15562e+06 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug625 b/tests/bugs/modalg/bug625 new file mode 100755 index 0000000000..703c38da3b --- /dev/null +++ b/tests/bugs/modalg/bug625 @@ -0,0 +1,35 @@ +puts "========================" +puts "OCC625" +puts "========================" +puts "" +############################################################################### +## Created filler looks strange (see attached picture) inspite of checkshapes told about correct source and result shapes. +############################################################################### + +pload QAcommands + +restore [locate_data_file OCC625.brep] a +puts [checkshape a] + +vinit +tclean a +explode a e + +blend res1 a 10 a_22 10 a_14 +blend result res1 10 a_17 10 a_4 +puts [checkshape result] + +vinit +vdisplay result +vfit +vsetdispmode result 1 + +QAUpdateLights + +set x_coord 116 +set y_coord 252 + +checkcolor $x_coord $y_coord 0.82 0.58 0.09 + +set square 19977 +set 3dviewer 1 \ No newline at end of file diff --git a/tests/bugs/modalg/bug629 b/tests/bugs/modalg/bug629 new file mode 100755 index 0000000000..90b1da5350 --- /dev/null +++ b/tests/bugs/modalg/bug629 @@ -0,0 +1,25 @@ +puts "TODO OCC12345 ALL: Error : The square of result shape is" +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" + +puts "================" +puts "OCC629" +puts "================" +puts "" +########################################## +## Exception during attempt to create solid by command PIPE +########################################## + +restore [locate_data_file OCC629a.brep] a +puts [checkshape a] + +restore [locate_data_file OCC629b.brep] b +puts [checkshape b] + +if [catch {pipe result a b } catch_result] { + puts "Faulty OCC629: function PIPE works wrongly" +} else { + puts "OCC629 OK: function PIPE works properly" +} + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug636 b/tests/bugs/modalg/bug636 new file mode 100755 index 0000000000..b1f49791a2 --- /dev/null +++ b/tests/bugs/modalg/bug636 @@ -0,0 +1,31 @@ + +puts "================" +puts "OCC636" +puts "================" +puts "" +##################################### +## BRepOffsetAPI_MakePipeShell builds twisted pipe +##################################### + +restore [locate_data_file OCC636a.brep] s +puts [checkshape s] + +restore [locate_data_file OCC636b.brep] s1 +puts [checkshape s1] + +restore [locate_data_file OCC636c.brep] s2 +puts [checkshape s2] + +mksweep s +addsweep s1 +addsweep s2 + +if [catch { buildsweep result } catch_result] { + puts "Faulty OCC636: function buildsweep works wrongly" +} else { + puts "OCC636 OK: function buildsweep works properly" +} + +set square 3836.92 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug637_1 b/tests/bugs/modalg/bug637_1 new file mode 100755 index 0000000000..4082fa104b --- /dev/null +++ b/tests/bugs/modalg/bug637_1 @@ -0,0 +1,29 @@ + +puts "================" +puts "OCC637" +puts "(case 1)" +puts "================" +puts "" +########################################## +## BRepOffsetAPI_MakePipeShell crashes with fatal exception +########################################## + +restore [locate_data_file OCC637a.brep] s +puts [checkshape s] + +restore [locate_data_file OCC636c.brep] s1 +puts [checkshape s1] + +restore [locate_data_file OCC637c.brep] s2 +puts [checkshape s2] + +mksweep s +addsweep s1 +addsweep s2 + +if [catch { buildsweep result } catch_result] { + puts "Faulty OCC637 (case 1): function buildsweep works wrongly" +} + +set square 1675.58 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug637_2 b/tests/bugs/modalg/bug637_2 new file mode 100755 index 0000000000..f1b3e33a6a --- /dev/null +++ b/tests/bugs/modalg/bug637_2 @@ -0,0 +1,30 @@ + +puts "================" +puts "OCC637" +puts "(case 2)" +puts "================" +puts "" +########################################## +## BRepOffsetAPI_MakePipeShell crashes with fatal exception +########################################## + +restore [locate_data_file OCC637d.brep] s +puts [checkshape s] + +restore [locate_data_file OCC637c.brep] s1 +puts [checkshape s1] + +restore [locate_data_file OCC637f.brep] s2 +puts [checkshape s2] + +mksweep s +addsweep s1 +addsweep s2 + +if [catch {buildsweep result } catch_result] { + puts "Faulty OCC637 (case 2): function buildsweep works wrongly" +} + +set square 1090.91 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug673 b/tests/bugs/modalg/bug673 new file mode 100755 index 0000000000..d0a23b1fa0 --- /dev/null +++ b/tests/bugs/modalg/bug673 @@ -0,0 +1,25 @@ +puts "TODO OCC12345 ALL: Error : The command can not be build" +puts "TODO OCC12345 ALL: Faulty OCC673: function SPLITSHAPE works wrongly" + +puts "================" +puts "OCC673" +puts "================" +puts "" +####################################################### +## Exception is raised during splitting face by a wire laying on the face boundary. +####################################################### + +restore [locate_data_file OCC673a.brep] a +puts [checkshape a] + +restore [locate_data_file OCC673b.brep] b +puts [checkshape b] + +if [catch {spliteshape result a a b} catch_result] { + puts "Faulty OCC673: function SPLITSHAPE works wrongly" +} else { + puts "OCC673 OK : function SPLITSHAPE works OK" +} + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug693 b/tests/bugs/modalg/bug693 new file mode 100755 index 0000000000..fa9b714cbd --- /dev/null +++ b/tests/bugs/modalg/bug693 @@ -0,0 +1,79 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is " + +puts "================" +puts "OCC693" +puts "================" +puts "" +################################################### +## The boolean operations give incorrect result if one of shapes is compound +## consisting of several adjoint solids +#################################################### + +box h1 234 52 0 41 98 40 +box v1 241 136 20 31 31 15 +box h3 215 120 20 78 15 15 + +#mu4 +#fit + +compound h1 c1 +compound v1 c2 + +tcopy c1 cc1 +tcopy c2 cc2 +bcommon int1 cc1 cc2 +##########checkshape -top int1 +puts [checkshape -top int1] + +tcopy c1 cc1 +tcopy c2 cc2 +bcut cut1 cc1 cc2 +puts [checkshape -top cut1] + +tcopy c1 cc1 +tcopy c2 cc2 +bcut cut2 cc2 cc1 +##########checkshape -top cut2 +puts [checkshape -top cut2] + +compound int1 cut1 cut2 comp3 +##########checkshape -top comp3 +puts [checkshape -top comp3] +#donly comp3 + +tcopy comp3 ccomp3 +tcopy h3 ch3 +bcommon int2 ccomp3 ch3 +##########checkshape -top int2 +puts [checkshape -top int2] +#donly int2 + +tcopy comp3 ccomp3 +tcopy h3 ch3 +bcut cut3 ccomp3 ch3 +##########checkshape -top cut3 +puts [checkshape -top cut3] +#donly cut3 + +tcopy comp3 ccomp3 +tcopy h3 ch3 +bcut cut4 ch3 ccomp3 +##########checkshape -top cut4 +puts [checkshape -top cut4] + +compound int2 cut3 cut4 result +##########checkshape -top res +puts [checkshape -top result] + +##########set che [checkshape -top res] +########## +##########set err [lindex $che [expr [llength $che] - 7]] +##########if { $err == "Faulty"} { +########## puts "Faulty OCC693" +##########} else { +########## puts "OCC693 OK " +##########} + +set square 33196 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug697_1 b/tests/bugs/modalg/bug697_1 new file mode 100755 index 0000000000..6014e4635b --- /dev/null +++ b/tests/bugs/modalg/bug697_1 @@ -0,0 +1,25 @@ +puts "============" +puts "OCC697" +puts "============" +puts "" +###################################################### +# Fuse operation does not work +###################################################### +## (old topology) +## (fuse) +###################################################### + +restore [locate_data_file OCC697_1.brep] b1 +restore [locate_data_file OCC697_2.brep] b2 + +puts [checkshape b1] +puts [checkshape b2] +############################################## +if { [catch {bfuse result b1 b2} catch_result] } { +############################################## + puts "Faulty : an exception was caught" +} + +set square 8879.41 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug697_2 b/tests/bugs/modalg/bug697_2 new file mode 100755 index 0000000000..616e2e31b4 --- /dev/null +++ b/tests/bugs/modalg/bug697_2 @@ -0,0 +1,29 @@ +puts "============" +puts "OCC697" +puts "============" +puts "" +###################################################### +# Fuse operation does not work +###################################################### +## (old topology) +## (fuse) +###################################################### + +puts "#" +puts "Non stable test case on Linux. MKV. 28.04.2010" +puts "#" + +restore [locate_data_file OCC697_2.brep] b2 +restore [locate_data_file OCC697_3.brep] b3 + +puts [checkshape b2] +puts [checkshape b3] +############################################## +if { [catch {bfuse result b2 b3} catch_result] } { +############################################## + puts "Faulty : an exception was caught" +} + +set square 25357.5 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug698 b/tests/bugs/modalg/bug698 new file mode 100755 index 0000000000..7c1e9d1bd2 --- /dev/null +++ b/tests/bugs/modalg/bug698 @@ -0,0 +1,16 @@ + +puts "======= OCC698 =======" +###################################### +## Cut operation produces bad result on attached shapes +###################################### +cpulimit 10000 +restore [locate_data_file OCC698_1.brep] b4 +puts [checkshape b4] +restore [locate_data_file OCC698_2.brep] b5 +puts [checkshape b5] + +bcut result b5 b4 + +set square 19048.2 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug702 b/tests/bugs/modalg/bug702 new file mode 100755 index 0000000000..5339ae46d0 --- /dev/null +++ b/tests/bugs/modalg/bug702 @@ -0,0 +1,25 @@ + +puts "=======" +puts "OCC702" +puts "SAM1541" +puts "=======" +puts "" +######################## +## No possibility to make a prism. +######################## + +restore [locate_data_file OCC702.brep] a + +if [ catch { prism result a 100 100 100 } catch_result ] { + puts "Faulty OCC702 (case 1)" +} else { + regexp {Mass +: +([-0-9.+eE]+)} [sprops result] full sq + if { $sq <= 0. } { + puts "Faulty OCC702 (case 2)" + } else { + puts "OCC702 OK" + } +} + +set square 308957. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug712_1 b/tests/bugs/modalg/bug712_1 new file mode 100755 index 0000000000..30c82c52bd --- /dev/null +++ b/tests/bugs/modalg/bug712_1 @@ -0,0 +1,23 @@ + +puts "========" +puts "OCC712" +puts "========" +puts "" +######################################################### +## Exeption is raised in DRAW during building draft with help command "depouille" +## on face in the attached shape. +######################################################### + +restore [locate_data_file OCC712.brep] a +puts [checkshape a] + +explode a f + +if [catch {depouille result a 0 0 1 a_2 10 0 39.6875 0 0. 0. -1 } catch_result] { + puts "Faulty OCC712" +} else { + puts "OCC712 OK" +} + +set square 41956.4 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug714 b/tests/bugs/modalg/bug714 new file mode 100755 index 0000000000..dde4163ad8 --- /dev/null +++ b/tests/bugs/modalg/bug714 @@ -0,0 +1,34 @@ +#INTERFACE IGES +puts "========" +puts "OCC714" +puts "========" +puts "" +#################################################### +## After command sew in DRAW on attached shape free wires are disappeared. +#################################################### + +restore [locate_data_file OCC714.brep] a +puts [checkshape a] + +set nb_info1 [nbshapes a] +regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info1 full ve1 +regexp {EDGE +: +([-0-9.+eE]+)} $nb_info1 full ed1 +regexp {WIRE +: +([-0-9.+eE]+)} $nb_info1 full we1 + +sewing result 0.1 a + +set nb_info2 [nbshapes a] +regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info2 full ve2 +regexp {EDGE +: +([-0-9.+eE]+)} $nb_info2 full ed2 +regexp {WIRE +: +([-0-9.+eE]+)} $nb_info2 full we2 + +if { $ve1 != $ve2 || $ed1 != $ed2 || $we1 != $we2} { + puts [format "Faulty OCC714 : SEWING operation was made WRONGLY: vertexes before %s, edges before %s, wires before %s" $ve1 $ed1 $we1] + puts [format " vertexes after %s, edges after %s, wires after %s" $ve1 $ed1 $we1] +} else { + puts "OK OCC714: SEWING operation was made PROPERLY" +} + +set square 12917.1 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug715 b/tests/bugs/modalg/bug715 new file mode 100755 index 0000000000..fa53cc6391 --- /dev/null +++ b/tests/bugs/modalg/bug715 @@ -0,0 +1,28 @@ + +puts "========" +puts "OCC715" +puts "SAM1582" +puts "========" +puts "" +########################################## +## section of two faces produces wrong number of section edges +########################################## + +restore [locate_data_file OCC715_2.brep] f2 +restore [locate_data_file OCC715_3.brep] f3 + +bsection result f2 f3 + +set expl [explode result] + +set length [llength $expl] +puts "Result is $length section edge" + +if {$length != 3} { + puts "Faulty OCC715" +} else { + puts "OCC715 OK" +} + +set length 100. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug726_1 b/tests/bugs/modalg/bug726_1 new file mode 100755 index 0000000000..6d1fa85a0a --- /dev/null +++ b/tests/bugs/modalg/bug726_1 @@ -0,0 +1,21 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is" + +puts "========" +puts "OCC726" +puts "SAM1594" +puts "========" +puts "" +###################################### +## Boolean operations are impossible on the attachment. +###################################### + +restore [locate_data_file OCC726.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bcommon result a_1 a_2 + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug726_2 b/tests/bugs/modalg/bug726_2 new file mode 100755 index 0000000000..8381e68322 --- /dev/null +++ b/tests/bugs/modalg/bug726_2 @@ -0,0 +1,21 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is" + +puts "========" +puts "OCC726" +puts "SAM1594" +puts "========" +puts "" +###################################### +## Boolean operations are impossible on the attachment. +###################################### + +restore [locate_data_file OCC726.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bcut result a_1 a_2 + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug743 b/tests/bugs/modalg/bug743 new file mode 100755 index 0000000000..b5a01dd0f1 --- /dev/null +++ b/tests/bugs/modalg/bug743 @@ -0,0 +1,42 @@ + +puts "========" +puts "OCC743" +puts "========" +puts "" +####################################### +## The result of offset operation on a planar wire is wrong +####################################### + +restore [locate_data_file OCC743_corr2.brep] a +puts [checkshape a] + +if { [catch { mkoffset result a 1 -15 } status] } { + puts "Faulty OCC743" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 3533.52 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug745_1 b/tests/bugs/modalg/bug745_1 new file mode 100755 index 0000000000..339e27f42d --- /dev/null +++ b/tests/bugs/modalg/bug745_1 @@ -0,0 +1,44 @@ + +puts "========" +puts "OCC745" +puts "========" +puts "" +####################################################### +## There are several cases where the offset algo works wrong for various reasons +## for wires containing only linear segments and arcs of circle. +####################################################### + +restore [locate_data_file OCC745_1.brep] a +puts [checkshape a] + +if { [catch { mkoffset result a 1 -10 } status] } { + puts "Faulty : an exception was caught" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 932.825 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug745_10 b/tests/bugs/modalg/bug745_10 new file mode 100755 index 0000000000..95ac508628 --- /dev/null +++ b/tests/bugs/modalg/bug745_10 @@ -0,0 +1,27 @@ +puts "TODO OCC12345 ALL: Faulty OCC745" +puts "TODO OCC12345 ALL: Error : The length of result shape is" + +puts "========" +puts "OCC745" +puts "========" +puts "" +############################################# +# Negative offset parameter leads to positive offset and vise +# versa. Result of the offset represent an edge instead of wire. +############################################# + +restore [locate_data_file OCC745_nb1.brep] w +mkoffset result w 1 -1 + +set list [whatis result_1] + +if { [regexp {WIRE} $list] == 0 } { + puts "Faulty OCC745" +} else { + puts "OCC745 OK" +} + +renamevar result_1 result + +set length 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug745_11 b/tests/bugs/modalg/bug745_11 new file mode 100755 index 0000000000..ba30664906 --- /dev/null +++ b/tests/bugs/modalg/bug745_11 @@ -0,0 +1,52 @@ + +puts "========" +puts "OCC745" +puts "========" +puts "" +######################### +# Not correct creation of bisector loci. +######################### + +restore [locate_data_file OCC745_nb2.brep] w +mkplane f w +topoload f +drawcont + +mat +result + +################################################## +#Exception thrown: Standard_ConstructionError: Offset wire is not closed. +################################################## + +if { [catch { mkoffset result w 10 -7 } status] } { + puts "Faulty OCC745" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 1930.99 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug745_12 b/tests/bugs/modalg/bug745_12 new file mode 100755 index 0000000000..f87a6e1a9d --- /dev/null +++ b/tests/bugs/modalg/bug745_12 @@ -0,0 +1,47 @@ +puts "TODO OCC12345 ALL: An exception was caught" +puts "TODO OCC12345 ALL: Exception " +puts "TODO OCC12345 ALL: Faulty OCC745" +puts "TODO OCC12345 ALL: Error : The command can not be build." + +puts "========" +puts "OCC745" +puts "========" +puts "" +################################################## +# Exception thrown: Standard_ConstructionError: Offset wire is not closed. +################################################## + +restore [locate_data_file OCC745_nb3.brep] w +puts [checkshape w] + +if { [catch { mkoffset result w 1 10 } status] } { + puts "Faulty OCC745" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 0 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug745_2 b/tests/bugs/modalg/bug745_2 new file mode 100755 index 0000000000..4b9021a846 --- /dev/null +++ b/tests/bugs/modalg/bug745_2 @@ -0,0 +1,26 @@ + +puts "========" +puts "OCC745" +puts "========" +puts "" +################################################## +## This test does not terminate due to infinite loop in bissector calculation +################################################## + +restore [locate_data_file OCC745_2.brep] a +puts [checkshape a] +mkplane pl a +topoload pl +drawcont +smallview -2D- +2dfit + +set min 30 +cpulimit [expr 60 * $min] + +mat +puts "OCC745 OK" + +renamevar pl result +set square 5844.55 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug745_4 b/tests/bugs/modalg/bug745_4 new file mode 100755 index 0000000000..a29a0d8e5e --- /dev/null +++ b/tests/bugs/modalg/bug745_4 @@ -0,0 +1,49 @@ +puts "TODO OCC12345 ALL: Faulty : Result shape is NULL shape" +puts "TODO OCC12345 ALL: Exception: result is not a topological shape!!!" +puts "TODO OCC12345 ALL: TEST INCOMPLETE" + +pload QAcommands + +puts "========" +puts "OCC745" +puts "========" +puts "" +########################################### +# Exception Standard_NullValue while performing the offset: +########################################### + +restore [locate_data_file OCC745_pocket1.brep] a +puts [checkshape a] + +if { [catch { mkoffset result a 1 -10 } status] } { + puts "Faulty OCC745" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + set ve 0 + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 0 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug745_6 b/tests/bugs/modalg/bug745_6 new file mode 100755 index 0000000000..e3dff58e6b --- /dev/null +++ b/tests/bugs/modalg/bug745_6 @@ -0,0 +1,46 @@ +puts "TODO OCC12345 ALL: Faulty : Result shape is NULL shape" +puts "TODO OCC12345 ALL: Error : The command is not valid. The length is" + +puts "========" +puts "OCC745" +puts "BUC60878" +puts "========" +puts "" +################################ +# There are discontinuities in offset contours: +################################ + +restore [locate_data_file BUC60878-wire3.brep] a +puts [checkshape a] + +if { [catch { mkoffset result a 1 -10 } status] } { + puts "Faulty OCC745" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 0 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug745_7 b/tests/bugs/modalg/bug745_7 new file mode 100755 index 0000000000..4d909b8a99 --- /dev/null +++ b/tests/bugs/modalg/bug745_7 @@ -0,0 +1,45 @@ +puts "TODO OCC12345 ALL: Faulty : Result shape is NULL shape" +puts "TODO OCC12345 ALL: Error : The command is not valid. The length is" + +puts "========" +puts "OCC745" +puts "========" +puts "" +###################################################### +## Exception thrown: Standard_ConstructionError: Offset wire is not closed: +###################################################### + +source [locate_data_file OCC745_cont1.dat] +puts [checkshape pp] + +if { [catch { mkoffset result pp 1 -10 } status] } { + puts "Faulty OCC745" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 0 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug745_8 b/tests/bugs/modalg/bug745_8 new file mode 100755 index 0000000000..3dd5080ade --- /dev/null +++ b/tests/bugs/modalg/bug745_8 @@ -0,0 +1,43 @@ + +puts "========" +puts "OCC745" +puts "========" +puts "" +################################################### +## Exception thrown: Standard_ConstructionError: Offset wire is not closed: +################################################### + +restore [locate_data_file BUC60830-face2.brep] f +puts [checkshape f] + +if { [catch { mkoffset result f 45 -0.042225 } status] } { + puts "Faulty OCC745" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 72.1851 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug745_9 b/tests/bugs/modalg/bug745_9 new file mode 100755 index 0000000000..d56e2b8eb5 --- /dev/null +++ b/tests/bugs/modalg/bug745_9 @@ -0,0 +1,45 @@ +puts "TODO OCC12345 ALL: Error : The command is not valid. The length is" +puts "TODO OCC12345 ALL: Faulty : Result shape is NULL shape" + +puts "========" +puts "OCC745" +puts "========" +puts "" +##################################################### +# The latter command enters an endless loop: it was not completed in 30 min: +##################################################### + +source [locate_data_file OCC745_cont2.dat] +puts [checkshape pq] + +if { [catch { mkoffset result pq 1 -10 } status] } { + puts "Faulty OCC745" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 0 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug748 b/tests/bugs/modalg/bug748 new file mode 100755 index 0000000000..f94d388cdd --- /dev/null +++ b/tests/bugs/modalg/bug748 @@ -0,0 +1,18 @@ + +puts "========" +puts "OCC748" +puts "========" +puts "" +################################## +## Incorrect work of DRAW-command "common" +################################## + +restore [locate_data_file OCC748_1.brep] s1 +puts [checkshape s1] +restore [locate_data_file OCC748_2.brep] s2 +puts [checkshape s2] + +bcommon result s1 s2 + +set square 628.319 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug755_1 b/tests/bugs/modalg/bug755_1 new file mode 100755 index 0000000000..becea231e3 --- /dev/null +++ b/tests/bugs/modalg/bug755_1 @@ -0,0 +1,34 @@ + +puts "========" +puts "OCC755" +puts "SAM1607" +puts "(case 1)" +puts "========" +puts "" +#################################################################### +##Result of cut of capteur2 from capteur1 is a solid. It must be a compound, as it consists of 2 bodies. +#################################################################### + +restore [locate_data_file OCC755_1.brep] a1 +puts [checkshape a1] +restore [locate_data_file OCC755_2.brep] a2 +puts [checkshape a2] + +bcut result a1 a2 + +set wt_is [whatis result] + +set lth [llength $wt_is] + +if {$lth < 5} { + puts "Faulty OCC755 (case 1)" +} else { + if {[regexp {COMPOUND} $wt_is] == 1} { + puts "OCC755 OK (case 2)" + } else { + puts "Faulty OCC755 (case 2)" + } +} + +set square 1.57358e+06 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug758 b/tests/bugs/modalg/bug758 new file mode 100755 index 0000000000..ef4099a84d --- /dev/null +++ b/tests/bugs/modalg/bug758 @@ -0,0 +1,26 @@ + +puts "========" +puts "OCC758" +puts "SAM1613" +puts "========" +puts "" +################################################### +##It's impossible to cut two little shapes from the big one in the attached file. +################################################### + +restore [locate_data_file OCC758.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] +puts [checkshape a_3] + +bcut res1 a_1 a_2 + +puts [checkshape res1] + +bcut result res1 a_3 + +set square 49473.6 +set 2dviewer 0 + + diff --git a/tests/bugs/modalg/bug763 b/tests/bugs/modalg/bug763 new file mode 100755 index 0000000000..6eaaa72479 --- /dev/null +++ b/tests/bugs/modalg/bug763 @@ -0,0 +1,20 @@ + +puts "========" +puts "OCC763" +puts "========" +puts "" +#################################### +## Bad result of fuse operation between two cylinders +#################################### + +restore [locate_data_file OCC763_c1.brep] c1 +puts [checkshape c1] +restore [locate_data_file OCC763_c2.brep] c2 +puts [checkshape c2] + +bop c1 c2 +bopfuse result + +set square 23189.4 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug767 b/tests/bugs/modalg/bug767 new file mode 100755 index 0000000000..d53e007c40 --- /dev/null +++ b/tests/bugs/modalg/bug767 @@ -0,0 +1,15 @@ + +puts "=======" +puts "OCC767" +puts "=======" +puts "" +############################################ +## Command sameparametr in DRAW hangs on attached edge. +############################################ + +restore [locate_data_file OCC767.brep] result + +sameparameter result + +set length 7.6901 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug770 b/tests/bugs/modalg/bug770 new file mode 100755 index 0000000000..edb86e467a --- /dev/null +++ b/tests/bugs/modalg/bug770 @@ -0,0 +1,26 @@ +puts "TODO ?OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO ?OCC12345 ALL: Error : The square of result shape is" + +puts "========" +puts "OCC770" +puts "SAM1636" +puts "========" +puts "" +############################ +## Impossible fusing 3 attached shapes +############################ + +restore [locate_data_file OCC770.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] +puts [checkshape a_3] + +bfuse res1 a_1 a_2 + +puts [checkshape res1] + +bfuse result res1 a_3 + +set square 962546. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug771 b/tests/bugs/modalg/bug771 new file mode 100755 index 0000000000..0e48e6f9b8 --- /dev/null +++ b/tests/bugs/modalg/bug771 @@ -0,0 +1,25 @@ + +puts "========" +puts "OCC771" +puts "SAM1639" +puts "========" +puts "" +########################### +## Impossible fusung 3 shapes attached +########################### + +restore [locate_data_file OCC771.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] +puts [checkshape a_3] + +bfuse res1 a_1 a_2 + +puts [checkshape res1] + +bfuse result res1 a_3 + +set square 1306.68 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug772 b/tests/bugs/modalg/bug772 new file mode 100755 index 0000000000..5e7ea72718 --- /dev/null +++ b/tests/bugs/modalg/bug772 @@ -0,0 +1,21 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is" + +puts "========" +puts "OCC772" +puts "SAM1643" +puts "========" +puts "" +###################################### +## Impossible to make a common of the shapes attached. +###################################### + +restore [locate_data_file OCC772.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bcommon result a_1 a_2 + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug774_1 b/tests/bugs/modalg/bug774_1 new file mode 100755 index 0000000000..600684ad6c --- /dev/null +++ b/tests/bugs/modalg/bug774_1 @@ -0,0 +1,22 @@ + +puts "========" +puts "OCC774" +puts "SAM1647" +puts "(case 1)" +puts "========" +puts "" +################################# +## It's impossible to cut one shape from another. +################################# + +restore [locate_data_file OCC774.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +if { [catch { bcut result a_1 a_2 } status] } { + puts "Faulty OCC774 (case 1)" +} + +set square 50704.6 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug774_2 b/tests/bugs/modalg/bug774_2 new file mode 100755 index 0000000000..44d9f229a1 --- /dev/null +++ b/tests/bugs/modalg/bug774_2 @@ -0,0 +1,22 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is" + +puts "========" +puts "OCC774" +puts "SAM1647" +puts "(case 2)" +puts "========" +puts "" +################################# +## +restore [locate_data_file OCC774.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +if { [catch { bcut result a_2 a_1 } status] } { + puts "Faulty OCC774 (case 2)" +} + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug775 b/tests/bugs/modalg/bug775 new file mode 100755 index 0000000000..83e11e5311 --- /dev/null +++ b/tests/bugs/modalg/bug775 @@ -0,0 +1,19 @@ + +puts "========" +puts "OCC775" +puts "SAM1650" +puts "========" +puts "" +############################# +## Impossible to fuse two attached shapes. +############################# + +restore [locate_data_file OCC775.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bfuse result a_1 a_2 + +set square 61146.4 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug776_1 b/tests/bugs/modalg/bug776_1 new file mode 100755 index 0000000000..557fc4388e --- /dev/null +++ b/tests/bugs/modalg/bug776_1 @@ -0,0 +1,20 @@ + +puts "========" +puts "OCC776" +puts "SAM1654" +puts "(case 1)" +puts "========" +puts "" +########################################## +## Impossible to cut one shape from another in the attachment +########################################## + +restore [locate_data_file OCC776.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bcut result a_1 a_2 + +set square 112637. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug776_2 b/tests/bugs/modalg/bug776_2 new file mode 100755 index 0000000000..2f267bb154 --- /dev/null +++ b/tests/bugs/modalg/bug776_2 @@ -0,0 +1,20 @@ + +puts "========" +puts "OCC776" +puts "SAM1654" +puts "(case 2)" +puts "========" +puts "" +########################################## +## Impossible to cut one shape from another in the attachment +########################################## + +restore [locate_data_file OCC776.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bcut result a_2 a_1 + +set square 40403.2 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug778_1 b/tests/bugs/modalg/bug778_1 new file mode 100755 index 0000000000..5462cd6d52 --- /dev/null +++ b/tests/bugs/modalg/bug778_1 @@ -0,0 +1,20 @@ + +puts "========" +puts "OCC778" +puts "SAM1656" +puts "(case 1)" +puts "========" +puts "" +###################################### +## Incorrect result of cut of the cylinder from the shape. +###################################### + +restore [locate_data_file OCC778.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bcut result a_1 a_2 + +set square 13633.6 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug778_2 b/tests/bugs/modalg/bug778_2 new file mode 100755 index 0000000000..ce42192daa --- /dev/null +++ b/tests/bugs/modalg/bug778_2 @@ -0,0 +1,20 @@ + +puts "========" +puts "OCC778" +puts "SAM1656" +puts "(case 2)" +puts "========" +puts "" +##################################### +## Incorrect result of cut of the cylinder from the shape +##################################### + +restore [locate_data_file OCC778.brep] a +explode a +puts [checkshape a_1] +puts [checkshape a_2] + +bcut result a_2 a_1 + +set square 678.584 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug779 b/tests/bugs/modalg/bug779 new file mode 100755 index 0000000000..c53e3ca9c8 --- /dev/null +++ b/tests/bugs/modalg/bug779 @@ -0,0 +1,22 @@ + +puts "========" +puts "OCC779" +puts "========" +puts "" +################################ +## Common operation produces invalid shape +################################ + +restore [locate_data_file OCC779_s1.brep] s1 +puts [checkshape s1] +restore [locate_data_file OCC779_s2.brep] s2 +puts [checkshape s2] + +ttranslate s1 0 0 -30 +prism s1p s1 0 0 70 +puts [checkshape s1p] + +bcommon result s1p s2 + +set square 64191.2 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug780_1 b/tests/bugs/modalg/bug780_1 new file mode 100755 index 0000000000..81dc7fdb40 --- /dev/null +++ b/tests/bugs/modalg/bug780_1 @@ -0,0 +1,20 @@ + +puts "========" +puts "OCC780" +puts "SAM1239" +puts "(case 1)" +puts "========" +puts "" +######################################### +## Fuse and common between two faces are wrong (SAM1239) +######################################### + +restore [locate_data_file OCC780.brep] f +explode f f +puts [checkshape f_1] +puts [checkshape f_2] + +bcommon result f_1 f_2 + +set square 6283.19 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug780_2 b/tests/bugs/modalg/bug780_2 new file mode 100755 index 0000000000..4b72b48bd7 --- /dev/null +++ b/tests/bugs/modalg/bug780_2 @@ -0,0 +1,20 @@ + +puts "========" +puts "OCC780" +puts "SAM1239" +puts "(case 2)" +puts "========" +puts "" +######################################### +## Fuse and common between two faces are wrong (SAM1239) +######################################### + +restore [locate_data_file OCC780.brep] f +explode f f +puts [checkshape f_1] +puts [checkshape f_2] + +bfuse result f_1 f_2 + +set square 12566.4 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug788_1 b/tests/bugs/modalg/bug788_1 new file mode 100755 index 0000000000..7bf800cefb --- /dev/null +++ b/tests/bugs/modalg/bug788_1 @@ -0,0 +1,20 @@ + +puts "=========" +puts " OCC788 " +puts "=========" +puts "" +################################################# +## ThruSection cannot determine correctly correspondence between wires +################################################# +restore [locate_data_file OCC788_s1w.brep] w1 +explode w1 +wire ww1 w1_1 + +restore [locate_data_file OCC788_s2w.brep] w2 +explode w2 +wire ww2 w2_1 + +thrusections result 0 0 ww1 ww2 + +set 2dviewer 0 +set square 148608. diff --git a/tests/bugs/modalg/bug788_2 b/tests/bugs/modalg/bug788_2 new file mode 100755 index 0000000000..cbb20238b1 --- /dev/null +++ b/tests/bugs/modalg/bug788_2 @@ -0,0 +1,24 @@ + +puts "=========" +puts " OCC788 " +puts "=========" +puts "" +################################################## +## ThruSection cannot determine correctly correspondence between wires +################################################## + +restore [locate_data_file OCC788_s1w.brep] w1 +explode w1 +wire ww1 w1_1 + +restore [locate_data_file OCC788_s2w.brep] w2 +explode w2 +wire ww2 w2_1 + + +thrusections result 0 0 ww1 ww2 + +puts "It necessary to analyse the photo" + +set 2dviewer 0 +set square 148608. diff --git a/tests/bugs/modalg/bug789 b/tests/bugs/modalg/bug789 new file mode 100755 index 0000000000..59e95ec2d2 --- /dev/null +++ b/tests/bugs/modalg/bug789 @@ -0,0 +1,25 @@ + +puts "=========" +puts " OCC789 " +puts "=========" +puts "" +######################################################## +## When working on 2 closed wires (each of 1 edge), the thrusection algorithm creates +## a surface with isolines which oscillate in longitudinal direction somewhere in the +## middle between end sections. +######################################################## + +restore [locate_data_file OCC789_s3.brep] w1 +explode w1 +wire ww1 w1_1 + +restore [locate_data_file OCC789_s4.brep] w2 +explode w2 +wire ww2 w2_1 + +thrusections result 0 0 ww1 ww2 + +puts "It necessary to analyse the photo" + +set square 142424. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug794 b/tests/bugs/modalg/bug794 new file mode 100755 index 0000000000..dcbbebcb76 --- /dev/null +++ b/tests/bugs/modalg/bug794 @@ -0,0 +1,28 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "=========" +puts " OCC794 " +puts "=========" +puts "" +##################################################### +## The offset algorithm produced invalid result when offseting an attached face +##################################################### + +pload QAcommands + +restore [locate_data_file OCC794.brep] a + +offsetshape result a 10 + +set x_coord 120 +set y_coord 150 + +vinit +vdisplay result +vsetdispmode 1 +vfit +QAUpdateLights + +checkcolor $x_coord $y_coord 0.77 0.54 0.09 + +set square 206399 +set 3dviewer 1 diff --git a/tests/bugs/modalg/bug822_1 b/tests/bugs/modalg/bug822_1 new file mode 100755 index 0000000000..1369da38f3 --- /dev/null +++ b/tests/bugs/modalg/bug822_1 @@ -0,0 +1,25 @@ +pload QAcommands + +puts "========" +puts "OCC822" +puts "========" +puts "" +##################################### +## BRepMesh_IncrementalMesh fails on some faces +##################################### + +if { [ catch { set info_result [OCC822_1 a1 a2 result] } ] } { + puts "Faulty : an exception was caught" +} else { + if { [lsearch ${info_result} FAILED] > -1 } { + puts "Faulty : command was FAILED" + } + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 133931 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug822_2 b/tests/bugs/modalg/bug822_2 new file mode 100755 index 0000000000..51577211de --- /dev/null +++ b/tests/bugs/modalg/bug822_2 @@ -0,0 +1,25 @@ +pload QAcommands + +puts "=======" +puts "OCC822" +puts "=======" +puts "" +##################################### +## BRepMesh_IncrementalMesh fails on some faces +##################################### + +if { [ catch { set info_result [OCC822_2 a1 a2 result] } ] } { + puts "Faulty : an exception was caught" +} else { + if { [lsearch ${info_result} FAILED] > -1} { + puts "Faulty : commands was FAILED" + } + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 61963.5 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug823 b/tests/bugs/modalg/bug823 new file mode 100755 index 0000000000..e97833fe97 --- /dev/null +++ b/tests/bugs/modalg/bug823 @@ -0,0 +1,26 @@ +pload QAcommands + +puts "=======" +puts "OCC823" +puts "=======" +puts "" +############################### +## BRepAlgoAPI_Fuse fails on two cylinders +############################### + +if { [ catch { set info_result [OCC823 a1 a2 result] } ] } { + puts "Faulty : an exception was caught" +} else { + + if { [lsearch ${info_result} FAILED] > -1} { + puts "Faulty : commands was FAILED" + } + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 23189.5 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug823_1 b/tests/bugs/modalg/bug823_1 new file mode 100755 index 0000000000..be10051aa7 --- /dev/null +++ b/tests/bugs/modalg/bug823_1 @@ -0,0 +1,30 @@ +pload QAcommands + +puts "============" +puts "OCC823" +puts "============" +puts "" +################################ +## BRepAlgoAPI_Fuse fails on two cylinders +################################ +## +## Note: test for old topology +## +################################ + +if { [ catch { set info_result [OCC823 a1 a2 a3] } ] } { + puts "Faulty : exception was caught" +} else { + puts [checkshape a1] + puts [checkshape a2] + bfuse result a1 a2 + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 23189.5 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug824 b/tests/bugs/modalg/bug824 new file mode 100755 index 0000000000..c49b28d4de --- /dev/null +++ b/tests/bugs/modalg/bug824 @@ -0,0 +1,25 @@ +pload QAcommands + +puts "============" +puts "OCC824" +puts "============" +puts "" +#################################### +## BRepAlgoAPI_Fuse fails on cylinder and sphere +#################################### + +if { [ catch { set info_result [OCC824 a1 a2 result] } ] } { + puts "Faulty : an exception was caught" +} else { + if { [lsearch ${result} FAILED] > -1} { + puts "Faulty : command was FAILED" + } + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 16336.3 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug824_1 b/tests/bugs/modalg/bug824_1 new file mode 100755 index 0000000000..bbe54e7f46 --- /dev/null +++ b/tests/bugs/modalg/bug824_1 @@ -0,0 +1,30 @@ +pload QAcommands + +puts "=======" +puts "OCC824" +puts "=======" +puts "" +#################################### +## BRepAlgoAPI_Fuse fails on cylinder and sphere +#################################### +## +## Note: test for old topology +## +################################ + +if { [ catch { set info_result [OCC824 a1 a2 a3] } ] } { + puts "Faulty : exception was catch" +} else { + puts [checkshape a1] + puts [checkshape a2] + bfuse result a1 a2 + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 16336.3 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug825 b/tests/bugs/modalg/bug825 new file mode 100755 index 0000000000..bc45a425c6 --- /dev/null +++ b/tests/bugs/modalg/bug825 @@ -0,0 +1,37 @@ +puts "TODO OCC12345 ALL: Faulty : command was FAILED" +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is" + +pload QAcommands + +puts "============" +puts "OCC825" +puts "============" +puts "" +###################################### +## BRepAlgoAPI_Cut fails on sphere and b-spline face +###################################### + +if { [ catch { set info_result [OCC825 a1 a2 a3 result1 result2] } ] } { + puts "Faulty : an exception was caught" +} else { + if { [lsearch ${info_result} FAILED] > -1} { + puts "Faulty : command was FAILED" + } + puts [checkshape result1] + puts [checkshape result2] + + set ExplodeList [explode result1] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + set ExplodeList [explode result2] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + + renamevar result1 result +} + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug825_1 b/tests/bugs/modalg/bug825_1 new file mode 100755 index 0000000000..acf250a6bd --- /dev/null +++ b/tests/bugs/modalg/bug825_1 @@ -0,0 +1,31 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The square of result shape is" + +pload QAcommands + +puts "=======" +puts "OCC825" +puts "=======" +puts "" +###################################### +## BRepAlgoAPI_Cut fails on sphere and b-spline face +###################################### +## +## Note: test for old topology +## +################################ + +if { [ catch { set info_result [OCC825 a1 a2 a3 a4 a5] } ] } { + puts "Faulty : an exception was caught" +} else { + puts [checkshape a1] + puts [checkshape a2] + bcut result a2 a1 + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug825_2 b/tests/bugs/modalg/bug825_2 new file mode 100755 index 0000000000..cc425d1bb3 --- /dev/null +++ b/tests/bugs/modalg/bug825_2 @@ -0,0 +1,32 @@ +pload QAcommands +puts "TODO OCC12345 ALL: Error : The square of result shape is" +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" + +puts "========" +puts "OCC825" +puts "========" +puts "" +###################################### +## BRepAlgoAPI_Cut fails on sphere and b-spline face +###################################### +## +## Note: test for old topology +## +################################ + +if { [ catch { set info_result [OCC825 a1 a2 a3 a4 a5] } ] } { + puts "Faulty : an exception was caught" +} else { + puts [checkshape a1] + puts [checkshape a3] + + bcut result a3 a1 + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug826 b/tests/bugs/modalg/bug826 new file mode 100755 index 0000000000..4093fa36e4 --- /dev/null +++ b/tests/bugs/modalg/bug826 @@ -0,0 +1,24 @@ +pload QAcommands + +puts "============" +puts "OCC826" +puts "============" +puts "" +################################### +## BRepAlgoAPI_Fuse fails on revolved and sphere +################################### + +if { [ catch { set info_result [OCC826 a1 a2 result] } ] } { + puts "Faulty : an exception was caught" +} else { + if { [lsearch ${info_result} FAILED] > -1} { + puts "Faulty : command was FAILED" + } + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 272939 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug826_1 b/tests/bugs/modalg/bug826_1 new file mode 100755 index 0000000000..d2bd7b0808 --- /dev/null +++ b/tests/bugs/modalg/bug826_1 @@ -0,0 +1,29 @@ +pload QAcommands + +puts "============" +puts "OCC826" +puts "============" +puts "" +################################### +## BRepAlgoAPI_Fuse fails on revolved and sphere +################################### +## +## Note: test for old topology +## +################################ + +if { [ catch { set result [OCC826 a1 a2 a3] } ] } { + puts "Faulty : an exception was caught" +} else { + puts [checkshape a1] + puts [checkshape a2] + bfuse result a1 a2 + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 272939 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug827 b/tests/bugs/modalg/bug827 new file mode 100755 index 0000000000..1b779e6ff3 --- /dev/null +++ b/tests/bugs/modalg/bug827 @@ -0,0 +1,45 @@ +pload QAcommands + +puts "========" +puts "OCC827" +puts "========" +puts "" +################################### +## BRepAlgoAPI_Fuse fails on cylinder and torus +################################### + +# +# a1 - Cylinder +# a2 - Torus1 +# a3 - Torus1 +# res1 - Fuse(Torus1 & Cylinder) +# res2 - Fuse(Torus2 & res1) +# + +if { [ catch { set info_result [OCC827 a1 a2 a3 result1 result2] } ] } { + puts "Faulty : an exception was caught" +} else { + if { [lsearch ${info_result} FAILED] > -1} { + puts "Faulty OCC827 (case 1)" + } + puts [checkshape a1] + puts [checkshape a2] + puts [checkshape a3] + puts [checkshape result1] + puts [checkshape result2] + + set ExplodeList [explode result1] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + + set ExplodeList [explode result2] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + + renamevar result2 result +} + +set square 11847.7 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug827_1 b/tests/bugs/modalg/bug827_1 new file mode 100755 index 0000000000..ebfdefc660 --- /dev/null +++ b/tests/bugs/modalg/bug827_1 @@ -0,0 +1,50 @@ +pload QAcommands + +puts "=======" +puts "OCC827" +puts "=======" +puts "" +#################################### +## BRepAlgoAPI_Fuse fails on cylinder and torus +#################################### +## +## Note: test for old topology +## +################################ + +set status 1 + +# +# a1 - Cylinder +# a2 - Torus1 +# a3 - Torus1 +# res1 - Fuse(Torus1 & Cylinder) +# res2 - Fuse(Torus2 & res1) +# + +if [ catch { set info_result [OCC827 a1 a2 a3 a4 a5] } ] { + puts "Faulty OCC827 (case 0)" +} else { + puts [checkshape a1] + puts [checkshape a2] + puts [checkshape a3] + bfuse result1 a1 a2 + puts [checkshape result1] + + set ExplodeList [explode result1] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + + bfuse result2 result1 a3 + puts [checkshape result2] + + set ExplodeList [explode result2] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + renamevar result2 result +} + +set square 11847.7 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug827_2 b/tests/bugs/modalg/bug827_2 new file mode 100755 index 0000000000..ce69873d05 --- /dev/null +++ b/tests/bugs/modalg/bug827_2 @@ -0,0 +1,47 @@ +pload QAcommands + +puts "=======" +puts "OCC827" +puts "=======" +puts "" +#################################### +## BRepAlgoAPI_Fuse fails on cylinder and torus +#################################### +## +## Note: test for old topology +## +################################ + +# +# a1 - Cylinder +# a2 - Torus1 +# a3 - Torus1 +# res1 - Fuse(Torus1 & Cylinder) +# res2 - Fuse(Torus2 & res1) +# + +if { [ catch { set info_result [OCC827 a1 a2 a3 a4 a5] } ] } { + puts "Faulty an exception was caught" +} else { + puts [checkshape a1] + puts [checkshape a2] + puts [checkshape a3] + bfuse result1 a2 a1 + puts [checkshape result1] + set ExplodeList [explode result1] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + bfuse result2 a3 result1 + puts [checkshape result2] + + set ExplodeList [explode result2] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } + + renamevar result2 result +} + +set square 11847.7 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug828 b/tests/bugs/modalg/bug828 new file mode 100755 index 0000000000..8f13851ab7 --- /dev/null +++ b/tests/bugs/modalg/bug828 @@ -0,0 +1,28 @@ +pload QAcommands + +puts "========" +puts "OCC828" +puts "========" +puts "" +############################### +## BRepFilletAPI_MakeFillet fails on prism +############################### + +if { [ catch { set info_result [OCC828 a1] } ] } { + puts "Faulty : an exception was caught" +} else { + if { [lsearch ${info_result} FAILED] > -1} { + puts "Faulty : command was FAILED" + } + puts [checkshape a1] + explode a1 e + blend result a1 10 a1_7 10 a1_6 + + set ExplodeList [explode result] + if {[llength ${ExplodeList}] < 1} { + puts "Faulty : Resulting shape is empty COMPOUND" + } +} + +set square 17816.2 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug829_1 b/tests/bugs/modalg/bug829_1 new file mode 100755 index 0000000000..213f77bbd5 --- /dev/null +++ b/tests/bugs/modalg/bug829_1 @@ -0,0 +1,49 @@ +puts "TODO OCC12345 ALL: An exception was caught" +puts "TODO OCC12345 ALL: Exception" +puts "TODO OCC12345 ALL: Error : The command can not be build." + +puts "========" +puts "OCC829" +puts "========" +puts "" +################################### +## BRepOffsetAPI_MakeOffset fails on given wires +################################### +puts " This part - LIMITATION for existed algorithms" +################################### + +restore [locate_data_file OCC829_w1.brep] a +puts [checkshape a] +explode a w + +if { [catch { mkoffset result a_1 1 5 } status] } { + puts "Faulty : An exception was caught" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 0 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug829_2 b/tests/bugs/modalg/bug829_2 new file mode 100755 index 0000000000..c17d8c909e --- /dev/null +++ b/tests/bugs/modalg/bug829_2 @@ -0,0 +1,43 @@ + +puts "========" +puts "OCC829" +puts "========" +puts "" +################################### +## BRepOffsetAPI_MakeOffset fails on given wires +################################### +restore [locate_data_file OCC829_w2.brep] a +puts [checkshape a] +explode a w + +if { [catch { mkoffset result a_1 1 5 } status] } { + puts "Faulty OCC829 (case 1)" +} else { + renamevar result_1 result + set nb_info [nbshapes result] + regexp {VERTEX +: +([-0-9.+eE]+)} $nb_info full ve + puts [format "Result shape result contains %s vertexes" $ve] + if { $ve == 0 } { + puts [format "Faulty : Result shape is NULL shape"] + } else { + regexp {WIRE +: +([-0-9.+eE]+)} $nb_info full wi + if {$wi > 1 } { + set ll [explode result w] + set num [llength $ll] + puts [format "Faulty : Result shape result is COMPOUND and contains %s wires" $num] + foreach {k} $ll { + puts [checkshape $k] + regexp {nb alone Vertices : ([-0-9.+eE]+)} [checksection $k] full cs + if { $cs != 0 } { + puts [format "Faulty : Result shape is UNclosed wire !!! " $k] + } else { + puts [format "OK: Result shape is CLOSED wire !!! "] + } + } + } + } +} + +set length 3690.75 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug890 b/tests/bugs/modalg/bug890 new file mode 100755 index 0000000000..5ef128ee70 --- /dev/null +++ b/tests/bugs/modalg/bug890 @@ -0,0 +1,22 @@ + +puts "=======" +puts "OCC890" +puts "SAM1681" +puts "=======" +puts "" +############################## +## No possibility to fuse the attached prisms. +############################## + +restore [locate_data_file OCC890.brep] a +explode a + +puts [checkshape a_1] +puts [checkshape a_2] + +if { [ catch { bfuse result a_1 a_2 } catch_result ] } { + puts "Faulty OCC890 (case 3)" +} + +set square 1.8276e+06 +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug895 b/tests/bugs/modalg/bug895 new file mode 100755 index 0000000000..a015c8f192 --- /dev/null +++ b/tests/bugs/modalg/bug895 @@ -0,0 +1,58 @@ +puts "============" +puts "OCC895" +puts "============" +puts "" +######################################################### +## In one case, twisted surface is created. +## The problem is in incorrect computation of mutual orientations of wire segments. +######################################################### + +pload QAcommands + +set scale 73.609 +set center_X 7.93702 +set center_Y 0.264503 +set proj_X 0.523995 +set proj_Y 0.359655 +set proj_Z 0.77206 +set up_X -0.739036 +set up_Y -0.258607 +set up_Z 0.622051 +set at_X 9.06773 +set at_Y -1.93771 +set at_Z 1.45124 + +set x_coord 210 +set y_coord 210 + +set status 0 + +set angle 5 +set reverse 0 +set order 0 + +if { [ catch { OCC895 result ${angle} ${reverse} ${order} } ] } { + puts "Faulty : an exception was caught" +} + +if { ${status} == 0} { + vinit + vsetdispmode 1 + vdisplay result + + QASetViewCharac ${scale} ${center_X} ${center_Y} \ + ${proj_X} ${proj_Y} ${proj_Z} \ + ${up_X} ${up_Y} ${up_Z} \ + ${at_X} ${at_Y} ${at_Z} + + QAUpdateLights + + checkcolor $x_coord $y_coord 0.98 0.72 0.13 + + if { ${stat} != 1 } { + puts "Faulty OCC895 (case 2)" + } +} + +set square 18.1614 +set 3dviewer 1 diff --git a/tests/bugs/modalg/bug910 b/tests/bugs/modalg/bug910 new file mode 100755 index 0000000000..97f71ff58f --- /dev/null +++ b/tests/bugs/modalg/bug910 @@ -0,0 +1,50 @@ +#INTERFACE DXF +puts "============" +puts "OCC910" +puts "============" +puts "" +##################################################### +## The problem with sat files depends on problem of BRepTools_WireExplorer +##################################################### + +pload XDE +catch { source $env(CSF_DrawPluginQADefaults)/QARebuildCommands } + +restore [locate_data_file OCC910.rle] a + +puts [checkshape a] +explode a w +puts [checkshape a_7] + +set list1 [expwire a_7] +regexp {TopoDS_Iterator\(EDGE\) donne ([-0-9.+eE]+) Edges} $list1 full TopoDS_Iterator1 +regexp {TopExp_Explorer\(EDGE\) donne ([-0-9.+eE]+) Edges} $list1 full TopExp_Explorer1 +regexp {BRepTools_WireExplorer donne ([-0-9.+eE]+) Edges} $list1 full BRepTools_WireExplorer1 + + +set list2 [expwire a_7 a] +regexp {TopoDS_Iterator\(EDGE\) donne ([-0-9.+eE]+) Edges} $list1 full TopoDS_Iterator2 +regexp {TopExp_Explorer\(EDGE\) donne ([-0-9.+eE]+) Edges} $list1 full TopExp_Explorer2 +regexp {BRepTools_WireExplorer donne ([-0-9.+eE]+) Edges} $list1 full BRepTools_WireExplorer2 + +puts "TopoDS_Iterator1 = ${TopoDS_Iterator1}" +puts "TopExp_Explorer1 = ${TopExp_Explorer1}" +puts "BRepTools_WireExplorer1 = ${BRepTools_WireExplorer1}" + +puts "TopoDS_Iterator2 = ${TopoDS_Iterator2}" +puts "TopExp_Explorer2 = ${TopExp_Explorer2}" +puts "BRepTools_WireExplorer2 = ${BRepTools_WireExplorer2}" + +if { ${TopoDS_Iterator1} != ${TopoDS_Iterator2} || \ + ${TopExp_Explorer1} != ${TopExp_Explorer2} || \ + ${BRepTools_WireExplorer1} != ${BRepTools_WireExplorer2} } { + puts "Faulty OCC910" +} else { + puts "OCC910 OK" +} + +renamevar a_7 result + +set length 149.816 +set 2dviewer 0 + diff --git a/tests/bugs/modalg/bug919 b/tests/bugs/modalg/bug919 new file mode 100755 index 0000000000..86dcfdd4cc --- /dev/null +++ b/tests/bugs/modalg/bug919 @@ -0,0 +1,33 @@ + +puts "=======" +puts "OCC919" +puts "SAM1623" +puts "=======" +puts "" +############################# +## Impossible to fuse the shapes. +############################## + +restore [locate_data_file OCC919.brep] a + +explode a + +# See comment in CR23244: +restore [locate_data_file OCC919-PROC.brep] a_1 +# + +puts [checkshape a_1] +puts [checkshape a_2] + +if { [ catch { bfuse result a_1 a_2} catch_result ] } { + puts "Faulty OCC919 (case 1)" +} else { + if { [ catch { checkshape result } catch_result ] } { + puts "Faulty OCC919 (case 2)" + } else { + puts "OCC919 OK" + } +} + +set square 272591. +set 2dviewer 0 diff --git a/tests/bugs/modalg/bug957 b/tests/bugs/modalg/bug957 new file mode 100755 index 0000000000..58e157bbf8 --- /dev/null +++ b/tests/bugs/modalg/bug957 @@ -0,0 +1,15 @@ +puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" +puts "TODO OCC12345 ALL: Error : The length of result shape is" + +puts "========" +puts "OCC957" +puts "========" +puts "" +############################################################## +##Draw function PSPHERE creates incorrect shape (according to CHECKSHAPE function) +############################################################## + +psphere result 10 10 10 + +set length 0 +set 2dviewer 0 diff --git a/tests/bugs/modalg/dxf906 b/tests/bugs/modalg/dxf906 new file mode 100755 index 0000000000..5e04861d64 --- /dev/null +++ b/tests/bugs/modalg/dxf906 @@ -0,0 +1,19 @@ + +puts "=======" +puts "DXF906" +puts "OCC889" +puts "OCC1013" +puts "=======" +puts "" +######################################################### +## After fix OCC157 we have plane surface in face (instead bspline as in C40). +## But now checkshape founds number of errors on new face. I think that face from +## c40 is not better than in dev +######################################################### + +restore [locate_data_file DXF906.rle] a + +mkplane result a + +set square 92131.6 +set 2dviewer 0 diff --git a/tests/bugs/modalg/pro18892 b/tests/bugs/modalg/pro18892 old mode 100644 new mode 100755 index 89cbce0674..c556689116 --- a/tests/bugs/modalg/pro18892 +++ b/tests/bugs/modalg/pro18892 @@ -26,7 +26,7 @@ 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 +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" diff --git a/tests/bugs/moddata/bug566 b/tests/bugs/moddata/bug566 new file mode 100755 index 0000000000..586f59c32b --- /dev/null +++ b/tests/bugs/moddata/bug566 @@ -0,0 +1,43 @@ +pload QAcommands + +puts "========" +puts "OCC566" +puts "========" +puts "" +############################################### +##BRepBndLib::AddClose builds box larger than BRepBndLib::Add +############################################### + +restore [locate_data_file OCC566.brep] a + +set err1 [bounding a] +set err2 [OCC566 a] + +regexp { *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+)} $err1 full v1_x v1_y v1_z v2_x v2_y v2_z +regexp { *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+) *([-0-9.+eE]+)} $err2 full v3_x v3_y v3_z v4_x v4_y v4_z + +vertex v1 $v1_x $v1_y $v1_z +vertex v2 $v2_x $v2_y $v2_z + +vertex v3 $v3_x $v3_y $v3_z +vertex v4 $v4_x $v4_y $v4_z + +distmini d1 v1 v2 +distmini d2 v3 v4 + +regexp {([-0-9.+eE]+)$} [dump d1_val] full dis1 +puts $dis1 +regexp {([-0-9.+eE]+)$} [dump d2_val] full dis2 +puts $dis2 + +set err [expr 1.*abs((($dis1 - $dis2) / $dis2) * 100)] +puts "" +puts [format "Different is %s percents" $err] + +if {$err > 1.0} { + puts " Faulty OCC566: BRepBndLib::AddClose builds box larger than BRepBndLib::Add - this should not be so!" +} else { + puts " OCC566 OK" +} + +set 2dviewer 0 diff --git a/tests/bugs/moddata/bug592 b/tests/bugs/moddata/bug592 new file mode 100755 index 0000000000..dd05d32f68 --- /dev/null +++ b/tests/bugs/moddata/bug592 @@ -0,0 +1,43 @@ +puts "TODO OCC12345 ALL: Faulty OCC592 : Checkshape BRepCheck_Analyzer does not detect faulty shape" + +puts "========================" +puts " OCC592 " +puts "========================" +puts "" +################################### +##BRepCheck_Analyzer does not detect faulty shape +##################################### + +restore [locate_data_file OCC592.brep] ff114 + +explode ff114 e +mkcurve cc ff114_8 +cvalue cc 0.95 x y z +vertex vv x y z +mksurface gs ff114 +mkface ff gs +donl ff114 vv +trim trcc cc +set aa [distmini dd vv ff] + +puts "******* Result *******" +regexp {([-0-9.+eE]+)$} [dump dd_val] full dis1 +puts "distance between the point on curve and the surface is $dis1" + +set tolerance [maxtolerance ff114_8] +regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxEdgeTolerance +puts "the tolerance of the edge is $MaxEdgeTolerance" +puts "the tolerance is less than distance between point and surface" +puts "BUT" + +decho off +set che [checkshape ff114] +decho on + +if { [regexp {Faulty} $che] != 1 } { + puts "Faulty OCC592 : Checkshape BRepCheck_Analyzer does not detect faulty shape" +} else { + puts "OCC592 OK: Checkshape (BRepCheck_Analyzer) detects bad shape" +} + +set 2dviewer 0 diff --git a/tests/bugs/moddata/bug618 b/tests/bugs/moddata/bug618 new file mode 100755 index 0000000000..f061aa66a2 --- /dev/null +++ b/tests/bugs/moddata/bug618 @@ -0,0 +1,21 @@ + +puts "========================" +puts "OCC618" +puts "========================" +puts "" +############################ +## Exception during bop +############################ + +restore [locate_data_file OCC618a.brep] a +puts [checkshape a] +restore [locate_data_file OCC618b.brep] b +puts [checkshape b] + +if [catch {bop a b} catch_result] { + puts "Faulty OCC618 : BOP operation was made wrongly" +} else { + puts "OCC618 OK: BOP operation works OK" +} + +set 2dviewer 0 diff --git a/tests/bugs/moddata/bug705 b/tests/bugs/moddata/bug705 new file mode 100755 index 0000000000..a440a10d10 --- /dev/null +++ b/tests/bugs/moddata/bug705 @@ -0,0 +1,31 @@ + +puts "==========" +puts "OCC705 " +puts "==========" +puts "" +########################################################### +## The matrix of inertia for sphere computed incorrectly. +## In the secod case the not diagonal elements of the inertia matrix are not close to zero. +########################################################### + +psphere result 10 10 10 +ttranslate result 10 10 10 +trotate result 0 0 0 0 1 1 34 + +set list [vprops result] +set inertia [regexp -all -inline { +[-0-9.+eE]+ +[-0-9.+eE]+ +[-0-9.+eE]+} $list] +set matrix [regexp -all -inline {[-0-9.+eE]+} $inertia] + +set matrix12 [lindex $matrix 1] +set matrix21 [lindex $matrix 3] +set matrix23 [lindex $matrix 5] +set matrix32 [lindex $matrix 7] + +if { ${matrix12} != 0. || ${matrix21} != 0. || ${matrix23} != 0. || ${matrix32} != 0. } { + puts "Faulty OCC705" +} else { + puts "OCC705 OK" +} + +set length 123.755 +set 2dviewer 0 diff --git a/tests/bugs/moddata/bug712_2 b/tests/bugs/moddata/bug712_2 new file mode 100755 index 0000000000..74870a8aba --- /dev/null +++ b/tests/bugs/moddata/bug712_2 @@ -0,0 +1,22 @@ +pload QAcommands + +puts "========" +puts "OCC712" +puts "========" +puts "" +############################################################ +## Exeption is raised in DRAW during building draft with help command "depouille" +## on face in the attached shape. +## The source code of application is also attached and should be checked. +############################################################ + +set draftAngle 15 +set slabThick 30 + +if [catch {OCC712 ${draftAngle} ${slabThick} } catch_result] { + puts "Faulty OCC712" +} else { + puts "OCC712 OK" +} + +set 2dviewer 0 diff --git a/tests/bugs/vis/bug112 b/tests/bugs/vis/bug112 index f29345b877..6ac758cd70 100755 --- a/tests/bugs/vis/bug112 +++ b/tests/bugs/vis/bug112 @@ -8,18 +8,8 @@ puts "" ## meshing is computed again when displaying it. ############################################################### -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set rd_ch 77647 - set gr_ch 54901 - set bl_ch 9019 -} else { - set rd_ch 78039 - set gr_ch 55294 - set bl_ch 9411 -} +set x_coord 140 +set y_coord 115 restore [locate_data_file OCC20.brep] result tclean result @@ -29,18 +19,7 @@ vfit vsetdispmode result 1 QAUpdateLights -set color [QAGetPixelColor 140 115] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl - -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] - -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" -} +checkcolor $x_coord $y_coord 0.77 0.54 0.9 set only_screen 1 diff --git a/tests/bugs/vis/bug112_1 b/tests/bugs/vis/bug112_1 index 180858c3f0..3fb9064ceb 100755 --- a/tests/bugs/vis/bug112_1 +++ b/tests/bugs/vis/bug112_1 @@ -10,7 +10,7 @@ set first [trinfo res] tclean res ###################################################################### -catch {exec rm ${imagedir}/vrem.brep} +catch {file delete ${imagedir}/vrem.brep} save res ${imagedir}/vrem.brep vinit diff --git a/tests/bugs/vis/bug128 b/tests/bugs/vis/bug128 index 5ce933b3aa..801c7a716b 100755 --- a/tests/bugs/vis/bug128 +++ b/tests/bugs/vis/bug128 @@ -5,34 +5,14 @@ puts "================" ## The shading is false: objects seem to be situated in front of the others while they are behind. ############################################################### -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set rd_ch 43137 - set gr_ch 48235 - set bl_ch 54117 -} else { - set rd_ch 43137 - set gr_ch 48235 - set bl_ch 54509 -} +set x_coord 171 +set y_coord 171 vinit OCC128 QASetViewCharac 4.9487928 89.23589 4.1505 0.7329295 0.59461397 0.33052679 -0.536849 0.2071041 0.81786 71.971878 -17.250309 33.509651 QAUpdateLights -set color [QAGetPixelColor 171 171] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] - -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : The shading is false. Colors are not equal" -} +checkcolor $x_coord $y_coord 0.43 0.48 0.54 set only_screen 1 diff --git a/tests/bugs/vis/bug136 b/tests/bugs/vis/bug136 index 382a241595..38ce586b9b 100755 --- a/tests/bugs/vis/bug136 +++ b/tests/bugs/vis/bug136 @@ -1,26 +1,16 @@ -puts "TODO OCC12345 ALL: Error : colors are not equal" -puts "TODO OCC12345 ALL: Error : 3D Viewer is empty" - +puts "TODO OCC12345 ALL: Error : Colors are not equal in default coordinate and in the near coordinates too" puts "================" puts "OCC136" puts "================" +set x_coord 211 +set y_coord 215 + vinit OCC136 vfit -set rd_ch 0.8 -set gr_ch 0.8 -set bl_ch 0.8 -set color [QAGetPixelColor 211 215] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl - -if { ${rd} != ${rd_ch} || ${gr} != ${gr_ch} || ${bl} != ${bl_ch} } { - puts "Error : colors are not equal" - puts "Error : 3D Viewer is empty" -} +checkcolor $x_coord $y_coord 0.8 0.8 0.8 set only_screen 1 diff --git a/tests/bugs/vis/bug138_1 b/tests/bugs/vis/bug138_1 index 8a5c655778..e26ee4d816 100755 --- a/tests/bugs/vis/bug138_1 +++ b/tests/bugs/vis/bug138_1 @@ -1,4 +1,3 @@ - puts "========" puts "OCC138" puts "========" diff --git a/tests/bugs/vis/bug146 b/tests/bugs/vis/bug146 index 5da598b321..487f828da5 100755 --- a/tests/bugs/vis/bug146 +++ b/tests/bugs/vis/bug146 @@ -1,4 +1,3 @@ - puts "================" puts "OCC146" puts "================" @@ -16,33 +15,15 @@ QASelect2d 155 180 QASelect2d 155 180 QASelect2d 155 180 -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set x1 155 - set y1 180 -} else { - set x1 155 - set y1 177 -} +set coord_x 155 +set coord_y 177 +set color2d 1 -set rd_ch 80000 -set gr_ch 80000 -set bl_ch 80000 +checkcolor $coord_x $coord_y 0.8 0.8 0.8 -set color [QAAISGetPixelColor2d ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl - -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] - -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : The second selection of selected object deselects it and the following clicks have no effect" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug153 b/tests/bugs/vis/bug153 index d9dc7e4476..1bd40ee629 100755 --- a/tests/bugs/vis/bug153 +++ b/tests/bugs/vis/bug153 @@ -1,4 +1,3 @@ - puts "========================" puts "OCC153" puts "========================" @@ -13,6 +12,7 @@ repeat 23 { if [catch { v2dsetbg [locate_data_file OCC153.gif] } res] { puts [format "%s ) Faulty OCC153: here is problem with v2dsetbg command" $j] } else { - puts [format "%s ) : OCC153 OK" $j] + puts [format "%s ) : OCC153 OK" $j] } - incr j} + incr j + } diff --git a/tests/bugs/vis/bug154_1 b/tests/bugs/vis/bug154_1 index 1394b4526a..7446630a42 100755 --- a/tests/bugs/vis/bug154_1 +++ b/tests/bugs/vis/bug154_1 @@ -16,26 +16,24 @@ v2dfit v2deraseall -set color1 [QAAISGetPixelColor2d 370 37] -regexp {RED +: +([-0-9.+eE]+)} $color1 full rd1 -regexp {GREEN +: +([-0-9.+eE]+)} $color1 full gr1 -regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1 +set x_coord 370 +set y_coord 37 +set color2d 1 -if { ${rd1} != 0 || ${gr1} != 0 || ${bl1} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 0 0 0 + +if { $stat != 1 } { puts "Error : Object was not erased" } v2ddisplayall -set color2 [QAAISGetPixelColor2d 370 37] -regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2 -regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2 -regexp {BLUE +: +([-0-9.+eE]+)} $color2 full bl2 +checkcolor $x_coord $y_coord 1 1 0 -if { ${rd2} != 1 || ${gr2} != 1 || ${bl1} != 0 } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Object was not displayed" } set only_screen2d 1 + + diff --git a/tests/bugs/vis/bug154_2 b/tests/bugs/vis/bug154_2 index bdb1ec48a6..1f9b99f63b 100755 --- a/tests/bugs/vis/bug154_2 +++ b/tests/bugs/vis/bug154_2 @@ -17,15 +17,16 @@ v2dfit v2derase b1 -set color [QAAISGetPixelColor2d 370 37] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 370 +set y_coord 37 +set color2d 1 -if { ${rd} != 0 || ${gr} != 0 || ${bl} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 0 0 0 + +if { $stat != 1 } { puts "Object was not erased" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug155_1 b/tests/bugs/vis/bug155_1 index 9172176fd4..731a0cb2bd 100755 --- a/tests/bugs/vis/bug155_1 +++ b/tests/bugs/vis/bug155_1 @@ -15,14 +15,15 @@ v2ddisplay v_v v2ddisplay v_v1 v2dfit -set color [QAAISGetPixelColor2d 405 7] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 405 +set y_coord 7 +set color2d 1 -if { ${rd} != 1 || ${gr} != 1 || ${bl} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 1 1 0 + +if { $stat != 1 } { puts "Error : Vertexes 2D were NOT LOADED properly" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug155_2 b/tests/bugs/vis/bug155_2 index 690ae297f9..0d7c9b1c68 100755 --- a/tests/bugs/vis/bug155_2 +++ b/tests/bugs/vis/bug155_2 @@ -14,13 +14,13 @@ pcone c_o 15 0 50 360 v2ddisplay c_o v2dfit -set color [QAAISGetPixelColor2d 338 77] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 338 +set y_coord 77 +set color2d 1 -if { ${rd} != 1 || ${gr} != 1 || ${bl} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 1 1 0 + +if { $stat != 1 } { puts "Error : pCone 2D was NOT LOADED properly into viewer" } diff --git a/tests/bugs/vis/bug155_3 b/tests/bugs/vis/bug155_3 index a34b9d953e..d39023f923 100755 --- a/tests/bugs/vis/bug155_3 +++ b/tests/bugs/vis/bug155_3 @@ -13,14 +13,15 @@ pcylinder c_y 5 10 v2ddisplay c_y v2dfit -set color [QAAISGetPixelColor2d 338 75] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 338 +set y_coord 75 +set color2d 1 -if { ${rd} != 1 || ${gr} != 1 || ${bl} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 1 1 0 + +if { $stat != 1 } { puts "Error : pCylinder 2D was NOT LOADED properly into viewer" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug173_1 b/tests/bugs/vis/bug173_1 index 8f7dd14fc8..8e4b5b732e 100755 --- a/tests/bugs/vis/bug173_1 +++ b/tests/bugs/vis/bug173_1 @@ -17,30 +17,14 @@ vdisplay result vfit vsetdispmode result 1 -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set rd_ch 100000 - set gr_ch 75294 - set bl_ch 15294 -} else { - set rd_ch 100000 - set gr_ch 75686 - set bl_ch 15294 -} +set x_coord 175 +set y_coord 195 + QAUpdateLights -set color1 [QAGetPixelColor 175 195] -regexp {RED +: +([-0-9.+eE]+)} $color1 full rd1 -regexp {GREEN +: +([-0-9.+eE]+)} $color1 full gr1 -regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1 -set rd_int [expr int($rd1 * 1.e+05)] -set gr_int [expr int($gr1 * 1.e+05)] -set bl_int [expr int($bl1 * 1.e+05)] +checkcolor $x_coord $y_coord 1 0.75 0.15 -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Shading is missing in 3D Viewer" } @@ -48,13 +32,11 @@ if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { vsetmaterial result COPPER QAUpdateLights -set color2 [QAGetPixelColor 175 195] -regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2 -regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2 -regexp {BLUE +: +([-0-9.+eE]+)} $color2 full bl2 -if { ${rd2} == ${rd1} || ${gr2} == ${gr1} || ${bl2} == ${bl1} } { - puts "Error : material of shape was NOT changed" +checkcolor $x_coord $y_coord 0.77 0.32 0.23 + +if { $stat != 1 } { + puts "Error : material of shape is not COPPER" } set only_screen 1 diff --git a/tests/bugs/vis/bug185 b/tests/bugs/vis/bug185 index 00f1c5217f..1d72e5ca70 100755 --- a/tests/bugs/vis/bug185 +++ b/tests/bugs/vis/bug185 @@ -13,46 +13,27 @@ vinit vdisplay result vfit -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set rd_ch 77647 - set gr_ch 54901 - set bl_ch 9019 -} else { - set rd_ch 78039 - set gr_ch 55294 - set bl_ch 9411 -} +set x_coord 235 +set y_coord 214 vsetdispmode result 1 QAUpdateLights -set color [QAGetPixelColor 235 214] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] +checkcolor $x_coord $y_coord 0.78 0.55 0.9 -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Shading is OFF, but should be ON" } vsetdispmode result 0 QAUpdateLights -set color0 [QAGetPixelColor 235 214] -regexp {RED +: +([-0-9.+eE]+)} $color0 full rd0 -regexp {GREEN +: +([-0-9.+eE]+)} $color0 full gr0 -regexp {BLUE +: +([-0-9.+eE]+)} $color0 full bl0 -if { ${rd0} != 0 || ${gr0} != 1 || ${bl0} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 0 1 0 + +if { $stat != 1 } { puts "Error : Shading is ON, but should be OFF" } set only_screen 1 + diff --git a/tests/bugs/vis/bug193 b/tests/bugs/vis/bug193 index 394452c04b..080dbb338f 100755 --- a/tests/bugs/vis/bug193 +++ b/tests/bugs/vis/bug193 @@ -1,4 +1,3 @@ - puts "========" puts "OCC193" puts "========" @@ -14,37 +13,21 @@ v2dgrid Circ 500 500 250 12 30 Lines set Position_X -667.802 set Position_Y -441.402 -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set rd_ch 49411 - set gr_ch 49411 - set bl_ch 49411 -} else { - set rd_ch 49803 - set gr_ch 49803 - set bl_ch 49803 -} +set x_coord 67 +set y_coord 295 +set color2d 1 -set color [QAAISGetPixelColor2d 67 295] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +checkcolor $x_coord $y_coord 0.49 0.49 0.49 -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] - -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Objects was not displayed" } -v2dpickgrid 67 295 x_coord y_coord +v2dpickgrid 67 295 x_ch y_ch -if { ${x_coord} != ${Position_X} || ${y_coord} != ${Position_Y} } { +if { ${x_ch} != ${Position_X} || ${y_ch} != ${Position_Y} } { puts "Error : Function v2dpickgrid works wrongly" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug194_1 b/tests/bugs/vis/bug194_1 index 2dd6a5f7f8..505afeb81f 100755 --- a/tests/bugs/vis/bug194_1 +++ b/tests/bugs/vis/bug194_1 @@ -12,33 +12,13 @@ puts "" v2dinit v2dgrid Rect 500 500 200 200 45 Lines -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set x1 25 - set y1 360 - set rd_ch 49411 - set gr_ch 49411 - set bl_ch 49411 -} else { - set x1 25 - set y1 361 - set rd_ch 49803 - set gr_ch 49803 - set bl_ch 49803 -} -set color [QAAISGetPixelColor2d ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 25 +set y_coord 361 +set color2d 1 -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] +checkcolor $x_coord $y_coord 0.49 0.49 0.49 -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : 2D Rectangular ROTATED Grid WITH Lines was NOT CREATED properly" } diff --git a/tests/bugs/vis/bug194_2 b/tests/bugs/vis/bug194_2 index 49159635e7..e5b0bd6ad6 100755 --- a/tests/bugs/vis/bug194_2 +++ b/tests/bugs/vis/bug194_2 @@ -10,38 +10,16 @@ puts "" v2dinit v2dgrid Rect 500 500 200 200 45 Points -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set x1 20 - set y1 20 - set rd_ch 100000 - set gr_ch 100000 - set bl_ch 100000 -## set rd_ch 49411 -## set gr_ch 49411 -## set bl_ch 49411 -} else { - set x1 20 - set y1 21 - set rd_ch 70196 - set gr_ch 70196 - set bl_ch 70196 -} -set color [QAAISGetPixelColor2d ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 20 +set y_coord 21 +set color2d 1 -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] +checkcolor $x_coord $y_coord 0.7 0.7 0.7 -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : 2D Rectangular ROTATED Grid WITHOUT Lines was NOT CREATED properly" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug195 b/tests/bugs/vis/bug195 index eae1b71ac7..a7327c101f 100755 --- a/tests/bugs/vis/bug195 +++ b/tests/bugs/vis/bug195 @@ -25,13 +25,13 @@ repeat 5 { incr i } -set color [QAAISGetPixelColor2d 190 105] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 190 +set y_coord 105 +set color2d 1 -if { ${rd} != 1 || ${gr} != 1 || ${bl} != 1 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 1 1 1 + +if { $stat != 1 } { puts "Error : Scaling of text font number 23 was NOT MADE properly" } diff --git a/tests/bugs/vis/bug196 b/tests/bugs/vis/bug196 index 3cbbc0a452..6f24dc952f 100755 --- a/tests/bugs/vis/bug196 +++ b/tests/bugs/vis/bug196 @@ -1,4 +1,3 @@ - puts "========" puts "OCC196" puts "========" @@ -25,25 +24,15 @@ repeat 10 { incr j } -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set x1 336 - set y1 348 -} else { - set x1 336 - set y1 347 -} +set x_coord 336 +set y_coord 347 +set color2d 1 -set color [QAAISGetPixelColor2d ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +checkcolor $x_coord $y_coord 1 1 1 -if { ${rd} != 1 || ${gr} != 1 || ${bl} != 1 } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Rotation of text font number 23 was NOT MADE properly" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug197_1 b/tests/bugs/vis/bug197_1 index 1e9ae21cc1..0f9e74092c 100755 --- a/tests/bugs/vis/bug197_1 +++ b/tests/bugs/vis/bug197_1 @@ -15,54 +15,31 @@ v2dinit box b_b 10 15 20 v2ddisplay b_b 0 0 0 1 1 1 1 0 0 v2dfit +set color2d 1 QAv2dSetHighlightMode 1 -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set Position_X1 184 - set Position_Y1 181 - set Position_X2 184 - set Position_Y2 181 -} else { - set Position_X1 169 - set Position_Y1 148 - set Position_X2 184 - set Position_Y2 180 -} - -set rd_ch 80000 -set gr_ch 80000 -set bl_ch 80000 QASelect2d 169 148 QAMoveTo2d 0 0 QAShiftSelect2d 184 180 -set j 1 -repeat 2 { - set Position_X [set Position_X$j] - set Position_Y [set Position_Y$j] - puts " Position_X$j= $Position_X Position_Y$j= $Position_Y" - - set color [QAAISGetPixelColor2d ${Position_X} ${Position_Y} ] - regexp {RED +: +([-0-9.+eE]+)} $color full rd - regexp {GREEN +: +([-0-9.+eE]+)} $color full gr - regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 169 +set y_coord 148 - set rd_int [expr int($rd * 1.e+05)] - set gr_int [expr int($gr * 1.e+05)] - set bl_int [expr int($bl * 1.e+05)] +checkcolor $x_coord $y_coord 0.8 0.8 0.8 +if { ${stat} != 1 } { + puts "Error : (PRIMITIVE number 1) Multiple Selection: Choosing of viewer MOD for selection of PRIMITIVE was NOT MADE properly" +} - if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" - puts "Error : (PRIMITIVE number $j) Multiple Selection: Choosing of viewer MOD for selection of PRIMITIVE was NOT MADE properly" - } - - incr j +set x_coord 184 +set y_coord 180 + +checkcolor $x_coord $y_coord 0.8 0.8 0.8 +if { ${stat} != 1 } { + puts "Error : (PRIMITIVE number 2) Multiple Selection: Choosing of viewer MOD for selection of PRIMITIVE was NOT MADE properly" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug197_2 b/tests/bugs/vis/bug197_2 index 9085d79013..7234b57560 100755 --- a/tests/bugs/vis/bug197_2 +++ b/tests/bugs/vis/bug197_2 @@ -15,49 +15,28 @@ box b_b 10 15 20 v2ddisplay b_b 0 0 0 1 1 1 1 0 0 v2dfit QAv2dSetHighlightMode 2 +set color2d 1 -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set Position_X1 296 - set Position_Y1 161 - set Position_X2 76 - set Position_Y2 290 -} else { - set Position_X1 296 - set Position_Y1 160 - set Position_X2 76 - set Position_Y2 290 -} - -set rd_ch 80000 -set gr_ch 80000 -set bl_ch 80000 - -QASelect2d $Position_X1 $Position_Y1 +QASelect2d 296 160 QAMoveTo2d 0 0 -QAShiftSelect2d $Position_X2 $Position_Y2 -set j 1 -repeat 2 { - set Position_X [set Position_X$j] - set Position_Y [set Position_Y$j] - puts " Position_X$j= $Position_X Position_Y$j= $Position_Y" +QAShiftSelect2d 76 290 - set color [QAAISGetPixelColor2d ${Position_X} ${Position_Y}] - regexp {RED +: +([-0-9.+eE]+)} $color full rd - regexp {GREEN +: +([-0-9.+eE]+)} $color full gr - regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 296 +set y_coord 161 - set rd_int [expr int($rd * 1.e+05)] - set gr_int [expr int($gr * 1.e+05)] - set bl_int [expr int($bl * 1.e+05)] +checkcolor $x_coord $y_coord 0.8 0.8 0.8 - if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" - puts "Error : (ELEMENT number $j) Multiple Selection: Choosing of viewer MOD for selection of ELEMENT was NOT MADE properly" - } - incr j +if { ${stat} != 1 } { + puts "Error : (ELEMENT number 1) Multiple Selection: Choosing of viewer MOD for selection of ELEMENT was NOT MADE properly" +} + +set x_coord 76 +set y_coord 290 + +checkcolor $x_coord $y_coord 0.8 0.8 0.8 + +if { ${stat} != 1 } { + puts "Error : (ELEMENT number 2) Multiple Selection: Choosing of viewer MOD for selection of ELEMENT was NOT MADE properly" } set only_screen2d 1 diff --git a/tests/bugs/vis/bug204_1 b/tests/bugs/vis/bug204_1 index 1ee8bf783f..8e4686850c 100755 --- a/tests/bugs/vis/bug204_1 +++ b/tests/bugs/vis/bug204_1 @@ -1,6 +1,5 @@ -puts "TODO OCC12345 ALL: Error : colors are not equal" puts "TODO OCC12345 ALL: Error : 3 boxes missing in the viewer!" - +puts "TODO OCC12345 ALL: Error : Colors are not equal in default coordinate and in the near coordinates too" puts "========" puts "OCC204" puts "========" @@ -9,21 +8,12 @@ vinit OCC204 0 vfit -set rd_ch 80000 -set gr_ch 80000 -set bl_ch 80000 +set x_coord 150 +set y_coord 200 -set color [QAGetPixelColor 150 200] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +checkcolor $x_coord $y_coord 0.8 0.8 0.8 -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] - -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { ${stat} != 1 } { puts "Error : 3 boxes missing in the viewer!" } diff --git a/tests/bugs/vis/bug204_2 b/tests/bugs/vis/bug204_2 index e278b957a5..b7ed4d8956 100755 --- a/tests/bugs/vis/bug204_2 +++ b/tests/bugs/vis/bug204_2 @@ -6,22 +6,14 @@ vinit OCC204 1 vfit -set rd_ch 80000 -set gr_ch 80000 -set bl_ch 80000 +set x_coord 150 +set y_coord 200 -set color [QAGetPixelColor 150 200] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +checkcolor $x_coord $y_coord 0 0 0 -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] - -if { ${rd_int} == ${rd_ch} || ${gr_int} == ${gr_ch} || ${bl_int} == ${bl_ch} } { - puts "Error : colors are not equal" - puts "Error : There are 3 boxes in the viewer!" +if { ${stat} != 1 } { + puts "Error : There are 3 boxes in the viewer! (should be nothing)" } set only_screen 1 + diff --git a/tests/bugs/vis/bug215 b/tests/bugs/vis/bug215 index 3997b81eef..04bec5bb56 100755 --- a/tests/bugs/vis/bug215 +++ b/tests/bugs/vis/bug215 @@ -1,4 +1,3 @@ - puts "========" puts "OCC215" puts "========" @@ -26,5 +25,10 @@ set at_Z -12.5332689285278 QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} -QAGetPixelColor 229 94 1 1 0 +set x_coord 229 +set y_coord 94 + +checkcolor $x_coord $y_coord 1 1 0 + set only_screen 1 + diff --git a/tests/bugs/vis/bug218 b/tests/bugs/vis/bug218 index 8e8ad5e195..fd56661c97 100755 --- a/tests/bugs/vis/bug218 +++ b/tests/bugs/vis/bug218 @@ -1,7 +1,3 @@ -if { [array get env os_type] != "" } { - set os $env(os_type) -} - puts "================" puts "OCC218" puts "================" @@ -26,51 +22,25 @@ set at_X 1.04834496974945 set at_Y 0.741619229316711 set at_Z -0.0881031528115273 -if { [string compare $os "windows"] == 0 } { - set rd_ch 90588 - set gr_ch 90588 - set bl_ch 0 - - set BLACK_R 0 - set BLACK_G 0 - set BLACK_B 0 - - set x1 376 - set y1 24 -} else { - set rd_ch 65098 - set gr_ch 65098 - set bl_ch 0 - - set BLACK_R 0 - set BLACK_G 0 - set BLACK_B 0 - - set x1 388 - set y1 28 -} +set x_coord 388 +set y_coord 28 QASetViewCharac ${scale} ${center_X} ${center_Y} ${proj_X} ${proj_Y} ${proj_Z} ${up_X} ${up_Y} ${up_Z} ${at_X} ${at_Y} ${at_Z} OCC218 trihedron1 b_1 X Y QAUpdateLights -QAGetPixelColor ${x1} ${y1} ${BLACK_R} ${BLACK_G} ${BLACK_B} + +checkcolor $x_coord $y_coord 0 0 0 OCC218 trihedron1 b_1 my___axis___1 my___axis2 QAUpdateLights -set color [QAGetPixelColor ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] +checkcolor $x_coord $y_coord 0.85 0.85 0 -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "There is no messages near axes" } set only_screen 1 + diff --git a/tests/bugs/vis/bug224 b/tests/bugs/vis/bug224 index 02d26499f7..9a0f0df22b 100755 --- a/tests/bugs/vis/bug224 +++ b/tests/bugs/vis/bug224 @@ -14,31 +14,25 @@ set mistake1 0 v2ddisplay s_p 0 0 0 1 1 1 1 0 0 v2dfit v2dsetwidth s_p VERYTHICK -set Color_R 1 -set Color_G 1 -set Color_B 0 -set color [QAAISGetPixelColor2d 393 210] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 393 +set y_coord 210 +set color2d 1 -if { ${rd} != 1 || ${gr} != 1 || ${bl} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 1 1 0 + +if { $stat != 1 } { puts "Error : New widht was NOT assigned" } v2dunsetwidth s_p -set color [QAAISGetPixelColor2d 393 210] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +checkcolor $x_coord $y_coord 0 0 0 -if { ${rd} != 0 || ${gr} != 0 || ${bl} != 0 } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Function V2DUNSETWIDTH for shapes does NOT WORK properly" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug225 b/tests/bugs/vis/bug225 index 826a1f7d67..34cac283db 100755 --- a/tests/bugs/vis/bug225 +++ b/tests/bugs/vis/bug225 @@ -1,4 +1,3 @@ - puts "========================" puts " OCC225 " puts "========================" @@ -17,14 +16,15 @@ v2dsetcolor b_b BLUE3 wait 5 v2dunsetcolor b_b -set color [QAAISGetPixelColor2d 22 230] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 22 +set y_coord 230 +set color2d 1 -if { ${rd} != 1 || ${gr} != 1 || ${bl} != 0 } { - puts "Error : colors are not equal" +checkcolor $x_coord $y_coord 1 1 0 + +if { $stat != 1 } { puts "Error : function V2DUNSETCOLOR for BOX 2D does NOT WORK properly" } set only_screen2d 1 + diff --git a/tests/bugs/vis/bug23120 b/tests/bugs/vis/bug23120 index 146aac4990..fc93feb60a 100755 --- a/tests/bugs/vis/bug23120 +++ b/tests/bugs/vis/bug23120 @@ -23,48 +23,14 @@ vsetdispmode 1 vzoom 0.5 vpan 100 0 -set x1 300 -set y1 130 -if { [string compare $tcl_platform(os) "Windows NT"] == 0 } { - puts "STATION IS WNT" - set r_check 0.77646999999999999 - set g_check 0.54901900000000003 - set b_check 0.090195999999999998 -} else { - set r_check 0.78039199999999997 - set g_check 0.55294100000000002 - set b_check 0.094117000000000006 -} +set x_coord 300 +set y_coord 130 -set r_check [expr int($r_check * 1.e5)] -set g_check [expr int($g_check * 1.e5)] -set b_check [expr int($b_check * 1.e5)] +checkcolor $x_coord $y_coord 0.78 0.55 0.9 -puts "r_check=$r_check" -puts "g_check=$g_check" -puts "b_check=$b_check" - -set color1 [ QAGetPixelColor ${x1} ${y1} ] - -regexp {RED +: +([-0-9.+eE]+)} $color1 full rd1 -regexp {GREEN +: +([-0-9.+eE]+)} $color1 full gr1 -regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1 - -set rd1 [expr int($rd1 * 1.e5)] -set gr1 [expr int($gr1 * 1.e5)] -set bl1 [expr int($bl1 * 1.e5)] - -puts "rd1=$rd1" -puts "gr1=$gr1" -puts "bl1=$bl1" - -set status1 0 -if { $rd1 != $r_check || $gr1 != $g_check || $bl1 != $b_check } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Transform persistence is not restored" -} else { - puts "OK : colors are equal" - puts "OK : Transform persistence is restored" } set only_screen 1 + diff --git a/tests/bugs/vis/bug23407_1 b/tests/bugs/vis/bug23407_1 old mode 100644 new mode 100755 index 25e0d47897..c5e7329132 --- a/tests/bugs/vis/bug23407_1 +++ b/tests/bugs/vis/bug23407_1 @@ -8,16 +8,6 @@ puts "" pload QAcommands pload XDEDRAW -set r_check 1 -set g_check 0 -set b_check 0 -set x1 178 -set y1 36 -set x2 224 -set y2 39 -set x3 244 -set y3 89 - XNewDoc Doc1 ReadStep Doc1 [locate_data_file screw.step] XShow Doc1 0:1:1:1 @@ -25,37 +15,24 @@ XShowFaceBoundary Doc1 0:1:1:1 1 255 0 0 10 1 vfit vsetdispmode 1 -set color1 [ QAGetPixelColor ${x1} ${y1} ] -regexp {RED +: +([-0-9.+eE]+)} $color1 full rd1 -regexp {GREEN +: +([-0-9.+eE]+)} $color1 full gr1 -regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1 -set status1 0 -if { $rd1 != $r_check || $gr1 != $g_check || $bl1 != $b_check } { - set status1 1 +set x_coord 178 +set y_coord 36 + +checkcolor $x_coord $y_coord 1 0 0 + +if { $stat != 1 } { + puts "Error : Boundary of face is not changed" } -set color2 [ QAGetPixelColor ${x2} ${y2} ] -regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2 -regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2 -regexp {BLUE +: +([-0-9.+eE]+)} $color2 full bl2 -set status2 0 -if { $rd2 != $r_check || $gr2 != $g_check || $bl2 != $b_check } { - set status2 1 -} +set x_coord 244 +set y_coord 89 -set color3 [ QAGetPixelColor ${x3} ${y3} ] -regexp {RED +: +([-0-9.+eE]+)} $color3 full rd3 -regexp {GREEN +: +([-0-9.+eE]+)} $color3 full gr3 -regexp {BLUE +: +([-0-9.+eE]+)} $color3 full bl3 -set status3 0 -if { $rd3 != $r_check || $gr3 != $g_check || $bl3 != $b_check } { - set status3 1 -} +checkcolor $x_coord $y_coord 1 0 0 -if { $status1 != 0 && $status2 != 0 && $status3 != 0 } { - puts "Error : color are not equal" - puts "Error : Boundary of face is not changed" +if { $stat != 01} { + puts "Error : Boundary of face is not changed" } set only_screen 1 + diff --git a/tests/bugs/vis/bug23407_2 b/tests/bugs/vis/bug23407_2 old mode 100644 new mode 100755 index c0469639a1..471a138b8a --- a/tests/bugs/vis/bug23407_2 +++ b/tests/bugs/vis/bug23407_2 @@ -8,16 +8,6 @@ puts "" pload QAcommands pload AISV MODELING -set r_check 1 -set g_check 0 -set b_check 0 -set x1 183 -set y1 190 -set x2 292 -set y2 358 -set x3 26 -set y3 265 - box b 10 10 10 vinit vdisplay b @@ -25,35 +15,30 @@ vsetdispmode 1 vshowfaceboundary b 1 255 0 0 10 1 vfit -set color1 [ QAGetPixelColor ${x1} ${y1} ] -regexp {RED +: +([-0-9.+eE]+)} $color1 full rd1 -regexp {GREEN +: +([-0-9.+eE]+)} $color1 full gr1 -regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1 -set status1 0 -if { $rd1 != $r_check || $gr1 != $g_check || $bl1 != $b_check } { - set status1 1 +set x_coord 183 +set y_coord 190 + +checkcolor $x_coord $y_coord 1 0 0 + +if { $stat != 1 } { + puts "Error : Boundary of face is not changed" } -set color2 [ QAGetPixelColor ${x2} ${y2} ] -regexp {RED +: +([-0-9.+eE]+)} $color2 full rd2 -regexp {GREEN +: +([-0-9.+eE]+)} $color2 full gr2 -regexp {BLUE +: +([-0-9.+eE]+)} $color2 full bl2 -set status2 0 -if { $rd2 != $r_check || $gr2 != $g_check || $bl2 != $b_check } { - set status2 1 +set x_coord 292 +set y_coord 358 + +checkcolor $x_coord $y_coord 1 0 0 + +if { $stat != 1 } { + puts "Error : Boundary of face is not changed" } -set color3 [ QAGetPixelColor ${x3} ${y3} ] -regexp {RED +: +([-0-9.+eE]+)} $color3 full rd3 -regexp {GREEN +: +([-0-9.+eE]+)} $color3 full gr3 -regexp {BLUE +: +([-0-9.+eE]+)} $color3 full bl3 -set status3 0 -if { $rd3 != $r_check || $gr3 != $g_check || $bl3 != $b_check } { - set status3 1 -} +set x_coord 26 +set y_coord 265 -if { $status1 != 0 && $status2 != 0 && $status3 != 0 } { - puts "Error : color are not equal" +checkcolor $x_coord $y_coord 1 0 0 + +if { $stat != 1 } { puts "Error : Boundary of face is not changed" } diff --git a/tests/bugs/vis/bug23425 b/tests/bugs/vis/bug23425 old mode 100644 new mode 100755 diff --git a/tests/bugs/vis/bug280_2 b/tests/bugs/vis/bug280_2 index 4e1ba327df..e516ded0ee 100755 --- a/tests/bugs/vis/bug280_2 +++ b/tests/bugs/vis/bug280_2 @@ -11,31 +11,25 @@ vfit OCC280 0 0 # selected point -set x1 218 -set y1 196 - -set Cyan_R 0 -set Cyan_G 1 -set Cyan_B 1 - -set Yellow_R 1 -set Yellow_G 1 -set Yellow_B 0 +set x_coord 218 +set y_coord 196 # There is not selection puts "There is not selection" -QAGetPixelColor $x1 $y1 $Yellow_R $Yellow_G $Yellow_B + +checkcolor $x_coord $y_coord 1 1 0 # Move a mouse puts "Move a mouse" -QAMoveTo $x1 $y1 -QAMoveTo $x1 $y1 +QAMoveTo $x_coord $y_coord +QAMoveTo $x_coord $y_coord QAUpdateLights # There is a selection puts "There is a selection" -QAGetPixelColor $x1 $y1 $Cyan_R $Cyan_G $Cyan_B + +checkcolor $x_coord $y_coord 0 1 1 set only_screen 1 diff --git a/tests/bugs/vis/bug280_3 b/tests/bugs/vis/bug280_3 index 98fa0c1e9b..390a184614 100755 --- a/tests/bugs/vis/bug280_3 +++ b/tests/bugs/vis/bug280_3 @@ -10,45 +10,22 @@ vsetdispmode b 1 OCC280 0 1 -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set rd_ch 77647 - set gr_ch 54901 - set bl_ch 9019 -} else { - set rd_ch 78039 - set gr_ch 55294 - set bl_ch 9411 -} +set x_coord 10 +set y_coord 240 puts "Before View->FitAll()" QAUpdateLights -set color0 [QAGetPixelColor 10 240] -regexp {RED +: +([-0-9.+eE]+)} $color0 full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color0 full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color0 full bl -if { ${rd} != 0 || ${gr} != 0 || ${bl} != 0 } { - puts "Error : colors are not equal" -} +checkcolor $x_coord $y_coord 0 0 0 vfit puts "After View->FitAll()" QAUpdateLights -set color1 [QAGetPixelColor 10 240] -regexp {RED +: +([-0-9.+eE]+)} $color1 full rd1 -regexp {GREEN +: +([-0-9.+eE]+)} $color1 full gr1 -regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1 -set rd_int [expr int($rd1 * 1.e+05)] -set gr_int [expr int($gr1 * 1.e+05)] -set bl_int [expr int($bl1 * 1.e+05)] +checkcolor $x_coord $y_coord 0.78 0.55 0.9 -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" +if { $stat != 1 } { puts "Error : Function vfit works wrongly" } diff --git a/tests/bugs/vis/bug288_1 b/tests/bugs/vis/bug288_1 index 266cfe21cb..4c2029ab52 100755 --- a/tests/bugs/vis/bug288_1 +++ b/tests/bugs/vis/bug288_1 @@ -1,4 +1,3 @@ - puts "========================" puts " OCC288 " puts "(case 1)" diff --git a/tests/bugs/vis/bug288_2 b/tests/bugs/vis/bug288_2 index 42d3f15d2e..8657c2c1c2 100755 --- a/tests/bugs/vis/bug288_2 +++ b/tests/bugs/vis/bug288_2 @@ -1,4 +1,3 @@ - puts "========================" puts " OCC288 " puts "(case 2)" diff --git a/tests/bugs/vis/bug344 b/tests/bugs/vis/bug344 index b44e8cac56..d895859c69 100755 --- a/tests/bugs/vis/bug344 +++ b/tests/bugs/vis/bug344 @@ -30,6 +30,7 @@ if { $tri == 9 && $nod == 8 } { puts "Shading of OCC344 looks like OK, but visual checking is required" } -set only_screen 1 +set 3dviewer 1 + diff --git a/tests/bugs/vis/bug64 b/tests/bugs/vis/bug64 index 575f6673be..88d62fff36 100755 --- a/tests/bugs/vis/bug64 +++ b/tests/bugs/vis/bug64 @@ -4,20 +4,8 @@ puts "OCC64" puts "================" puts "" -set rd_ch 0 -set gr_ch 1 -set bl_ch 1 - -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set x1 204 - set y1 204 -} else { - set x1 205 - set y1 205 -} +set x_coord 205 +set y_coord 205 vinit vtrihedron tri @@ -26,13 +14,6 @@ vtri_orig tri QAMoveTo 205 205 QAUpdateLights -set color [QAGetPixelColor ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color full rd_int -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr_int -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl_int - -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" -} +checkcolor $x_coord $y_coord 0 1 1 set only_screen 1 diff --git a/tests/bugs/vis/bug85_1 b/tests/bugs/vis/bug85_1 index 2e808e54aa..ae8e489e80 100755 --- a/tests/bugs/vis/bug85_1 +++ b/tests/bugs/vis/bug85_1 @@ -43,37 +43,14 @@ SetShape D 0:1:4 b AISSet D 0:1:4 NS AISDisplay D 0:1:4 -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set x1 260 - set y1 170 - set rd_ch 77647 - set gr_ch 54901 - set bl_ch 9019 -} else { - set x1 255 - set y1 105 - set rd_ch 78039 - set gr_ch 55294 - set bl_ch 9411 -} +set x_coord 273 +set y_coord 115 QAUpdateLights -set color [QAGetPixelColor ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl -set rd_int [expr int($rd * 1.e+05)] -set gr_int [expr int($gr * 1.e+05)] -set bl_int [expr int($bl * 1.e+05)] - -if { ${rd_int} != ${rd_ch} || ${gr_int} != ${gr_ch} || ${bl_int} != ${bl_ch} } { - puts "Error : colors are not equal" -} +checkcolor $x_coord $y_coord 0.78 0.55 0.9 set only_screen 1 + diff --git a/tests/bugs/vis/bug85_2 b/tests/bugs/vis/bug85_2 index e353bd6d89..ce2dff3d6d 100755 --- a/tests/bugs/vis/bug85_2 +++ b/tests/bugs/vis/bug85_2 @@ -42,37 +42,13 @@ AISSet D 0:1:4 NS AISDisplay D 0:1:4 vfit -if { [array get env os_type] != "" } { - set os $env(os_type) -} -if { [string compare $os "windows"] == 0 } { - set x1 231 - set y1 170 - set rd_ch1 76078 - set gr_ch1 53725 - set bl_ch1 8627 -} else { - set x1 263 - set y1 140 - set rd_ch1 76862 - set gr_ch1 54117 - set bl_ch1 9019 -} +set x_coord 230 +set y_coord 160 -set color1 [QAGetPixelColor ${x1} ${y1}] -regexp {RED +: +([-0-9.+eE]+)} $color1 full rd1 -regexp {GREEN +: +([-0-9.+eE]+)} $color1 full gr1 -regexp {BLUE +: +([-0-9.+eE]+)} $color1 full bl1 - -set rd_int1 [expr int($rd1 * 1.e+05)] -set gr_int1 [expr int($gr1 * 1.e+05)] -set bl_int1 [expr int($bl1 * 1.e+05)] - -if { ${rd_int1} != ${rd_ch1} || ${gr_int1} != ${gr_ch1} || ${bl_int1} != ${bl_ch1} } { - puts "Error : colors are not equal" -} +checkcolor $x_coord $y_coord 0.76 0.54 0.9 set only_screen 1 + diff --git a/tests/bugs/vis/bug19619 b/tests/bugs/vis/pro19619 similarity index 100% rename from tests/bugs/vis/bug19619 rename to tests/bugs/vis/pro19619 diff --git a/tests/bugs/xde/bug23193 b/tests/bugs/xde/bug23193 index 777be09178..70c26b67b1 100755 --- a/tests/bugs/xde/bug23193 +++ b/tests/bugs/xde/bug23193 @@ -7,9 +7,6 @@ puts "" ########################################################################### pload QAcommands -if {[array get env os_type] != ""} { - set os $env(os_type) -} set aFile $imagedir/bug23193_sample.stl @@ -22,16 +19,13 @@ meshcolors m1 elem2 1 QARotateV3dView 4 0 0 1 vfit -set color [QAGetPixelColor 189 236] -regexp {RED +: +([-0-9.+eE]+)} $color full rd -regexp {GREEN +: +([-0-9.+eE]+)} $color full gr -regexp {BLUE +: +([-0-9.+eE]+)} $color full bl +set x_coord 189 +set y_coord 236 -set a [expr $bl*10] -set bl_1 [expr round($a)] +checkcolor $x_coord $y_coord 0 0 0.7 -if { $rd != 0 || $gr != 0 || $bl_1 != 7 } { - puts "Error : Color are not equal. There is missing triangle" +if { ${stat} != 1 } { + puts "Error : There is missing triangle" } set only_screen 1