1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-10 18:51:21 +03:00
occt/tests/bugs/mesh/bug24968_2
oan 01a6e62bc2 0024968: Impove BRepMesh_Classifier to cope with intersection of huge number of wires
BRepMesh_Classifier: Two-pass approach for intersection check with possibility to run it in parallel mode.
First pass - bounding boxes of segments are checked for overlapping;
Second pass - intersection point is calculated in case if overlapping is detected.

Make NCollection_UBTree::ChangeLastNode() exported due to compilation error on Linux platform.
Reason: method does not depend on template parameters, so it should be available.

Revert previous change and try to use another trick for Linux

Fix compilation warning on MacOS: remove redundant constant
Fix regressions: do not consider insignificant loops in case of self intersections on the same wire.
More sugar solution for compilation errors on NCollection_EBTree on Linux

Test cases for issue CR24968
2014-07-10 14:41:09 +04:00

46 lines
881 B
Plaintext

puts "=========="
puts "OCC24968"
puts "=========="
puts ""
#####################################
# Impove BRepMesh_Classifier to cope with intersection of huge number of wires
#####################################
restore [locate_data_file bug24968_Shape_1.brep] result
tclean result
dchrono h reset
dchrono h start
incmesh result 0.1 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 100
} else {
set max_time 250
}
} 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
set only_screen 1