1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-09 18:50:54 +03:00
occt/tests/perf/bspline/intersect
abv 11fca7c177 0024227: Enable SS2 instructions for OCCT building
Test for exceptions corrected to handle FPE when built with with SSE2 option on Windows (NumericError raised instead of specific exceptions)
New test for performance of bspline intersections added

sse2 added; build bitness hardlinked to compiler

"bitness" variable was hidden
2013-10-10 17:08:50 +04:00

211 lines
12 KiB
Plaintext

# Test performance of intersection of several NURBS surfaces
bsplinesurf surf1 \
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
bsplinesurf surf2 \
3 4 0 4 1 1 2 1 3 4 \
3 4 0 4 1 1 2 1 3 4 \
0 0 10 1 2 0 5 1 3 0 4 1 5 0 6 1 7 0 10 1 10 0 5 1 \
0 2 5 1 1 3 7 1 4 2 7 1 6 3 4 1 8 2 4 4 10 3 7 1 \
0 4 8 1 3 4 10 1 4 3 6 1 5 3 8 1 7 4 7 4 10 5 5 1 \
0 6 8 1 3 6 10 1 4 6 6 1 5 6 4 1 8 5 7 4 10 7 10 1 \
0 8 6 1 2 8 5 1 4 8 8 1 6 8 8 1 7 7 3 4 10 8 5 1 \
0 10 8 1 2 10 10 1 4 10 6 1 6 10 5 1 7 10 3 1 10 10 10 1
bsplinesurf surf3 \
2 7 0 3 1 1 2 1 3 1 4 1 5 1 6 3 \
2 3 0 3 1 1 2 3 \
-20 20 10 1 20 20 10 1 20 -20 10 1 -20 -20 10 1 -10 10 10 1 10 10 10 1 10 -10 10 1 -10 -10 10 1 \
-10 10 5 1 15 15 5 1 10 -10 5 1 -15 -15 5 1 -5 5 5 1 5 5 5 1 5 -5 5 1 -5 -5 5 1 \
-15 15 -5 1 10 10 -5 1 15 -15 -5 1 -10 -10 -5 1 -5 5 -5 1 5 5 -5 1 5 -5 -5 1 -5 -5 -5 1 \
-20 20 -10 1 20 20 -10 1 20 -20 -10 1 -20 -20 -10 1 -10 10 -10 1 10 10 -10 1 10 -10 -10 1 -10 -10 -10 1
bsplinesurf surf4 \
4 5 0 5 2 1 4 1 5 1 6 5 \
4 5 0 5 1 1 4 1 6 1 7 5 \
10 20 -20 1 9 19 -19 1 8 18 -18 1 7 17 -17 1 7 17 17 1 8 18 18 1 9 19 19 1 10 20 20 1 \
10 -20 20 1 9 -19 19 1 8 -18 18 1 7 -17 17 1 7 -17 -17 1 8 -18 -18 1 9 -19 -19 1 10 -20 -20 1 \
10 10 -10 1 9 9 -9 1 8 8 -8 1 7 7 -7 1 7 7 7 1 8 8 8 1 9 9 9 1 10 10 10 1 \
10 -10 10 1 9 -9 9 1 8 -8 8 1 7 -7 7 1 7 -7 -7 1 8 -8 -8 1 9 -9 -9 1 10 -10 -10 1 \
-10 20 -20 1 -9 19 -19 1 -8 18 -18 1 -7 17 -17 1 -7 17 17 1 -8 18 18 1 -9 19 19 1 -10 20 20 1 \
-10 -20 20 1 -9 -19 19 1 -8 -18 18 1 -7 -17 17 1 -7 -17 -17 1 -8 -18 -18 1 -9 -19 -19 1 -10 -20 -20 1 \
-10 10 -10 1 -9 9 -9 1 -8 8 -8 1 -7 7 -7 1 -7 7 7 1 -8 8 8 1 -9 9 9 1 -10 10 10 1 \
-10 -10 10 1 -9 -9 9 1 -8 -8 8 1 -7 -7 7 1 -7 -7 -7 1 -8 -8 -8 1 -9 -9 -9 1 -10 -10 -10 1
bsplinesurf surf5 \
1 2 0 2 1 2 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 0 1 10 0 5 2 \
0 10 2 1 10 10 3 1 \
0 20 10 1 10 20 20 1 \
0 30 0 1 10 30 0 1 \
0 40 -1 1 10 40 5 1 \
0 50 5 1 10 50 5 1 \
0 60 4 1 10 60 4 1 \
0 70 -5 1 10 70 -3 1 \
0 80 7 1 10 80 0 1
bsplinesurf surf6 \
2 3 0 3 1 1 2 3 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 0 1 2 0 0 1 5 0 -1 1 10 0 5 2 \
0 10 2 1 3 10 0 1 8 10 5 1 10 10 3 1 \
0 20 10 1 4 20 4 1 7 20 4 1 10 20 20 1 \
0 30 0 1 2 30 0 1 8 30 0 1 10 30 0 1 \
0 40 -1 1 4 40 5 1 9 40 1 1 10 40 5 1 \
0 50 5 1 4 50 10 1 6 50 10 1 10 50 5 1 \
0 60 4 1 3 60 -3 1 7 60 -4 1 10 60 4 1 \
0 70 -5 1 3 70 0 1 5 70 0 1 10 70 -3 1 \
0 80 7 1 3 80 1 1 7 80 3 1 10 80 0 1
bsplinesurf surf7 \
5 5 0 6 1 1 4 1 5 1 8 6 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 0 1 2 0 0 1 5 0 -1 1 10 0 5 1 12 0 1 1 15 0 -3 1 16 0 -3 1 19 0 -4 1 24 0 0 1 \
0 10 2 1 3 10 0 1 8 10 5 1 10 10 3 1 12 10 2 1 15 10 0 1 20 10 5 1 21 10 3 1 24 10 0 1 \
0 20 10 1 4 20 4 1 7 20 4 1 10 20 20 1 12 20 10 1 16 20 4 1 19 20 4 1 20 20 10 1 24 20 0 1 \
0 30 0 1 2 30 0 1 8 30 0 1 10 30 0 1 12 30 0 1 14 30 0 1 20 30 0 1 22 30 0 1 24 30 0 1 \
0 40 -1 1 4 40 5 1 9 40 1 1 10 40 5 1 12 40 -1 1 16 40 5 1 21 40 1 1 22 40 5 1 24 40 0 1 \
0 50 5 1 4 50 10 1 6 50 10 1 10 50 5 1 12 50 5 1 16 50 10 1 18 50 10 1 20 50 5 1 24 50 0 1 \
0 60 4 1 3 60 -3 1 7 60 -4 1 10 60 4 1 12 60 4 1 15 60 -3 1 19 60 -4 1 20 60 4 1 24 60 0 1 \
0 70 -5 1 3 70 0 1 5 70 0 1 10 70 -3 1 12 70 -5 1 15 70 0 1 17 70 0 1 20 70 -3 1 24 70 0 1 \
0 80 7 1 3 80 1 1 7 80 3 1 10 80 0 1 12 80 7 1 15 80 1 1 19 80 3 1 21 80 0 1 24 80 0 1
bsplinesurf surf8 \
5 5 0 6 1 1 4 1 5 1 8 6 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 -8 1 2 0 -7 1 5 0 -9 1 10 0 -8 1 12 0 -9 1 15 0 -7 1 16 0 -8 1 19 0 -8 1 24 0 -8 1 \
0 10 -8 1 3 10 -7 1 8 10 -9 1 10 10 -8 1 12 10 -9 1 15 10 -7 1 20 10 -8 1 21 10 -8 1 24 10 -8 1 \
0 20 8 1 4 20 7 1 7 20 9 1 10 20 8 1 12 20 9 1 16 20 7 1 19 20 8 1 20 20 8 1 24 20 8 1 \
0 30 8 1 2 30 7 1 8 30 9 1 10 30 8 1 12 30 9 1 14 30 7 1 20 30 8 1 22 30 8 1 24 30 8 1 \
0 40 -8 1 4 40 -7 1 9 40 -9 1 10 40 -8 1 12 40 -9 1 16 40 -7 1 21 40 -8 1 22 40 -8 1 24 40 -8 1 \
0 50 -8 1 4 50 -7 1 6 50 -9 1 10 50 -8 1 12 50 -9 1 16 50 -7 1 18 50 -8 1 20 50 -8 1 24 50 -8 1 \
0 60 8 1 3 60 7 1 7 60 9 1 10 60 8 1 12 60 9 1 15 60 7 1 19 60 8 1 20 60 8 1 24 60 8 1 \
0 70 8 1 3 70 7 1 5 70 9 1 10 70 8 1 12 70 9 1 15 70 7 1 17 70 8 1 20 70 8 1 24 70 8 1 \
0 80 8 1 3 80 7 1 7 80 9 1 10 80 8 1 12 80 9 1 15 80 7 1 19 80 8 1 21 80 8 1 24 80 8 1
bsplinesurf rsurf1 \
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 2 4 2 15 2 6 3 15 2 8 2 0 2 10 3 0 1 \
0 4 0 1 3 4 0 2 4 3 15 3 5 3 15 3 7 4 0 2 10 5 0 1 \
0 6 0 1 3 6 0 2 4 6 15 3 5 6 15 3 8 5 0 2 10 7 0 1 \
0 8 0 1 2 8 0 2 4 8 15 2 6 8 15 2 7 7 0 2 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
bsplinesurf rsurf2 \
3 4 0 4 1 1 2 1 3 4 \
3 4 0 4 1 1 2 1 3 4 \
0 0 10 1 2 0 5 1 3 0 4 1 5 0 6 1 7 0 10 1 10 0 5 1 \
0 2 5 1 1 3 7 4 4 2 7 4 6 3 4 4 8 2 4 4 10 3 7 1 \
0 4 8 1 3 4 10 4 4 3 6 2 5 3 8 2 7 4 7 4 10 5 5 1 \
0 6 8 1 3 6 10 4 4 6 6 2 5 6 4 2 8 5 7 4 10 7 10 1 \
0 8 6 1 2 8 5 4 4 8 8 4 6 8 8 4 7 7 3 4 10 8 5 1 \
0 10 8 1 2 10 10 1 4 10 6 1 6 10 5 1 7 10 3 1 10 10 10 1
bsplinesurf rsurf3 \
2 7 0 3 1 1 2 1 3 1 4 1 5 1 6 3 \
2 3 0 3 1 1 2 3 \
-20 20 10 1 20 20 10 1 20 -20 10 2 -20 -20 10 2 -10 10 10 3 10 10 10 4 10 -10 10 4 -10 -10 10 2 \
-10 10 5 1 15 15 5 2 10 -10 5 3 -15 -15 5 1 -5 5 5 1 5 5 5 3 5 -5 5 4 -5 -5 5 3 \
-15 15 -5 3 10 10 -5 1 15 -15 -5 2 -10 -10 -5 2 -5 5 -5 3 5 5 -5 3 5 -5 -5 1 -5 -5 -5 4 \
-20 20 -10 2 20 20 -10 4 20 -20 -10 3 -20 -20 -10 3 -10 10 -10 2 10 10 -10 2 10 -10 -10 1 -10 -10 -10 1
bsplinesurf rsurf4 \
4 5 0 5 2 1 4 1 5 1 6 5 \
4 5 0 5 1 1 4 1 6 1 7 5 \
10 20 -20 1 9 19 -19 1 8 18 -18 2 7 17 -17 2 7 17 17 1 8 18 18 1 9 19 19 4 10 20 20 1 \
10 -20 20 2 9 -19 19 2 8 -18 18 1 7 -17 17 2 7 -17 -17 4 8 -18 -18 3 9 -19 -19 3 10 -20 -20 2 \
10 10 -10 3 9 9 -9 4 8 8 -8 1 7 7 -7 2 7 7 7 4 8 8 8 1 9 9 9 2 10 10 10 3 \
10 -10 10 4 9 -9 9 2 8 -8 8 3 7 -7 7 2 7 -7 -7 1 8 -8 -8 1 9 -9 -9 1 10 -10 -10 4 \
-10 20 -20 4 -9 19 -19 3 -8 18 -18 3 -7 17 -17 2 -7 17 17 1 -8 18 18 2 -9 19 19 4 -10 20 20 4 \
-10 -20 20 3 -9 -19 19 2 -8 -18 18 3 -7 -17 17 1 -7 -17 -17 4 -8 -18 -18 2 -9 -19 -19 3 -10 -20 -20 3 \
-10 10 -10 2 -9 9 -9 1 -8 8 -8 3 -7 7 -7 1 -7 7 7 1 -8 8 8 1 -9 9 9 2 -10 10 10 2 \
-10 -10 10 1 -9 -9 9 1 -8 -8 8 2 -7 -7 7 1 -7 -7 -7 4 -8 -8 -8 1 -9 -9 -9 1 -10 -10 -10 1
bsplinesurf rsurf5 \
1 2 0 2 1 2 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 0 1 10 0 5 2 \
0 10 2 3 10 10 3 1 \
0 20 10 1 10 20 20 4 \
0 30 0 2 10 30 0 2 \
0 40 -1 1 10 40 5 2 \
0 50 5 1 10 50 5 1 \
0 60 4 3 10 60 4 1 \
0 70 -5 5 10 70 -3 2 \
0 80 7 1 10 80 0 1
bsplinesurf rsurf6 \
2 3 0 3 1 1 2 3 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 0 1 2 0 0 1 5 0 -1 1 10 0 5 2 \
0 10 2 3 3 10 0 1 8 10 5 3 10 10 3 1 \
0 20 10 1 4 20 4 3 7 20 4 2 10 20 20 4 \
0 30 0 2 2 30 0 1 8 30 0 1 10 30 0 2 \
0 40 -1 1 4 40 5 2 9 40 1 3 10 40 5 2 \
0 50 5 1 4 50 10 5 6 50 10 5 10 50 5 1 \
0 60 4 3 3 60 -3 1 7 60 -4 1 10 60 4 1 \
0 70 -5 5 3 70 0 1 5 70 0 1 10 70 -3 2 \
0 80 7 1 3 80 1 2 7 80 3 1 10 80 0 1
bsplinesurf rsurf7 \
5 5 0 6 1 1 4 1 5 1 8 6 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 0 1 2 0 0 1 5 0 -1 1 10 0 5 2 12 0 1 1 15 0 -3 2 16 0 -3 1 19 0 -4 1 24 0 0 1 \
0 10 2 3 3 10 0 1 8 10 5 3 10 10 3 1 12 10 2 3 15 10 0 1 20 10 5 3 21 10 3 1 24 10 0 2 \
0 20 10 1 4 20 4 3 7 20 4 2 10 20 20 4 12 20 10 1 16 20 4 3 19 20 4 2 20 20 10 4 24 20 0 1 \
0 30 0 2 2 30 0 1 8 30 0 1 10 30 0 2 12 30 0 2 14 30 0 1 20 30 0 1 22 30 0 2 24 30 0 3 \
0 40 -1 1 4 40 5 2 9 40 1 3 10 40 5 2 12 40 -1 1 16 40 5 2 21 40 1 3 22 40 5 2 24 40 0 1 \
0 50 5 1 4 50 10 5 6 50 10 5 10 50 5 1 12 50 5 1 16 50 10 5 18 50 10 5 20 50 5 1 24 50 0 2 \
0 60 4 3 3 60 -3 1 7 60 -4 1 10 60 4 1 12 60 4 3 15 60 -3 1 19 60 -4 1 20 60 4 1 24 60 0 1 \
0 70 -5 5 3 70 0 1 5 70 0 1 10 70 -3 2 12 70 -5 5 15 70 0 1 17 70 0 1 20 70 -3 2 24 70 0 3 \
0 80 7 1 3 80 1 2 7 80 3 1 10 80 0 1 12 80 7 1 15 80 1 2 19 80 3 1 21 80 0 1 24 80 0 1
bsplinesurf rsurf8 \
5 5 0 6 1 1 4 1 5 1 8 6 \
5 5 0 6 2 1 3 1 6 1 7 6 \
0 0 -8 1 2 0 -7 1 5 0 -9 1 10 0 -8 2 12 0 -9 1 15 0 -7 2 16 0 -8 1 19 0 -8 1 24 0 -8 1 \
0 10 -8 3 3 10 -7 1 8 10 -9 3 10 10 -8 1 12 10 -9 3 15 10 -7 1 20 10 -8 3 21 10 -8 1 24 10 -8 2 \
0 20 8 1 4 20 7 3 7 20 9 2 10 20 8 4 12 20 9 1 16 20 7 3 19 20 8 2 20 20 8 4 24 20 8 1 \
0 30 8 2 2 30 7 1 8 30 9 1 10 30 8 2 12 30 9 2 14 30 7 1 20 30 8 1 22 30 8 2 24 30 8 3 \
0 40 -8 1 4 40 -7 2 9 40 -9 3 10 40 -8 2 12 40 -9 1 16 40 -7 2 21 40 -8 3 22 40 -8 2 24 40 -8 1 \
0 50 -8 1 4 50 -7 5 6 50 -9 5 10 50 -8 1 12 50 -9 1 16 50 -7 5 18 50 -8 5 20 50 -8 1 24 50 -8 2 \
0 60 8 3 3 60 7 1 7 60 9 1 10 60 8 1 12 60 9 3 15 60 7 1 19 60 8 1 20 60 8 1 24 60 8 1 \
0 70 8 5 3 70 7 1 5 70 9 1 10 70 8 2 12 70 9 5 15 70 7 1 17 70 8 1 20 70 8 2 24 70 8 3 \
0 80 8 1 3 80 7 2 7 80 9 1 10 80 8 1 12 80 9 1 15 80 7 2 19 80 8 1 21 80 8 1 24 80 8 1
# intersect all surfaces
set surfaces [list surf1 surf2 rsurf1 surf3 rsurf2 surf4 rsurf3 surf5 rsurf4 surf6 rsurf5 surf7 rsurf6 surf8 rsurf7 rsurf8]
#set i 1
#set shapes {}
foreach s1 $surfaces {
# mkface f_$s1 $s1
# lappend shapes f_$s1
foreach s2 $surfaces {
if { $s1 != $s2 } {
intersect r $s1 $s2
# if { [regexp {a 3d curve} [whatis r]] } {
# mkedge e_$i r
# lappend shapes e_$i
# incr i
# }
}
}
}
# call vinit just to prepare for snapshot
#eval vdisplay $shapes
vinit
fit