0025292: Face/Face intersection algorithm gives different results for different order...
[occt.git] / tests / bugs / modalg_5 / bug25292_22
1 puts "TODO OCC225404 Debian60-64 Windows: Error: Curve Number is bad!"
2
3 puts "================"
4 puts "OCC25292"
5 puts "================"
6 puts ""
7 #######################################################################
8 # Face/Face intersection algorithm gives different results for different order of the arguments
9 #######################################################################
10
11 # bopcurves command
12
13 restore [locate_data_file bug25292_Input_3.brep] b1
14 restore [locate_data_file bug25292_Input_11.brep] b2
15
16 explode b1 f
17 copy b1_1 f1
18 explode b2 f
19 copy b2_1 f2
20
21 #########################
22 set log [bopcurves f2 f1]
23 #########################
24
25 regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} ${log} full Toler NbCurv
26 set MaxTol 1.e-7
27 if {${Toler} > ${MaxTol}} {
28   puts "Error: Tolerance is too big!"
29 }
30 set GoodNbCurv 3
31 if {${NbCurv} != ${GoodNbCurv}} {
32   puts "Error: Curve Number is bad!"
33 }
34
35 #-------------
36
37 # 1
38 puts ""
39 puts "First curve"
40
41 mksurface s1 f1
42 mksurface s2 f2
43
44 dlog reset
45 dlog on
46 xdistcs c_1 s1 0 1 10
47 set Log1 [dlog get]
48
49 set List1 [split ${Log1} {TD= \t\n}]
50 set Tolerance 1.0e-7
51 set D_good 0.
52 checkList ${List1} ${Tolerance} ${D_good}
53
54 # 2
55 puts ""
56 puts "Second curve"
57
58 dlog reset
59 dlog on
60 xdistcs c_2 s1 0 1 10
61 set Log2 [dlog get]
62
63 set List2 [split ${Log2} {TD= \t\n}]
64 set Tolerance 1.0e-7
65 set D_good 0.
66 checkList ${List2} ${Tolerance} ${D_good}
67
68 # 3
69 if { [info exist c_3] } {
70 puts ""
71 puts "Third curve"
72
73 dlog reset
74 dlog on
75 xdistcs c_3 s1 0 1 10
76 set Log3 [dlog get]
77
78 set List3 [split ${Log3} {TD= \t\n}]
79 set Tolerance 1.0e-7
80 set D_good 0.
81 checkList ${List3} ${Tolerance} ${D_good}
82 }
83
84
85 smallview
86 fit
87 set only_screen_axo 1