]> OCCT Git - occt-copy.git/commitdiff
0027691: Remove dchrono from all test cases and move its to perf group
authorski <ski@opencascade.com>
Thu, 19 Jan 2017 13:31:17 +0000 (16:31 +0300)
committerapn <apn@opencascade.com>
Thu, 19 Jan 2017 14:24:46 +0000 (17:24 +0300)
Remove performance comparing with hardcoded value.
Test cases for performance of some commands were moved to perf group.

Updated documentation.

230 files changed:
dox/dev_guides/tests/tests.md
dox/user_guides/draw_test_harness/draw_test_harness.md
src/Draw/Draw_BasicCommands.cxx
src/DrawResources/TestCommands.tcl
src/OSD/OSD_Chronometer.cxx
src/OSD/OSD_Chronometer.hxx
src/OSD/OSD_Timer.cxx
src/OSD/OSD_Timer.hxx
tests/boolean/bfuse_complex/Q3 [deleted file]
tests/boolean/bsection/R6 [deleted file]
tests/bugs/caf/bug1454 [deleted file]
tests/bugs/caf/bug1454_std [deleted file]
tests/bugs/caf/bug1726 [deleted file]
tests/bugs/caf/bug1726_std [deleted file]
tests/bugs/caf/bug2793 [deleted file]
tests/bugs/caf/bug5023 [deleted file]
tests/bugs/caf/bug5023_std [deleted file]
tests/bugs/fclasses/bug25514 [deleted file]
tests/bugs/fclasses/bug26184_1 [deleted file]
tests/bugs/fclasses/bug26184_2 [deleted file]
tests/bugs/fclasses/bug27131 [deleted file]
tests/bugs/fclasses/bug27371 [deleted file]
tests/bugs/heal/bug24596_1 [deleted file]
tests/bugs/heal/bug24596_2 [deleted file]
tests/bugs/heal/bug25424 [deleted file]
tests/bugs/heal/bug26871 [deleted file]
tests/bugs/mesh/bug23650 [deleted file]
tests/bugs/mesh/bug24022 [deleted file]
tests/bugs/mesh/bug24968_1 [deleted file]
tests/bugs/mesh/bug24968_2 [deleted file]
tests/bugs/mesh/bug25264 [deleted file]
tests/bugs/mesh/bug27119 [deleted file]
tests/bugs/mesh/bug27626 [deleted file]
tests/bugs/modalg_1/bug10160_1 [deleted file]
tests/bugs/modalg_1/bug10160_10 [deleted file]
tests/bugs/modalg_1/bug10160_11 [deleted file]
tests/bugs/modalg_1/bug10160_12 [deleted file]
tests/bugs/modalg_1/bug10160_2 [deleted file]
tests/bugs/modalg_1/bug10160_3 [deleted file]
tests/bugs/modalg_1/bug10160_4 [deleted file]
tests/bugs/modalg_1/bug10160_5 [deleted file]
tests/bugs/modalg_1/bug10160_6 [deleted file]
tests/bugs/modalg_1/bug10160_7 [deleted file]
tests/bugs/modalg_1/bug10160_8 [deleted file]
tests/bugs/modalg_1/bug10160_9 [deleted file]
tests/bugs/modalg_1/bug165_4 [deleted file]
tests/bugs/modalg_1/bug165_5 [deleted file]
tests/bugs/modalg_1/bug165_6 [deleted file]
tests/bugs/modalg_1/bug165_7 [deleted file]
tests/bugs/modalg_1/bug19793_2 [deleted file]
tests/bugs/modalg_2/bug452_1 [deleted file]
tests/bugs/modalg_2/bug452_2 [deleted file]
tests/bugs/modalg_2/bug452_3 [deleted file]
tests/bugs/modalg_2/bug452_4 [deleted file]
tests/bugs/modalg_2/bug453_1 [deleted file]
tests/bugs/modalg_2/bug453_2 [deleted file]
tests/bugs/modalg_2/bug5157_1 [deleted file]
tests/bugs/modalg_2/bug5157_2 [deleted file]
tests/bugs/modalg_4/bug83_1 [deleted file]
tests/bugs/modalg_4/bug83_2 [deleted file]
tests/bugs/modalg_5/bug23906 [deleted file]
tests/bugs/modalg_5/bug24005 [deleted file]
tests/bugs/modalg_5/bug24696 [deleted file]
tests/bugs/modalg_5/bug24751_1 [deleted file]
tests/bugs/modalg_5/bug24751_2 [deleted file]
tests/bugs/modalg_5/bug24751_3 [deleted file]
tests/bugs/modalg_5/bug24751_4 [deleted file]
tests/bugs/modalg_5/bug24751_5 [deleted file]
tests/bugs/modalg_5/bug24899 [deleted file]
tests/bugs/modalg_5/bug25019 [deleted file]
tests/bugs/modalg_5/bug25058 [deleted file]
tests/bugs/modalg_5/bug25413 [deleted file]
tests/bugs/modalg_5/bug25742_1 [deleted file]
tests/bugs/modalg_5/bug25742_2 [deleted file]
tests/bugs/modalg_5/bug25788 [deleted file]
tests/bugs/modalg_6/bug26310_1 [deleted file]
tests/bugs/modalg_6/bug26327 [deleted file]
tests/bugs/modalg_6/bug26443_1 [deleted file]
tests/bugs/modalg_6/bug26443_2 [deleted file]
tests/bugs/modalg_6/bug26447 [deleted file]
tests/bugs/modalg_6/bug26513 [deleted file]
tests/bugs/modalg_6/bug26674 [deleted file]
tests/bugs/modalg_6/bug26914 [deleted file]
tests/bugs/modalg_6/bug26929 [deleted file]
tests/bugs/modalg_6/bug26980 [deleted file]
tests/bugs/modalg_6/bug27085_1 [deleted file]
tests/bugs/modalg_6/bug27085_2 [deleted file]
tests/bugs/modalg_6/bug27569 [deleted file]
tests/bugs/modalg_6/bug28030 [deleted file]
tests/bugs/moddata_1/bug21292 [deleted file]
tests/bugs/moddata_1/bug21858 [deleted file]
tests/bugs/moddata_2/bug276 [deleted file]
tests/bugs/moddata_2/bug36 [deleted file]
tests/bugs/moddata_2/bug368 [deleted file]
tests/bugs/moddata_2/bug453_3 [deleted file]
tests/bugs/moddata_3/bug25487_1 [deleted file]
tests/bugs/moddata_3/bug25487_2 [deleted file]
tests/bugs/moddata_3/bug26339 [deleted file]
tests/bugs/moddata_3/bug26884 [deleted file]
tests/bugs/moddata_3/bug27048_1 [deleted file]
tests/bugs/moddata_3/bug27048_2 [deleted file]
tests/bugs/moddata_3/bug623 [deleted file]
tests/bugs/step/bug24024 [deleted file]
tests/bugs/step/bug27570 [deleted file]
tests/bugs/vis/bug24623_1 [deleted file]
tests/bugs/vis/bug24623_2 [deleted file]
tests/perf/bop/bfuse_complex_Q3 [new file with mode: 0644]
tests/perf/bop/boxholes
tests/perf/bop/bsection_R6 [new file with mode: 0644]
tests/perf/bop/end [new file with mode: 0644]
tests/perf/caf/begin [new file with mode: 0644]
tests/perf/caf/bug1454 [new file with mode: 0644]
tests/perf/caf/bug1454_std [new file with mode: 0644]
tests/perf/caf/bug1726 [new file with mode: 0644]
tests/perf/caf/bug1726_std [new file with mode: 0644]
tests/perf/caf/bug2793 [new file with mode: 0644]
tests/perf/caf/bug5023 [new file with mode: 0644]
tests/perf/caf/bug5023_std [new file with mode: 0644]
tests/perf/de/begin [new file with mode: 0644]
tests/perf/de/bug24024 [new file with mode: 0644]
tests/perf/de/bug26338_1
tests/perf/de/bug26338_2
tests/perf/de/bug27570 [new file with mode: 0644]
tests/perf/fclasses/bug25514 [new file with mode: 0644]
tests/perf/fclasses/bug26184_1 [new file with mode: 0644]
tests/perf/fclasses/bug26184_2 [new file with mode: 0644]
tests/perf/fclasses/bug27131 [new file with mode: 0644]
tests/perf/fclasses/bug27371 [new file with mode: 0644]
tests/perf/grids.list
tests/perf/heal/begin [new file with mode: 0644]
tests/perf/heal/bug24596_1 [new file with mode: 0644]
tests/perf/heal/bug24596_2 [new file with mode: 0644]
tests/perf/heal/bug25424 [new file with mode: 0644]
tests/perf/heal/bug26871 [new file with mode: 0644]
tests/perf/mesh/bug23650 [new file with mode: 0644]
tests/perf/mesh/bug24022 [new file with mode: 0644]
tests/perf/mesh/bug24968_1 [new file with mode: 0644]
tests/perf/mesh/bug24968_2 [new file with mode: 0644]
tests/perf/mesh/bug25264 [new file with mode: 0644]
tests/perf/mesh/bug27119 [new file with mode: 0644]
tests/perf/mesh/bug27626 [new file with mode: 0644]
tests/perf/mesh/parse.rules [new file with mode: 0644]
tests/perf/modalg/bug10160_1 [new file with mode: 0644]
tests/perf/modalg/bug10160_10 [new file with mode: 0644]
tests/perf/modalg/bug10160_11 [new file with mode: 0644]
tests/perf/modalg/bug10160_12 [new file with mode: 0644]
tests/perf/modalg/bug10160_2 [new file with mode: 0644]
tests/perf/modalg/bug10160_3 [new file with mode: 0644]
tests/perf/modalg/bug10160_4 [new file with mode: 0644]
tests/perf/modalg/bug10160_5 [new file with mode: 0644]
tests/perf/modalg/bug10160_6 [new file with mode: 0644]
tests/perf/modalg/bug10160_7 [new file with mode: 0644]
tests/perf/modalg/bug10160_8 [new file with mode: 0644]
tests/perf/modalg/bug10160_9 [new file with mode: 0644]
tests/perf/modalg/bug165_4 [new file with mode: 0644]
tests/perf/modalg/bug165_5 [new file with mode: 0644]
tests/perf/modalg/bug165_6 [new file with mode: 0644]
tests/perf/modalg/bug165_7 [new file with mode: 0644]
tests/perf/modalg/bug19793_2 [new file with mode: 0644]
tests/perf/modalg/bug23906 [new file with mode: 0644]
tests/perf/modalg/bug24005 [new file with mode: 0644]
tests/perf/modalg/bug24696 [new file with mode: 0644]
tests/perf/modalg/bug24751_1 [new file with mode: 0644]
tests/perf/modalg/bug24751_2 [new file with mode: 0644]
tests/perf/modalg/bug24751_3 [new file with mode: 0644]
tests/perf/modalg/bug24751_4 [new file with mode: 0644]
tests/perf/modalg/bug24751_5 [new file with mode: 0644]
tests/perf/modalg/bug24899 [new file with mode: 0644]
tests/perf/modalg/bug25019 [new file with mode: 0644]
tests/perf/modalg/bug25058 [new file with mode: 0644]
tests/perf/modalg/bug25413 [new file with mode: 0644]
tests/perf/modalg/bug25742_1 [new file with mode: 0644]
tests/perf/modalg/bug25742_2 [new file with mode: 0755]
tests/perf/modalg/bug25788 [new file with mode: 0644]
tests/perf/modalg/bug26310_1 [new file with mode: 0644]
tests/perf/modalg/bug26327 [new file with mode: 0644]
tests/perf/modalg/bug26443_1 [new file with mode: 0644]
tests/perf/modalg/bug26443_2 [new file with mode: 0644]
tests/perf/modalg/bug26447 [new file with mode: 0644]
tests/perf/modalg/bug26513 [new file with mode: 0644]
tests/perf/modalg/bug26674 [new file with mode: 0644]
tests/perf/modalg/bug26914 [new file with mode: 0644]
tests/perf/modalg/bug26929 [new file with mode: 0644]
tests/perf/modalg/bug26980 [new file with mode: 0644]
tests/perf/modalg/bug27085_1 [new file with mode: 0644]
tests/perf/modalg/bug27085_2 [new file with mode: 0644]
tests/perf/modalg/bug27569 [new file with mode: 0644]
tests/perf/modalg/bug28030 [new file with mode: 0644]
tests/perf/modalg/bug452_1 [new file with mode: 0644]
tests/perf/modalg/bug452_2 [new file with mode: 0644]
tests/perf/modalg/bug452_3 [new file with mode: 0644]
tests/perf/modalg/bug452_4 [new file with mode: 0644]
tests/perf/modalg/bug453_1 [new file with mode: 0644]
tests/perf/modalg/bug453_2 [new file with mode: 0644]
tests/perf/modalg/bug5157_1 [new file with mode: 0644]
tests/perf/modalg/bug5157_2 [new file with mode: 0644]
tests/perf/modalg/bug83_1 [new file with mode: 0644]
tests/perf/modalg/bug83_2 [new file with mode: 0644]
tests/perf/moddata/bug21292 [new file with mode: 0644]
tests/perf/moddata/bug21858 [new file with mode: 0644]
tests/perf/moddata/bug25487_1 [new file with mode: 0644]
tests/perf/moddata/bug25487_2 [new file with mode: 0644]
tests/perf/moddata/bug26339 [new file with mode: 0644]
tests/perf/moddata/bug26884 [new file with mode: 0644]
tests/perf/moddata/bug27048_1 [new file with mode: 0644]
tests/perf/moddata/bug27048_2 [new file with mode: 0644]
tests/perf/moddata/bug276 [new file with mode: 0644]
tests/perf/moddata/bug36 [new file with mode: 0644]
tests/perf/moddata/bug368 [new file with mode: 0644]
tests/perf/moddata/bug453_3 [new file with mode: 0644]
tests/perf/moddata/bug623 [new file with mode: 0644]
tests/perf/sewing/A1 [new file with mode: 0644]
tests/perf/sewing/A2 [new file with mode: 0644]
tests/perf/sewing/A3 [new file with mode: 0644]
tests/perf/sewing/A4 [new file with mode: 0644]
tests/perf/sewing/A5 [new file with mode: 0644]
tests/perf/sewing/A6 [new file with mode: 0644]
tests/perf/sewing/A7 [new file with mode: 0644]
tests/perf/sewing/begin [new file with mode: 0644]
tests/perf/sewing/end [new file with mode: 0644]
tests/perf/vis/bug24623_1 [new file with mode: 0644]
tests/perf/vis/bug24623_2 [new file with mode: 0644]
tests/sewing/fast/A1 [deleted file]
tests/sewing/fast/A2 [deleted file]
tests/sewing/fast/A3 [deleted file]
tests/sewing/fast/A4 [deleted file]
tests/sewing/fast/A5 [deleted file]
tests/sewing/fast/A6 [deleted file]
tests/sewing/fast/A7 [deleted file]
tests/sewing/grids.list

index 1228480c20ba78b8fa60ae350022afd436c52ffa..e83bb06ea00fa9c06ac50e80ce709535809826bf 100644 (file)
@@ -715,11 +715,24 @@ Possible options are:
        * 1 -- outputs only differences;
        * 2 -- additionally outputs the list of logs and directories present in one of directories only;
        * 3 -- (by default) additionally outputs progress messages;
+* <i>-image [filename]</i> - compare images and save the resulting log in specified file (<i>$dir1/diffimage-$dir2.log</i> by default)
+* <i>-cpu [filename]</i> - compare overall CPU and save the resulting log in specified file (<i>$dir1/diffcpu-$dir2.log</i> by default)
+* <i>-memory [filename]</i> - compare memory delta and save the resulting log in specified file (<i>$dir1/diffmemory-$dir2.log</i> by default)
+* <i>-highlight_percent \<value\></i> - highlight considerable (>value in %) deviations of CPU and memory (default value is 5%)
 
 Example:
 
 ~~~~~
-Draw[]> testdiff results-CR12345-2012-10-10T08:00 results-master-2012-10-09T21:20 
+Draw[]> testdiff results/CR12345-2012-10-10T08:00 results/master-2012-10-09T21:20 
+~~~~~
+
+Particular tests can generate additional data that need to be compared by *testdiff* command.
+For that, for each parameter to be controlled, the test should produce the line containing keyword "COUNTER* followed by arbitrary name of the parameter, then colon and numeric value of the parameter.
+
+Example of test code:
+
+~~~~~
+puts "COUNTER Memory heap usage at step 5: [meminfo h]"
 ~~~~~
 
 @section testmanual_5 APPENDIX
index d58ff068359cb89c78a8b5487ad5bc7030663fa1..fbf177e89e4d08b6119124bb350b2e4764e7c2bc 100644 (file)
@@ -610,7 +610,7 @@ wait
 Syntax:                  
 
 ~~~~~
-chrono [ name start/stop/reset/show
+chrono [ name start/stop/reset/show/restart/[counter text]]
 ~~~~~
 
 Without arguments, **chrono** activates Draw chronometers. The elapsed time ,cpu system and cpu user times for each command will be printed. 
@@ -619,7 +619,9 @@ With arguments, **chrono** is used to manage activated chronometers. You can per
   * run the chronometer (start).
   * stop the chronometer (stop).
   * reset the chronometer to 0 (reset).
+  * restart the chronometer (restart).
   * display the current time (show).
+  * display the current time with specified text (output example - *COUNTER text: N*), command <i>testdiff</i> will compare such outputs between two test runs (counter).
 
 **Example:** 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.cpp}
index 15b7a41be1b1c7daf100d96a941a99f6c0e59368..3b06434fbca504ee27bc214bfdae55d033b0ad60 100644 (file)
@@ -100,20 +100,49 @@ static Standard_Integer chronom(Draw_Interpretor& di,
       C->Timer().Reset();
     }
     else {
-      if (!strcasecmp(a[2],"reset"))
-       C->Timer().Reset();
-      if (!strcasecmp(a[2],"start"))
-       C->Timer().Start();
-      if (!strcasecmp(a[2],"stop"))
-       C->Timer().Stop();
-      if (!strcasecmp(a[2],"show"))
-       C->Timer().Show();
+      for (Standard_Integer anIter = 2; anIter < n; ++anIter)
+      {
+        TCollection_AsciiString anArg (a[anIter]);
+        anArg.LowerCase();
+
+        if (anArg == "reset")
+        {
+          C->Timer().Reset();
+        }
+        else if (anArg == "restart")
+        {
+          C->Timer().Restart();
+        }
+        else if (anArg == "start")
+        {
+          C->Timer().Start();
+        }
+        else if (anArg == "stop")
+        {
+          C->Timer().Stop();
+        }
+        else if (anArg == "show")
+        {
+          C->Timer().Show();
+        }
+        else if (anArg == "counter")
+        {
+          Standard_Real aSeconds,aCPUtime;
+          Standard_Integer aMinutes, aHours;
+          C->Timer().Show(aSeconds,aMinutes,aHours,aCPUtime);
+          std::cout << "COUNTER " << a[++anIter] << ": " << aCPUtime << "\n";
+        }
+        else
+        {
+          std::cerr << "Unknown argument '" << a[anIter] << "'!\n";
+        }
+      }
     }
   }
   return 0;
 }
 
