0027531: Modeling Algorithms - Make the algorithm Approx_SameParameter more clear...
[occt.git] / tests / bugs / modalg_5 / bug25292_36
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 # intersect command for trimmed surfaces
16
17 #This value must be equal to the analogical value in bug25292_35 and bug25292_36 of "bugs modalg_5" testgrid. 
18 set GoodNbCurv 2
19
20 restore [locate_data_file bug25292_f1.brep] f1
21 restore [locate_data_file bug25292_f2.brep] f2
22
23 mksurface s1 f1
24 mksurface s2 f2
25
26 # trim s1 in accordance with the UV-bounds of f1:
27 trimv s1t s1 19.1600000005 19.6600000005
28
29 # trim s2 in accordance with the UV-bounds of f2:
30 trim s2t s2 0. 1.570796326795 -275 275
31
32 ###################
33 intersect res s2t s1t
34 ###################
35
36 set che [whatis res]
37 set ind [string first "3d curve" $che]
38 if {${ind} >= 0} {
39   #Only variable "res" exists
40   renamevar res res_1
41 }
42
43 set ic 1
44 set AllowRepeate 1
45 while { $AllowRepeate != 0 } {
46   set che [whatis res_$ic]
47   set ind [string first "3d curve" $che]
48   if {${ind} < 0} {
49     set AllowRepeate 0
50   } else {
51     display res_$ic
52     
53     bounds res_$ic U1 U2
54     
55     dval U1
56     dval U2
57     
58     if {[dval U2-U1] < 1.0e-20} {
59       puts "Error: Wrong curve's range!"
60     }
61     
62     xdistcs res_$ic s1 U1 U2 10 1.0e-7
63     xdistcs res_$ic s2 U1 U2 10 1.0e-7
64     
65     incr ic
66   }
67 }
68
69 if {[expr {$ic - 1}] == $GoodNbCurv} {
70   puts "OK: Curve Number is good!"
71 } else {
72   puts "Error: Curve Number is bad!"
73 }