puts "========" puts "OCC26980" puts "========" puts "" ################################# # Intersection part of Boolean algorithm spends much system time and system memory ################################# set max_time 120 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