-static Standard_Integer dchronom(Draw_Interpretor& I,
+static Standard_Integer dchronom(Draw_Interpretor& theDI,
                                 Standard_Integer n,const char** a)
 {
   if ((n == 1) || (*a[1] == '0') || (*a[1] == '1')) {
@@ -122,8 +151,8 @@ static Standard_Integer dchronom(Draw_Interpretor& I,
     else
       Draw_Chrono = (*a[1] == '1');
 
-    if (Draw_Chrono) I << "Chronometers activated.\n";
-    else I << "Chronometers desactivated.\n";
+    if (Draw_Chrono) theDI << "Chronometers activated.\n";
+    else theDI << "Chronometers desactivated.\n";
   }
   else {
     Handle(Draw_Drawable3D) D = Draw::Get(a[1]);
@@ -133,22 +162,50 @@ static Standard_Integer dchronom(Draw_Interpretor& I,
     }
     if (C.IsNull()) {
       C = new Draw_Chronometer();
-    Draw::Set(a[1],C,Standard_False);
+      Draw::Set(a[1],C,Standard_False);
     }
     if (n <= 2) {
       C->Timer().Reset();
     }
     else {
-      if (!strcasecmp(a[2],"reset"))
-       C->Timer().Reset();
-      if (!strcasecmp(a[2],"start"))
-       C->Timer().Start();
-      if (!strcasecmp(a[2],"stop"))
-       C->Timer().Stop();
-      if (!strcasecmp(a[2],"show")) {
-       Standard_SStream ss;
-       C->Timer().Show(ss);
-       I << ss;
+      for (Standard_Integer anIter = 2; anIter < n; ++anIter)
+      {
+        TCollection_AsciiString anArg (a[anIter]);
+        anArg.LowerCase();
+
+        if (anArg == "reset")
+        {
+          C->Timer().Reset();
+        }
+        else if (anArg == "restart")
+        {
+          C->Timer().Restart();
+        }
+        else if (anArg == "start")
+        {
+          C->Timer().Start();
+        }
+        else if (anArg == "stop")
+        {
+          C->Timer().Stop();
+        }
+        else if (anArg == "show")
+        {
+          Standard_SStream ss;
+          C->Timer().Show(ss);
+          theDI << ss;
+        }
+        else if (anArg == "counter")
+        {
+          Standard_Real aSeconds,aCPUtime;
+          Standard_Integer aMinutes, aHours;
+          C->Timer().Show(aSeconds,aMinutes,aHours,aCPUtime);
+          theDI << "COUNTER " << a[++anIter] << ": " << aCPUtime << "\n";
+        }
+        else
+        {
+          theDI << "Unknown argument '" << a[anIter] << "'!\n";
+        }
       }
     }
   }
index 2528db63f19640535a8877cef8bb575d46b5e485..fb2b3deba9e55d1ab4d41fe82210a77f88ca54c6 100644 (file)
@@ -1876,6 +1876,50 @@ proc _diff_show_ratio {value1 value2} {
     return "$value1 / $value2 \[[format "%+5.2f%%" [expr 100 * ($value1 - $value2) / double($value2)]]\]"
 }
 
+# procedure to check cpu user time
+proc _check_time {regexp_msg} {
+    upvar log log
+    upvar log1 log1
+    upvar log2 log2
+    upvar log_cpu log_cpu
+    upvar cpu cpu
+    upvar basename basename
+    upvar casename casename
+    set time1_list [dict create]
+    set time2_list [dict create]
+    set cpu_find UNDEFINED
+
+    foreach line1 [split $log1 "\n"] {
+        if { [regexp "${regexp_msg}" $line1 dump chronometer_name cpu_find] } {
+            dict set time1_list "${chronometer_name}" "${cpu_find}"
+        }
+    }
+
+    foreach line2 [split $log2 "\n"] {
+        if { [regexp "${regexp_msg}" $line2 dump chronometer_name cpu_find] } {
+            dict set time2_list "${chronometer_name}" "${cpu_find}"
+        }
+    }
+
+    if { [llength [dict keys $time1_list]] != [llength [dict keys $time2_list]] } {
+        puts "Error: number of dchrono/chrono COUNTER are different in the same test cases"
+    } else {
+        foreach key [dict keys $time1_list] {
+            set time1 [dict get $time1_list $key]
+            set time2 [dict get $time2_list $key]
+
+            # compare CPU user time with 10% precision (but not less 0.5 sec)
+            if { [expr abs ($time1 - $time2) > 0.5 + 0.05 * abs ($time1 + $time2)] } {
+                if {$cpu != false} {
+                    _log_and_puts log_cpu "COUNTER $key: [split $basename /] $casename: [_diff_show_ratio $time1 $time2]"
+                } else {
+                    _log_and_puts log "COUNTER $key: [split $basename /] $casename: [_diff_show_ratio $time1 $time2]"
+                }
+            }
+        }
+    }
+}
+
 # Procedure to compare results of two runs of test cases
 proc _test_diff {dir1 dir2 basename image cpu memory status verbose _logvar _logimage _logcpu _logmemory {_statvar ""}} {
     upvar $_logvar log
@@ -1954,6 +1998,15 @@ proc _test_diff {dir1 dir2 basename image cpu memory status verbose _logvar _log
                     continue
                 }
             }
+
+            if { ! $image } {
+                # check CPU user time in test cases
+                set checkCPURegexp "COUNTER (.+): (\[-0-9.+eE\]+)"
+                if { [regexp "${checkCPURegexp}" $log1] &&
+                     [regexp "${checkCPURegexp}" $log2] } {
+                  _check_time "${checkCPURegexp}"
+                }
+            }
             
             # check CPU times
             if {$cpu != false || ($image == false && $cpu == false && $memory == false)} {
index bbedf8aa6b7024145a0aee344de3ab88cf8d7b95..c181f68398a7843dd04dd890c673f6540237f64e 100644 (file)
@@ -199,6 +199,17 @@ void OSD_Chronometer::Reset ()
   Cumul_user = Cumul_sys = 0.;
 }
 
+
+//=======================================================================
+//function : Restart
+//purpose  :
+//=======================================================================
+void OSD_Chronometer::Restart ()
+{
+  Stopped = Standard_True;
+  Start();
+}
+
 //=======================================================================
 //function : Stop
 //purpose  :
index 8942d61613034683e23530d739e2039aa7a20bb4..697eb207938ab1adf3a02a7960b5604d9f4571f9 100644 (file)
@@ -54,7 +54,10 @@ public:
 
   //! Stops and Reinitializes the Chronometer.
   Standard_EXPORT virtual void Reset();
-  
+
+  //! Restarts the Chronometer.
+  Standard_EXPORT virtual void Restart();
+
   //! Stops the Chronometer.
   Standard_EXPORT virtual void Stop();
   
index 412a7ac50532491375b3c5004337d27166168c09..b18e55a655f0ed63d043d50a46a3c1bcb85e7359 100644 (file)
@@ -125,6 +125,18 @@ void OSD_Timer::Reset ()
   OSD_Chronometer::Reset();
 }
 
+//=======================================================================
+//function : Restart
+//purpose  :
+//=======================================================================
+
+void OSD_Timer::Restart ()
+{
+  TimeStart = GetWallClockTime();
+  TimeCumul = 0.;
+  OSD_Chronometer::Restart();
+}
+
 //=======================================================================
 //function : Show
 //purpose  : 
index 5ff9e8a70e68a813812c9ecf8007c165603f86ba..c343e37746080e550f0988c87f729d9be56d3d18 100644 (file)
@@ -52,7 +52,10 @@ public:
 
   //! Stops and reinitializes the timer with zero elapsed time.
   Standard_EXPORT virtual void Reset() Standard_OVERRIDE;
-  
+
+  //! Restarts the Timer.
+  Standard_EXPORT virtual void Restart() Standard_OVERRIDE;
+
   //! Shows both the elapsed time and CPU time on the standard output
   //! stream <cout>.The chronometer can be running (Lap Time) or
   //! stopped.
diff --git a/tests/boolean/bfuse_complex/Q3 b/tests/boolean/bfuse_complex/Q3
deleted file mode 100644 (file)
index 1549f7c..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-puts " BUC60068 "
-puts "If scales by 1000, time to compute is 10 times greater "
-##
-## mod pkv from
-restore [locate_data_file buc60068a.rle] a
-restore [locate_data_file buc60068b.rle] b
-restore [locate_data_file buc60068a.rle] c
-restore [locate_data_file buc60068b.rle] d
-restore [locate_data_file buc60068a.rle] e
-restore [locate_data_file buc60068b.rle] f
-restore [locate_data_file buc60068a.rle] g
-restore [locate_data_file buc60068b.rle] h
-## mod pkv from
-##
-
-## fuse
-dchrono j start
-bfuse resab a b
-dchrono j stop
-
-tscale  c 0 0 0 100
-tscale  d 0 0 0 100
-dchrono k start
-bfuse rescd c d
-dchrono k stop
-
-tscale  e 0 0 0 1000
-tscale  f 0 0 0 1000
-dchrono l start
-bfuse resef e f
-dchrono l stop
-
-tscale  g 0 0 0 10000
-tscale  h 0 0 0 10000
-dchrono m start
-bfuse resgh g h
-dchrono m stop
-
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono j show] full Jseconds
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono k show] full Kseconds
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono l show] full Lseconds
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono m show] full Mseconds
-
-#sometimes CPU user time may be 0
-set Jtime [expr ($Jseconds * 1.1) + 0.2]
-set Ktime $Kseconds
-set Ltime $Lseconds
-set Mtime $Mseconds
-
-if { $Jtime < $Ktime || $Jtime < $Ltime || $Jtime < $Mtime} {
-   puts "Error: incorrect performance of bfuse operation:"
-   puts "SCALE=1     : $Jtime seconds."
-   puts "SCALE=100   : $Ktime seconds."
-   puts "SCALE=1000  : $Ltime seconds."
-   puts "SCALE=10000 : $Mtime seconds."
-}
-
-compound resab rescd resef resgh result
-
-checkprops result -s 2.5e+13
-checkview -display result -2d -otherwise { a b c d e f g h } -s -path ${imagedir}/${test_image}.png
diff --git a/tests/boolean/bsection/R6 b/tests/boolean/bsection/R6
deleted file mode 100644 (file)
index cc89f24..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-puts " BUC60068 "
-puts "If scales by 1000, time to compute is 10 times greater "
-##
-## mod pkv from
-restore [locate_data_file buc60068a.rle] a
-restore [locate_data_file buc60068b.rle] b
-restore [locate_data_file buc60068a.rle] c
-restore [locate_data_file buc60068b.rle] d
-restore [locate_data_file buc60068a.rle] e
-restore [locate_data_file buc60068b.rle] f
-restore [locate_data_file buc60068a.rle] g
-restore [locate_data_file buc60068b.rle] h
-## mod pkv from
-##
-
-## section
-dchrono j start
-bsection resab a b
-dchrono j stop
-
-tscale  c 0 0 0 100
-tscale  d 0 0 0 100
-dchrono k start
-bsection rescd c d
-dchrono k stop
-
-tscale  e 0 0 0 1000
-tscale  f 0 0 0 1000
-dchrono l start
-bsection resef e f
-dchrono l stop
-
-tscale  g 0 0 0 10000
-tscale  h 0 0 0 10000
-dchrono m start
-bsection resgh g h
-dchrono m stop
-
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono j show] full Jseconds
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono k show] full Kseconds
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono l show] full Lseconds
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono m show] full Mseconds
-
-#sometimes CPU user time may be 0
-set Jtime [expr ($Jseconds * 1.1) + 0.2]
-set Ktime $Kseconds
-set Ltime $Lseconds
-set Mtime $Mseconds
-
-if { $Jtime < $Ktime || $Jtime < $Ltime || $Jtime < $Mtime} {
-   puts "Error: incorrect performance of bsection operation:"
-   puts "SCALE=1     : $Jtime seconds."
-   puts "SCALE=100   : $Ktime seconds."
-   puts "SCALE=1000  : $Ltime seconds."
-   puts "SCALE=10000 : $Mtime seconds."
-}
-
-compound resab rescd resef resgh result
-
-checkprops result -l 1.41538e+07
-checksection result
-checkview -display result -2d -otherwise { a b c d e f g h } -l -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/caf/bug1454 b/tests/bugs/caf/bug1454
deleted file mode 100644 (file)
index 3bf7e4b..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-
-puts "===== OCC1454 ====="
-#######################################################################################
-# Improve performance of TDF_Label::FindChild
-#######################################################################################
-
-puts "Info: Open the document with 80000 sublabels of the label 0:2"
-dchrono h reset
-dchrono h start
-Open [locate_data_file OCC1726.cbf] D
-dchrono h stop
-set TimeList [dchrono h show]
-
-regexp {Elapsed time: [-0-9.+eE]+ Hours ([-0-9.+eE]+) Minutes ([-0-9.+eE]+) Seconds} $TimeList full ElapsedTime_min ElapsedTime_sec
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $TimeList full CPUusertime
-regexp {CPU system time: ([-0-9.+eE]+) seconds} $TimeList full CPUsystemtime
-
-puts "ElapsedTime = ${ElapsedTime_min} min ${ElapsedTime_sec} sec CPUusertime = ${CPUusertime} CPUsystemtime = ${CPUsystemtime}"
-
-if { ${ElapsedTime_sec} > 20.0 || ${ElapsedTime_min} != 0 } {
-  puts "Elapsed time is more then 20.0 seconds - Faulty"
-  puts "Faulty OCC1454"
-} elseif { ${CPUusertime} > 12 } {
-    puts "CPUusertime is more then 12 seconds - Faulty"
-    puts "Faulty OCC1454"
-} elseif { ${CPUsystemtime} > 0.6 } { 
-    puts "CPUsystemtime is more then 0.6 seconds"
-    puts "Faulty OCC1454"
-} else {
-    puts "Elapsed time is less then 20 seconds - OK"
-    puts "CPU user time is less then 12 seconds - OK"
-    puts "CPU system time is less then 0.6 seconds - OK"
-    puts "OK for OCC1454"
-}
diff --git a/tests/bugs/caf/bug1454_std b/tests/bugs/caf/bug1454_std
deleted file mode 100644 (file)
index 8464ff1..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-
-puts "===== OCC1454 ====="
-#######################################################################################
-# Improve performance of TDF_Label::FindChild
-#######################################################################################
-
-puts "Info: Open the document with 80000 sublabels of the label 0:2"
-dchrono h reset
-dchrono h start
-Open [locate_data_file OCC1726.std] D
-dchrono h stop
-set TimeList [dchrono h show]
-
-regexp {Elapsed time: [-0-9.+eE]+ Hours ([-0-9.+eE]+) Minutes ([-0-9.+eE]+) Seconds} $TimeList full ElapsedTime_min ElapsedTime_sec
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $TimeList full CPUusertime
-regexp {CPU system time: ([-0-9.+eE]+) seconds} $TimeList full CPUsystemtime
-
-puts "ElapsedTime = ${ElapsedTime_min} min ${ElapsedTime_sec} sec CPUusertime = ${CPUusertime} CPUsystemtime = ${CPUsystemtime}"
-
-if { ${ElapsedTime_sec} > 20.0 || ${ElapsedTime_min} != 0 } {
-  puts "Elapsed time is more then 20.0 seconds - Faulty"
-  puts "Faulty OCC1454"
-} elseif { ${CPUusertime} > 12 } {
-    puts "CPUusertime is more then 12 seconds - Faulty"
-    puts "Faulty OCC1454"
-} elseif { ${CPUsystemtime} > 0.6 } { 
-    puts "CPUsystemtime is more then 0.6 seconds"
-    puts "Faulty OCC1454"
-} else {
-    puts "Elapsed time is less then 20 seconds - OK"
-    puts "CPU user time is less then 12 seconds - OK"
-    puts "CPU system time is less then 0.6 seconds - OK"
-    puts "OK for OCC1454"
-}
diff --git a/tests/bugs/caf/bug1726 b/tests/bugs/caf/bug1726
deleted file mode 100644 (file)
index ca371f7..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-puts "================"
-puts "OCC1726"
-puts "================"
-puts ""
-#######################################################################################
-# TDF_LabelNode::~TDF_LabelNode causes stack overflow
-#######################################################################################
-
-puts "Info: Open the document with 80000 sublabels of the label 0:2"
-chrono h reset; chrono h start
-Open [locate_data_file OCC1726.cbf] D
-chrono h stop; chrono h show
-
-set IsGood 1
-puts "Info: Close the document"
-chrono h reset; chrono h start
-if [catch {Close D} result] {
-   set IsGood 0
-}
-chrono h stop; chrono h show
-
-if { ${IsGood} == 0} {
-  puts "Faulty OCC1726"
-} else {
-  puts "OK OCC1726"
-}
diff --git a/tests/bugs/caf/bug1726_std b/tests/bugs/caf/bug1726_std
deleted file mode 100644 (file)
index 828829c..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-puts "================"
-puts "OCC1726"
-puts "================"
-puts ""
-#######################################################################################
-# TDF_LabelNode::~TDF_LabelNode causes stack overflow
-#######################################################################################
-
-puts "Info: Open the document with 80000 sublabels of the label 0:2"
-chrono h reset; chrono h start
-Open [locate_data_file OCC1726.std] D
-chrono h stop; chrono h show
-
-set IsGood 1
-puts "Info: Close the document"
-chrono h reset; chrono h start
-if [catch {Close D} result] {
-   set IsGood 0
-}
-chrono h stop; chrono h show
-
-if { ${IsGood} == 0} {
-  puts "Faulty OCC1726"
-} else {
-  puts "OK OCC1726"
-}
diff --git a/tests/bugs/caf/bug2793 b/tests/bugs/caf/bug2793
deleted file mode 100644 (file)
index 530f600..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-puts "=========="
-puts "OCC2793"
-puts "=========="
-puts ""
-########################################################################
-# BinOcaf: low performance saving documents with large attributes
-########################################################################
-
-NewDocument D BinOcaf
-
-# Loaded shapes for attributes
-restore [locate_data_file Radhaus.brep] shape1
-restore [locate_data_file shading_wrongshape_009.brep] shape2
-restore [locate_data_file FORM-11.brep] shape3
-restore [locate_data_file OCC22759-weldt6.brep] shape4
-restore [locate_data_file BPLSEITRE.brep] shape5
-restore [locate_data_file OCC22302.brep] shape6
-restore [locate_data_file ROVER.brep] shape7
-restore [locate_data_file bug24083_polyline.brep] shape8
-
-# Create a label
-set lab1 [Label D 0:2]
-set lab2 [Label D 0:3]
-set lab3 [Label D 0:4]
-set lab4 [Label D 0:5]
-set lab5 [Label D 0:6]
-set lab6 [Label D 0:7]
-set lab7 [Label D 0:8]
-set lab8 [Label D 0:9]
-
-# Load shapes on labels
-NewShape D ${lab1} shape1
-NewShape D ${lab2} shape2
-NewShape D ${lab3} shape3
-NewShape D ${lab4} shape4
-NewShape D ${lab5} shape5
-NewShape D ${lab6} shape6
-NewShape D ${lab7} shape7
-NewShape D ${lab8} shape8
-
-# Save document
-file delete -force ${imagedir}/2793.cbf
-dchrono h reset
-dchrono h start
-SaveAs D ${imagedir}/2793.cbf
-dchrono h stop
-Close D
-
-# Check
-set info [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $info full cpu_time
-
-set max_time 100
-if { [regexp {Debug mode} [dversion]] } {
-   set max_time 200
-}
-
-if { $cpu_time > ${max_time} } {
-    puts "Error: performance saving document D is too low"
-} else {
-    puts "OK: performance saving document D is high"
-}
diff --git a/tests/bugs/caf/bug5023 b/tests/bugs/caf/bug5023
deleted file mode 100755 (executable)
index 4598c2d..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-puts "================"
-puts "OCC5023"
-puts "================"
-puts ""
-######################################################
-# Performance regression in opening OCAF file
-######################################################
-
-set aFile [locate_data_file OCC5023.cbf]
-
-puts "Info: Restore the document"
-
-if [info exists DD] {
-    catch {Close DD}; unset DD
-}
-
-dchrono h reset
-dchrono h start
-
-Open ${aFile} DD
-dchrono h stop
-set list [dchrono h show]
-Close DD
-
-regexp {CPU user time: +([-0-9.+eE]+)} $list full CPU_user_time
-
-set Good_CPU_user_time 2.
-
-set CPU_user_time_percent [expr (${CPU_user_time} - ${Good_CPU_user_time}) / ${Good_CPU_user_time} * 100.]
-set percent_max 0.1
-
-puts "CPU_user_time = ${CPU_user_time}"
-puts "Good_CPU_user_time = ${Good_CPU_user_time}"
-puts "CPU_user_time_percent = ${CPU_user_time_percent}"
-
-if {${CPU_user_time_percent} > ${percent_max}} {
-    puts "Faulty OCC5023 : CPU user time is wrong"
-}
-
diff --git a/tests/bugs/caf/bug5023_std b/tests/bugs/caf/bug5023_std
deleted file mode 100644 (file)
index 4f255ad..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-puts "================"
-puts "OCC5023"
-puts "================"
-puts ""
-######################################################
-# Performance regression in opening OCAF file
-######################################################
-
-set aFile [locate_data_file OCC5023.std]
-
-puts "Info: Restore the document"
-
-if [info exists DD] {
-    catch {Close DD}; unset DD
-}
-
-dchrono h reset
-dchrono h start
-
-Open ${aFile} DD
-dchrono h stop
-set list [dchrono h show]
-Close DD
-
-regexp {CPU user time: +([-0-9.+eE]+)} $list full CPU_user_time
-
-set Good_CPU_user_time 2.
-
-set CPU_user_time_percent [expr (${CPU_user_time} - ${Good_CPU_user_time}) / ${Good_CPU_user_time} * 100.]
-set percent_max 0.1
-
-puts "CPU_user_time = ${CPU_user_time}"
-puts "Good_CPU_user_time = ${Good_CPU_user_time}"
-puts "CPU_user_time_percent = ${CPU_user_time_percent}"
-
-if {${CPU_user_time_percent} > ${percent_max}} {
-    puts "Faulty OCC5023 : CPU user time is wrong"
-}
-
diff --git a/tests/bugs/fclasses/bug25514 b/tests/bugs/fclasses/bug25514
deleted file mode 100644 (file)
index 480179b..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-puts "========"
-puts "OCC25514"
-puts "========"
-puts ""
-#########################################################################################
-# TKernel, OSD_Timer - do not accumulate error in timer within queries in running state
-#########################################################################################
-
-# Set number of cycle iteration
-set IterationCount 10000
-set iCounter 1
-
-# Set rank of timer's value
-set TimeRank 2
-
-# Start timers
-dchrono bug_info_1 reset
-dchrono bug_info_2 reset
-dchrono bug_info_1 start
-dchrono bug_info_2 start
-
-# Operation cycle (show only one timer state)
-while {$iCounter != $IterationCount} {
-  dchrono bug_info_1 show
-  set iCounter [expr {$iCounter + 1}]
-}
-
-# Stop timers
-dchrono bug_info_1 stop
-dchrono bug_info_2 stop
-
-# Get timers value
-set Timer_1 [dchrono bug_info_1 show]
-set Timer_2 [dchrono bug_info_2 show]
-
-# Modify timers value for comparison
-set TimerValue_1 [lindex $Timer_1 6]
-set TimerValue_1 [string range $TimerValue_1 0 [expr {[string first "." $TimerValue_1] + $TimeRank}]]
-set TimerValue_2 [lindex $Timer_2 6]
-set TimerValue_2 [string range $TimerValue_2 0 [expr {[string first "." $TimerValue_2] + $TimeRank}]]
-
-# Comparison of timer's values
-puts "Compare: [lindex $Timer_1 6] vs [lindex $Timer_2 6]"
-if {$TimerValue_1 != $TimerValue_2} {
-  puts "ERROR: OCC25514 is reproduced."
-} else {
-  puts "OK"
-}
diff --git a/tests/bugs/fclasses/bug26184_1 b/tests/bugs/fclasses/bug26184_1
deleted file mode 100644 (file)
index ce66d87..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-puts "============"
-puts "OCC26184"
-puts "============"
-puts ""
-#######################################################################
-# GeomAPI_ExtremaCurveCurve hangs on parallel b-spline curves
-#######################################################################
-
-restore [locate_data_file bug26184_Curve_Extrema_1_12971.brep] a1
-restore [locate_data_file bug26184_Curve_Extrema_2_12971.brep] a2
-
-mkcurve c1 a1
-mkcurve c2 a2
-
-cpulimit 20
-
-dchrono h reset; dchrono h start
-extrema c1 c2
-dchrono h stop; dchrono h show
-
-regexp {CPU user time: (\d*)} [dchrono h show] dummy sec
-if {$sec > 10} {
-  puts "Error: too long computation time $sec seconds"
-} else {
-  puts "Computation time is OK"
-}
diff --git a/tests/bugs/fclasses/bug26184_2 b/tests/bugs/fclasses/bug26184_2
deleted file mode 100644 (file)
index d211bfb..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-puts "============"
-puts "OCC26184"
-puts "============"
-puts ""
-#######################################################################
-# GeomAPI_ExtremaCurveCurve hangs on parallel b-spline curves
-#######################################################################
-
-restore [locate_data_file bug26184_Curve_Extrema_1_13767.brep] a1
-restore [locate_data_file bug26184_Curve_Extrema_2_13767.brep] a2
-
-mkcurve c1 a1
-mkcurve c2 a2
-
-cpulimit 20
-
-dchrono h reset; dchrono h start
-extrema c1 c2
-dchrono h stop; dchrono h show
-
-regexp {CPU user time: (\d*)} [dchrono h show] dummy sec
-if {$sec > 10} {
-   puts "Error: too long computation time $sec seconds"
-} else {
-  puts "Computation time is OK"
-}
diff --git a/tests/bugs/fclasses/bug27131 b/tests/bugs/fclasses/bug27131
deleted file mode 100644 (file)
index 7f833ff..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-puts "========"
-puts "OCC27131"
-puts "========"
-puts ""
-##############################################
-# DistShapeShape works slow on attached shapes
-##############################################
-restore [locate_data_file bug27131.brep] aShape
-explode aShape
-
-cpulimit 20
-
-# Check computation time
-chrono h reset; chrono h start
-for { set i 1 } { $i <= 100 } { incr i } {
-  distmini d aShape_1 aShape_2
-}
-chrono h stop; chrono h show
-
-regexp {CPU user time: (\d*)} [dchrono h show] dummy sec
-if {$sec > 1} {
-  puts "Error: too long computation time $sec seconds"
-} else {
-  puts "Computation time is OK"
-}
-
-# Check result of distance distance
-set absTol 1.0e-10
-set relTol 0.001
-set aDist_Exp 0.0029087110153708622
-set aDist [dval d_val]
-checkreal "Distance value check" $aDist $aDist_Exp $absTol $relTol
\ No newline at end of file
diff --git a/tests/bugs/fclasses/bug27371 b/tests/bugs/fclasses/bug27371
deleted file mode 100644 (file)
index 9b9de46..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-puts "========"
-puts "OCC27371"
-puts "========"
-puts ""
-##############################################
-# Regression: BRepExtrema works too much slower in 691 (from 670) 
-##############################################
-restore [locate_data_file bug27371.brep] aShape
-explode aShape
-
-cpulimit 20
-
-# Check computation time
-chrono h reset; chrono h start
-for { set i 1 } { $i <= 100 } { incr i } {
-  distmini d aShape_1 aShape_2
-  distmini d aShape_2 aShape_1
-}
-chrono h stop; chrono h show
-
-regexp {CPU user time: (\d*)} [dchrono h show] dummy sec
-if {$sec > 1} {
-  puts "Error: too long computation time $sec seconds"
-} else {
-  puts "Computation time is OK"
-}
-
-# Check result of distance distance
-set absTol 1.0e-10
-set relTol 0.001
-set aDist_Exp 0.2
-set aDist [dval d_val]
-checkreal "Distance value check" $aDist $aDist_Exp $absTol $relTol
\ No newline at end of file
diff --git a/tests/bugs/heal/bug24596_1 b/tests/bugs/heal/bug24596_1
deleted file mode 100755 (executable)
index 761b2b5..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-puts "============"
-puts "OCC24596"
-puts "============"
-puts ""
-###############################
-## Slow import of IGES data
-###############################
-
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  cpulimit 8500
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3000
-    set max_time2 2300
-  } else {
-    set max_time 5500
-    set max_time2 4000
-  }
-} else {
-  cpulimit 2600
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 1100
-    set max_time2 700
-  } else {
-    set max_time 1600
-    set max_time2 1000
-  }
-}
-
-# 1 - igesread
-dchrono h reset
-dchrono h start
-
-igesread [locate_data_file 100B_Nosecone_with_Triangular_FSS.igs] a 43479
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time of igesread is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time of igesread is less than ${max_time} seconds - OK"
-}
-
-# 2 - checkshape
-dchrono h2 reset
-dchrono h2 start
-
-checkshape a_1
-
-dchrono h2 stop
-set q2 [dchrono h2 show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-
-if { $z2 > ${max_time2} } {                                         
-    puts "Elapsed time of checkshape is more than ${max_time2} seconds - Faulty"
-} else {
-    puts "Elapsed time of checkshape is less than ${max_time2} seconds - OK"
-}
diff --git a/tests/bugs/heal/bug24596_2 b/tests/bugs/heal/bug24596_2
deleted file mode 100755 (executable)
index 35d688e..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-puts "============"
-puts "OCC24596"
-puts "============"
-puts ""
-###############################
-## Slow import of IGES data
-###############################
-
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  cpulimit 8500
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3000
-    set max_time2 2300
-  } else {
-    set max_time 5500
-    set max_time2 4000
-  }
-} else {
-  cpulimit 2600
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 1100
-    set max_time2 700
-  } else {
-    set max_time 1600
-    set max_time2 1000
-  }
-}
-
-# 1 - igesread
-dchrono h reset
-dchrono h start
-
-igesread [locate_data_file 100B_Nosecone_with_Triangular_FSS.igs] b 86884
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-# 2 - checkshape
-dchrono h2 reset
-dchrono h2 start
-
-checkshape b_1
-
-dchrono h2 stop
-set q2 [dchrono h2 show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-
-if { $z2 > ${max_time2} } {                                         
-    puts "Elapsed time of checkshape is more than ${max_time2} seconds - Faulty"
-} else {
-    puts "Elapsed time of checkshape is less than ${max_time2} seconds - OK"
-}
diff --git a/tests/bugs/heal/bug25424 b/tests/bugs/heal/bug25424
deleted file mode 100755 (executable)
index 585a41e..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-puts "================"
-puts "OCC25424"
-puts "================"
-puts ""
-#######################################################################################
-# Performance regression on step import
-######################################################################################
-
-pload XDE
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  set max_time 200
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 15
-  } else {
-    set max_time 20
-  }
-}
-
-dchrono h reset
-dchrono h start
-
-testreadstep [locate_data_file bug25424_Secure.stp] result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time of testreadstep is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time of testreadstep is less than ${max_time} seconds - OK"
-}
-
-checkprops result -s 6998.53
-checkshape result
-
-checknbshapes result -vertex 4482 -edge 6781 -wire 2309 -face 2305 -shell 1 -solid 1 -compsolid 0 -compound 0 -shape 15879
-checkview -display result -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/heal/bug26871 b/tests/bugs/heal/bug26871
deleted file mode 100644 (file)
index 9ad9db4..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-puts "======="
-puts "OCC26871"
-puts "======="
-puts ""
-#########################################################
-## Projecting a curve hangs inside Approx_FitAndDivide2d
-#########################################################
-
-pload QAcommands
-
-set max_time 5
-
-restore [locate_data_file bug26871_curve3d] c3d
-restore [locate_data_file bug26871_surface] surf
-
-dchrono cr reset
-dchrono cr start
-
-OCC24008 c3d surf
-
-dchrono cr stop
-
-set logTime [dchrono cr show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $logTime full z
-if { $z > ${max_time} } {
-    puts "Elapsed time ($z) is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time ($z) is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/mesh/bug23650 b/tests/bugs/mesh/bug23650
deleted file mode 100644 (file)
index d2ebcbd..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-puts "=========="
-puts "OCC23650"
-puts "=========="
-puts ""
-##################################################################
-# Slow mesher: one bspline surface, 80 seconds for 132 triangles
-##################################################################
-
-restore [locate_data_file bug23650_slowmesh.brep] result
-tclean result
-dchrono h reset
-dchrono h start
-incmesh result 0.2
-dchrono h stop
-set info [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $info full cpu_time
-if { $cpu_time > 5. } {
-    puts "Error : meshing is slow"
-} else {
-    puts "OK: meshing is quite fast"
-}
-vinit
-vdisplay result
-vfit
-vsetdispmode 1
-
-checkview -screenshot -3d -path ${imagedir}/${test_image}.png
-
-
-
-
diff --git a/tests/bugs/mesh/bug24022 b/tests/bugs/mesh/bug24022
deleted file mode 100644 (file)
index f722a4d..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-puts "=========="
-puts "OCC24022"
-puts "=========="
-puts ""
-#####################################
-# Slow meshing in BRepMesh
-#####################################
-
-restore [locate_data_file bug24022_hung_mesh.brep] result
-tclean result
-dchrono h reset
-dchrono h start
-incmesh result 0.1
-dchrono h stop
-set info [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $info full cpu_time
-if { $cpu_time > 3. } {
-    puts "Error : meshing is slow"
-} else {
-    puts "OK: meshing is quite fast"
-}
-vinit
-vdisplay result
-vfit
-vsetdispmode 1
-
-checkview -screenshot -3d -path ${imagedir}/${test_image}.png
-
-
-
diff --git a/tests/bugs/mesh/bug24968_1 b/tests/bugs/mesh/bug24968_1
deleted file mode 100644 (file)
index b8e9e7f..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-puts "=========="
-puts "OCC24968"
-puts "=========="
-puts ""
-#####################################
-# Impove BRepMesh_Classifier to cope with intersection of huge number of wires
-#####################################
-
-cpulimit 2500
-
-restore [locate_data_file bug24968_Shape_1.brep] result
-
-tclean result
-dchrono h reset
-dchrono h start
-incmesh result 0.1
-dchrono h stop
-
-set info [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} ${info} full cpu_time
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 2500
-  } else {
-    set max_time 2500
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 100
-  } else {
-    set max_time 250
-  }
-}
-
-if { ${cpu_time} > ${max_time} } {
-    puts "Error : meshing is slow"
-} else {
-    puts "OK: meshing is quite fast"
-}
-
-vinit
-vdisplay result
-vfit
-vsetdispmode 1
-
-checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/mesh/bug24968_2 b/tests/bugs/mesh/bug24968_2
deleted file mode 100644 (file)
index 006fd07..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-puts "=========="
-puts "OCC24968"
-puts "=========="
-puts ""
-#####################################
-# Impove BRepMesh_Classifier to cope with intersection of huge number of wires
-#####################################
-
-cpulimit 2500
-
-restore [locate_data_file bug24968_Shape_1.brep] result
-
-tclean result
-dchrono h reset
-dchrono h start
-incmesh result 0.1 -parallel
-dchrono h stop
-
-set info [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} ${info} full cpu_time
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 2500
-  } else {
-    set max_time 2500
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 100
-  } else {
-    set max_time 250
-  }
-}
-
-if { ${cpu_time} > ${max_time} } {
-    puts "Error : meshing is slow"
-} else {
-    puts "OK: meshing is quite fast"
-}
-
-vinit
-vdisplay result
-vfit
-vsetdispmode 1
-
-checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/mesh/bug25264 b/tests/bugs/mesh/bug25264
deleted file mode 100644 (file)
index 8e82153..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-puts "================"
-puts "OCC25264"
-puts "================"
-puts ""
-#######################################################################################
-# Mesh very slow for Revol shape
-######################################################################################
-
-restore [locate_data_file bug25264_wire.brep] w
-
-# right revol position, mesh is very fast.
-revol result1 w 20583.283203125 14039.0208237378 28443.2585934755 0 0 1 360
-dchrono i reset
-dchrono i start
-incmesh result1 0.1
-dchrono i stop
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono i show] full Iseconds
-
-# wrong revol position, mesh is very slow in occ6.7, while in occ6.2 is very fast.
-revol result2 w 20583.283203125 14039.0208217527 28443.25860033352 0 0 1 360
-dchrono j reset
-dchrono j start
-incmesh result2 0.1
-dchrono j stop
-regexp {CPU user time: ([0-9|.]+) seconds} [dchrono j show] full Jseconds
-
-checkreal "Meshing time" ${Jseconds} ${Iseconds} 0.05 0
-
-checkview -display result1 -3d -path ${imagedir}/${test_image}_1.png
-checkview -display result2 -3d -path ${imagedir}/${test_image}_2.png
-
diff --git a/tests/bugs/mesh/bug27119 b/tests/bugs/mesh/bug27119
deleted file mode 100644 (file)
index e36f79a..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-puts "========"
-puts "OCC27119"
-puts "========"
-puts ""
-###########################################
-## Regression: Draw command "incmesh" hangs on the attacheced face.
-###########################################
-
-set BugNumber OCC27119
-
-restore [locate_data_file bug27119_GrossPlatePart3Step2TransformedFace.brep] result
-
-dchrono t reset
-dchrono t start
-incmesh result 1.e-6
-dchrono t stop
-set time [dchrono t show]
-regexp {CPU user time: ([0-9|.]+) seconds} $time full seconds
-
-set tri 0
-set nod 0
-set def 0
-
-set tri_info [trinfo result]
-regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
-regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
-regexp { deflection +([-0-9.+eE]+)} $tri_info full def
-
-set ref_tri 7855
-set ref_nod 7857
-set ref_def 9.3791641120333225e-013
-set tol_rel 0.01
-
-# Computes deviation of the value from specified one
-checkreal "Nb of triangles" $tri $ref_tri 0 $tol_rel
-checkreal "Nb of nodes" $nod $ref_nod 0 $tol_rel
-checkreal "Deflection" $def $ref_def 1.e-12 0
-
-set eps_time 3
-if { $seconds > $eps_time } {
-  puts "Error: Too slow ($seconds > $eps_time)"
-}
-
-set 3dviewer 1
diff --git a/tests/bugs/mesh/bug27626 b/tests/bugs/mesh/bug27626
deleted file mode 100755 (executable)
index 2f4eb2e..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-puts "=========="
-puts "OCC27626"
-puts "=========="
-puts ""
-#######################################################################
-# Attempt to display shape in 3d leads to very long calculation loop
-#######################################################################
-pload XDE
-igesread [locate_data_file bug27626_badfil.igs] a *
-
-tclean a
-vinit
-vsetdispmode 1
-
-dchrono h reset
-dchrono h start
-#
-# DISPLAY OPERATION ----- START
-#
-vdisplay a
-#
-# DISPLAY OPERATION ----- FINISH
-#
-dchrono h stop
-dchrono h show
-
-vfit
-checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_1 b/tests/bugs/modalg_1/bug10160_1
deleted file mode 100755 (executable)
index 0a0b870..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-2.brep] b2 
-
-set NbTests 3
-
-dchrono h0 reset
-dchrono h0 start
-
-bop b1 b2
-dchrono h0 stop
-set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopcommon result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 1.30062e+07 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 20 -edge 28 -wire 16 -face 15 -shell 3 -solid 3 -compsolid 0 -compound 1 -shape 86
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_10 b/tests/bugs/modalg_1/bug10160_10
deleted file mode 100755 (executable)
index fe36874..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-2.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopfuse result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 3.20326e+07 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 116 -edge 173 -wire 67 -face 63 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 422
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_11 b/tests/bugs/modalg_1/bug10160_11
deleted file mode 100755 (executable)
index ebfec15..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-2.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopcut result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 3.05154e+07 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 96 -edge 143 -wire 51 -face 48 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 341
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_12 b/tests/bugs/modalg_1/bug10160_12
deleted file mode 100755 (executable)
index 5364d51..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-2.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   boptuc result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 6.38359e+06 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 108 -edge 161 -wire 61 -face 60 -shell 3 -solid 3 -compsolid 0 -compound 1 -shape 397
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_2 b/tests/bugs/modalg_1/bug10160_2
deleted file mode 100755 (executable)
index bd4cfd2..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-2.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopfuse result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 4.75218e+07 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 32 -edge 60 -wire 32 -face 29 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 156
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
diff --git a/tests/bugs/modalg_1/bug10160_3 b/tests/bugs/modalg_1/bug10160_3
deleted file mode 100755 (executable)
index 25667f9..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-2.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopcut result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 2.36194e+07 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 24 -edge 34 -wire 20 -face 19 -shell 4 -solid 4 -compsolid 0 -compound 1 -shape 106
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_4 b/tests/bugs/modalg_1/bug10160_4
deleted file mode 100755 (executable)
index b9bed69..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-2.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   boptuc result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-#CR24137 checkprops result -s 3.56087e+07 
-checkprops result -s 3.52471e+07 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 24 -edge 34 -wire 20 -face 17 -shell 3 -solid 3 -compsolid 0 -compound 1 -shape 102
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_5 b/tests/bugs/modalg_1/bug10160_5
deleted file mode 100755 (executable)
index 96abfa0..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopcommon result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-#CR24317 checkprops result -s 782201 
-checkprops result -s 784833 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 53 -edge 75 -wire 38 -face 34 -shell 6 -solid 6 -compsolid 0 -compound 1 -shape 213
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_6 b/tests/bugs/modalg_1/bug10160_6
deleted file mode 100755 (executable)
index 94012db..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopfuse result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 3.65961e+07
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 121 -edge 178 -wire 65 -face 59 -shell 3 -solid 2 -compsolid 0 -compound 1 -shape 429
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
diff --git a/tests/bugs/modalg_1/bug10160_7 b/tests/bugs/modalg_1/bug10160_7
deleted file mode 100755 (executable)
index d2bedf6..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopcut result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 3.05118e+07
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 61 -edge 87 -wire 44 -face 36 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 231
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_8 b/tests/bugs/modalg_1/bug10160_8
deleted file mode 100755 (executable)
index 76755f4..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-1.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   boptuc result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 6.87093e+06 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 113 -edge 166 -wire 59 -face 57 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 398
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug10160_9 b/tests/bugs/modalg_1/bug10160_9
deleted file mode 100755 (executable)
index 3a6368e..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-puts "============"
-puts "OCC10160"
-puts "============"
-puts ""
-#######################################################################
-# BOP perfomance improvemen
-#######################################################################
-
-set BugNumber OCC10160
-
-restore [locate_data_file OCC10160-2.brep] b1 
-restore [locate_data_file OCC10160-3.brep] b2 
-
-set NbTests 3
-
-puts "Prepare boolean operation ..."
-dchrono h0 reset; dchrono h0 start
-bop b1 b2
-dchrono h0 stop; set CPU_time0_List [dchrono h0 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time0_List full CPU_user_time0
-puts "CPU_user_time0=${CPU_user_time0}"
-
-puts "Start boolean operation ..."
-dchrono h reset; dchrono h start
-#
-# BOOLEAN OPERATION ----- START
-#
-for {set i 1} {$i <= ${NbTests}} {incr i} {
-   bopcommon result
-}
-#
-# BOOLEAN OPERATION ----- FINISH
-#
-dchrono h stop; set CPU_time_List [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $CPU_time_List full CPU_user_time
-puts "Finish boolean operation ..."
-puts "CPU_user_time=${CPU_user_time}"
-set CPU_user_time [expr ${CPU_user_time} / ${NbTests}]
-puts "CPU_user_time=${CPU_user_time}"
-
-checkprops result -s 4.86635e+06 
-checkshape result
-
-# Analysis of "nbshapes res"
-checknbshapes result -vertex 88 -edge 131 -wire 45 -face 45 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 312
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug165_4 b/tests/bugs/modalg_1/bug165_4
deleted file mode 100755 (executable)
index 0508ab3..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-puts "TODO OCC25919 ALL: Error: Offset is not done."
-puts "TODO OCC25919 ALL: Faulty OCC165"
-puts "TODO OCC25919 ALL: Error : The length of result shape is"
-
-cpulimit 600
-
-puts "========"
-puts "OCC165"
-puts "========"
-puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
-
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file offset_wire_019.brep] a 
-checkshape a
-
-mkplane f a
-checkshape f
-
-set start_stepoffset -5.7
-set incr_stepoffset 0.1
-set finish_stepoffset -2.8
-
-set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
-
-set IsMade 0
-set IsBeginMade 0
-set IsGood 1
-set i 0
-set resume_string ""
-for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
-    incr i
-    puts "i = $i"
-    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
-        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
-        set IsGood 0
-        set IsMade 0
-    } else {
-        puts "OK OCC165 (stepoffset = $stepoffset)"
-        set IsMade 1
-    }
-    if {$IsBeginMade == 0 && $IsMade == 1} {
-        set IsBeginMade 1
-        set BeginStepOffset $stepoffset
-    }
-    if {$IsMade == 1} {
-        set FinishStepOffset $stepoffset
-    }
-
-    dchrono h show
-
-    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
-        set IsBeginMade 0
-        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
-        set resume_string "${resume_string}${resume_tmp}"
-    }
-}
-
-puts ""
-if {[string length $resume_string] == 0} {
-    puts "Offset is created wrongly on initial shape in following borders"
-    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
-} else {
-    puts "Offset is created correctly on initial shape in following borders"
-    puts "$resume_string"
-}
-
-if {$IsGood == 1} {
-    puts "OCC165 OK"
-} else {
-    puts "Faulty OCC165"
-}
-
-dchrono h stop
-dchrono h show
-
-renamevar result_1 result
-
-checkprops result -l 0 
-checkshape result
-checksection result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug165_5 b/tests/bugs/modalg_1/bug165_5
deleted file mode 100755 (executable)
index d3ea075..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-cpulimit 600
-
-puts "========"
-puts "OCC165"
-puts "========"
-puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file offset_wire_019.brep] a 
-checkshape a
-
-mkplane f a
-checkshape f
-
-set start_stepoffset -2.6
-set incr_stepoffset 0.1
-set finish_stepoffset 0.0
-
-set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
-
-set IsMade 0
-set IsBeginMade 0
-set IsGood 1
-set i 0
-set resume_string ""
-for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
-    incr i
-    puts "i = $i"
-    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
-        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
-        set IsGood 0
-        set IsMade 0
-    } else {
-        puts "OK OCC165 (stepoffset = $stepoffset)"
-        set IsMade 1
-    }
-    if {$IsBeginMade == 0 && $IsMade == 1} {
-        set IsBeginMade 1
-        set BeginStepOffset $stepoffset
-    }
-    if {$IsMade == 1} {
-        set FinishStepOffset $stepoffset
-    }
-
-    dchrono h show
-
-    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
-        set IsBeginMade 0
-        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
-        set resume_string "${resume_string}${resume_tmp}"
-    }
-}
-
-puts ""
-if {[string length $resume_string] == 0} {
-    puts "Offset is created wrongly on initial shape in following borders"
-    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
-} else {
-    puts "Offset is created correctly on initial shape in following borders"
-    puts "$resume_string"
-}
-
-if {$IsGood == 1} {
-    puts "OCC165 OK"
-} else {
-    puts "Faulty OCC165"
-}
-
-dchrono h stop
-dchrono h show
-
-renamevar result_1 result
-
-checkprops result -l 1081.52 
-checkshape result
-checksection result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_1/bug165_6 b/tests/bugs/modalg_1/bug165_6
deleted file mode 100755 (executable)
index 2cf2819..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-
-cpulimit 600
-
-puts "========"
-puts "OCC165"
-puts "========"
-puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
-
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file offset_wire_019.brep] a 
-checkshape a
-
-mkplane f a
-checkshape f
-
-set start_stepoffset 0.2
-set incr_stepoffset 0.1
-set finish_stepoffset 4.9
-
-set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
-
-set IsMade 0
-set IsBeginMade 0
-set IsGood 1
-set i 0
-set resume_string ""
-for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
-    incr i
-    puts "i = $i"
-    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
-        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
-        set IsGood 0
-        set IsMade 0
-    } else {
-        puts "OK OCC165 (stepoffset = $stepoffset)"
-        set IsMade 1
-    }
-    if {$IsBeginMade == 0 && $IsMade == 1} {
-        set IsBeginMade 1
-        set BeginStepOffset $stepoffset
-    }
-    if {$IsMade == 1} {
-        set FinishStepOffset $stepoffset
-    }
-
-    dchrono h show
-
-    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
-        set IsBeginMade 0
-        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
-        set resume_string "${resume_string}${resume_tmp}"
-    }
-}
-
-puts ""
-if {[string length $resume_string] == 0} {
-    puts "Offset is created wrongly on initial shape in following borders"
-    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
-} else {
-    puts "Offset is created correctly on initial shape in following borders"
-    puts "$resume_string"
-}
-
-if {$IsGood == 1} {
-    puts "OCC165 OK"
-} else {
-    puts "Faulty OCC165"
-}
-
-renamevar result_1 result
-
-checkprops result -l 1112.83 
-checkshape result
-checksection result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-dchrono h stop
-dchrono h show
diff --git a/tests/bugs/modalg_1/bug165_7 b/tests/bugs/modalg_1/bug165_7
deleted file mode 100755 (executable)
index 21dac58..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-cpulimit 600
-
-puts "========"
-puts "OCC165"
-puts "========"
-puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file offset_wire_019.brep] a 
-checkshape a
-
-mkplane f a
-checkshape f
-
-set start_stepoffset 5.1
-set incr_stepoffset 0.1
-set finish_stepoffset 6.3
-
-set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
-
-set IsMade 0
-set IsBeginMade 0
-set IsGood 1
-set i 0
-set resume_string ""
-for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
-    incr i
-    puts "i = $i"
-    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
-        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
-        set IsGood 0
-        set IsMade 0
-    } else {
-        puts "OK OCC165 (stepoffset = $stepoffset)"
-        set IsMade 1
-    }
-    if {$IsBeginMade == 0 && $IsMade == 1} {
-        set IsBeginMade 1
-        set BeginStepOffset $stepoffset
-    }
-    if {$IsMade == 1} {
-        set FinishStepOffset $stepoffset
-    }
-
-    dchrono h show
-
-    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
-        set IsBeginMade 0
-        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
-        set resume_string "${resume_string}${resume_tmp}"
-    }
-}
-
-puts ""
-if {[string length $resume_string] == 0} {
-    puts "Offset is created wrongly on initial shape in following borders"
-    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
-} else {
-    puts "Offset is created correctly on initial shape in following borders"
-    puts "$resume_string"
-}
-
-if {$IsGood == 1} {
-    puts "OCC165 OK"
-} else {
-    puts "Faulty OCC165"
-}
-
-renamevar result_1 result
-
-checkprops result -l 1113.06 
-checkshape result
-checksection result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-dchrono h stop
-dchrono h show
diff --git a/tests/bugs/modalg_1/bug19793_2 b/tests/bugs/modalg_1/bug19793_2
deleted file mode 100755 (executable)
index 939cdfa..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-puts "============"
-puts "OCC19793"
-puts "============"
-puts ""
-#######################################################################
-# Fuse problem of symetrical shapes. Appendix for NPAL19789
-#######################################################################
-
-cpulimit 2500
-set BugNumber OCC19793
-
-puts "Load first shape ..."
-restore [locate_data_file bug19793_new_shape.brep] b1 
-puts "Load second shape ..."
-restore [locate_data_file bug19793_shape.brep] b2 
-
-puts "Prepare boolean operation ..."
-dchrono perf_h reset
-dchrono perf_h start
-bop b1 b2
-dchrono perf_h stop
-
-puts "Start boolean operation ..."
-bopsection result
-puts "Finish boolean operation ..."
-
-checkprops result -l 17730.1 
-checkshape result
-checksection result
-
-checknbshapes result -vertex 68 -edge 70 -wire 0 -face 0 -shell 0 -solid 0 -compsolid 0 -compound 1 -shape 139
-
-# OCC23753 processing
-# Performance verification of bop operation
-set chrono_info [dchrono perf_h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $chrono_info full CPU_time
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    puts "Checking WINDOWS performance..."
-    if {$CPU_time > 1000.} {
-       puts "ERROR: OCC23753 is reproduced."
-       puts "       Low performance: $CPU_time"
-    }
-  } else {
-    puts "Checking LINUX performance..."
-    if {$CPU_time > 2500.} {
-       puts "ERROR: OCC23753 is reproduced."
-       puts "       Low performance: $CPU_time"
-    }
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    puts "Checking WINDOWS performance..."
-    # Initial CPU_time is 92-94 seconds for Windows
-    if {$CPU_time > 300.} {
-       puts "ERROR: OCC23753 is reproduced."
-       puts "       Low performance: $CPU_time"
-    }
-  } else {
-    puts "Checking LINUX performance..."
-    # Initial CPU_time is 287-289 seconds for Linux
-    if {$CPU_time > 350.} {
-       puts "ERROR: OCC23753 is reproduced."
-       puts "       Low performance: $CPU_time"
-    }
-  }
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_2/bug452_1 b/tests/bugs/modalg_2/bug452_1
deleted file mode 100755 (executable)
index 9623e6a..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-
-puts "========"
-puts "OCC452"
-puts "(case 1)"
-puts "========"
-puts ""
-
-pcone pc 10 0 20
-explode pc f
-
-prism pcy pc_2 0 0 10
-
-dchrono h2 reset
-dchrono h2 start
-
-bcut result pc pcy
-
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 3 } {                             
-    puts "Elapsed time is more then 3 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 3 seconds - OK"      
-}
-
-checkprops result -s 254.16 
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
diff --git a/tests/bugs/modalg_2/bug452_2 b/tests/bugs/modalg_2/bug452_2
deleted file mode 100755 (executable)
index 15603c0..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-
-puts "========"
-puts "GER60239"
-puts "OCC452"
-puts "(case 2)"
-puts "========"
-puts ""
-
-restore [locate_data_file mds-part1.rle] a 
-set che [checkshape a]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 1): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 1): Source shape is valid"
-}
-
-restore [locate_data_file mds-part2.rle] b
-set che [checkshape b]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 2): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 2): Source shape is valid"
-}
-
-restore [locate_data_file CTO900_ger60239a.rle] c
-set che [checkshape c]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 3): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 3): Source shape is valid"
-}
-
-restore [locate_data_file CTO900_ger60239b.rle] d
-set che [checkshape d]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 4): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 4): Source shape is valid"
-}
-dchrono h2 reset
-dchrono h2 start
-
-bfuse r a b
-#checkshape r
-
-bfuse result c d
-
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 60 } {                             
-    puts "Elapsed time is more then 60 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 60 seconds - OK"      
-}
-checkprops result -s 3468.6 
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_2/bug452_3 b/tests/bugs/modalg_2/bug452_3
deleted file mode 100755 (executable)
index 5ca95cc..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-
-puts "========"
-puts "GER60239"
-puts "OCC452"
-puts "(case 3)"
-puts "========"
-puts ""
-
-restore [locate_data_file CTO900_ger60239a.rle] a 
-set che [checkshape a]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 5): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 5): Source shape is valid"
-}
-
-restore [locate_data_file CTO900_ger60239b.rle] b
-set che [checkshape b]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 6): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 6): Source shape is valid"
-}
-
-dchrono h2 reset
-dchrono h2 start
-
-bfuse result a b
-#checkshape -top res
-
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 50 } {                             
-    puts "Elapsed time is more then 50 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 50 seconds - OK"      
-}
-checkprops result -s 3468.6 
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
diff --git a/tests/bugs/modalg_2/bug452_4 b/tests/bugs/modalg_2/bug452_4
deleted file mode 100755 (executable)
index 65ea0e1..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-
-puts "========"
-puts "PRO7934"
-puts "OCC452"
-puts "(case 4)"
-puts "========"
-puts ""
-
-restore [locate_data_file CTO900_pro7934a.rle] a 
-set che [checkshape a]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 7): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 7): Source shape is valid"
-}
-
-restore [locate_data_file CTO900_pro7934b.rle] b
-set che [checkshape b]
-if { [regexp {Faulty} $che ] == 1 } {
-    puts "Faulty OCC452 (shape 8): Source shape is invalid. It was detected by Checkshape command"
-} else {
-    puts "OCC452 OK (shape 8): Source shape is valid"
-}
-
-dchrono h2 reset
-dchrono h2 start
-
-bfuse result a b
-#checkshape -top res
-
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 5 } {                             
-    puts "Elapsed time is more then 5 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 5 seconds - OK"      
-}
-checkprops result -s 201978 
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
-
diff --git a/tests/bugs/modalg_2/bug453_1 b/tests/bugs/modalg_2/bug453_1
deleted file mode 100755 (executable)
index d2aa64c..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-puts "TODO OCC24156 MacOS: Tcl Exception:"
-puts "TODO OCC24156 MacOS: TEST INCOMPLETE"
-
-puts "========"
-puts "OCC453"
-puts "(case 1)"
-puts "========"
-puts ""
-
-dchrono h2 reset
-dchrono h2 start
-
-set make_print_out 0
-
-dset SCALE 1000.
-dset SCALE1 5
-tolblend 0.01 1e-04 1e-05 1e-03
-
-restore [locate_data_file CFI_5_f12fgk.rle] s 
-tscale s 0 0 0 SCALE1
-explode s E
-
-blend result s 0.5*SCALE1 s_1 0.5*SCALE1 s_4 0.5*SCALE1 s_12 0.5*SCALE1 s_8 0.5*SCALE1 s_6
-explode result sh
-tcopy result_1 result
-
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 50 } {                             
-    puts "Elapsed time is more then 50 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 50 seconds - OK"      
-}
-checkprops result -s 6021.51 
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_2/bug453_2 b/tests/bugs/modalg_2/bug453_2
deleted file mode 100755 (executable)
index 792da66..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-puts "TODO ?OCC25918 Windows: Error : The area of result shape is"
-puts "TODO OCC24156 MacOS: Tcl Exception:"
-puts "TODO OCC24156 MacOS: TEST INCOMPLETE"
-
-puts "========"
-puts "OCC453"
-puts "(case 2)"
-puts "========"
-puts ""
-
-dchrono h2 reset
-dchrono h2 start
-
-set make_print_out 0
-
-dset SCALE 1000.
-dset SCALE1 5
-tolblend 0.01 1e-04 1e-05 1e-03
-
-restore [locate_data_file shading_137.brep] s 
-tscale s 0 0 0 SCALE1
-explode s E
-
- blend result s  4.5*SCALE1 s_2  4.5*SCALE1 s_1  4.5*SCALE1 s_6 4.5*SCALE1 s_8  4.5*SCALE1 s_10 4.5*SCALE1 s_14  4.5*SCALE1 s_4 4.5*SCALE1 s_5 4.5*SCALE1 s_16 4.5*SCALE1 s_11 4.5*SCALE1 s_19 4.5*SCALE1 s_13
-  explode result So
-  tcopy result_1 result 
-
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 110 } {                             
-    puts "Elapsed time is more then 110 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 110 seconds - OK"      
-}
-
-checkprops result -s 3.65777e+06 
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_2/bug5157_1 b/tests/bugs/modalg_2/bug5157_1
deleted file mode 100755 (executable)
index 80480a0..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-puts "============"
-puts "OCC5157"
-puts "============"
-puts ""
-######################################################
-# DRAW commands vprops and sprops with tolerance 1.e-6 hange on attached shape.
-######################################################
-
-cpulimit 3500
-#dchrono h reset; dchrono h start
-
-catch { pload XDE }
-
-set BugNumber OCC5157
-
-set status 0
-set filepath [locate_data_file OCC5157.stp]
-if {[catch { stepread $filepath a * } catch_result] } {
-    puts "Faulty ${BugNumber} : here is reading problem"
-} else {
-    tpcompound result
-}
-
-checkprops result -s 35273.9 -eps 1.e-6
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
diff --git a/tests/bugs/modalg_2/bug5157_2 b/tests/bugs/modalg_2/bug5157_2
deleted file mode 100755 (executable)
index e9de1dd..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-puts "============"
-puts "OCC5157"
-puts "============"
-puts ""
-######################################################
-# DRAW commands vprops and sprops with tolerance 1.e-6 hange on attached shape.
-######################################################
-
-cpulimit 3500
-#dchrono h reset; dchrono h start
-
-catch { pload XDE }
-
-set BugNumber OCC5157
-
-set filepath [locate_data_file OCC5157.stp]
-if { [catch { stepread $filepath a * } catch_result] } {
-    puts "Faulty ${BugNumber} : here is reading problem"
-} else {
-    tpcompound result
-}
-
-checkprops result -s 35362.3 -eps 1.e-6
-checkshape result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
diff --git a/tests/bugs/modalg_4/bug83_1 b/tests/bugs/modalg_4/bug83_1
deleted file mode 100755 (executable)
index 14a64dc..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-puts "============"
-puts "BUC60912"
-puts "OCC83"
-puts "============"
-puts ""
-###############################
-## Section of simple BSpline surfaces is performed too slow
-###############################
-
-puts "1 case: perform section with plane"
-restore [locate_data_file BUC60912_sec_slow.brep] c 
-explode c
-checkshape c_1
-checkshape c_2
-
-renamevar c_1 sh
-renamevar c_2 pr
-plane f 0 0 0 1 0 0
-mkface f f -11 11 -11 11
-
-dchrono h reset
-dchrono h start
-bsection result f pr
-
-dchrono h stop
-set q2 [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z
-puts "$z"
-if { $z > 5 } {                                         
-    puts "Elapsed time is more then 5 seconds - Faulty"                                                                               
-} else {
-    puts "Elapsed time is less then 5 - OK"                                                                                                  
-}
-
-checkprops result -l 42.879 
-checkshape result 
-checksection result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
diff --git a/tests/bugs/modalg_4/bug83_2 b/tests/bugs/modalg_4/bug83_2
deleted file mode 100755 (executable)
index f24d812..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-puts "============"
-puts "BUC60912"
-puts "OCC83"
-puts "============"
-puts ""
-###############################
-## Section of simple BSpline surfaces is performed too slow
-###############################
-
-puts "2 case: perform section with planar BSpline surface"
-restore [locate_data_file BUC60912_sec_slow.brep] c 
-explode c
-checkshape c_1
-checkshape c_2
-
-renamevar c_1 sh
-renamevar c_2 pr
-plane f 0 0 0 1 0 0
-mkface f f -11 11 -11 11
-
-puts "Info: perform section with planar BSpline surface"
-dchrono h2 reset
-dchrono h2 start
-bsection result sh pr
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 40 } {                             
-    puts "Elapsed time is more then 40 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 40 - OK"      
-}
-checkprops result -l 42.879 
-checkshape result 
-checksection result
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
diff --git a/tests/bugs/modalg_5/bug23906 b/tests/bugs/modalg_5/bug23906
deleted file mode 100755 (executable)
index 27878e7..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-puts "============"
-puts "OCC23906"
-puts "============"
-puts ""
-###############################
-## Performance of the projection algorithm in some cases became lower after integration of the fix for the bug 0022610
-###############################
-
-restore [locate_data_file bug23906_f.brep] f
-
-point p 3.5527136788005e-015 100 100
-
-dchrono h reset
-dchrono h start
-
-projponf f p -min -t
-
-dchrono h stop
-set q2 [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z
-puts "$z"
-if { [checkplatform -windows] }  {
-   puts "OS = Windows NT"
-   set max_time 0.5
-} else {
-   puts "OS = Linux"
-   set max_time 0.1
-}
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/modalg_5/bug24005 b/tests/bugs/modalg_5/bug24005
deleted file mode 100755 (executable)
index 21f8474..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-puts "============"
-puts "OCC24005"
-puts "============"
-puts ""
-###############################
-## Intersecting a slightly off angle plane with a cylinder takes 7+ seconds
-###############################
-
-pload QAcommands
-
-dchrono h reset
-dchrono h start
-
-OCC24005 result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-set max_time 0.4
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-if { [regexp {Ellipse} [dump result]] == 1 } {
-    puts "result is OK"
-} else {
-    puts "result is Faulty"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug24696 b/tests/bugs/modalg_5/bug24696
deleted file mode 100644 (file)
index a7714e1..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-puts "========="
-puts "OCC24696"
-puts "========="
-puts ""
-###########################################################
-# Lower performance of the new Edge/Edge intersection algorithm
-###########################################################
-
-pload QAcommands
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
-
-bclearobjects
-bcleartools
-
-set edges [explode cx e]
-set nbe [llength $edges]
-for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
-bfillds
-bbuild result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 100.0
-  } else {
-    set max_time 200.0
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 25.0
-  } else {
-    set max_time 40.0
-  }
-}
-
-if { [regexp {Mac OS X} [dversion]] } {
-  set max_time 100.0
-}
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug24751_1 b/tests/bugs/modalg_5/bug24751_1
deleted file mode 100644 (file)
index 74575b0..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-puts "========="
-puts "OCC24751"
-puts "========="
-puts ""
-###########################################################
-# Performance improvements in the Edge/Edge intersection algorithm
-###########################################################
-
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 250
-  } else {
-    set max_time 290
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 65
-  } else {
-    set max_time 100
-  }
-}
-
-if { [regexp {Mac OS X} [dversion]] } {
-  set max_time 320
-}
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
-
-###------------------####
-trotate cx 0 0 0 0 0 1 45
-###------------------####
-
-bclearobjects
-bcleartools
-
-set edges [explode cx e]
-set nbe [llength $edges]
-for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
-bfillds
-bbuild result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug24751_2 b/tests/bugs/modalg_5/bug24751_2
deleted file mode 100644 (file)
index 3a60739..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-puts "========="
-puts "OCC24751"
-puts "========="
-puts ""
-###########################################################
-# Performance improvements in the Edge/Edge intersection algorithm
-###########################################################
-
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 300
-  } else {
-    set max_time 400
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 100
-  } else {
-    set max_time 120
-  }
-}
-
-if { [regexp {Mac OS X} [dversion]] } {
-  set max_time 440
-}
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
-
-###------------------####
-trotate cx 0 0 0 0 1 1 45
-###------------------####
-
-bclearobjects
-bcleartools
-
-set edges [explode cx e]
-set nbe [llength $edges]
-for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
-bfillds
-bbuild result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug24751_3 b/tests/bugs/modalg_5/bug24751_3
deleted file mode 100644 (file)
index 9f5ee9b..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-puts "========="
-puts "OCC24751"
-puts "========="
-puts ""
-###########################################################
-# Performance improvements in the Edge/Edge intersection algorithm
-###########################################################
-
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 500
-  } else {
-    set max_time 500
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 130
-  } else {
-    set max_time 160
-  }
-}
-
-if { [regexp {Mac OS X} [dversion]] } {
-  set max_time 260
-}
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
-
-###------------------####
-trotate cx 0 0 0 1 1 1 45
-###------------------####
-
-bclearobjects
-bcleartools
-
-set edges [explode cx e]
-set nbe [llength $edges]
-for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
-bfillds
-bbuild result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug24751_4 b/tests/bugs/modalg_5/bug24751_4
deleted file mode 100644 (file)
index ac3004d..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-puts "========="
-puts "OCC24751"
-puts "========="
-puts ""
-###########################################################
-# Performance improvements in the Edge/Edge intersection algorithm
-###########################################################
-
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 550
-  } else {
-    set max_time 550
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 130
-  } else {
-    set max_time 150
-  }
-}
-
-if { [regexp {Mac OS X} [dversion]] } {
-  set max_time 260
-}
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
-
-###------------------####
-trotate cx 0 0 0 0 1 1 90
-###------------------####
-
-bclearobjects
-bcleartools
-
-set edges [explode cx e]
-set nbe [llength $edges]
-for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
-bfillds
-bbuild result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug24751_5 b/tests/bugs/modalg_5/bug24751_5
deleted file mode 100644 (file)
index 8d263ee..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-puts "========="
-puts "OCC24751"
-puts "========="
-puts ""
-###########################################################
-# Performance improvements in the Edge/Edge intersection algorithm
-###########################################################
-
-pload QAcommands
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 300
-  } else {
-    set max_time 500
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 100
-  } else {
-    set max_time 150
-  }
-}
-
-if { [regexp {Mac OS X} [dversion]] } {
-  set max_time 270
-}
-
-dchrono h reset
-dchrono h start
-
-restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
-
-###------------------####
-trotate cx 0 0 0 1 1 1 90
-###------------------####
-
-bclearobjects
-bcleartools
-
-set edges [explode cx e]
-set nbe [llength $edges]
-for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
-bfillds
-bbuild result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug24899 b/tests/bugs/modalg_5/bug24899
deleted file mode 100644 (file)
index b71f27a..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-puts "=========="
-puts "OCC24899"
-puts "=========="
-puts ""
-##################################################################################################
-# Time of computation of intersection points with help of class BRepIntCurveSurface_Inter is big
-##################################################################################################
-
-polyline l -10 1 1 80 1 1
-explode l e
-
-restore [locate_data_file bug24899_TheHull.brep] h1
-mkcurve c1 l_1
-BRepIntCS c1 h1 r
-distmini dd l_1 h1
-
-dchrono t1 reset
-dchrono t1 start
-
-for { set i 0} { $i <= 100 } {incr i} {
-  BRepIntCS c1 h1 r
-}
-
-dchrono t1 stop
-set time1 [dchrono t1 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $time1 full timeint
-puts "Time performing BRepIntCurveSurface =  $timeint"
-
-dchrono t2 reset
-dchrono t2 start
-for { set j 0} { $j <= 100 } {incr j} {
-  distmini dd l_1 h1
-}
-
-dchrono t2 stop
-set time2 [dchrono t2 show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $time2 full timeextr
-puts "Time performing BRepExtrema_DistShapeShape = $timeextr"
-
-if { $timeint > 2 * $timeextr } {
-  puts "Error : Time of intersection of curve with shell is more than two time from BRepExtrema"
-} else {
-  puts "OK: Time is good"
-}
diff --git a/tests/bugs/modalg_5/bug25019 b/tests/bugs/modalg_5/bug25019
deleted file mode 100755 (executable)
index 103d78d..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-puts "============"
-puts "OCC25019"
-puts "============"
-puts ""
-###############################
-## Command "bsection" in Test Harness with flag build pcurve on second shape works slowly.
-###############################
-
-restore [locate_data_file bug25019_a_shape_1.brep] a1
-restore [locate_data_file bug25019_prism.brep] p1
-
-# 1.
-dchrono h1 reset
-dchrono h1 start
-
-bsection r a1 p1 -n2d2
-
-dchrono h1 stop
-set q1 [dchrono h1 show]
-
-# 2.
-dchrono h2 reset
-dchrono h2 start
-
-bsection r a1 p1
-
-dchrono h2 stop
-set q2 [dchrono h2 show]
-
-#
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q1 full t1
-puts "$t1"
-if { [checkplatform -windows] }  {
-   puts "OS = Windows NT"
-   set max_time1 20
-} else {
-   puts "OS = Linux"
-   set max_time1 30
-}
-if { $t1 > ${max_time1} } {                                         
-    puts "Elapsed time is more than ${max_time1} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time1} seconds - OK"
-}
-
-#
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full t2
-puts "$t2"
-if { [checkplatform -windows] }  {
-   puts "OS = Windows NT"
-   set max_time2 20
-} else {
-   puts "OS = Linux"
-   set max_time2 30
-}
-if { $t2 > ${max_time2} } {                                         
-    puts "Elapsed time is more than ${max_time2} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time2} seconds - OK"
-}
diff --git a/tests/bugs/modalg_5/bug25058 b/tests/bugs/modalg_5/bug25058
deleted file mode 100755 (executable)
index cea1cd9..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-puts "============"
-puts "OCC25058"
-puts "============"
-puts ""
-###############################
-## Regression of performance of BRepExtrema_ExtCC (1000 times slower)
-###############################
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 1
-    set max_time2 1
-  } else {
-    set max_time 1
-    set max_time2 1
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 1
-    set max_time2 1
-  } else {
-    set max_time 1
-    set max_time2 1
-  }
-}
-
-restore [locate_data_file bug25058_e1.brep] e1
-restore [locate_data_file bug25058_e2.brep] e2
-
-dchrono h reset
-dchrono h start
-
-distmini r e1 e2
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time of distmini is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time of distmini is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/modalg_5/bug25413 b/tests/bugs/modalg_5/bug25413
deleted file mode 100644 (file)
index e87037c..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-puts "========"
-puts "OCC25413"
-puts "========"
-puts ""
-#############################################################
-# Line-Shape intersection algorithm became 400 times slower
-#############################################################
-
-pload QAcommands
-
-restore [locate_data_file bug25413.brep] w
-
-dchrono perf_h reset
-dchrono perf_h start
-OCC25413 w
-dchrono perf_h stop
-
-set chrono_info [dchrono perf_h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $chrono_info full CPU_time
-puts "Elapsed time is: $CPU_time"
-
-if { [checkplatform -windows] } {
-  if {[regexp {Debug mode} [dversion]]} {
-    # initial CPU_time for WINDOWS in DEBUG mode is 90 sec
-    puts "Checking WINDOWS performance in debug mode..."
-    if {$CPU_time > 90.} {
-      puts "ERROR: OCC25413 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 90 sec)"
-    } else {
-      puts "Done!"
-    }
-  } else {
-    puts "Checking WINDOWS performance in optimize mode..."
-    # initial CPU_time for WINDOWS in OPTIMIZE mode is 30 sec
-    if {$CPU_time > 30.} {
-      puts "ERROR: OCC25413 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 30 sec)"
-    } else {
-      puts "Done!"
-    }
-  }
-} else {
-  if {[regexp {Debug mode} [dversion]]} {
-    # initial CPU_time for LINUX in DEBUG mode is 90 sec
-    puts "Checking LINUX performance in debug mode..."
-    if {$CPU_time > 90.} {
-      puts "ERROR: OCC25413 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 90 sec)"
-    } else {
-      puts "Done!"
-    }
-  } else {
-    puts "Checking LINUX performance in optimize mode..."
-    # initial CPU_time for LINUX in OPTIMIZE mode is 30 sec
-    if {$CPU_time > 30.} {
-      puts "ERROR: OCC25413 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 30 sec)"
-    } else {
-      puts "Done!"
-    }
-  }
-}
diff --git a/tests/bugs/modalg_5/bug25742_1 b/tests/bugs/modalg_5/bug25742_1
deleted file mode 100755 (executable)
index d4447f4..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-puts "============"
-puts "OCC25742"
-puts "============"
-puts ""
-###############################
-## A partition of 2 shapes stresses a performance issue
-###############################
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 150
-  } else {
-    set max_time 100
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 30
-  } else {
-    set max_time 20
-  }
-}
-
-restore [locate_data_file bug25742_pipeFiss.brep] b1
-restore [locate_data_file bug25742_shellFiss.brep] b2
-
-bclearobjects
-bcleartools
-baddobjects b1
-baddtools b2
-dchrono h reset
-dchrono h start
-
-bfillds
-bbuild result
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time of bbuild is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time of bbuild is less than ${max_time} seconds - OK"
-}
-
-checkprops result -s 280627 
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 14
- EDGE      : 24
- WIRE      : 11
- FACE      : 10
- SHELL     : 1
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 61
-"
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
-checkview -display result -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_5/bug25742_2 b/tests/bugs/modalg_5/bug25742_2
deleted file mode 100755 (executable)
index 6dad90a..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-puts "============"
-puts "OCC25742"
-puts "============"
-puts ""
-###############################
-## A partition of 2 shapes stresses a performance issue
-###############################
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 10
-    set max_time2 10
-  } else {
-    set max_time 10
-    set max_time2 10
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 1
-    set max_time2 1
-  } else {
-    set max_time 1
-    set max_time2 1
-  }
-}
-
-restore [locate_data_file bug25742_pipeFiss.brep] b1
-restore [locate_data_file bug25742_shellFiss.brep] b2
-
-explode b1 f
-explode b2 f
-
-smallview
-donly b1_4
-fit
-display b2_1
-
-dchrono h reset
-dchrono h start
-
-bopcurves b1_4 b2_1 -2d
-
-dchrono h stop
-
-checkview -screenshot -2d -path ${imagedir}/${test_image}_1.png
-
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time of bopcurves is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time of bopcurves is less than ${max_time} seconds - OK"
-}
-
-
-mksurface s1 b1_4
-mksurface s2 b2_1
-
-dchrono h2 reset
-dchrono h2 start
-
-set CurveNumb [intersect resi s1 s2]
-
-dchrono h2 stop
-set q2 [dchrono h2 show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-
-if { $z2 > ${max_time2} } {
-    puts "Elapsed time of intersect is more than ${max_time2} seconds - Faulty"
-} else {
-    puts "Elapsed time of intersect is less than ${max_time2} seconds - OK"
-}
-
-if { [llength ${CurveNumb}] < 1 } {
-    puts "Error : Bad intersection"
-} else {
-    puts "OK : Good intersection"
-}
-
-don resi*
-fit
-display s1 s2
-
-checkview -screenshot -2d -path ${imagedir}/${test_image}_2.png
diff --git a/tests/bugs/modalg_5/bug25788 b/tests/bugs/modalg_5/bug25788
deleted file mode 100644 (file)
index 465299e..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-puts "========="
-puts "OCC25788"
-puts "========="
-puts ""
-###############################################
-# Parallelization of the BOP Builder algorithm on second level
-###############################################
-
-# box plate to cut the holes from
-box b1 100 100 1
-
-# N defines number of holes along each of X and Y, thus total N^2 holes
-# will be drilled; note that the algorithm iself is likely to be quadratic
-# for number of shapes, i.e. CPU 
-set N 40
-set holes {}
-for {set i 1} {$i < $N} {incr i} {
- for {set j 1} {$j < $N} {incr j} {
-   pcylinder p_${i}_$j 0.5 1
-   ttranslate p_${i}_$j [expr $i * 100. / $N]  [expr $j * 100. / $N]  0.
-   lappend holes p_${i}_$j
- }
-}
-
-eval compound $holes b2
-
-bclearobjects
-bcleartools
-baddobjects b1
-baddtools b2
-
-brunparallel 1
-
-dchrono cpu reset
-dchrono cpu start
-bcut r b1 b2 
-dchrono cpu stop
-set chrono_info [dchrono cpu show]
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 200
-  } else {
-    set max_time 200
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 50
-  } else {
-    set max_time 50
-  }
-}
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} ${chrono_info} full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/modalg_6/bug26310_1 b/tests/bugs/modalg_6/bug26310_1
deleted file mode 100644 (file)
index 394cfad..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-puts "========"
-puts "OCC26310"
-puts "========"
-puts ""
-#################################################
-# Very slow boolean cut operations on cylinders
-#################################################
-
-if { [regexp {Debug mode} [dversion]] } {
-    set max_time 0.3
-} else {
-    set max_time 0.15
-}
-
-set maxToler 1.5e-5
-
-restore [locate_data_file OCC26310-b1.brep] b1 
-restore [locate_data_file OCC26310-b2.brep] b2 
-
-explode b1 f
-explode b2 f
-
-dchrono cr reset
-dchrono cr start
-set log1 [bopcurves b1_1 b2_1 -2d]
-dchrono cr stop
-
-regexp {Tolerance Reached=+([-0-9.+eE]+)} ${log1} full Toler
-
-puts "TolReached = $Toler"
-
-if { $Toler > $maxToler } {
-  puts "Error: Tolerance is too big ($Toler > $maxToler)"
-}
-
-set log2 [dchrono cr show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $log2 full sec
-
-if { $sec > ${max_time} } {
-    puts "Error: CPU user time is more than ${max_time} seconds"
-} else {
-    puts "OK: CPU user time is less than ${max_time} seconds"
-}
diff --git a/tests/bugs/modalg_6/bug26327 b/tests/bugs/modalg_6/bug26327
deleted file mode 100755 (executable)
index 184fb5c..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-puts "============"
-puts "OCC24596"
-puts "============"
-puts ""
-###############################
-## Slow import of IGES data
-###############################
-
-pload XDE
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 30
-  } else {
-    set max_time 30
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 10
-  } else {
-    set max_time 10
-  }
-}
-
-dchrono h reset
-dchrono h start
-
-stepread [locate_data_file bug26327_fuse_input.stp] a *
-
-for {set i 2} {$i < 22} {incr i} {
-   puts "a_$i"
-   bfuse a_1 a_1 a_$i
-   }
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time of import of IGES data is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time of import of IGES data is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/modalg_6/bug26443_1 b/tests/bugs/modalg_6/bug26443_1
deleted file mode 100644 (file)
index 2c0aa5d..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-puts "========"
-puts "OCC26443"
-puts "========"
-puts ""
-###########################
-# Offset surface hangs up
-###########################
-
-smallview
-
-restore [locate_data_file OCC26443-shell_1.brep] a
-
-chrono h reset
-dchrono h start
-offsetshape r a -2
-chrono h stop
-dchrono h show
-fit
-
-checkview -screenshot -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_6/bug26443_2 b/tests/bugs/modalg_6/bug26443_2
deleted file mode 100644 (file)
index 94f78db..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-puts "========"
-puts "OCC26443"
-puts "========"
-puts ""
-###########################
-# Offset surface hangs up
-###########################
-
-smallview
-
-restore [locate_data_file OCC26443-shell_2.brep] a
-
-chrono h reset
-dchrono h start
-offsetshape r a -2
-chrono h stop
-dchrono h show
-fit
-
-checkview -screenshot -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_6/bug26447 b/tests/bugs/modalg_6/bug26447
deleted file mode 100644 (file)
index 34e49d3..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-puts "============"
-puts "OCC26447"
-puts "============"
-puts ""
-##############################################################
-# Performance degradation intersecting cylindrical surfaces
-#############################################################
-
-cylinder c1 0 0 0 1 0 0 0 -1 0 100
-cylinder c2 0 0 0 0 1 0 1 0 0 100
-mkface f1 c1
-mkface f2 c2
-
-dchrono cr reset
-dchrono cr start
-
-for {set i 1} {$i <= 1000} {incr i} {
-  bopcurves f1 f2
-}
-
-dchrono cr stop
-if { [checkplatform -windows] } {
-  set max_time 7.5
-} else {
-  set max_time 4.5
-}
-set TimeList [dchrono cr show]
-regexp {Elapsed time: [-0-9.+eE]+ Hours [-0-9.+eE]+ Minutes ([-0-9.+eE]+) Seconds} $TimeList full ElapsedTime_sec
-
-if { ${ElapsedTime_sec} > ${max_time} } {
-  puts "Error: Elapsed time of intersecting is more than ${max_time} seconds"
-} else {
-  puts "OK: Elapsed time of intersecting is less than ${max_time} seconds"
-}
diff --git a/tests/bugs/modalg_6/bug26513 b/tests/bugs/modalg_6/bug26513
deleted file mode 100644 (file)
index c2f2bfb..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-puts "========"
-puts "OCC26513"
-puts "========"
-puts ""
-###########################################################
-# Offset API not returning result (seems to be "hanging")
-###########################################################
-
-set max_time 10
-
-smallview
-
-restore [locate_data_file bug26513-offset_input.brep] a
-
-unifysamedom s a -a 1.e-8
-offsetparameter 1.e-7 c i
-offsetload s 5
-offsetperform result
-
-checkshape result
-
-checkprops result -s 3.28125e+008 -v 3.07334e+010
-
-unifysamedom result_unif result
-checknbshapes result_unif -face 114 -shell 1
-
-checkview -display result_unif -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/modalg_6/bug26674 b/tests/bugs/modalg_6/bug26674
deleted file mode 100644 (file)
index 7fa6813..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-puts "========"
-puts "OCC26674"
-puts "========"
-puts ""
-#################################################
-# Performance regression in BRepExtrema_DistShapeShape in OCCT 6.9.0 in compare with OCCT 6.7.1
-#################################################
-
-set max_time 1
-
-restore [locate_data_file OCC26674-face.brep] a1
-restore [locate_data_file OCC26674-shell.brep] a2
-
-dchrono cr reset
-dchrono cr start
-
-distmini dd a1 a2
-
-dchrono cr stop
-
-set log [dchrono cr show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $log full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time of BRepExtrema_DistShapeShape is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time of BRepExtrema_DistShapeShape is less than ${max_time} seconds - OK"
-}
-
-regexp {([-0-9.+eE]+)$} [dump dd_val] full dist
-
-set expected_dist 0.0
-set tol_abs_dist 1.0e-07
-set tol_rel_dist 0.0
-checkreal "Dump of dd_val" ${dist} ${expected_dist} ${tol_abs_dist} ${tol_rel_dist}
diff --git a/tests/bugs/modalg_6/bug26914 b/tests/bugs/modalg_6/bug26914
deleted file mode 100644 (file)
index 353cf8c..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-puts "========"
-puts "OCC26914"
-puts "========"
-puts ""
-#################################
-# Hang in surface approximation
-#################################
-
-set max_time 2
-
-restore [locate_data_file bug23943_s.draw] s
-
-dchrono cr reset
-dchrono cr start
-approxsurf rs s 5e-5 0 0 15 15 100 0
-
-dchrono cr stop
-
-set chrono_info [dchrono cr show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $chrono_info full CPU_time
-if { $CPU_time > ${max_time} } {
-  puts "Elapsed time of surface approximation is more than ${max_time} seconds - Error"
-} else {
-  puts "Elapsed time of surface approximation is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/modalg_6/bug26929 b/tests/bugs/modalg_6/bug26929
deleted file mode 100644 (file)
index b89413a..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-puts "============"
-puts "OCC26929"
-puts "============"
-puts ""
-#############################################################################################
-## Extrema_ECC hang/crash in ShapeSplitter
-#############################################################################################
-cpulimit 100
-
-restore [locate_data_file OCC26629-face.brep] aF
-restore [locate_data_file OCC26629-edge.brep] aE
-
-pload MODELING
-
-# Hang check.
-dchrono cr reset
-dchrono cr start
-
-set ss ""
-foreach s [explode aE e] {set ss "$ss aF $s"}
-eval splitshape result aF $ss
-
-dchrono cr stop
-
-set max_time 20.0
-set log [dchrono cr show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $log full z
-
-
-if { $z > ${max_time} } {
-    puts "Elapsed time of BRepFeat_SplitShape is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time of BRepFeat_SplitShape is less than ${max_time} seconds - OK"
-}
-
-# Check result validity.
-checkshape result
-
-# Visual check.
-set 2dviewer 1
\ No newline at end of file
diff --git a/tests/bugs/modalg_6/bug26980 b/tests/bugs/modalg_6/bug26980
deleted file mode 100644 (file)
index 5066a6e..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-puts "========"
-puts "OCC26980"
-puts "========"
-puts ""
-#################################
-# Intersection part of Boolean algorithm spends much system time and system memory
-#################################
-
-set max_time 130
-set mem_max_wsetpeak 500000000
-
-
-bclearobjects;
-bcleartools;
-
-restore [locate_data_file bug26980-cmp.brep] cmp
-
-puts [nbshapes cmp -t]
-
-eval baddobjects [explode cmp]
-
-dchrono cr reset
-dchrono cr start
-
-bfillds
-bbuild result
-
-dchrono cr stop
-
-set mem_wsetpeak [meminfo wsetpeak]
-
-if { ${mem_wsetpeak} > ${mem_max_wsetpeak}} {
-    puts "Error : there is memory problem (${mem_wsetpeak} MBytes has been allocated)"
-}
-
-set chrono_info [dchrono cr show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $chrono_info full CPU_time
-if { $CPU_time > ${max_time} } {
-  puts "CPU user time of Boolean operation is more than ${max_time} seconds - Error"
-} else {
-  puts "CPU user time of Boolean operation is less than ${max_time} seconds - OK"
-}
-
-set nbshapes_expected "
- VERTEX    : 365
- EDGE      : 793
- WIRE      : 531
- FACE      : 531
- SHELL     : 102
- SOLID     : 101
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 2424
-"
-
-checknbshapes result -ref ${nbshapes_expected} -t
-
-smallview
-donly result
-fit
-
-set 2dviewer 1
diff --git a/tests/bugs/modalg_6/bug27085_1 b/tests/bugs/modalg_6/bug27085_1
deleted file mode 100644 (file)
index b2a5599..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-puts "============"
-puts "OCC27085"
-puts "============"
-puts ""
-###############################
-## ShapeUpgrade_UnifySameDomain very large performance difference for seemingly similar shapes
-###############################
-
-restore [locate_data_file bug27085_fused_primitive.fast.brep] fp
-
-dchrono h reset
-dchrono h start
-
-unifysamedom res fp
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-set max_time 5
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/modalg_6/bug27085_2 b/tests/bugs/modalg_6/bug27085_2
deleted file mode 100644 (file)
index 1809422..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-puts "============"
-puts "OCC27085"
-puts "============"
-puts ""
-###############################
-## ShapeUpgrade_UnifySameDomain very large performance difference for seemingly similar shapes
-###############################
-
-restore [locate_data_file bug27085_fused_primitive.slow.brep] sp
-
-dchrono h reset
-dchrono h start
-
-unifysamedom res sp
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-set max_time 8
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/modalg_6/bug27569 b/tests/bugs/modalg_6/bug27569
deleted file mode 100644 (file)
index ece3f66..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-puts "============"
-puts "OCC27569"
-puts "============"
-puts ""
-######################################################
-# [Regression in 6.9.0] Projecting a curve hangs
-######################################################
-
-pload QAcommands
-
-restore [locate_data_file bug27569.brep] aS
-explode aS
-mkcurve c aS_1
-mksurface s aS_2
-
-# Performance check
-chrono h reset; chrono h start
-OCC24008 c s;
-chrono h stop; set q [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full aTime
-
-set MAX_TIME 1.0
-
-if { $aTime > ${MAX_TIME} } {
-    puts "Elapsed time is more than ${MAX_TIME} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${MAX_TIME} seconds - OK"
-}
diff --git a/tests/bugs/modalg_6/bug28030 b/tests/bugs/modalg_6/bug28030
deleted file mode 100644 (file)
index 4031c2f..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-puts "========"
-puts "OCC28030"
-puts "========"
-puts ""
-########################################################################################################
-# Algorith GeomLib_CheckCurveOnSurface takes too much time for Bspline curves with big number of knots
-########################################################################################################
-
-beziercurve c 4 0 0 0 1 1 0 2 1 0 3 0 0
-
-convert c1 c
-set i 1
-repeat 98 {insertknot c1 0.01*$i 1; incr i 1}
-mkedge e1 c1
-prism p1 e1 0 0 1
-explode p1 e
-dchrono cpu reset
-dchrono cpu start
-xdistef p1_3 p1
-dchrono cpu stop
-puts [dchrono cpu show]
-set q1 [dchrono cpu show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} ${q1} full t1
-
-convert c2 c
-set i 1
-repeat 1000 {insertknot c2 0.00098*$i 1; incr i 1}
-mkedge e2 c2
-prism p2 e2 0 0 1
-explode p2 e
-dchrono cpu reset
-dchrono cpu start
-xdistef p2_3 p2
-dchrono cpu stop
-puts [dchrono cpu show]
-set q2 [dchrono cpu show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} ${q2} full t2
-
-set max_ratio 5
-if { ${t2} > ${max_ratio}*${t1} } {
-  puts "Elapsed time is too much - Faulty"
-} else {
-  puts "Elapsed time is OK"
-}
diff --git a/tests/bugs/moddata_1/bug21292 b/tests/bugs/moddata_1/bug21292
deleted file mode 100755 (executable)
index 02a0ece..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-puts "========"
-puts "OCC21292"
-puts "========"
-puts ""
-######################################################
-# Shading on large model too long
-######################################################
-
-set BugNumber OCC21292
-
-# 1 munite
-cpulimit 60
-
-restore [locate_data_file OCC21292.brep] result
-
-vinit
-vsetdispmode 1
-
-chrono h reset; chrono h start
-#
-# DISPLAY OPERATION ----- START
-#
-vdisplay result
-#
-# DISPLAY OPERATION ----- FINISH
-#
-chrono h stop; set CPU_time_List [chrono h show]
-
-set CPU_user_time [lindex ${CPU_time_List} 11]
-puts "CPU_user_time=${CPU_user_time}"
-
-
-checkprops result -s 1.40193e+07
-checknbshapes result -vertex 372 -edge 369 -wire 2 -face 1 -shell 0 -solid 0 -compsolid 0 -compound 1 -shape 745
-
-if { [checkplatform -windows] } {
-   puts "windows"
-   set Good_CPU_user_time 0.
-} else {
-   if {[string compare $tcl_platform(os) "SunOS"] == 0} {
-      puts "SunOS"
-      set Good_CPU_user_time 6.
-   } else {
-      puts "Linux"
-      set Good_CPU_user_time 6.
-   }
-}
-
-# Check time boolean operation
-if {${Good_CPU_user_time} > ${CPU_user_time}} {
-   puts "OK ${BugNumber} : CPU user time is good"
-} else {
-   puts "Faulty ${BugNumber} : CPU user time is wrong"
-}
-
-
-checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/moddata_1/bug21858 b/tests/bugs/moddata_1/bug21858
deleted file mode 100755 (executable)
index 24e9867..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-puts "============"
-puts "OCC21858"
-puts "============"
-puts ""
-####################################
-# Visualization hangs on this face ( OCC21858.brep )
-####################################
-
-set BugNumber OCC21858
-cpulimit 40
-restore [locate_data_file OCC21858.brep] result
-
-checkprops result -l 6.48642 
-checksection result
-
-checknbshapes result -vertex 9 -edge 10 -wire 1 -face 1 -shell 0 -solid 0 -compsolid 0 -compound 0 -shape 21
-
-vinit
-vsetdispmode 1
-dchrono TestTimer reset
-dchrono TestTimer start
-vdisplay result
-dchrono TestTimer stop
-vfit
-puts ""
-set time_o 0.1
-set tim [ dchrono TestTimer show ]
-regexp {Elapsed time: +([-0-9.+eE]+) Hours +([-0-9.+eE]+) Minutes +([-0-9.+eE]+) Seconds} $tim full hourVDisplay minuVDisplay secoVDisplay
-
-set timVDisplay [expr $hourVDisplay * 3600 + $minuVDisplay * 60 + $secoVDisplay ]
-
-if { ${tim} < ${time_o} } {
-       set chro "CHRONO  : Faulty (${timVDisplay}%)"
-       set status 1
-       puts ${chro}
-} else {
-       puts "${BugNumber} OK"
-       set status 0
-}
-puts "timVDisplay = ${timVDisplay}"
-
-checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/moddata_2/bug276 b/tests/bugs/moddata_2/bug276
deleted file mode 100755 (executable)
index eda5f3a..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-puts "========"
-puts "OCC276"
-puts "========"
-puts ""
-#########################################################
-##Bad performance of checkshape on faces with multiple wires 
-#########################################################
-
-restore [locate_data_file OCC276.brep] result
-
-dchrono h2 reset
-dchrono h2 start
-
-checkshape result
-
-dchrono h2 stop
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-if { [expr $z2 > 43] } {                             
-    puts "Elapsed time is more then 43 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 43 seconds - OK"      
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
-
-
-
diff --git a/tests/bugs/moddata_2/bug36 b/tests/bugs/moddata_2/bug36
deleted file mode 100755 (executable)
index cad3453..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-puts "========"
-puts "OCC36"
-puts "========"
-
-pload XDE
-
-set filepath [locate_data_file OCC36.igs]
-if [catch { igesbrep $filepath a * } res] { 
-    puts "Error OCC36: here is reading problem"
-} else {
-    puts "Reading OCC36  OK"
-
-    tpcompound r
-    dchrono h2 reset
-    dchrono h2 start
-    sewing result 1.e-7 r
-    dchrono h2 stop
-    set q2 [ dchrono h2 show ]
-    regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-    puts "$z2"
-    if { $z2 > 30 } {                             
-       puts "Elapsed time is more then 30 seconds - Faulty"
-    } else {
-       puts "Elapsed time is less then 30 seconds - OK"      
-    }
-
-    checkmaxtol result -ref 0.96087447225733291
-    checknbshapes result -shell 13
-    checkfreebounds result 1247
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
diff --git a/tests/bugs/moddata_2/bug368 b/tests/bugs/moddata_2/bug368
deleted file mode 100755 (executable)
index 8952e87..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-
-puts "========================"
-puts "BUC61027"
-puts " OCC368 "
-puts "========================"
-puts ""
-##############################################
-## Visualization is too slow.
-##############################################
-
-restore [locate_data_file OCC368.brep] result
-checkshape result
-
-tclean result
-isos result 0
-vinit
-dchrono h2 reset
-dchrono h2 start
-vdisplay result
-vsetdispmode result 1
-dchrono h2 stop
-
-regexp {CPU user time: +([-0-9.+eE]+)} [dchrono h2 show] full z2
-
-if { $z2 > 30 } {                             
-   puts "Error : Elapsed time is more then 30 seconds"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
-
-
diff --git a/tests/bugs/moddata_2/bug453_3 b/tests/bugs/moddata_2/bug453_3
deleted file mode 100755 (executable)
index b0b20a9..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-puts "TODO OCC24156 MacOS: Tcl Exception: tolerance ang"
-puts "TODO OCC24156 MacOS: TEST INCOMPLETE"
-puts "TODO OCC27203 ALL: Error: Max tolerance" 
-puts "TODO OCC27203 All: Error : The area of result shape is"
-
-puts "========"
-puts "OCC453"
-puts "(case 3)"
-puts "========"
-puts ""
-
-dchrono h2 reset
-dchrono h2 start
-
-set make_print_out 0
-
-dset SCALE 1000.
-dset SCALE1 5
-tolblend 0.01 1e-04 1e-05 1e-03
-
-restore [locate_data_file shading_137.brep] s 
-tscale s 0 0 0 SCALE1
-explode s E
-
-blend result s  5.5*SCALE1 s_2  4*SCALE1 s_1  6*SCALE1 s_6 5*SCALE1 s_8  6*SCALE1 s_10 6.5*SCALE1 s_14  7*SCALE1 s_4 5.5*SCALE1 s_5 7*SCALE1 s_16 6*SCALE1 s_11 5*SCALE1 s_19 6.5*SCALE1 s_13
-explode result So
-tcopy result_1 result
-
-dchrono h2 stop
-
-# Check computation time
-set q2 [ dchrono h2 show ]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q2 full z2
-puts "$z2"
-if { $z2 > 85 } {                             
-    puts "Elapsed time is more then 85 seconds - Faulty"
-} else {
-    puts "Elapsed time is less then 85 seconds - OK"      
-}
-
-# Note: The reference values of area and tolerance are wanted theoretical values
-# Properties check
-checkprops result -s 3.51e+006
-
-# Tolerance check
-checkmaxtol result -ref 1.
-
-# Visual check
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
diff --git a/tests/bugs/moddata_3/bug25487_1 b/tests/bugs/moddata_3/bug25487_1
deleted file mode 100644 (file)
index 57fa4f3..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-puts "========"
-puts "OCC25487"
-puts "========"
-puts ""
-##########################################
-# Extrema_GenExtPS needs to be optimized
-##########################################
-
-pload DATAEXCHANGEKERNEL
-
-# Restore testing shape and get timing characteristics for operation stepread
-dchrono perf_h reset
-dchrono perf_h start
-stepread [locate_data_file OCC25487_LP1.stp] a *
-dchrono perf_h stop
-
-# Get elapsed time for operation stepread
-set chrono_info [dchrono perf_h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $chrono_info full CPU_time
-puts "Elapsed time is: $CPU_time"
-
-# Check prformance on Windows
-if { [checkplatform -windows] } {
-  if {[regexp {Debug mode} [dversion]]} {
-    # DEBUG mode
-    # initial CPU_time for WINDOWS in DEBUG mode is 410 ((186+19)*2) sec
-    puts "Checking WINDOWS performance in debug mode..."
-    if {$CPU_time > 410.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 410 sec)"
-    } else {
-      puts "Done!"
-    }
-  } else {
-    # OPTIMIZE mode
-    # initial CPU_time for WINDOWS in OPTIMIZE mode is 205 (186+19) sec
-    puts "Checking WINDOWS performance in optimize mode..."
-    if {$CPU_time > 205.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 205 sec)"
-    } else {
-      puts "Done!"
-    }
-  }
-} else {
-  if {[regexp {Debug mode} [dversion]]} {
-    # DEBUG mode
-    # initial CPU_time for LINUX in DEBUG mode is 900 sec
-    puts "Checking LINUX performance in debug mode..."
-    if {$CPU_time > 900.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 900 sec)"
-    } else {
-      puts "Done!"
-    }
-  } else {
-    # OPTIMIZE mode
-    # initial CPU_time for LINUX in OPTIMIZE mode is 190 (173+17) sec
-    puts "Checking LINUX performance in optimize mode..."
-    if {$CPU_time > 190.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 190 sec)"
-    } else {
-      puts "Done!"
-    }
-  }
-}
diff --git a/tests/bugs/moddata_3/bug25487_2 b/tests/bugs/moddata_3/bug25487_2
deleted file mode 100644 (file)
index 17b300f..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-puts "========"
-puts "OCC25487"
-puts "========"
-puts ""
-##########################################
-# Extrema_GenExtPS needs to be optimized
-##########################################
-
-cpulimit 1500
-
-pload DATAEXCHANGEKERNEL
-
-# Restore testing shape and get timing characteristics for operation stepread
-dchrono perf_h reset
-dchrono perf_h start
-stepread [locate_data_file OCC25487_LP2.stp] a *
-dchrono perf_h stop
-
-# Get elapsed time for operation stepread
-set chrono_info [dchrono perf_h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $chrono_info full CPU_time
-puts "Elapsed time is: $CPU_time"
-
-# Check prformance on Windows
-if { [checkplatform -windows] } {
-  if {[regexp {Debug mode} [dversion]]} {
-    # DEBUG mode
-    # initial CPU_time for WINDOWS in DEBUG mode is 1208 ((549+55)*2) sec
-    puts "Checking WINDOWS performance in debug mode..."
-    if {$CPU_time > 1208.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 1208 sec)"
-    } else {
-      puts "Done!"
-    }
-  } else {
-    # OPTIMIZE mode
-    # initial CPU_time for WINDOWS in OPTIMIZE mode is 604 (549+55) sec
-    puts "Checking WINDOWS performance in optimize mode..."
-    if {$CPU_time > 604.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 604 sec)"
-    } else {
-      puts "Done!"
-    }
-  }
-} else {
-  if {[regexp {Debug mode} [dversion]]} {
-    # DEBUG mode
-    # initial CPU_time for LINUX in DEBUG mode is 1500 sec
-    puts "Checking LINUX performance in debug mode..."
-    if {$CPU_time > 1500.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 1500 sec)"
-    } else {
-      puts "Done!"
-    }
-  } else {
-    # OPTIMIZE mode
-    # initial CPU_time for LINUX in OPTIMIZE mode is 575 (523+52) sec
-    puts "Checking LINUX performance in optimize mode..."
-    if {$CPU_time > 575.} {
-      puts "ERROR: OCC25487 is reproduced."
-      puts "       Low performance: $CPU_time (but should be less than 575 sec)"
-    } else {
-      puts "Done!"
-    }
-  }
-}
diff --git a/tests/bugs/moddata_3/bug26339 b/tests/bugs/moddata_3/bug26339
deleted file mode 100644 (file)
index 309bf5d..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-puts "============"
-puts "OCC26339"
-puts "============"
-puts ""
-#######################################################################
-# [Regression in 6.9.0] Projecting a curve hangs
-#######################################################################
-
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 10
-  } else {
-    set max_time 10
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file bug26339_a_1886.brep] f
-
-dchrono h reset
-dchrono h start
-
-fixshape r f 1e-5
-
-dchrono h stop
-set q [dchrono h show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {                                         
-    puts "Elapsed time of projecting a curve is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time of projecting a curve is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/moddata_3/bug26884 b/tests/bugs/moddata_3/bug26884
deleted file mode 100644 (file)
index 6bb33bb..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-puts "================"
-puts "OCC26884"
-puts "================"
-puts ""
-##############################################################
-# Cylinder/Cylinder intersection algorithm throws an exception
-##############################################################
-
-set max_time 0.1
-
-restore [locate_data_file bug26884-f1.brep] f1
-restore [locate_data_file bug26884-f2.brep] f2
-
-dchrono cr reset
-dchrono cr start
-
-set info [bopcurves f1 f2 -2d]
-
-dchrono cr stop
-
-if {![regexp {has no 3d curves} $info] ||
-    ![regexp {has no 3d points} $info] } {
-  puts "Error: wrong output"
-}
-
-set logTime [dchrono cr show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $logTime full z
-
-if { $z > ${max_time} } {
-    puts "Elapsed time ($z) is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time ($z) is less than ${max_time} seconds - OK"
-}
diff --git a/tests/bugs/moddata_3/bug27048_1 b/tests/bugs/moddata_3/bug27048_1
deleted file mode 100644 (file)
index 4bfe0e1..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-puts "============"
-puts "OCC27048"
-puts "============"
-puts ""
-############################################################################
-#  Recalculation of BSpline cache causes a performance problems
-############################################################################
-
-pload QAcommands
-
-bsplinesurf surf \
-3 4 0 4 1 1 2 1 3 4 \
-3 4 0 4 1 1 2 1 3 4 \
-0  0  0 1   2  0  0 1   3  0 15 1   5  0 15 1   7  0  0 1   10  0  0 1 \
-0  2  0 1   1  3  0 1   4  2 15 1   6  3 15 1   8  2  0 1   10  3  0 1 \
-0  4  0 1   3  4  0 1   4  3 15 1   5  3 15 1   7  4  0 1   10  5  0 1 \
-0  6  0 1   3  6  0 1   4  6 15 1   5  6 15 1   8  5  0 1   10  7  0 1 \
-0  8  0 1   2  8  0 1   4  8 15 1   6  8 15 1   7  7  0 1   10  8  0 1 \
-0 10  0 1   2 10  0 1   4 10 15 1   6 10 15 1   7 10  0 1   10 10  0 1
-
-dchrono t reset
-dchrono t start
-OCC27048 surf -0.1 -0.1 1000000
-dchrono t stop
-set elapsed [dchrono t show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $elapsed full cpu_time
-set max_time 1
-
-if { $cpu_time > ${max_time} } {
-    puts "Error: calculating B-spline value takes too long time (greater than ${max_time} sec)"
-} else {
-    puts "OK: performance calculating B-spline is suitable"
-}
diff --git a/tests/bugs/moddata_3/bug27048_2 b/tests/bugs/moddata_3/bug27048_2
deleted file mode 100644 (file)
index 6a9840c..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-puts "============"
-puts "OCC27048"
-puts "============"
-puts ""
-############################################################################
-#  Recalculation of BSpline cache causes a performance problems
-############################################################################
-
-pload XSDRAW
-
-dchrono t reset
-dchrono t start
-testreadstep [locate_data_file bug27048.stp] result
-dchrono t stop
-set elapsed [dchrono t show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $elapsed full cpu_time
-set max_time 40
-
-if { $cpu_time > ${max_time} } {
-    puts "Error: reading document Doc is too long (greater than ${max_time} sec)"
-} else {
-    puts "OK: performance reading document Doc is suitable"
-}
-
-smallview
-fit
-checkview -screenshot -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/bugs/moddata_3/bug623 b/tests/bugs/moddata_3/bug623
deleted file mode 100644 (file)
index d3b6c85..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-puts "================"
-puts "OCC623"
-puts "================"
-puts ""
-####################
-## InCorrect Data in PCurve
-####################
-
-##cpulimit 4000
-
-pload XDE
-
-stepread [locate_data_file OCC623.step] a *
-
-setflags a_1 locked
-dchrono h reset
-dchrono h start
-nurbsconvert result a_1
-dchrono h stop
-set TimeList [dchrono h show]
-
-regexp {Elapsed time: +([-0-9.+eE]+)} $TimeList full ElapsedTime
-puts "ElapsedTime = ${ElapsedTime}"
-
-fsameparameter result
-checkshape result
-
-checkprops result -s 32.1968
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
-
diff --git a/tests/bugs/step/bug24024 b/tests/bugs/step/bug24024
deleted file mode 100644 (file)
index b86e08d..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-puts "=========="
-puts "OCC24024"
-puts "=========="
-puts ""
-######################################
-# Slow import of specific STEP data
-######################################
-
-cpulimit 1700
-set ver [dversion]
-if { [regexp "Debug" $ver] != 1 } {
-    set cpu_check 450
-} else {
-    set cpu_check 1600
-}
-
-dchrono h reset
-dchrono h start
-stepread [locate_data_file bug24024_slow_import.stp] a *
-dchrono h stop
-
-tpcompound result
-
-set info [dchrono h show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $info full cpu_time
-if { $cpu_time > $cpu_check } {
-    puts "Error: performance of import of data is low"
-} else {
-    puts "OK: performance of import of data is high"
-}
-
-checkview -display result -2d -path ${imagedir}/${test_image}.png
-
diff --git a/tests/bugs/step/bug27570 b/tests/bugs/step/bug27570
deleted file mode 100644 (file)
index 1ce0feb..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-puts "========"
-puts "OCC27570"
-puts "========"
-puts ""
-###########################################################
-# Unacceptable performance during reading large STEP files
-###########################################################
-
-set max_time 8
-
-dchrono cr reset
-dchrono cr start
-ReadStep D [locate_data_file bug27570.stp]
-dchrono cr stop
-
-# check time
-set chrono_info [dchrono cr show]
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $chrono_info full CPU_time
-if { $CPU_time > ${max_time} } {
-  puts "CPU user time of STEP translation is more than ${max_time} seconds - Error"
-} else {
-  puts "CPU user time of STEP translation is less than ${max_time} seconds - OK"
-}
-
-# check number of shapes
-XGetOneShape result D
-checknbshapes result -solid 1000 -compound 1111
diff --git a/tests/bugs/vis/bug24623_1 b/tests/bugs/vis/bug24623_1
deleted file mode 100644 (file)
index f83d251..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-puts "============"
-puts "OCC24623_1"
-puts "============"
-puts ""
-#######################################################################
-puts "Visualization - improve selection mechanism"
-# tests performance of selection algorithm. Creates a grid of spheres with
-# size DISCRETISATION * DISCRETISATION. To get representative performance
-# test results, increase the size of grid in DISCRETISATION and check time
-# measurments in comparsion to previous OCCT versions. You may also check
-# the time of selection when all BVH trees are built via uncommenting
-# the code in "Start building all trees" section.
-#######################################################################
-
-set DISCRETISATION 10
-set RADIUS 100
-
-pload ALL
-
-set aStep [expr $RADIUS * 0.1]
-
-# unset aNames
-list aNames
-set aX 0
-set aY 0
-for {set i 0} {$i < $DISCRETISATION} {incr i} {
-       for {set j 0} {$j < $DISCRETISATION} {incr j} {
-    set aCurrName "sph"
-    append aCurrName [expr $i * $DISCRETISATION + $j]
-    lappend aNames $aCurrName
-    psphere $aCurrName $RADIUS
-    set aX [expr $i * ($aStep + $RADIUS)]
-    set aY [expr - $j * ($aStep + $RADIUS)]
-    ttranslate $aCurrName $aX $aY 0
-  }
-}
-
-set aSpheresNbInfo "Total spheres number:"
-append aSpheresNbInfo [expr $DISCRETISATION * $DISCRETISATION]
-puts $aSpheresNbInfo
-
-vinit
-set aMemInit [meminfo h]
-puts "Initial mem: [expr $aMemInit   / (1024 * 1024)] MiB ([expr $aMemInit])"
-vsetdispmode 1
-set aMemInit [meminfo h]
-vdisplay {*}$aNames
-vfit
-
-puts "Selection of spheres without BVH trees built:"
-chrono aTimer reset
-chrono aTimer start
-vmoveto 224 269
-chrono aTimer stop
-chrono aTimer show
-
-puts ""
-puts "Applying the transformations..."
-vtranslateview 1 0 0
-vrotate 100 100 100
-
-puts ""
-puts "Selection time with transformations applied without BVH built:"
-chrono aTimer reset
-chrono aTimer start
-vmoveto 102 224
-chrono aTimer stop
-chrono aTimer show
-
-# puts ""
-# puts "Start building all trees..."
-# vtop
-# vfit
-# set aStartPt [expr round(400 / double($DISCRETISATION)) + 5]
-# set aPtStep [expr round(double(round(100*(400 / double($DISCRETISATION))))/100 * 2)]
-# for {set i 0} {$i < $DISCRETISATION / 2} {incr i} {
-#   for {set j 0} {$j < $DISCRETISATION / 2} {incr j} {
-#     set aX [expr $aStartPt + $i * $aPtStep]
-#     set aY [expr $aStartPt + $j * $aPtStep]
-#     vmoveto $aX $aY 1
-#   }
-# }
-
-# puts ""
-# puts "Selection time with all BVHs built:"
-# chrono aTimer reset
-# chrono aTimer start
-# vmoveto 200 200
-# chrono aTimer stop
-# chrono aTimer show
-
-set aMemSel [meminfo h]
-puts "Selection mem: [expr $aMemSel   / (1024 * 1024)] MiB ([expr $aMemSel])"
-
-checkcolor 115 221 0 1 1
diff --git a/tests/bugs/vis/bug24623_2 b/tests/bugs/vis/bug24623_2
deleted file mode 100644 (file)
index 784cb7f..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-puts "============"
-puts "OCC24623_2"
-puts "============"
-puts ""
-#######################################################################
-puts "Visualization - improve selection mechanism"
-# tests performance of selection algorithm. Creates a spiral via polyline
-# and checks its selection in neutral point. For representative result,
-# increase the number of points in POINTS_NUM and check time measurments
-# in comparsion to previous OCCT versions.
-#######################################################################
-
-set POINTS_NUM 1000
-set STEP 0.3
-
-pload ALL
-
-set aCoef 0.2
-set aZ 0
-# unset aPointCoords
-list aPointCoords
-for {set i 0} {$i < $POINTS_NUM} {incr i} {
-  set aX [expr $aCoef * $aZ * cos($aZ)]
-  set aY [expr $aCoef * $aZ * sin($aZ)]
-  set aZ [expr $aZ + $STEP]
-  lappend aPointCoords $aX
-  lappend aPointCoords $aY
-  lappend aPointCoords $aZ
-}
-
-vinit
-set aMemInit [meminfo h]
-puts "Initial mem: [expr $aMemInit   / (1024 * 1024)] MiB ([expr $aMemInit])"
-polyline p {*}$aPointCoords
-vdisplay p
-
-vfit
-
-puts "Selection time before the transformations:"
-chrono aTimer reset
-chrono aTimer start
-vmoveto 223 236
-chrono aTimer stop
-chrono aTimer show
-vmoveto 0 0
-chrono aTimer reset
-chrono aTimer start
-vmoveto 223 236
-chrono aTimer stop
-chrono aTimer show
-
-puts ""
-puts "Applying transformations..."
-vtranslateview 1 0 0
-vrotate 100 100 100
-
-puts ""
-puts "Selection time after the transformations:"
-chrono aTimer reset
-chrono aTimer start
-vmoveto 115 160
-chrono aTimer stop
-chrono aTimer show
-vmoveto 0 0
-chrono aTimer reset
-chrono aTimer start
-vmoveto 115 160
-chrono aTimer stop
-chrono aTimer show
-
-set aMemSel [meminfo h]
-puts "Selection mem: [expr $aMemSel   / (1024 * 1024)] MiB ([expr $aMemSel])"
-
-checkcolor 131 195 0 1 1
diff --git a/tests/perf/bop/bfuse_complex_Q3 b/tests/perf/bop/bfuse_complex_Q3
new file mode 100644 (file)
index 0000000..4a83daf
--- /dev/null
@@ -0,0 +1,42 @@
+puts " BUC60068 "
+puts "If scales by 1000, time to compute is 10 times greater "
+##
+## mod pkv from
+restore [locate_data_file buc60068a.rle] a
+restore [locate_data_file buc60068b.rle] b
+restore [locate_data_file buc60068a.rle] c
+restore [locate_data_file buc60068b.rle] d
+restore [locate_data_file buc60068a.rle] e
+restore [locate_data_file buc60068b.rle] f
+restore [locate_data_file buc60068a.rle] g
+restore [locate_data_file buc60068b.rle] h
+## mod pkv from
+##
+
+## fuse
+dchrono j start
+bfuse resab a b
+dchrono j stop counter BFuseAB
+
+tscale  c 0 0 0 100
+tscale  d 0 0 0 100
+dchrono k start
+bfuse rescd c d
+dchrono k stop counter BFuseCD
+
+tscale  e 0 0 0 1000
+tscale  f 0 0 0 1000
+dchrono l start
+bfuse resef e f
+dchrono l stop counter BFuseEF
+
+tscale  g 0 0 0 10000
+tscale  h 0 0 0 10000
+dchrono m start
+bfuse resgh g h
+dchrono m stop counter BFuseGH
+
+compound resab rescd resef resgh result
+
+checkprops result -s 2.5e+13
+checkview -display result -2d -otherwise { a b c d e f g h } -s -path ${imagedir}/${test_image}.png
index 4b42a7771260995dda33ac7702d94d954aebac70..6c6ebfab73a6cbccde396712236a40d6cb120ffe 100644 (file)
@@ -10,14 +10,6 @@ puts ""
 # http://www.opencascade.org/org/forum/thread_12369/?forum=3
 # in OCCT 6.6.0 32-bit mode on Windows this fails with N >= 40 (out of memory)
 
-if { [regexp {Debug mode} [dversion]] } {
-   cpulimit 2000
-   set max_time 1500
-} else {
-   cpulimit 500
-   set max_time 250
-}
-
 # box plate to cut the holes from
 box b 100 100 1
 
@@ -38,14 +30,11 @@ eval compound $holes drill
 
 set mem1 [meminfo h]
 
-dchrono cpu reset
-dchrono cpu start
+dchrono cpu restart
 
 bcut r b drill
 
-dchrono cpu stop
-puts [dchrono cpu show]
-set q2 [dchrono cpu show]
+dchrono cpu stop counter BCut
 
 set mem2 [meminfo h]
 
@@ -60,13 +49,6 @@ if { [expr ${mem2} - ${mem1}] > ${mem_delta}} {
     puts "Faulty : there is memory leak"
 }
 
-regexp {CPU user time: ([-0-9.+eE]+) seconds} ${q2} full z
-if { ${z} > ${max_time} } {                                         
-    puts "Elapsed time is more than ${max_time} seconds - Faulty"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
 vinit
 vdisplay r
 vfit
diff --git a/tests/perf/bop/bsection_R6 b/tests/perf/bop/bsection_R6
new file mode 100644 (file)
index 0000000..f156398
--- /dev/null
@@ -0,0 +1,43 @@
+puts " BUC60068 "
+puts "If scales by 1000, time to compute is 10 times greater "
+##
+## mod pkv from
+restore [locate_data_file buc60068a.rle] a
+restore [locate_data_file buc60068b.rle] b
+restore [locate_data_file buc60068a.rle] c
+restore [locate_data_file buc60068b.rle] d
+restore [locate_data_file buc60068a.rle] e
+restore [locate_data_file buc60068b.rle] f
+restore [locate_data_file buc60068a.rle] g
+restore [locate_data_file buc60068b.rle] h
+## mod pkv from
+##
+
+## section
+dchrono j start
+bsection resab a b
+dchrono j stop counter BSectionAB
+
+tscale  c 0 0 0 100
+tscale  d 0 0 0 100
+dchrono k start
+bsection rescd c d
+dchrono k stop counter BSectionCD
+
+tscale  e 0 0 0 1000
+tscale  f 0 0 0 1000
+dchrono l start
+bsection resef e f
+dchrono l stop counter BSectionEF
+
+tscale  g 0 0 0 10000
+tscale  h 0 0 0 10000
+dchrono m start
+bsection resgh g h
+dchrono m stop counter BSectionGH
+
+compound resab rescd resef resgh result
+
+checkprops result -l 1.41538e+07
+checksection result
+checkview -display result -2d -otherwise { a b c d e f g h } -l -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/bop/end b/tests/perf/bop/end
new file mode 100644 (file)
index 0000000..da9245f
--- /dev/null
@@ -0,0 +1,3 @@
+if { [isdraw result] } {
+  checkshape result
+}
\ No newline at end of file
diff --git a/tests/perf/caf/begin b/tests/perf/caf/begin
new file mode 100644 (file)
index 0000000..322282c
--- /dev/null
@@ -0,0 +1,3 @@
+pload DCAF
+
+set subgroup caf
diff --git a/tests/perf/caf/bug1454 b/tests/perf/caf/bug1454
new file mode 100644 (file)
index 0000000..9ba7806
--- /dev/null
@@ -0,0 +1,10 @@
+
+puts "===== OCC1454 ====="
+#######################################################################################
+# Improve performance of TDF_Label::FindChild
+#######################################################################################
+
+puts "Info: Open the document with 80000 sublabels of the label 0:2"
+dchrono h restart
+Open [locate_data_file OCC1726.cbf] D
+dchrono h stop counter OpenCbf
\ No newline at end of file
diff --git a/tests/perf/caf/bug1454_std b/tests/perf/caf/bug1454_std
new file mode 100644 (file)
index 0000000..0dee9dc
--- /dev/null
@@ -0,0 +1,10 @@
+
+puts "===== OCC1454 ====="
+#######################################################################################
+# Improve performance of TDF_Label::FindChild
+#######################################################################################
+
+puts "Info: Open the document with 80000 sublabels of the label 0:2"
+dchrono h restart
+Open [locate_data_file OCC1726.std] D
+dchrono h stop counter OpenStd
\ No newline at end of file
diff --git a/tests/perf/caf/bug1726 b/tests/perf/caf/bug1726
new file mode 100644 (file)
index 0000000..ec683a1
--- /dev/null
@@ -0,0 +1,21 @@
+puts "================"
+puts "OCC1726"
+puts "================"
+puts ""
+#######################################################################################
+# TDF_LabelNode::~TDF_LabelNode causes stack overflow
+#######################################################################################
+
+puts "Info: Open the document with 80000 sublabels of the label 0:2"
+dchrono h restart
+Open [locate_data_file OCC1726.cbf] D
+dchrono h stop counter OpenCbf
+
+puts "Info: Close the document"
+dchrono h restart
+if [catch {Close D} result] {
+  puts "Faulty OCC1726"
+} else {
+  puts "OK OCC1726"
+}
+dchrono h stop counter CloseDoc
diff --git a/tests/perf/caf/bug1726_std b/tests/perf/caf/bug1726_std
new file mode 100644 (file)
index 0000000..5bc44c9
--- /dev/null
@@ -0,0 +1,21 @@
+puts "================"
+puts "OCC1726"
+puts "================"
+puts ""
+#######################################################################################
+# TDF_LabelNode::~TDF_LabelNode causes stack overflow
+#######################################################################################
+
+puts "Info: Open the document with 80000 sublabels of the label 0:2"
+dchrono h restart
+Open [locate_data_file OCC1726.std] D
+dchrono h stop counter OpenStd
+
+puts "Info: Close the document"
+dchrono h restart
+if [catch {Close D} result] {
+  puts "Faulty OCC1726"
+} else {
+  puts "OK OCC1726"
+}
+dchrono h stop counter CloseDoc
diff --git a/tests/perf/caf/bug2793 b/tests/perf/caf/bug2793
new file mode 100644 (file)
index 0000000..cb0f551
--- /dev/null
@@ -0,0 +1,46 @@
+puts "=========="
+puts "OCC2793"
+puts "=========="
+puts ""
+########################################################################
+# BinOcaf: low performance saving documents with large attributes
+########################################################################
+
+NewDocument D BinOcaf
+
+# Loaded shapes for attributes
+restore [locate_data_file Radhaus.brep] shape1
+restore [locate_data_file shading_wrongshape_009.brep] shape2
+restore [locate_data_file FORM-11.brep] shape3
+restore [locate_data_file OCC22759-weldt6.brep] shape4
+restore [locate_data_file BPLSEITRE.brep] shape5
+restore [locate_data_file OCC22302.brep] shape6
+restore [locate_data_file ROVER.brep] shape7
+restore [locate_data_file bug24083_polyline.brep] shape8
+
+# Create a label
+set lab1 [Label D 0:2]
+set lab2 [Label D 0:3]
+set lab3 [Label D 0:4]
+set lab4 [Label D 0:5]
+set lab5 [Label D 0:6]
+set lab6 [Label D 0:7]
+set lab7 [Label D 0:8]
+set lab8 [Label D 0:9]
+
+# Load shapes on labels
+NewShape D ${lab1} shape1
+NewShape D ${lab2} shape2
+NewShape D ${lab3} shape3
+NewShape D ${lab4} shape4
+NewShape D ${lab5} shape5
+NewShape D ${lab6} shape6
+NewShape D ${lab7} shape7
+NewShape D ${lab8} shape8
+
+# Save document
+file delete -force ${imagedir}/2793.cbf
+dchrono h restart
+SaveAs D ${imagedir}/2793.cbf
+dchrono h stop counter SaveAs
+Close D
\ No newline at end of file
diff --git a/tests/perf/caf/bug5023 b/tests/perf/caf/bug5023
new file mode 100644 (file)
index 0000000..54e6782
--- /dev/null
@@ -0,0 +1,20 @@
+puts "================"
+puts "OCC5023"
+puts "================"
+puts ""
+######################################################
+# Performance regression in opening OCAF file
+######################################################
+
+set aFile [locate_data_file OCC5023.cbf]
+
+puts "Info: Restore the document"
+
+if [info exists DD] {
+    catch {Close DD}; unset DD
+}
+
+dchrono h restart
+
+Open ${aFile} DD
+dchrono h stop counter OpenDoc
\ No newline at end of file
diff --git a/tests/perf/caf/bug5023_std b/tests/perf/caf/bug5023_std
new file mode 100644 (file)
index 0000000..a7cf383
--- /dev/null
@@ -0,0 +1,20 @@
+puts "================"
+puts "OCC5023"
+puts "================"
+puts ""
+######################################################
+# Performance regression in opening OCAF file
+######################################################
+
+set aFile [locate_data_file OCC5023.std]
+
+puts "Info: Restore the document"
+
+if [info exists DD] {
+    catch {Close DD}; unset DD
+}
+
+dchrono h restart
+
+Open ${aFile} DD
+dchrono h stop counter OpenDoc
\ No newline at end of file
diff --git a/tests/perf/de/begin b/tests/perf/de/begin
new file mode 100644 (file)
index 0000000..3d2248a
--- /dev/null
@@ -0,0 +1 @@
+pload XDE
diff --git a/tests/perf/de/bug24024 b/tests/perf/de/bug24024
new file mode 100644 (file)
index 0000000..834c2ef
--- /dev/null
@@ -0,0 +1,17 @@
+puts "=========="
+puts "OCC24024"
+puts "=========="
+puts ""
+######################################
+# Slow import of specific STEP data
+######################################
+
+cpulimit 1700
+
+dchrono h restart
+stepread [locate_data_file bug24024_slow_import.stp] a *
+dchrono h stop counter stepread
+
+tpcompound result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
index c0a62ad68863c31000b0c65e2faef264ce2617e4..7292e03e893fa4c1f527ad6745b343d406c50093 100644 (file)
@@ -3,14 +3,12 @@ puts "0026338: STL export (especially binary) needs a lot of time if selected ex
 puts "========"
 puts ""
 
-pload MODELING XSDRAW
-
 # make sphere triangulated with 2M triangles
 sphere s 10
 tessellate result s 1000 1000
 trinfo result
 
 # write to binary STL
-chrono s reset; chrono s start
+chrono s restart
 writestl result $imagedir/${casename}-binary.stl 1
-chrono s stop; chrono s show
+chrono s stop counter writestl
index 7342fb38158a3e9ecbbe0320494767bb31858ea9..b4700916d8b62c9aeb12461d943cc433bdc9ef9f 100644 (file)
@@ -3,14 +3,12 @@ puts "0026338: STL export (especially binary) needs a lot of time if selected ex
 puts "========"
 puts ""
 
-pload MODELING XSDRAW
-
 # make sphere triangulated with 2M triangles
 sphere s 10
 tessellate result s 1000 1000
 trinfo result
 
 # write to ascii STL
-chrono s reset; chrono s start
+dchrono s restart
 writestl result $imagedir/${casename}-ascii.stl 0
-chrono s stop; chrono s show
+dchrono s stop counter writestl
\ No newline at end of file
diff --git a/tests/perf/de/bug27570 b/tests/perf/de/bug27570
new file mode 100644 (file)
index 0000000..3697e92
--- /dev/null
@@ -0,0 +1,17 @@
+puts "========"
+puts "OCC27570"
+puts "========"
+puts ""
+###########################################################
+# Unacceptable performance during reading large STEP files
+###########################################################
+
+set max_time 8
+
+dchrono cr restart
+ReadStep D [locate_data_file bug27570.stp]
+dchrono cr stop counter ReadStep
+
+# check number of shapes
+XGetOneShape result D
+checknbshapes result -solid 1000 -compound 1111
diff --git a/tests/perf/fclasses/bug25514 b/tests/perf/fclasses/bug25514
new file mode 100644 (file)
index 0000000..96aa49f
--- /dev/null
@@ -0,0 +1,27 @@
+puts "========"
+puts "OCC25514"
+puts "========"
+puts ""
+#########################################################################################
+# TKernel, OSD_Timer - do not accumulate error in timer within queries in running state
+#########################################################################################
+
+# Set number of cycle iteration
+set IterationCount 10000
+set iCounter 1
+
+# Set rank of timer's value
+set TimeRank 2
+
+# Start timers
+dchrono bug_info_1 restart
+dchrono bug_info_2 restart
+
+# Operation cycle
+while {$iCounter != $IterationCount} {
+  set iCounter [expr {$iCounter + 1}]
+}
+
+# Stop timers and show timer's values
+dchrono bug_info_1 stop counter bug_info_1
+dchrono bug_info_2 stop counter bug_info_2
diff --git a/tests/perf/fclasses/bug26184_1 b/tests/perf/fclasses/bug26184_1
new file mode 100644 (file)
index 0000000..6a2ad98
--- /dev/null
@@ -0,0 +1,19 @@
+puts "============"
+puts "OCC26184"
+puts "============"
+puts ""
+#######################################################################
+# GeomAPI_ExtremaCurveCurve hangs on parallel b-spline curves
+#######################################################################
+
+restore [locate_data_file bug26184_Curve_Extrema_1_12971.brep] a1
+restore [locate_data_file bug26184_Curve_Extrema_2_12971.brep] a2
+
+mkcurve c1 a1
+mkcurve c2 a2
+
+cpulimit 20
+
+dchrono h restart
+extrema c1 c2
+dchrono h stop counter extrema
\ No newline at end of file
diff --git a/tests/perf/fclasses/bug26184_2 b/tests/perf/fclasses/bug26184_2
new file mode 100644 (file)
index 0000000..0c64d8c
--- /dev/null
@@ -0,0 +1,19 @@
+puts "============"
+puts "OCC26184"
+puts "============"
+puts ""
+#######################################################################
+# GeomAPI_ExtremaCurveCurve hangs on parallel b-spline curves
+#######################################################################
+
+restore [locate_data_file bug26184_Curve_Extrema_1_13767.brep] a1
+restore [locate_data_file bug26184_Curve_Extrema_2_13767.brep] a2
+
+mkcurve c1 a1
+mkcurve c2 a2
+
+cpulimit 20
+
+dchrono h restart
+extrema c1 c2
+dchrono h stop counter extrema
\ No newline at end of file
diff --git a/tests/perf/fclasses/bug27131 b/tests/perf/fclasses/bug27131
new file mode 100644 (file)
index 0000000..6200c0e
--- /dev/null
@@ -0,0 +1,25 @@
+puts "========"
+puts "OCC27131"
+puts "========"
+puts ""
+##############################################
+# DistShapeShape works slow on attached shapes
+##############################################
+restore [locate_data_file bug27131.brep] aShape
+explode aShape
+
+cpulimit 20
+
+# Check computation time
+dchrono h restart
+for { set i 1 } { $i <= 100 } { incr i } {
+  distmini d aShape_1 aShape_2
+}
+dchrono h stop counter distmini
+
+# Check result of distance distance
+set absTol 1.0e-10
+set relTol 0.001
+set aDist_Exp 0.0029087110153708622
+set aDist [dval d_val]
+checkreal "Distance value check" $aDist $aDist_Exp $absTol $relTol
\ No newline at end of file
diff --git a/tests/perf/fclasses/bug27371 b/tests/perf/fclasses/bug27371
new file mode 100644 (file)
index 0000000..b04bd3c
--- /dev/null
@@ -0,0 +1,26 @@
+puts "========"
+puts "OCC27371"
+puts "========"
+puts ""
+##############################################
+# Regression: BRepExtrema works too much slower in 691 (from 670) 
+##############################################
+restore [locate_data_file bug27371.brep] aShape
+explode aShape
+
+cpulimit 20
+
+# Check computation time
+dchrono h restart
+for { set i 1 } { $i <= 100 } { incr i } {
+  distmini d aShape_1 aShape_2
+  distmini d aShape_2 aShape_1
+}
+dchrono h stop counter distmini
+
+# Check result of distance distance
+set absTol 1.0e-10
+set relTol 0.001
+set aDist_Exp 0.2
+set aDist [dval d_val]
+checkreal "Distance value check" $aDist $aDist_Exp $absTol $relTol
\ No newline at end of file
index cd71cf3b5c9d83413ba58b6d385a2665bd1629c1..aa8ed78e0d2f08f492ab279fac3626f95473d7ea 100644 (file)
@@ -3,3 +3,10 @@
 003 bspline
 004 fclasses
 005 de
+006 caf
+007 heal
+008 mesh
+009 modalg
+010 moddata
+011 sewing
+012 vis
\ No newline at end of file
diff --git a/tests/perf/heal/begin b/tests/perf/heal/begin
new file mode 100644 (file)
index 0000000..d054565
--- /dev/null
@@ -0,0 +1 @@
+pload XSDRAW
\ No newline at end of file
diff --git a/tests/perf/heal/bug24596_1 b/tests/perf/heal/bug24596_1
new file mode 100644 (file)
index 0000000..aa242c8
--- /dev/null
@@ -0,0 +1,25 @@
+puts "============"
+puts "OCC24596"
+puts "============"
+puts ""
+###############################
+## Slow import of IGES data
+###############################
+
+pload QAcommands
+
+if { [regexp {Debug mode} [dversion]] } {
+  cpulimit 8500
+} else {
+  cpulimit 2600
+}
+
+# 1 - igesread
+dchrono h restart
+igesread [locate_data_file 100B_Nosecone_with_Triangular_FSS.igs] a 43479
+dchrono h stop counter igesread
+
+# 2 - checkshape
+dchrono h2 restart
+checkshape a_1
+dchrono h2 stop counter checkshape
\ No newline at end of file
diff --git a/tests/perf/heal/bug24596_2 b/tests/perf/heal/bug24596_2
new file mode 100644 (file)
index 0000000..aeedf83
--- /dev/null
@@ -0,0 +1,25 @@
+puts "============"
+puts "OCC24596"
+puts "============"
+puts ""
+###############################
+## Slow import of IGES data
+###############################
+
+pload QAcommands
+
+if { [regexp {Debug mode} [dversion]] } {
+  cpulimit 8500
+} else {
+  cpulimit 2600
+}
+
+# 1 - igesread
+dchrono h restart
+igesread [locate_data_file 100B_Nosecone_with_Triangular_FSS.igs] b 86884
+dchrono h stop counter igesread
+
+# 2 - checkshape
+dchrono h2 restart
+checkshape b_1
+dchrono h2 stop counter checkshape
\ No newline at end of file
diff --git a/tests/perf/heal/bug25424 b/tests/perf/heal/bug25424
new file mode 100644 (file)
index 0000000..ebc77da
--- /dev/null
@@ -0,0 +1,20 @@
+puts "================"
+puts "OCC25424"
+puts "================"
+puts ""
+#######################################################################################
+# Performance regression on step import
+######################################################################################
+
+pload XDE
+pload QAcommands
+
+dchrono h restart
+testreadstep [locate_data_file bug25424_Secure.stp] result
+dchrono h stop counter testreadstep
+
+checkprops result -s 6998.53
+checkshape result
+
+checknbshapes result -vertex 4482 -edge 6781 -wire 2309 -face 2305 -shell 1 -solid 1 -compsolid 0 -compound 0 -shape 15879
+checkview -display result -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/heal/bug26871 b/tests/perf/heal/bug26871
new file mode 100644 (file)
index 0000000..896478d
--- /dev/null
@@ -0,0 +1,20 @@
+puts "======="
+puts "OCC26871"
+puts "======="
+puts ""
+#########################################################
+## Projecting a curve hangs inside Approx_FitAndDivide2d
+#########################################################
+
+pload QAcommands
+
+set max_time 5
+
+restore [locate_data_file bug26871_curve3d] c3d
+restore [locate_data_file bug26871_surface] surf
+
+dchrono cr restart
+
+OCC24008 c3d surf
+
+dchrono cr stop counter OCC24008
\ No newline at end of file
diff --git a/tests/perf/mesh/bug23650 b/tests/perf/mesh/bug23650
new file mode 100644 (file)
index 0000000..a38d387
--- /dev/null
@@ -0,0 +1,19 @@
+puts "=========="
+puts "OCC23650"
+puts "=========="
+puts ""
+##################################################################
+# Slow mesher: one bspline surface, 80 seconds for 132 triangles
+##################################################################
+
+restore [locate_data_file bug23650_slowmesh.brep] result
+tclean result
+dchrono h restart
+incmesh result 0.2
+dchrono h stop counter incmesh
+
+vinit
+vdisplay result
+vfit
+vsetdispmode 1
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
\ No newline at end of file
diff --git a/tests/perf/mesh/bug24022 b/tests/perf/mesh/bug24022
new file mode 100644 (file)
index 0000000..7c4808c
--- /dev/null
@@ -0,0 +1,19 @@
+puts "=========="
+puts "OCC24022"
+puts "=========="
+puts ""
+#####################################
+# Slow meshing in BRepMesh
+#####################################
+
+restore [locate_data_file bug24022_hung_mesh.brep] result
+tclean result
+dchrono h restart
+incmesh result 0.1
+dchrono h stop counter incmesh
+
+vinit
+vdisplay result
+vfit
+vsetdispmode 1
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
\ No newline at end of file
diff --git a/tests/perf/mesh/bug24968_1 b/tests/perf/mesh/bug24968_1
new file mode 100644 (file)
index 0000000..ab5eb01
--- /dev/null
@@ -0,0 +1,22 @@
+puts "=========="
+puts "OCC24968"
+puts "=========="
+puts ""
+#####################################
+# Impove BRepMesh_Classifier to cope with intersection of huge number of wires
+#####################################
+
+cpulimit 2500
+
+restore [locate_data_file bug24968_Shape_1.brep] result
+
+tclean result
+dchrono h restart
+incmesh result 0.1
+dchrono h stop counter incmesh
+
+vinit
+vdisplay result
+vfit
+vsetdispmode 1
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
\ No newline at end of file
diff --git a/tests/perf/mesh/bug24968_2 b/tests/perf/mesh/bug24968_2
new file mode 100644 (file)
index 0000000..8d2c2d5
--- /dev/null
@@ -0,0 +1,22 @@
+puts "=========="
+puts "OCC24968"
+puts "=========="
+puts ""
+#####################################
+# Impove BRepMesh_Classifier to cope with intersection of huge number of wires
+#####################################
+
+cpulimit 2500
+
+restore [locate_data_file bug24968_Shape_1.brep] result
+
+tclean result
+dchrono h restart
+incmesh result 0.1 -parallel
+dchrono h stop counter incmesh
+
+vinit
+vdisplay result
+vfit
+vsetdispmode 1
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
\ No newline at end of file
diff --git a/tests/perf/mesh/bug25264 b/tests/perf/mesh/bug25264
new file mode 100644 (file)
index 0000000..db9c8fc
--- /dev/null
@@ -0,0 +1,25 @@
+puts "================"
+puts "OCC25264"
+puts "================"
+puts ""
+#######################################################################################
+# Mesh very slow for Revol shape
+######################################################################################
+
+restore [locate_data_file bug25264_wire.brep] w
+
+# right revol position, mesh is very fast.
+revol result1 w 20583.283203125 14039.0208237378 28443.2585934755 0 0 1 360
+dchrono i restart
+incmesh result1 0.1
+dchrono i stop counter incmesh_1
+
+# wrong revol position, mesh is very slow in occ6.7, while in occ6.2 is very fast.
+revol result2 w 20583.283203125 14039.0208217527 28443.25860033352 0 0 1 360
+dchrono j restart
+incmesh result2 0.1
+dchrono j stop counter incmesh_2
+
+checkview -display result1 -3d -path ${imagedir}/${test_image}_1.png
+checkview -display result2 -3d -path ${imagedir}/${test_image}_2.png
+
diff --git a/tests/perf/mesh/bug27119 b/tests/perf/mesh/bug27119
new file mode 100644 (file)
index 0000000..33ed1e1
--- /dev/null
@@ -0,0 +1,36 @@
+puts "========"
+puts "OCC27119"
+puts "========"
+puts ""
+###########################################
+## Regression: Draw command "incmesh" hangs on the attacheced face.
+###########################################
+
+set BugNumber OCC27119
+
+restore [locate_data_file bug27119_GrossPlatePart3Step2TransformedFace.brep] result
+
+dchrono t restart
+incmesh result 1.e-6
+dchrono t stop counter incmesh
+
+set tri 0
+set nod 0
+set def 0
+
+set tri_info [trinfo result]
+regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
+regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
+regexp { deflection +([-0-9.+eE]+)} $tri_info full def
+
+set ref_tri 7855
+set ref_nod 7857
+set ref_def 9.3791641120333225e-013
+set tol_rel 0.01
+
+# Computes deviation of the value from specified one
+checkreal "Nb of triangles" $tri $ref_tri 0 $tol_rel
+checkreal "Nb of nodes" $nod $ref_nod 0 $tol_rel
+checkreal "Deflection" $def $ref_def 1.e-12 0
+
+set 3dviewer 1
\ No newline at end of file
diff --git a/tests/perf/mesh/bug27626 b/tests/perf/mesh/bug27626
new file mode 100644 (file)
index 0000000..4d90dbf
--- /dev/null
@@ -0,0 +1,26 @@
+puts "=========="
+puts "OCC27626"
+puts "=========="
+puts ""
+#######################################################################
+# Attempt to display shape in 3d leads to very long calculation loop
+#######################################################################
+pload XDE
+igesread [locate_data_file bug27626_badfil.igs] a *
+
+tclean a
+vinit
+vsetdispmode 1
+
+dchrono h restart
+#
+# DISPLAY OPERATION ----- START
+#
+vdisplay a
+#
+# DISPLAY OPERATION ----- FINISH
+#
+dchrono h stop counterv display
+
+vfit
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/mesh/parse.rules b/tests/perf/mesh/parse.rules
new file mode 100644 (file)
index 0000000..b3cb21b
--- /dev/null
@@ -0,0 +1 @@
+FAILED /Not connected mesh inside face/ disconnected mesh
diff --git a/tests/perf/modalg/bug10160_1 b/tests/perf/modalg/bug10160_1
new file mode 100644 (file)
index 0000000..61f148b
--- /dev/null
@@ -0,0 +1,41 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-2.brep] b2 
+
+set NbTests 3
+
+dchrono h0 restart
+
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopcommon result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopcommon
+
+checkprops result -s 1.30062e+07 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 20 -edge 28 -wire 16 -face 15 -shell 3 -solid 3 -compsolid 0 -compound 1 -shape 86
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_10 b/tests/perf/modalg/bug10160_10
new file mode 100644 (file)
index 0000000..ea6faa3
--- /dev/null
@@ -0,0 +1,39 @@
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-2.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopfuse result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopfuse
+
+checkprops result -s 3.20326e+07 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 116 -edge 173 -wire 67 -face 63 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 422
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_11 b/tests/perf/modalg/bug10160_11
new file mode 100644 (file)
index 0000000..8482c85
--- /dev/null
@@ -0,0 +1,39 @@
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-2.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopcut result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopcut
+
+checkprops result -s 3.05154e+07 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 96 -edge 143 -wire 51 -face 48 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 341
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_12 b/tests/perf/modalg/bug10160_12
new file mode 100644 (file)
index 0000000..7ca6171
--- /dev/null
@@ -0,0 +1,39 @@
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-2.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   boptuc result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter boptuc
+
+checkprops result -s 6.38359e+06 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 108 -edge 161 -wire 61 -face 60 -shell 3 -solid 3 -compsolid 0 -compound 1 -shape 397
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_2 b/tests/perf/modalg/bug10160_2
new file mode 100644 (file)
index 0000000..065231d
--- /dev/null
@@ -0,0 +1,42 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-2.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopfuse result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopfuse
+
+checkprops result -s 4.75218e+07 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 32 -edge 60 -wire 32 -face 29 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 156
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
diff --git a/tests/perf/modalg/bug10160_3 b/tests/perf/modalg/bug10160_3
new file mode 100644 (file)
index 0000000..48c8b18
--- /dev/null
@@ -0,0 +1,40 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-2.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopcut result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopcut
+
+checkprops result -s 2.36194e+07 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 24 -edge 34 -wire 20 -face 19 -shell 4 -solid 4 -compsolid 0 -compound 1 -shape 106
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_4 b/tests/perf/modalg/bug10160_4
new file mode 100644 (file)
index 0000000..152cf35
--- /dev/null
@@ -0,0 +1,41 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-2.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   boptuc result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter boptuc
+
+#CR24137 checkprops result -s 3.56087e+07 
+checkprops result -s 3.52471e+07 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 24 -edge 34 -wire 20 -face 17 -shell 3 -solid 3 -compsolid 0 -compound 1 -shape 102
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_5 b/tests/perf/modalg/bug10160_5
new file mode 100644 (file)
index 0000000..0b9e299
--- /dev/null
@@ -0,0 +1,41 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopcommon result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopcommon
+
+#CR24317 checkprops result -s 782201 
+checkprops result -s 784833 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 53 -edge 75 -wire 38 -face 34 -shell 6 -solid 6 -compsolid 0 -compound 1 -shape 213
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_6 b/tests/perf/modalg/bug10160_6
new file mode 100644 (file)
index 0000000..8a5ca7e
--- /dev/null
@@ -0,0 +1,42 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopfuse result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopfuse
+
+checkprops result -s 3.65961e+07
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 121 -edge 178 -wire 65 -face 59 -shell 3 -solid 2 -compsolid 0 -compound 1 -shape 429
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
diff --git a/tests/perf/modalg/bug10160_7 b/tests/perf/modalg/bug10160_7
new file mode 100644 (file)
index 0000000..2b24cfa
--- /dev/null
@@ -0,0 +1,41 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopcut result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopcut
+
+checkprops result -s 3.05118e+07
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 61 -edge 87 -wire 44 -face 36 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 231
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_8 b/tests/perf/modalg/bug10160_8
new file mode 100644 (file)
index 0000000..ff6fa98
--- /dev/null
@@ -0,0 +1,40 @@
+puts "TODO OCC11111 ALL: Error :  is WRONG because number of "
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-1.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   boptuc result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter boptuc
+
+checkprops result -s 6.87093e+06 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 113 -edge 166 -wire 59 -face 57 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 398
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug10160_9 b/tests/perf/modalg/bug10160_9
new file mode 100644 (file)
index 0000000..702c6ed
--- /dev/null
@@ -0,0 +1,39 @@
+puts "============"
+puts "OCC10160"
+puts "============"
+puts ""
+#######################################################################
+# BOP perfomance improvemen
+#######################################################################
+
+set BugNumber OCC10160
+
+restore [locate_data_file OCC10160-2.brep] b1 
+restore [locate_data_file OCC10160-3.brep] b2 
+
+set NbTests 3
+
+puts "Prepare boolean operation ..."
+dchrono h0 restart
+bop b1 b2
+dchrono h0 stop counter bop
+
+puts "Start boolean operation ..."
+dchrono h restart
+#
+# BOOLEAN OPERATION ----- START
+#
+for {set i 1} {$i <= ${NbTests}} {incr i} {
+   bopcommon result
+}
+#
+# BOOLEAN OPERATION ----- FINISH
+#
+dchrono h stop counter bopcommon
+
+checkprops result -s 4.86635e+06 
+checkshape result
+
+# Analysis of "nbshapes res"
+checknbshapes result -vertex 88 -edge 131 -wire 45 -face 45 -shell 1 -solid 1 -compsolid 0 -compound 1 -shape 312
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug165_4 b/tests/perf/modalg/bug165_4
new file mode 100644 (file)
index 0000000..b154f41
--- /dev/null
@@ -0,0 +1,75 @@
+puts "TODO OCC25919 ALL: Error: Offset is not done."
+puts "TODO OCC25919 ALL: Faulty OCC165"
+puts "TODO OCC25919 ALL: Error : The length of result shape is"
+
+cpulimit 600
+
+puts "========"
+puts "OCC165"
+puts "========"
+puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
+
+restore [locate_data_file offset_wire_019.brep] a 
+checkshape a
+
+mkplane f a
+checkshape f
+
+set start_stepoffset -5.7
+set incr_stepoffset 0.1
+set finish_stepoffset -2.8
+
+set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
+
+set IsMade 0
+set IsBeginMade 0
+set IsGood 1
+set i 0
+set resume_string ""
+for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
+    incr i
+    puts "i = $i"
+    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
+        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
+        set IsGood 0
+        set IsMade 0
+    } else {
+        puts "OK OCC165 (stepoffset = $stepoffset)"
+        set IsMade 1
+    }
+    if {$IsBeginMade == 0 && $IsMade == 1} {
+        set IsBeginMade 1
+        set BeginStepOffset $stepoffset
+    }
+    if {$IsMade == 1} {
+        set FinishStepOffset $stepoffset
+    }
+
+    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
+        set IsBeginMade 0
+        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
+        set resume_string "${resume_string}${resume_tmp}"
+    }
+}
+
+puts ""
+if {[string length $resume_string] == 0} {
+    puts "Offset is created wrongly on initial shape in following borders"
+    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
+} else {
+    puts "Offset is created correctly on initial shape in following borders"
+    puts "$resume_string"
+}
+
+if {$IsGood == 1} {
+    puts "OCC165 OK"
+} else {
+    puts "Faulty OCC165"
+}
+
+renamevar result_1 result
+
+checkprops result -l 0 
+checkshape result
+checksection result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug165_5 b/tests/perf/modalg/bug165_5
new file mode 100644 (file)
index 0000000..8430bea
--- /dev/null
@@ -0,0 +1,71 @@
+cpulimit 600
+
+puts "========"
+puts "OCC165"
+puts "========"
+puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
+
+restore [locate_data_file offset_wire_019.brep] a 
+checkshape a
+
+mkplane f a
+checkshape f
+
+set start_stepoffset -2.6
+set incr_stepoffset 0.1
+set finish_stepoffset 0.0
+
+set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
+
+set IsMade 0
+set IsBeginMade 0
+set IsGood 1
+set i 0
+set resume_string ""
+for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
+    incr i
+    puts "i = $i"
+    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
+        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
+        set IsGood 0
+        set IsMade 0
+    } else {
+        puts "OK OCC165 (stepoffset = $stepoffset)"
+        set IsMade 1
+    }
+    if {$IsBeginMade == 0 && $IsMade == 1} {
+        set IsBeginMade 1
+        set BeginStepOffset $stepoffset
+    }
+    if {$IsMade == 1} {
+        set FinishStepOffset $stepoffset
+    }
+
+    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
+        set IsBeginMade 0
+        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
+        set resume_string "${resume_string}${resume_tmp}"
+    }
+}
+
+puts ""
+if {[string length $resume_string] == 0} {
+    puts "Offset is created wrongly on initial shape in following borders"
+    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
+} else {
+    puts "Offset is created correctly on initial shape in following borders"
+    puts "$resume_string"
+}
+
+if {$IsGood == 1} {
+    puts "OCC165 OK"
+} else {
+    puts "Faulty OCC165"
+}
+
+renamevar result_1 result
+
+checkprops result -l 1081.52 
+checkshape result
+checksection result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug165_6 b/tests/perf/modalg/bug165_6
new file mode 100644 (file)
index 0000000..baed45d
--- /dev/null
@@ -0,0 +1,72 @@
+
+cpulimit 600
+
+puts "========"
+puts "OCC165"
+puts "========"
+puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
+
+restore [locate_data_file offset_wire_019.brep] a 
+checkshape a
+
+mkplane f a
+checkshape f
+
+set start_stepoffset 0.2
+set incr_stepoffset 0.1
+set finish_stepoffset 4.9
+
+set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
+
+set IsMade 0
+set IsBeginMade 0
+set IsGood 1
+set i 0
+set resume_string ""
+for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
+    incr i
+    puts "i = $i"
+    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
+        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
+        set IsGood 0
+        set IsMade 0
+    } else {
+        puts "OK OCC165 (stepoffset = $stepoffset)"
+        set IsMade 1
+    }
+    if {$IsBeginMade == 0 && $IsMade == 1} {
+        set IsBeginMade 1
+        set BeginStepOffset $stepoffset
+    }
+    if {$IsMade == 1} {
+        set FinishStepOffset $stepoffset
+    }
+
+    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
+        set IsBeginMade 0
+        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
+        set resume_string "${resume_string}${resume_tmp}"
+    }
+}
+
+puts ""
+if {[string length $resume_string] == 0} {
+    puts "Offset is created wrongly on initial shape in following borders"
+    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
+} else {
+    puts "Offset is created correctly on initial shape in following borders"
+    puts "$resume_string"
+}
+
+if {$IsGood == 1} {
+    puts "OCC165 OK"
+} else {
+    puts "Faulty OCC165"
+}
+
+renamevar result_1 result
+
+checkprops result -l 1112.83 
+checkshape result
+checksection result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
\ No newline at end of file
diff --git a/tests/perf/modalg/bug165_7 b/tests/perf/modalg/bug165_7
new file mode 100644 (file)
index 0000000..1e809ed
--- /dev/null
@@ -0,0 +1,71 @@
+cpulimit 600
+
+puts "========"
+puts "OCC165"
+puts "========"
+puts "Bug regression in BRepOffsetAPI_MakeOffset class (offsetting in OY direction)"
+
+restore [locate_data_file offset_wire_019.brep] a 
+checkshape a
+
+mkplane f a
+checkshape f
+
+set start_stepoffset 5.1
+set incr_stepoffset 0.1
+set finish_stepoffset 6.3
+
+set interval_numb [expr int ( ($finish_stepoffset - $start_stepoffset) / $incr_stepoffset ) + 1]
+
+set IsMade 0
+set IsBeginMade 0
+set IsGood 1
+set i 0
+set resume_string ""
+for {set stepoffset $start_stepoffset} {$stepoffset <= $finish_stepoffset} {set stepoffset [expr $stepoffset + $incr_stepoffset]} {
+    incr i
+    puts "i = $i"
+    if { [catch {mkoffset result f 1 $stepoffset } catch_result] } {
+        puts "Faulty OCC165 (stepoffset = $stepoffset) : function MKOFFSET works wrongly"
+        set IsGood 0
+        set IsMade 0
+    } else {
+        puts "OK OCC165 (stepoffset = $stepoffset)"
+        set IsMade 1
+    }
+    if {$IsBeginMade == 0 && $IsMade == 1} {
+        set IsBeginMade 1
+        set BeginStepOffset $stepoffset
+    }
+    if {$IsMade == 1} {
+        set FinishStepOffset $stepoffset
+    }
+
+    if {$IsBeginMade == 1 && ($IsMade == 0 || $i == $interval_numb) } {
+        set IsBeginMade 0
+        set resume_tmp "from [format "%0.2f" $BeginStepOffset] till [format "%0.2f" $FinishStepOffset]\n"
+        set resume_string "${resume_string}${resume_tmp}"
+    }
+}
+
+puts ""
+if {[string length $resume_string] == 0} {
+    puts "Offset is created wrongly on initial shape in following borders"
+    puts "from [format "%0.2f" $start_stepoffset] till [format "%0.2f" $finish_stepoffset]"
+} else {
+    puts "Offset is created correctly on initial shape in following borders"
+    puts "$resume_string"
+}
+
+if {$IsGood == 1} {
+    puts "OCC165 OK"
+} else {
+    puts "Faulty OCC165"
+}
+
+renamevar result_1 result
+
+checkprops result -l 1113.06 
+checkshape result
+checksection result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
\ No newline at end of file
diff --git a/tests/perf/modalg/bug19793_2 b/tests/perf/modalg/bug19793_2
new file mode 100644 (file)
index 0000000..759cc44
--- /dev/null
@@ -0,0 +1,31 @@
+puts "============"
+puts "OCC19793"
+puts "============"
+puts ""
+#######################################################################
+# Fuse problem of symetrical shapes. Appendix for NPAL19789
+#######################################################################
+
+cpulimit 2500
+set BugNumber OCC19793
+
+puts "Load first shape ..."
+restore [locate_data_file bug19793_new_shape.brep] b1 
+puts "Load second shape ..."
+restore [locate_data_file bug19793_shape.brep] b2 
+
+puts "Prepare boolean operation ..."
+dchrono perf_h restart
+bop b1 b2
+dchrono perf_h stop counter bop
+
+puts "Start boolean operation ..."
+bopsection result
+puts "Finish boolean operation ..."
+
+checkprops result -l 17730.1 
+checkshape result
+checksection result
+checknbshapes result -vertex 68 -edge 70 -wire 0 -face 0 -shell 0 -solid 0 -compsolid 0 -compound 1 -shape 139
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug23906 b/tests/perf/modalg/bug23906
new file mode 100644 (file)
index 0000000..9df3874
--- /dev/null
@@ -0,0 +1,17 @@
+puts "============"
+puts "OCC23906"
+puts "============"
+puts ""
+###############################
+## Performance of the projection algorithm in some cases became lower after integration of the fix for the bug 0022610
+###############################
+
+restore [locate_data_file bug23906_f.brep] f
+
+point p 3.5527136788005e-015 100 100
+
+dchrono h restart
+
+projponf f p -min -t
+
+dchrono h stop counter projponf
\ No newline at end of file
diff --git a/tests/perf/modalg/bug24005 b/tests/perf/modalg/bug24005
new file mode 100644 (file)
index 0000000..b6aad5d
--- /dev/null
@@ -0,0 +1,23 @@
+puts "============"
+puts "OCC24005"
+puts "============"
+puts ""
+###############################
+## Intersecting a slightly off angle plane with a cylinder takes 7+ seconds
+###############################
+
+pload QAcommands
+
+dchrono h restart
+
+OCC24005 result
+
+dchrono h stop counter OCC24005
+
+if { [regexp {Ellipse} [dump result]] == 1 } {
+    puts "result is OK"
+} else {
+    puts "result is Faulty"
+}
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug24696 b/tests/perf/modalg/bug24696
new file mode 100644 (file)
index 0000000..3701de4
--- /dev/null
@@ -0,0 +1,26 @@
+puts "========="
+puts "OCC24696"
+puts "========="
+puts ""
+###########################################################
+# Lower performance of the new Edge/Edge intersection algorithm
+###########################################################
+
+pload QAcommands
+
+dchrono h restart
+
+restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
+
+bclearobjects
+bcleartools
+
+set edges [explode cx e]
+set nbe [llength $edges]
+for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
+bfillds
+bbuild result
+
+dchrono h stop counter EdgeIntersection
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug24751_1 b/tests/perf/modalg/bug24751_1
new file mode 100644 (file)
index 0000000..41c61ac
--- /dev/null
@@ -0,0 +1,30 @@
+puts "========="
+puts "OCC24751"
+puts "========="
+puts ""
+###########################################################
+# Performance improvements in the Edge/Edge intersection algorithm
+###########################################################
+
+pload QAcommands
+
+dchrono h restart
+
+restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
+
+###------------------####
+trotate cx 0 0 0 0 0 1 45
+###------------------####
+
+bclearobjects
+bcleartools
+
+set edges [explode cx e]
+set nbe [llength $edges]
+for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
+bfillds
+bbuild result
+
+dchrono h stop counter EdgeIntersection
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug24751_2 b/tests/perf/modalg/bug24751_2
new file mode 100644 (file)
index 0000000..0fff551
--- /dev/null
@@ -0,0 +1,30 @@
+puts "========="
+puts "OCC24751"
+puts "========="
+puts ""
+###########################################################
+# Performance improvements in the Edge/Edge intersection algorithm
+###########################################################
+
+pload QAcommands
+
+dchrono h restart
+
+restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
+
+###------------------####
+trotate cx 0 0 0 0 1 1 45
+###------------------####
+
+bclearobjects
+bcleartools
+
+set edges [explode cx e]
+set nbe [llength $edges]
+for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
+bfillds
+bbuild result
+
+dchrono h stop counter EdgeIntersection
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug24751_3 b/tests/perf/modalg/bug24751_3
new file mode 100644 (file)
index 0000000..7c9938d
--- /dev/null
@@ -0,0 +1,30 @@
+puts "========="
+puts "OCC24751"
+puts "========="
+puts ""
+###########################################################
+# Performance improvements in the Edge/Edge intersection algorithm
+###########################################################
+
+pload QAcommands
+
+dchrono h restart
+
+restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
+
+###------------------####
+trotate cx 0 0 0 1 1 1 45
+###------------------####
+
+bclearobjects
+bcleartools
+
+set edges [explode cx e]
+set nbe [llength $edges]
+for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
+bfillds
+bbuild result
+
+dchrono h stop counter EdgeIntersection
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug24751_4 b/tests/perf/modalg/bug24751_4
new file mode 100644 (file)
index 0000000..e6d11c9
--- /dev/null
@@ -0,0 +1,30 @@
+puts "========="
+puts "OCC24751"
+puts "========="
+puts ""
+###########################################################
+# Performance improvements in the Edge/Edge intersection algorithm
+###########################################################
+
+pload QAcommands
+
+dchrono h restart
+
+restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
+
+###------------------####
+trotate cx 0 0 0 0 1 1 90
+###------------------####
+
+bclearobjects
+bcleartools
+
+set edges [explode cx e]
+set nbe [llength $edges]
+for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
+bfillds
+bbuild result
+
+dchrono h stop counter EdgeIntersection
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug24751_5 b/tests/perf/modalg/bug24751_5
new file mode 100644 (file)
index 0000000..9d882d6
--- /dev/null
@@ -0,0 +1,30 @@
+puts "========="
+puts "OCC24751"
+puts "========="
+puts ""
+###########################################################
+# Performance improvements in the Edge/Edge intersection algorithm
+###########################################################
+
+pload QAcommands
+
+dchrono h restart
+
+restore [locate_data_file bug24696_cx_e1200_nurbs.brep] cx
+
+###------------------####
+trotate cx 0 0 0 1 1 1 90
+###------------------####
+
+bclearobjects
+bcleartools
+
+set edges [explode cx e]
+set nbe [llength $edges]
+for {set i 1} {$i <= $nbe} {incr i} {baddobjects cx_$i}
+bfillds
+bbuild result
+
+dchrono h stop counter EdgeIntersection
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug24899 b/tests/perf/modalg/bug24899
new file mode 100644 (file)
index 0000000..894fccc
--- /dev/null
@@ -0,0 +1,27 @@
+puts "=========="
+puts "OCC24899"
+puts "=========="
+puts ""
+##################################################################################################
+# Time of computation of intersection points with help of class BRepIntCurveSurface_Inter is big
+##################################################################################################
+
+polyline l -10 1 1 80 1 1
+explode l e
+
+restore [locate_data_file bug24899_TheHull.brep] h1
+mkcurve c1 l_1
+BRepIntCS c1 h1 r
+distmini dd l_1 h1
+
+dchrono t1 restart
+for { set i 0} { $i <= 100 } {incr i} {
+  BRepIntCS c1 h1 r
+}
+dchrono t1 stop counter BRepIntCS
+
+dchrono t2 restart
+for { set j 0} { $j <= 100 } {incr j} {
+  distmini dd l_1 h1
+}
+dchrono t2 stop counter distmini
\ No newline at end of file
diff --git a/tests/perf/modalg/bug25019 b/tests/perf/modalg/bug25019
new file mode 100644 (file)
index 0000000..9a1bb53
--- /dev/null
@@ -0,0 +1,20 @@
+puts "============"
+puts "OCC25019"
+puts "============"
+puts ""
+###############################
+## Command "bsection" in Test Harness with flag build pcurve on second shape works slowly.
+###############################
+
+restore [locate_data_file bug25019_a_shape_1.brep] a1
+restore [locate_data_file bug25019_prism.brep] p1
+
+# 1.
+dchrono h1 restart
+bsection r a1 p1 -n2d2
+dchrono h1 stop counter BSectionN2D2
+
+# 2.
+dchrono h2 restart
+bsection r a1 p1
+dchrono h2 stop counter BSection
\ No newline at end of file
diff --git a/tests/perf/modalg/bug25058 b/tests/perf/modalg/bug25058
new file mode 100644 (file)
index 0000000..f0024ee
--- /dev/null
@@ -0,0 +1,14 @@
+puts "============"
+puts "OCC25058"
+puts "============"
+puts ""
+###############################
+## Regression of performance of BRepExtrema_ExtCC (1000 times slower)
+###############################
+
+restore [locate_data_file bug25058_e1.brep] e1
+restore [locate_data_file bug25058_e2.brep] e2
+
+dchrono h restart
+distmini r e1 e2
+dchrono h stop counter distmini
\ No newline at end of file
diff --git a/tests/perf/modalg/bug25413 b/tests/perf/modalg/bug25413
new file mode 100644 (file)
index 0000000..e78533f
--- /dev/null
@@ -0,0 +1,15 @@
+puts "========"
+puts "OCC25413"
+puts "========"
+puts ""
+#############################################################
+# Line-Shape intersection algorithm became 400 times slower
+#############################################################
+
+pload QAcommands
+
+restore [locate_data_file bug25413.brep] w
+
+dchrono perf_h restart
+OCC25413 w
+dchrono perf_h stop counter OCC25413
\ No newline at end of file
diff --git a/tests/perf/modalg/bug25742_1 b/tests/perf/modalg/bug25742_1
new file mode 100644 (file)
index 0000000..c39337b
--- /dev/null
@@ -0,0 +1,38 @@
+puts "============"
+puts "OCC25742"
+puts "============"
+puts ""
+###############################
+## A partition of 2 shapes stresses a performance issue
+###############################
+
+restore [locate_data_file bug25742_pipeFiss.brep] b1
+restore [locate_data_file bug25742_shellFiss.brep] b2
+
+bclearobjects
+bcleartools
+baddobjects b1
+baddtools b2
+dchrono h restart
+bfillds
+bbuild result
+dchrono h stop counter BBuild
+
+checkprops result -s 280627 
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 14
+ EDGE      : 24
+ WIRE      : 11
+ FACE      : 10
+ SHELL     : 1
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 61
+"
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
+checkview -display result -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug25742_2 b/tests/perf/modalg/bug25742_2
new file mode 100755 (executable)
index 0000000..f636f26
--- /dev/null
@@ -0,0 +1,61 @@
+puts "============"
+puts "OCC25742"
+puts "============"
+puts ""
+###############################
+## A partition of 2 shapes stresses a performance issue
+###############################
+
+if { [regexp {Debug mode} [dversion]] } {
+  if { [regexp {Windows} [dversion]] } {
+    set max_time 10
+    set max_time2 10
+  } else {
+    set max_time 10
+    set max_time2 10
+  }
+} else {
+  if { [regexp {Windows} [dversion]] } {
+    set max_time 1
+    set max_time2 1
+  } else {
+    set max_time 1
+    set max_time2 1
+  }
+}
+
+restore [locate_data_file bug25742_pipeFiss.brep] b1
+restore [locate_data_file bug25742_shellFiss.brep] b2
+
+explode b1 f
+explode b2 f
+
+smallview
+donly b1_4
+fit
+display b2_1
+
+dchrono h restart
+bopcurves b1_4 b2_1 -2d
+dchrono h stop bopcurves counter bopcurves
+
+checkview -screenshot -2d -path ${imagedir}/${test_image}_1.png
+
+mksurface s1 b1_4
+mksurface s2 b2_1
+
+dchrono h2 restart
+set CurveNumb [intersect resi s1 s2]
+dchrono h2 stop counter CurveNumb
+
+if { [llength ${CurveNumb}] < 1 } {
+    puts "Error : Bad intersection"
+} else {
+    puts "OK : Good intersection"
+}
+
+don resi*
+fit
+display s1 s2
+
+checkview -screenshot -2d -path ${imagedir}/${test_image}_2.png
diff --git a/tests/perf/modalg/bug25788 b/tests/perf/modalg/bug25788
new file mode 100644 (file)
index 0000000..1f94bd1
--- /dev/null
@@ -0,0 +1,36 @@
+puts "========="
+puts "OCC25788"
+puts "========="
+puts ""
+###############################################
+# Parallelization of the BOP Builder algorithm on second level
+###############################################
+
+# box plate to cut the holes from
+box b1 100 100 1
+
+# N defines number of holes along each of X and Y, thus total N^2 holes
+# will be drilled; note that the algorithm iself is likely to be quadratic
+# for number of shapes, i.e. CPU 
+set N 40
+set holes {}
+for {set i 1} {$i < $N} {incr i} {
+ for {set j 1} {$j < $N} {incr j} {
+   pcylinder p_${i}_$j 0.5 1
+   ttranslate p_${i}_$j [expr $i * 100. / $N]  [expr $j * 100. / $N]  0.
+   lappend holes p_${i}_$j
+ }
+}
+
+eval compound $holes b2
+
+bclearobjects
+bcleartools
+baddobjects b1
+baddtools b2
+
+brunparallel 1
+
+dchrono cpu restart
+bcut r b1 b2 
+dchrono cpu stop counter bcut
\ No newline at end of file
diff --git a/tests/perf/modalg/bug26310_1 b/tests/perf/modalg/bug26310_1
new file mode 100644 (file)
index 0000000..826d182
--- /dev/null
@@ -0,0 +1,32 @@
+puts "========"
+puts "OCC26310"
+puts "========"
+puts ""
+#################################################
+# Very slow boolean cut operations on cylinders
+#################################################
+
+if { [regexp {Debug mode} [dversion]] } {
+    set max_time 0.3
+} else {
+    set max_time 0.15
+}
+
+set maxToler 1.5e-5
+
+restore [locate_data_file OCC26310-b1.brep] b1 
+restore [locate_data_file OCC26310-b2.brep] b2 
+
+explode b1 f
+explode b2 f
+
+dchrono cr restart
+set log1 [bopcurves b1_1 b2_1 -2d]
+dchrono cr stop counter bopcurves
+
+regexp {Tolerance Reached=+([-0-9.+eE]+)} ${log1} full Toler
+puts "TolReached = $Toler"
+
+if { $Toler > $maxToler } {
+  puts "Error: Tolerance is too big ($Toler > $maxToler)"
+}
\ No newline at end of file
diff --git a/tests/perf/modalg/bug26327 b/tests/perf/modalg/bug26327
new file mode 100644 (file)
index 0000000..5d8380c
--- /dev/null
@@ -0,0 +1,20 @@
+puts "============"
+puts "OCC24596"
+puts "============"
+puts ""
+###############################
+## Slow import of IGES data
+###############################
+
+pload XDE
+
+dchrono h restart
+
+stepread [locate_data_file bug26327_fuse_input.stp] a *
+
+for {set i 2} {$i < 22} {incr i} {
+   puts "a_$i"
+   bfuse a_1 a_1 a_$i
+   }
+
+dchrono h stop counter stepread
\ No newline at end of file
diff --git a/tests/perf/modalg/bug26443_1 b/tests/perf/modalg/bug26443_1
new file mode 100644 (file)
index 0000000..975b746
--- /dev/null
@@ -0,0 +1,18 @@
+puts "========"
+puts "OCC26443"
+puts "========"
+puts ""
+###########################
+# Offset surface hangs up
+###########################
+
+smallview
+
+restore [locate_data_file OCC26443-shell_1.brep] a
+
+dchrono h restart
+offsetshape r a -2
+dchrono h stop counter offsetshape
+fit
+
+checkview -screenshot -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug26443_2 b/tests/perf/modalg/bug26443_2
new file mode 100644 (file)
index 0000000..d98d576
--- /dev/null
@@ -0,0 +1,18 @@
+puts "========"
+puts "OCC26443"
+puts "========"
+puts ""
+###########################
+# Offset surface hangs up
+###########################
+
+smallview
+
+restore [locate_data_file OCC26443-shell_2.brep] a
+
+dchrono h restart
+offsetshape r a -2
+dchrono h stop counter offsetshape
+fit
+
+checkview -screenshot -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug26447 b/tests/perf/modalg/bug26447
new file mode 100644 (file)
index 0000000..8437b17
--- /dev/null
@@ -0,0 +1,20 @@
+puts "============"
+puts "OCC26447"
+puts "============"
+puts ""
+##############################################################
+# Performance degradation intersecting cylindrical surfaces
+#############################################################
+
+cylinder c1 0 0 0 1 0 0 0 -1 0 100
+cylinder c2 0 0 0 0 1 0 1 0 0 100
+mkface f1 c1
+mkface f2 c2
+
+dchrono cr restart
+
+for {set i 1} {$i <= 1000} {incr i} {
+  bopcurves f1 f2
+}
+
+dchrono cr stop counter bopcurves
\ No newline at end of file
diff --git a/tests/perf/modalg/bug26513 b/tests/perf/modalg/bug26513
new file mode 100644 (file)
index 0000000..c2f2bfb
--- /dev/null
@@ -0,0 +1,27 @@
+puts "========"
+puts "OCC26513"
+puts "========"
+puts ""
+###########################################################
+# Offset API not returning result (seems to be "hanging")
+###########################################################
+
+set max_time 10
+
+smallview
+
+restore [locate_data_file bug26513-offset_input.brep] a
+
+unifysamedom s a -a 1.e-8
+offsetparameter 1.e-7 c i
+offsetload s 5
+offsetperform result
+
+checkshape result
+
+checkprops result -s 3.28125e+008 -v 3.07334e+010
+
+unifysamedom result_unif result
+checknbshapes result_unif -face 114 -shell 1
+
+checkview -display result_unif -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug26674 b/tests/perf/modalg/bug26674
new file mode 100644 (file)
index 0000000..d9ede81
--- /dev/null
@@ -0,0 +1,23 @@
+puts "========"
+puts "OCC26674"
+puts "========"
+puts ""
+#################################################
+# Performance regression in BRepExtrema_DistShapeShape in OCCT 6.9.0 in compare with OCCT 6.7.1
+#################################################
+
+set max_time 1
+
+restore [locate_data_file OCC26674-face.brep] a1
+restore [locate_data_file OCC26674-shell.brep] a2
+
+dchrono cr restart
+distmini dd a1 a2
+dchrono cr stop counter distmini
+
+regexp {([-0-9.+eE]+)$} [dump dd_val] full dist
+
+set expected_dist 0.0
+set tol_abs_dist 1.0e-07
+set tol_rel_dist 0.0
+checkreal "Dump of dd_val" ${dist} ${expected_dist} ${tol_abs_dist} ${tol_rel_dist}
diff --git a/tests/perf/modalg/bug26914 b/tests/perf/modalg/bug26914
new file mode 100644 (file)
index 0000000..9602c20
--- /dev/null
@@ -0,0 +1,15 @@
+puts "========"
+puts "OCC26914"
+puts "========"
+puts ""
+#################################
+# Hang in surface approximation
+#################################
+
+set max_time 2
+
+restore [locate_data_file bug23943_s.draw] s
+
+dchrono cr restart
+approxsurf rs s 5e-5 0 0 15 15 100 0
+dchrono cr stop counter approxsurf
\ No newline at end of file
diff --git a/tests/perf/modalg/bug26929 b/tests/perf/modalg/bug26929
new file mode 100644 (file)
index 0000000..342f9e6
--- /dev/null
@@ -0,0 +1,28 @@
+puts "============"
+puts "OCC26929"
+puts "============"
+puts ""
+#############################################################################################
+## Extrema_ECC hang/crash in ShapeSplitter
+#############################################################################################
+cpulimit 100
+
+restore [locate_data_file OCC26629-face.brep] aF
+restore [locate_data_file OCC26629-edge.brep] aE
+
+pload MODELING
+
+# Hang check.
+dchrono cr restart
+
+set ss ""
+foreach s [explode aE e] {set ss "$ss aF $s"}
+eval splitshape result aF $ss
+
+dchrono cr stop counter splitshape
+
+# Check result validity.
+checkshape result
+
+# Visual check.
+set 2dviewer 1
\ No newline at end of file
diff --git a/tests/perf/modalg/bug26980 b/tests/perf/modalg/bug26980
new file mode 100644 (file)
index 0000000..997bce5
--- /dev/null
@@ -0,0 +1,53 @@
+puts "========"
+puts "OCC26980"
+puts "========"
+puts ""
+#################################
+# Intersection part of Boolean algorithm spends much system time and system memory
+#################################
+
+set max_time 130
+set mem_max_wsetpeak 500000000
+
+
+bclearobjects;
+bcleartools;
+
+restore [locate_data_file bug26980-cmp.brep] cmp
+
+puts [nbshapes cmp -t]
+
+eval baddobjects [explode cmp]
+
+dchrono cr restart
+
+bfillds
+bbuild result
+
+dchrono cr stop counter bbuild
+
+set mem_wsetpeak [meminfo wsetpeak]
+
+if { ${mem_wsetpeak} > ${mem_max_wsetpeak}} {
+    puts "Error : there is memory problem (${mem_wsetpeak} MBytes has been allocated)"
+}
+
+set nbshapes_expected "
+ VERTEX    : 365
+ EDGE      : 793
+ WIRE      : 531
+ FACE      : 531
+ SHELL     : 102
+ SOLID     : 101
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 2424
+"
+
+checknbshapes result -ref ${nbshapes_expected} -t
+
+smallview
+donly result
+fit
+
+set 2dviewer 1
diff --git a/tests/perf/modalg/bug27085_1 b/tests/perf/modalg/bug27085_1
new file mode 100644 (file)
index 0000000..2bfd02a
--- /dev/null
@@ -0,0 +1,15 @@
+puts "============"
+puts "OCC27085"
+puts "============"
+puts ""
+###############################
+## ShapeUpgrade_UnifySameDomain very large performance difference for seemingly similar shapes
+###############################
+
+restore [locate_data_file bug27085_fused_primitive.fast.brep] fp
+
+dchrono h restart
+
+unifysamedom res fp
+
+dchrono h stop counter unifysamedom
\ No newline at end of file
diff --git a/tests/perf/modalg/bug27085_2 b/tests/perf/modalg/bug27085_2
new file mode 100644 (file)
index 0000000..16c6f80
--- /dev/null
@@ -0,0 +1,15 @@
+puts "============"
+puts "OCC27085"
+puts "============"
+puts ""
+###############################
+## ShapeUpgrade_UnifySameDomain very large performance difference for seemingly similar shapes
+###############################
+
+restore [locate_data_file bug27085_fused_primitive.slow.brep] sp
+
+dchrono h restart
+
+unifysamedom res sp
+
+dchrono h stop counter unifysamedom
\ No newline at end of file
diff --git a/tests/perf/modalg/bug27569 b/tests/perf/modalg/bug27569
new file mode 100644 (file)
index 0000000..7ea84ca
--- /dev/null
@@ -0,0 +1,19 @@
+puts "============"
+puts "OCC27569"
+puts "============"
+puts ""
+######################################################
+# [Regression in 6.9.0] Projecting a curve hangs
+######################################################
+
+pload QAcommands
+
+restore [locate_data_file bug27569.brep] aS
+explode aS
+mkcurve c aS_1
+mksurface s aS_2
+
+# Performance check
+dchrono h restart
+OCC24008 c s
+dchrono h stop counter OCC24008
\ No newline at end of file
diff --git a/tests/perf/modalg/bug28030 b/tests/perf/modalg/bug28030
new file mode 100644 (file)
index 0000000..ec45653
--- /dev/null
@@ -0,0 +1,29 @@
+puts "========"
+puts "OCC28030"
+puts "========"
+puts ""
+########################################################################################################
+# Algorith GeomLib_CheckCurveOnSurface takes too much time for Bspline curves with big number of knots
+########################################################################################################
+
+beziercurve c 4 0 0 0 1 1 0 2 1 0 3 0 0
+
+convert c1 c
+set i 1
+repeat 98 {insertknot c1 0.01*$i 1; incr i 1}
+mkedge e1 c1
+prism p1 e1 0 0 1
+explode p1 e
+dchrono cpu restart
+xdistef p1_3 p1
+dchrono cpu stop counter xdistef_1
+
+convert c2 c
+set i 1
+repeat 1000 {insertknot c2 0.00098*$i 1; incr i 1}
+mkedge e2 c2
+prism p2 e2 0 0 1
+explode p2 e
+dchrono cpu restart
+xdistef p2_3 p2
+dchrono cpu stop counter xdistef_2
diff --git a/tests/perf/modalg/bug452_1 b/tests/perf/modalg/bug452_1
new file mode 100644 (file)
index 0000000..f532b58
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========"
+puts "OCC452"
+puts "(case 1)"
+puts "========"
+puts ""
+
+pcone pc 10 0 20
+explode pc f
+
+prism pcy pc_2 0 0 10
+
+dchrono h2 restart
+
+bcut result pc pcy
+
+dchrono h2 stop counter bcut
+
+checkprops result -s 254.16 
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
diff --git a/tests/perf/modalg/bug452_2 b/tests/perf/modalg/bug452_2
new file mode 100644 (file)
index 0000000..986ed6b
--- /dev/null
@@ -0,0 +1,51 @@
+
+puts "========"
+puts "GER60239"
+puts "OCC452"
+puts "(case 2)"
+puts "========"
+puts ""
+
+restore [locate_data_file mds-part1.rle] a 
+set che [checkshape a]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 1): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 1): Source shape is valid"
+}
+
+restore [locate_data_file mds-part2.rle] b
+set che [checkshape b]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 2): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 2): Source shape is valid"
+}
+
+restore [locate_data_file CTO900_ger60239a.rle] c
+set che [checkshape c]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 3): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 3): Source shape is valid"
+}
+
+restore [locate_data_file CTO900_ger60239b.rle] d
+set che [checkshape d]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 4): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 4): Source shape is valid"
+}
+dchrono h2 restart
+
+bfuse r a b
+#checkshape r
+
+bfuse result c d
+
+dchrono h2 stop counter bfuse
+
+checkprops result -s 3468.6 
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug452_3 b/tests/perf/modalg/bug452_3
new file mode 100644 (file)
index 0000000..9f34fb5
--- /dev/null
@@ -0,0 +1,36 @@
+
+puts "========"
+puts "GER60239"
+puts "OCC452"
+puts "(case 3)"
+puts "========"
+puts ""
+
+restore [locate_data_file CTO900_ger60239a.rle] a 
+set che [checkshape a]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 5): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 5): Source shape is valid"
+}
+
+restore [locate_data_file CTO900_ger60239b.rle] b
+set che [checkshape b]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 6): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 6): Source shape is valid"
+}
+
+dchrono h2 restart
+
+bfuse result a b
+#checkshape -top res
+
+dchrono h2 stop counter bfuse
+
+checkprops result -s 3468.6 
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
diff --git a/tests/perf/modalg/bug452_4 b/tests/perf/modalg/bug452_4
new file mode 100644 (file)
index 0000000..06a2816
--- /dev/null
@@ -0,0 +1,37 @@
+
+puts "========"
+puts "PRO7934"
+puts "OCC452"
+puts "(case 4)"
+puts "========"
+puts ""
+
+restore [locate_data_file CTO900_pro7934a.rle] a 
+set che [checkshape a]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 7): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 7): Source shape is valid"
+}
+
+restore [locate_data_file CTO900_pro7934b.rle] b
+set che [checkshape b]
+if { [regexp {Faulty} $che ] == 1 } {
+    puts "Faulty OCC452 (shape 8): Source shape is invalid. It was detected by Checkshape command"
+} else {
+    puts "OCC452 OK (shape 8): Source shape is valid"
+}
+
+dchrono h2 restart
+
+bfuse result a b
+#checkshape -top res
+
+dchrono h2 stop counter bfuse
+
+checkprops result -s 201978 
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
+
diff --git a/tests/perf/modalg/bug453_1 b/tests/perf/modalg/bug453_1
new file mode 100644 (file)
index 0000000..82b70d1
--- /dev/null
@@ -0,0 +1,30 @@
+puts "TODO OCC24156 MacOS: Tcl Exception:"
+puts "TODO OCC24156 MacOS: TEST INCOMPLETE"
+
+puts "========"
+puts "OCC453"
+puts "(case 1)"
+puts "========"
+puts ""
+
+dchrono h2 restart
+
+set make_print_out 0
+
+dset SCALE 1000.
+dset SCALE1 5
+tolblend 0.01 1e-04 1e-05 1e-03
+
+restore [locate_data_file CFI_5_f12fgk.rle] s 
+tscale s 0 0 0 SCALE1
+explode s E
+
+blend result s 0.5*SCALE1 s_1 0.5*SCALE1 s_4 0.5*SCALE1 s_12 0.5*SCALE1 s_8 0.5*SCALE1 s_6
+explode result sh
+tcopy result_1 result
+
+dchrono h2 stop counter blend
+
+checkprops result -s 6021.51 
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug453_2 b/tests/perf/modalg/bug453_2
new file mode 100644 (file)
index 0000000..3ea921a
--- /dev/null
@@ -0,0 +1,31 @@
+puts "TODO ?OCC25918 Windows: Error : The area of result shape is"
+puts "TODO OCC24156 MacOS: Tcl Exception:"
+puts "TODO OCC24156 MacOS: TEST INCOMPLETE"
+
+puts "========"
+puts "OCC453"
+puts "(case 2)"
+puts "========"
+puts ""
+
+dchrono h2 restart
+
+set make_print_out 0
+
+dset SCALE 1000.
+dset SCALE1 5
+tolblend 0.01 1e-04 1e-05 1e-03
+
+restore [locate_data_file shading_137.brep] s 
+tscale s 0 0 0 SCALE1
+explode s E
+
+blend result s  4.5*SCALE1 s_2  4.5*SCALE1 s_1  4.5*SCALE1 s_6 4.5*SCALE1 s_8  4.5*SCALE1 s_10 4.5*SCALE1 s_14  4.5*SCALE1 s_4 4.5*SCALE1 s_5 4.5*SCALE1 s_16 4.5*SCALE1 s_11 4.5*SCALE1 s_19 4.5*SCALE1 s_13
+explode result So
+tcopy result_1 result 
+
+dchrono h2 stop counter blend
+
+checkprops result -s 3.65777e+06 
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/modalg/bug5157_1 b/tests/perf/modalg/bug5157_1
new file mode 100644 (file)
index 0000000..bbac9e7
--- /dev/null
@@ -0,0 +1,27 @@
+puts "============"
+puts "OCC5157"
+puts "============"
+puts ""
+######################################################
+# DRAW commands vprops and sprops with tolerance 1.e-6 hange on attached shape.
+######################################################
+
+cpulimit 3500
+
+catch { pload XDE }
+
+set BugNumber OCC5157
+
+set status 0
+set filepath [locate_data_file OCC5157.stp]
+if {[catch { stepread $filepath a * } catch_result] } {
+    puts "Faulty ${BugNumber} : here is reading problem"
+} else {
+    tpcompound result
+}
+
+checkprops result -s 35273.9 -eps 1.e-6
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
diff --git a/tests/perf/modalg/bug5157_2 b/tests/perf/modalg/bug5157_2
new file mode 100644 (file)
index 0000000..e0758b0
--- /dev/null
@@ -0,0 +1,25 @@
+puts "============"
+puts "OCC5157"
+puts "============"
+puts ""
+######################################################
+# DRAW commands vprops and sprops with tolerance 1.e-6 hange on attached shape.
+######################################################
+
+cpulimit 3500
+
+catch { pload XDE }
+
+set BugNumber OCC5157
+
+set filepath [locate_data_file OCC5157.stp]
+if { [catch { stepread $filepath a * } catch_result] } {
+    puts "Faulty ${BugNumber} : here is reading problem"
+} else {
+    tpcompound result
+}
+
+checkprops result -s 35362.3 -eps 1.e-6
+checkshape result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
diff --git a/tests/perf/modalg/bug83_1 b/tests/perf/modalg/bug83_1
new file mode 100644 (file)
index 0000000..984a5d3
--- /dev/null
@@ -0,0 +1,31 @@
+puts "============"
+puts "BUC60912"
+puts "OCC83"
+puts "============"
+puts ""
+###############################
+## Section of simple BSpline surfaces is performed too slow
+###############################
+
+puts "1 case: perform section with plane"
+restore [locate_data_file BUC60912_sec_slow.brep] c 
+explode c
+checkshape c_1
+checkshape c_2
+
+renamevar c_1 sh
+renamevar c_2 pr
+plane f 0 0 0 1 0 0
+mkface f f -11 11 -11 11
+
+dchrono h restart
+bsection result f pr
+
+dchrono h stop counter bsection
+
+checkprops result -l 42.879 
+checkshape result 
+checksection result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
diff --git a/tests/perf/modalg/bug83_2 b/tests/perf/modalg/bug83_2
new file mode 100644 (file)
index 0000000..0700f88
--- /dev/null
@@ -0,0 +1,30 @@
+puts "============"
+puts "BUC60912"
+puts "OCC83"
+puts "============"
+puts ""
+###############################
+## Section of simple BSpline surfaces is performed too slow
+###############################
+
+puts "2 case: perform section with planar BSpline surface"
+restore [locate_data_file BUC60912_sec_slow.brep] c 
+explode c
+checkshape c_1
+checkshape c_2
+
+renamevar c_1 sh
+renamevar c_2 pr
+plane f 0 0 0 1 0 0
+mkface f f -11 11 -11 11
+
+puts "Info: perform section with planar BSpline surface"
+dchrono h2 restart
+bsection result sh pr
+dchrono h2 stop counter bsection
+
+checkprops result -l 42.879 
+checkshape result 
+checksection result
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
diff --git a/tests/perf/moddata/bug21292 b/tests/perf/moddata/bug21292
new file mode 100644 (file)
index 0000000..dc4c166
--- /dev/null
@@ -0,0 +1,32 @@
+puts "========"
+puts "OCC21292"
+puts "========"
+puts ""
+######################################################
+# Shading on large model too long
+######################################################
+
+set BugNumber OCC21292
+
+# 1 munite
+cpulimit 60
+
+restore [locate_data_file OCC21292.brep] result
+
+vinit
+vsetdispmode 1
+
+dchrono h restart
+#
+# DISPLAY OPERATION ----- START
+#
+vdisplay result
+#
+# DISPLAY OPERATION ----- FINISH
+#
+dchrono h stop counter vdisplay
+
+checkprops result -s 1.40193e+07
+checknbshapes result -vertex 372 -edge 369 -wire 2 -face 1 -shell 0 -solid 0 -compsolid 0 -compound 1 -shape 745
+
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/moddata/bug21858 b/tests/perf/moddata/bug21858
new file mode 100644 (file)
index 0000000..77bb107
--- /dev/null
@@ -0,0 +1,25 @@
+puts "============"
+puts "OCC21858"
+puts "============"
+puts ""
+####################################
+# Visualization hangs on this face ( OCC21858.brep )
+####################################
+
+set BugNumber OCC21858
+cpulimit 40
+restore [locate_data_file OCC21858.brep] result
+
+checkprops result -l 6.48642 
+checksection result
+
+checknbshapes result -vertex 9 -edge 10 -wire 1 -face 1 -shell 0 -solid 0 -compsolid 0 -compound 0 -shape 21
+
+vinit
+vsetdispmode 1
+dchrono TestTimer restart
+vdisplay result
+dchrono TestTimer stop counter vdisplay
+vfit
+
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/moddata/bug25487_1 b/tests/perf/moddata/bug25487_1
new file mode 100644 (file)
index 0000000..fd62e6c
--- /dev/null
@@ -0,0 +1,14 @@
+puts "========"
+puts "OCC25487"
+puts "========"
+puts ""
+##########################################
+# Extrema_GenExtPS needs to be optimized
+##########################################
+
+pload DATAEXCHANGEKERNEL
+
+# Restore testing shape and get timing characteristics for operation stepread
+dchrono perf_h restart
+stepread [locate_data_file OCC25487_LP1.stp] a *
+dchrono perf_h stop counter stepread
\ No newline at end of file
diff --git a/tests/perf/moddata/bug25487_2 b/tests/perf/moddata/bug25487_2
new file mode 100644 (file)
index 0000000..c0a648f
--- /dev/null
@@ -0,0 +1,16 @@
+puts "========"
+puts "OCC25487"
+puts "========"
+puts ""
+##########################################
+# Extrema_GenExtPS needs to be optimized
+##########################################
+
+cpulimit 1500
+
+pload DATAEXCHANGEKERNEL
+
+# Restore testing shape and get timing characteristics for operation stepread
+dchrono perf_h restart
+stepread [locate_data_file OCC25487_LP2.stp] a *
+dchrono perf_h stop counter stepread
\ No newline at end of file
diff --git a/tests/perf/moddata/bug26339 b/tests/perf/moddata/bug26339
new file mode 100644 (file)
index 0000000..267a1f5
--- /dev/null
@@ -0,0 +1,29 @@
+puts "============"
+puts "OCC26339"
+puts "============"
+puts ""
+#######################################################################
+# [Regression in 6.9.0] Projecting a curve hangs
+#######################################################################
+
+if { [regexp {Debug mode} [dversion]] } {
+  if { [regexp {Windows} [dversion]] } {
+    set max_time 10
+  } else {
+    set max_time 10
+  }
+} else {
+  if { [regexp {Windows} [dversion]] } {
+    set max_time 3
+  } else {
+    set max_time 3
+  }
+}
+
+restore [locate_data_file bug26339_a_1886.brep] f
+
+dchrono h restart
+
+fixshape r f 1e-5
+
+dchrono h stop counter fixshape
\ No newline at end of file
diff --git a/tests/perf/moddata/bug26884 b/tests/perf/moddata/bug26884
new file mode 100644 (file)
index 0000000..bffec62
--- /dev/null
@@ -0,0 +1,23 @@
+puts "================"
+puts "OCC26884"
+puts "================"
+puts ""
+##############################################################
+# Cylinder/Cylinder intersection algorithm throws an exception
+##############################################################
+
+set max_time 0.1
+
+restore [locate_data_file bug26884-f1.brep] f1
+restore [locate_data_file bug26884-f2.brep] f2
+
+dchrono cr restart
+
+set info [bopcurves f1 f2 -2d]
+
+dchrono cr stop counter bopcurves
+
+if {![regexp {has no 3d curves} $info] ||
+    ![regexp {has no 3d points} $info] } {
+  puts "Error: wrong output"
+}
\ No newline at end of file
diff --git a/tests/perf/moddata/bug27048_1 b/tests/perf/moddata/bug27048_1
new file mode 100644 (file)
index 0000000..b9d863e
--- /dev/null
@@ -0,0 +1,23 @@
+puts "============"
+puts "OCC27048"
+puts "============"
+puts ""
+############################################################################
+#  Recalculation of BSpline cache causes a performance problems
+############################################################################
+
+pload QAcommands
+
+bsplinesurf surf \
+3 4 0 4 1 1 2 1 3 4 \
+3 4 0 4 1 1 2 1 3 4 \
+0  0  0 1   2  0  0 1   3  0 15 1   5  0 15 1   7  0  0 1   10  0  0 1 \
+0  2  0 1   1  3  0 1   4  2 15 1   6  3 15 1   8  2  0 1   10  3  0 1 \
+0  4  0 1   3  4  0 1   4  3 15 1   5  3 15 1   7  4  0 1   10  5  0 1 \
+0  6  0 1   3  6  0 1   4  6 15 1   5  6 15 1   8  5  0 1   10  7  0 1 \
+0  8  0 1   2  8  0 1   4  8 15 1   6  8 15 1   7  7  0 1   10  8  0 1 \
+0 10  0 1   2 10  0 1   4 10 15 1   6 10 15 1   7 10  0 1   10 10  0 1
+
+dchrono t restart
+OCC27048 surf -0.1 -0.1 1000000
+dchrono t stop counter OCC27048
\ No newline at end of file
diff --git a/tests/perf/moddata/bug27048_2 b/tests/perf/moddata/bug27048_2
new file mode 100644 (file)
index 0000000..386b3fd
--- /dev/null
@@ -0,0 +1,17 @@
+puts "============"
+puts "OCC27048"
+puts "============"
+puts ""
+############################################################################
+#  Recalculation of BSpline cache causes a performance problems
+############################################################################
+
+pload XSDRAW
+
+dchrono t restart
+testreadstep [locate_data_file bug27048.stp] result
+dchrono t stop counter testreadstep
+
+smallview
+fit
+checkview -screenshot -2d -path ${imagedir}/${test_image}.png
diff --git a/tests/perf/moddata/bug276 b/tests/perf/moddata/bug276
new file mode 100644 (file)
index 0000000..93d7f27
--- /dev/null
@@ -0,0 +1,22 @@
+puts "========"
+puts "OCC276"
+puts "========"
+puts ""
+#########################################################
+##Bad performance of checkshape on faces with multiple wires 
+#########################################################
+
+restore [locate_data_file OCC276.brep] result
+
+dchrono h2 restart
+
+checkshape result
+
+dchrono h2 stop counter checkshape
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
+
+
+
diff --git a/tests/perf/moddata/bug36 b/tests/perf/moddata/bug36
new file mode 100644 (file)
index 0000000..f9ac259
--- /dev/null
@@ -0,0 +1,25 @@
+puts "========"
+puts "OCC36"
+puts "========"
+
+pload XDE
+
+set filepath [locate_data_file OCC36.igs]
+if [catch { igesbrep $filepath a * } res] { 
+    puts "Error OCC36: here is reading problem"
+} else {
+    puts "Reading OCC36  OK"
+
+    tpcompound r
+    dchrono h2 restart
+    sewing result 1.e-7 r
+    dchrono h2 stop counter sewing
+
+    checkmaxtol result -ref 0.96087447225733291
+    checknbshapes result -shell 13
+    checkfreebounds result 1247
+}
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
diff --git a/tests/perf/moddata/bug368 b/tests/perf/moddata/bug368
new file mode 100644 (file)
index 0000000..a05aed1
--- /dev/null
@@ -0,0 +1,22 @@
+
+puts "========================"
+puts "BUC61027"
+puts " OCC368 "
+puts "========================"
+puts ""
+##############################################
+## Visualization is too slow.
+##############################################
+
+restore [locate_data_file OCC368.brep] result
+checkshape result
+
+tclean result
+isos result 0
+vinit
+dchrono h2 restart
+vdisplay result
+vsetdispmode result 1
+dchrono h2 stop counter vdisplay
+
+checkview -display result -2d -path ${imagedir}/${test_image}.png
\ No newline at end of file
diff --git a/tests/perf/moddata/bug453_3 b/tests/perf/moddata/bug453_3
new file mode 100644 (file)
index 0000000..bf2a2ce
--- /dev/null
@@ -0,0 +1,39 @@
+puts "TODO OCC24156 MacOS: Tcl Exception: tolerance ang"
+puts "TODO OCC24156 MacOS: TEST INCOMPLETE"
+puts "TODO OCC27203 ALL: Error: Max tolerance" 
+puts "TODO OCC27203 All: Error : The area of result shape is"
+
+puts "========"
+puts "OCC453"
+puts "(case 3)"
+puts "========"
+puts ""
+
+dchrono h2 restart
+
+set make_print_out 0
+
+dset SCALE 1000.
+dset SCALE1 5
+tolblend 0.01 1e-04 1e-05 1e-03
+
+restore [locate_data_file shading_137.brep] s 
+tscale s 0 0 0 SCALE1
+explode s E
+
+blend result s  5.5*SCALE1 s_2  4*SCALE1 s_1  6*SCALE1 s_6 5*SCALE1 s_8  6*SCALE1 s_10 6.5*SCALE1 s_14  7*SCALE1 s_4 5.5*SCALE1 s_5 7*SCALE1 s_16 6*SCALE1 s_11 5*SCALE1 s_19 6.5*SCALE1 s_13
+explode result So
+tcopy result_1 result
+
+dchrono h2 stop counter blend
+
+# Note: The reference values of area and tolerance are wanted theoretical values
+# Properties check
+checkprops result -s 3.51e+006
+
+# Tolerance check
+checkmaxtol result -ref 1.
+
+# Visual check
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
diff --git a/tests/perf/moddata/bug623 b/tests/perf/moddata/bug623
new file mode 100644 (file)
index 0000000..9490ea2
--- /dev/null
@@ -0,0 +1,26 @@
+puts "================"
+puts "OCC623"
+puts "================"
+puts ""
+####################
+## InCorrect Data in PCurve
+####################
+
+##cpulimit 4000
+
+pload XDE
+
+stepread [locate_data_file OCC623.step] a *
+
+setflags a_1 locked
+dchrono h restart
+nurbsconvert result a_1
+dchrono h stop counter nurbsconvert
+
+fsameparameter result
+checkshape result
+
+checkprops result -s 32.1968
+checkview -display result -2d -path ${imagedir}/${test_image}.png
+
+
diff --git a/tests/perf/sewing/A1 b/tests/perf/sewing/A1
new file mode 100644 (file)
index 0000000..f05d916
--- /dev/null
@@ -0,0 +1,23 @@
+restore [locate_data_file 5000-12.brep] a
+
+dchrono ch restart
+puts [fastsewing result -tol 2.0e-5 a]
+dchrono ch stop counter fastsewing
+
+donly result
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 5556
+ EDGE      : 11118
+ WIRE      : 5552
+ FACE      : 5552
+ SHELL     : 1
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 27780
+"
+
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/perf/sewing/A2 b/tests/perf/sewing/A2
new file mode 100644 (file)
index 0000000..aaf9f1c
--- /dev/null
@@ -0,0 +1,23 @@
+restore [locate_data_file 5000-16.brep] a
+
+dchrono ch restart
+puts [fastsewing result -tol 2.0e-5 a]
+dchrono ch stop counter fastsewing
+
+donly result
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 5527
+ EDGE      : 11056
+ WIRE      : 5520
+ FACE      : 5520
+ SHELL     : 1
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 27625
+"
+
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/perf/sewing/A3 b/tests/perf/sewing/A3
new file mode 100644 (file)
index 0000000..882f0f5
--- /dev/null
@@ -0,0 +1,23 @@
+restore [locate_data_file Cover_VXmodel.brep] a
+
+dchrono ch restart
+puts [fastsewing result -tol 1.5e-4 a]
+dchrono ch stop counter fastsewing
+
+donly result
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 844
+ EDGE      : 1592
+ WIRE      : 749
+ FACE      : 749
+ SHELL     : 1
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 3936
+"
+
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/perf/sewing/A4 b/tests/perf/sewing/A4
new file mode 100644 (file)
index 0000000..c671e42
--- /dev/null
@@ -0,0 +1,23 @@
+restore [locate_data_file Mustang_250.brep] a
+
+dchrono ch restart
+puts [fastsewing result -tol 2.5e-4 a]
+dchrono ch stop counter fastsewing
+
+donly result
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 250
+ EDGE      : 496
+ WIRE      : 248
+ FACE      : 248
+ SHELL     : 1
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 1244
+"
+
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/perf/sewing/A5 b/tests/perf/sewing/A5
new file mode 100644 (file)
index 0000000..bd0373d
--- /dev/null
@@ -0,0 +1,23 @@
+restore [locate_data_file Mustang_500.brep] a
+
+dchrono ch restart
+puts [fastsewing result -tol 7.0e-5 a]
+dchrono ch stop counter fastsewing
+
+donly result
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 514
+ EDGE      : 1024
+ WIRE      : 512
+ FACE      : 512
+ SHELL     : 1
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 2564
+"
+
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/perf/sewing/A6 b/tests/perf/sewing/A6
new file mode 100644 (file)
index 0000000..a407e97
--- /dev/null
@@ -0,0 +1,23 @@
+restore [locate_data_file Pipe_Full.brep] a
+
+dchrono ch restart
+puts [fastsewing result -tol 5.0e-4 a]
+dchrono ch stop counter fastsewing
+
+donly result
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 5327
+ EDGE      : 10656
+ WIRE      : 5326
+ FACE      : 5326
+ SHELL     : 1
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 26637
+"
+
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/perf/sewing/A7 b/tests/perf/sewing/A7
new file mode 100644 (file)
index 0000000..0f71f04
--- /dev/null
@@ -0,0 +1,23 @@
+restore [locate_data_file Pipe_Partial.brep] a
+
+dchrono ch restart
+puts [fastsewing result -tol 5.1e-4 a]
+dchrono ch stop counter fastsewing
+
+donly result
+checkshape result
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX    : 5994
+ EDGE      : 11715
+ WIRE      : 5698
+ FACE      : 5698
+ SHELL     : 3
+ SOLID     : 0
+ COMPSOLID : 0
+ COMPOUND  : 1
+ SHAPE     : 29109
+"
+
+checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/perf/sewing/begin b/tests/perf/sewing/begin
new file mode 100644 (file)
index 0000000..151b6dc
--- /dev/null
@@ -0,0 +1,8 @@
+# To prevent loops limit to 5 minutes
+cpulimit 300
+
+if { [array get Draw_Groups "TOPOLOGY Feature commands"] == "" } {
+     pload XSDRAW
+}
+
+set nbFreeEdges 0
diff --git a/tests/perf/sewing/end b/tests/perf/sewing/end
new file mode 100644 (file)
index 0000000..4713b10
--- /dev/null
@@ -0,0 +1,5 @@
+if { [isdraw result] } {
+  checkview -display result -2d -path ${imagedir}/${test_image}.png
+} else {
+  puts "Error : The sewing cannot be built."
+}
\ No newline at end of file
diff --git a/tests/perf/vis/bug24623_1 b/tests/perf/vis/bug24623_1
new file mode 100644 (file)
index 0000000..37ee668
--- /dev/null
@@ -0,0 +1,88 @@
+puts "============"
+puts "OCC24623_1"
+puts "============"
+puts ""
+#######################################################################
+puts "Visualization - improve selection mechanism"
+# tests performance of selection algorithm. Creates a grid of spheres with
+# size DISCRETISATION * DISCRETISATION. To get representative performance
+# test results, increase the size of grid in DISCRETISATION and check time
+# measurments in comparsion to previous OCCT versions. You may also check
+# the time of selection when all BVH trees are built via uncommenting
+# the code in "Start building all trees" section.
+#######################################################################
+
+set DISCRETISATION 10
+set RADIUS 100
+
+pload ALL
+
+set aStep [expr $RADIUS * 0.1]
+
+# unset aNames
+list aNames
+set aX 0
+set aY 0
+for {set i 0} {$i < $DISCRETISATION} {incr i} {
+       for {set j 0} {$j < $DISCRETISATION} {incr j} {
+    set aCurrName "sph"
+    append aCurrName [expr $i * $DISCRETISATION + $j]
+    lappend aNames $aCurrName
+    psphere $aCurrName $RADIUS
+    set aX [expr $i * ($aStep + $RADIUS)]
+    set aY [expr - $j * ($aStep + $RADIUS)]
+    ttranslate $aCurrName $aX $aY 0
+  }
+}
+
+set aSpheresNbInfo "Total spheres number:"
+append aSpheresNbInfo [expr $DISCRETISATION * $DISCRETISATION]
+puts $aSpheresNbInfo
+
+vinit
+set aMemInit [meminfo h]
+puts "Initial mem: [expr $aMemInit   / (1024 * 1024)] MiB ([expr $aMemInit])"
+vsetdispmode 1
+set aMemInit [meminfo h]
+vdisplay {*}$aNames
+vfit
+
+puts "Selection of spheres without BVH trees built:"
+vmoveto 224 269
+
+puts ""
+puts "Applying the transformations..."
+vtranslateview 1 0 0
+vrotate 100 100 100
+
+puts ""
+puts "Selection time with transformations applied without BVH built:"
+dchrono aTimer restart
+vmoveto 102 224
+dchrono aTimer stop counter vmoveto
+
+# puts ""
+# puts "Start building all trees..."
+# vtop
+# vfit
+# set aStartPt [expr round(400 / double($DISCRETISATION)) + 5]
+# set aPtStep [expr round(double(round(100*(400 / double($DISCRETISATION))))/100 * 2)]
+# for {set i 0} {$i < $DISCRETISATION / 2} {incr i} {
+#   for {set j 0} {$j < $DISCRETISATION / 2} {incr j} {
+#     set aX [expr $aStartPt + $i * $aPtStep]
+#     set aY [expr $aStartPt + $j * $aPtStep]
+#     vmoveto $aX $aY 1
+#   }
+# }
+
+# puts ""
+# puts "Selection time with all BVHs built:"
+# dchrono aTimer reset
+# dchrono aTimer start
+# vmoveto 200 200
+# dchrono aTimer stop
+
+set aMemSel [meminfo h]
+puts "Selection mem: [expr $aMemSel   / (1024 * 1024)] MiB ([expr $aMemSel])"
+
+checkcolor 115 221 0 1 1
diff --git a/tests/perf/vis/bug24623_2 b/tests/perf/vis/bug24623_2
new file mode 100644 (file)
index 0000000..edaf558
--- /dev/null
@@ -0,0 +1,61 @@
+puts "============"
+puts "OCC24623_2"
+puts "============"
+puts ""
+#######################################################################
+puts "Visualization - improve selection mechanism"
+# tests performance of selection algorithm. Creates a spiral via polyline
+# and checks its selection in neutral point. For representative result,
+# increase the number of points in POINTS_NUM and check time measurments
+# in comparsion to previous OCCT versions.
+#######################################################################
+
+set POINTS_NUM 1000
+set STEP 0.3
+
+pload ALL
+
+set aCoef 0.2
+set aZ 0
+# unset aPointCoords
+list aPointCoords
+for {set i 0} {$i < $POINTS_NUM} {incr i} {
+  set aX [expr $aCoef * $aZ * cos($aZ)]
+  set aY [expr $aCoef * $aZ * sin($aZ)]
+  set aZ [expr $aZ + $STEP]
+  lappend aPointCoords $aX
+  lappend aPointCoords $aY
+  lappend aPointCoords $aZ
+}
+
+vinit
+set aMemInit [meminfo h]
+puts "Initial mem: [expr $aMemInit   / (1024 * 1024)] MiB ([expr $aMemInit])"
+polyline p {*}$aPointCoords
+vdisplay p
+
+vfit
+
+vmoveto 223 236
+vmoveto 0 0
+vmoveto 223 236
+
+puts ""
+puts "Applying transformations..."
+vtranslateview 1 0 0
+vrotate 100 100 100
+
+puts ""
+puts "Selection time after the transformations:"
+dchrono aTimer restart
+vmoveto 115 160
+dchrono aTimer stop counter vmoveto_1
+vmoveto 0 0
+dchrono aTimer restart
+vmoveto 115 160
+dchrono aTimer stop counter vmoveto_2
+
+set aMemSel [meminfo h]
+puts "Selection mem: [expr $aMemSel   / (1024 * 1024)] MiB ([expr $aMemSel])"
+
+checkcolor 131 195 0 1 1
diff --git a/tests/sewing/fast/A1 b/tests/sewing/fast/A1
deleted file mode 100644 (file)
index cc0fbf6..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 9
-  } else {
-    set max_time 9
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file 5000-12.brep] a
-
-dchrono ch reset
-dchrono ch start
-puts [fastsewing result -tol 2.0e-5 a]
-dchrono ch stop
-
-set q [dchrono ch show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-donly result
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 5556
- EDGE      : 11118
- WIRE      : 5552
- FACE      : 5552
- SHELL     : 1
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 27780
-"
-
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/sewing/fast/A2 b/tests/sewing/fast/A2
deleted file mode 100644 (file)
index 9fbef2a..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 9
-  } else {
-    set max_time 9
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file 5000-16.brep] a
-
-dchrono ch reset
-dchrono ch start
-puts [fastsewing result -tol 2.0e-5 a]
-dchrono ch stop
-
-set q [dchrono ch show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-donly result
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 5527
- EDGE      : 11056
- WIRE      : 5520
- FACE      : 5520
- SHELL     : 1
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 27625
-"
-
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/sewing/fast/A3 b/tests/sewing/fast/A3
deleted file mode 100644 (file)
index 21e26ab..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 9
-  } else {
-    set max_time 9
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file Cover_VXmodel.brep] a
-
-dchrono ch reset
-dchrono ch start
-puts [fastsewing result -tol 1.5e-4 a]
-dchrono ch stop
-
-set q [dchrono ch show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-donly result
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 844
- EDGE      : 1592
- WIRE      : 749
- FACE      : 749
- SHELL     : 1
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 3936
-"
-
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/sewing/fast/A4 b/tests/sewing/fast/A4
deleted file mode 100644 (file)
index e85a31e..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 9
-  } else {
-    set max_time 9
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file Mustang_250.brep] a
-
-dchrono ch reset
-dchrono ch start
-puts [fastsewing result -tol 2.5e-4 a]
-dchrono ch stop
-
-set q [dchrono ch show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-donly result
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 250
- EDGE      : 496
- WIRE      : 248
- FACE      : 248
- SHELL     : 1
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 1244
-"
-
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/sewing/fast/A5 b/tests/sewing/fast/A5
deleted file mode 100644 (file)
index 629ff63..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 9
-  } else {
-    set max_time 9
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file Mustang_500.brep] a
-
-dchrono ch reset
-dchrono ch start
-puts [fastsewing result -tol 7.0e-5 a]
-dchrono ch stop
-
-set q [dchrono ch show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-donly result
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 514
- EDGE      : 1024
- WIRE      : 512
- FACE      : 512
- SHELL     : 1
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 2564
-"
-
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/sewing/fast/A6 b/tests/sewing/fast/A6
deleted file mode 100644 (file)
index 9de064b..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 9
-  } else {
-    set max_time 9
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file Pipe_Full.brep] a
-
-dchrono ch reset
-dchrono ch start
-puts [fastsewing result -tol 5.0e-4 a]
-dchrono ch stop
-
-set q [dchrono ch show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-donly result
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 5327
- EDGE      : 10656
- WIRE      : 5326
- FACE      : 5326
- SHELL     : 1
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 26637
-"
-
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
diff --git a/tests/sewing/fast/A7 b/tests/sewing/fast/A7
deleted file mode 100644 (file)
index 7ee885e..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-if { [regexp {Debug mode} [dversion]] } {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 9
-  } else {
-    set max_time 9
-  }
-} else {
-  if { [regexp {Windows} [dversion]] } {
-    set max_time 3
-  } else {
-    set max_time 3
-  }
-}
-
-restore [locate_data_file Pipe_Partial.brep] a
-
-dchrono ch reset
-dchrono ch start
-puts [fastsewing result -tol 5.1e-4 a]
-dchrono ch stop
-
-set q [dchrono ch show]
-
-regexp {CPU user time: ([-0-9.+eE]+) seconds} $q full z
-puts "$z"
-
-if { $z > ${max_time} } {
-    puts "Elapsed time is more than ${max_time} seconds - Error"
-} else {
-    puts "Elapsed time is less than ${max_time} seconds - OK"
-}
-
-donly result
-checkshape result
-
-set nbshapes_expected "
-Number of shapes in shape
- VERTEX    : 5994
- EDGE      : 11715
- WIRE      : 5698
- FACE      : 5698
- SHELL     : 3
- SOLID     : 0
- COMPSOLID : 0
- COMPOUND  : 1
- SHAPE     : 29109
-"
-
-checknbshapes result -ref "${nbshapes_expected}" -t -m "Partition of 2 shapes"
index 5df61fab641475621d2976ddbeaaf67d38ebaeb8..ed36e9594bcab2cf2e4670881c209c9b9cfa7091 100755 (executable)
@@ -1,4 +1,3 @@
 001 tol_0_01
 002 tol_1
 003 tol_100
-004 fast