0030315: Data Exchange - Crash reading views during STEP import.
[occt.git] / tests / bugs / modalg_5 / bug25292_21
1 puts "================"
2 puts "OCC25292"
3 puts "================"
4 puts ""
5 #######################################################################
6 # Face/Face intersection algorithm gives different results for different order of the arguments
7 #######################################################################
8
9 puts "##############################"
10 puts "#!!!Search \"Attention\" keyword on this web-page for additional checking!!!"
11 puts "##############################"
12 puts ""
13 puts ""
14
15 # bopcurves command
16
17 restore [locate_data_file bug25292_Input_3.brep] b1
18 restore [locate_data_file bug25292_Input_11.brep] b2
19
20 explode b1 f
21 copy b1_1 f1
22 explode b2 f
23 copy b2_1 f2
24
25 #########################
26 set log [bopcurves f1 f2 -2d]
27 #########################
28
29 regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} ${log} full Toler NbCurv
30
31 #This value must be equal to the analogical value in bug25292_21 and bug25292_22 of "bugs modalg_5" testgrid. 
32 set MaxTol 1.e-7
33
34 #This value must be equal to the analogical value in bug25292_21, bug25292_22, bug25292_25 and bug25292_26 of "bugs modalg_5" testgrid. 
35 set GoodNbCurv 2
36
37 if {${Toler} > ${MaxTol}} {
38   puts "Error: Tolerance is too big!"
39 }
40
41 if {${NbCurv} != ${GoodNbCurv}} {
42   puts "Error: Curve Number is bad!"
43 }
44
45 #-------------
46
47 puts ""
48
49 mksurface s1 f1
50 mksurface s2 f2
51
52 for {set i 1} {$i <= ${NbCurv}} {incr i} {
53   bounds c_$i U1 U2
54
55   puts "U2=[dval U1]"
56   puts "U2=[dval U2]"
57   
58   if {[dval U2-U1] < 1.0e-20} {
59     puts "Error: Wrong curve's range!"
60   }
61
62   xdistcs c_$i s1 U1 U2 10 ${Toler}
63   xdistcs c_$i s2 U1 U2 10 ${Toler}
64 }
65
66 smallview
67 fit
68 checkview -screenshot -2d -path ${imagedir}/${test_image}.png