1 puts "================"
3 puts "================"
5 #######################################################################
6 # Face/Face intersection algorithm gives different results for different order of the arguments
7 #######################################################################
9 proc GetRange { curve } {
13 set log [uplevel dump $curve]
15 regexp {Degree +([-0-9.+eE]+), +([-0-9.+eE]+) Poles, +([-0-9.+eE]+)} ${log} full Degree Poles KnotsPoles
16 puts "Degree=${Degree}"
18 puts "KnotsPoles=${KnotsPoles}"
22 set exp_string "Knots :\n\n +${Knot} : +(\[-0-9.+eE\]+) +(\[-0-9.+eE\]+)"
23 regexp ${exp_string} ${log} full U1 Mult1
25 set Knot ${KnotsPoles}
26 set exp_string " +${Knot} : +(\[-0-9.+eE\]+) +(\[-0-9.+eE\]+)"
27 regexp ${exp_string} ${log} full U2 Mult2
30 puts "##############################"
31 puts "#!!!Search \"Attention\" keyword on this web-page for additional checking!!!"
32 puts "##############################"
36 # intersect command for trimmed surfaces
38 #This value must be equal to the analogical value in bug25292_35 and bug25292_36 of "bugs modalg_5" testgrid.
41 restore [locate_data_file bug25292_f1.brep] f1
42 restore [locate_data_file bug25292_f2.brep] f2
47 # trim s1 in accordance with the UV-bounds of f1:
48 trimv s1t s1 19.1600000005 19.6600000005
50 # trim s2 in accordance with the UV-bounds of f2:
51 trim s2t s2 0. 1.570796326795 -275 275
58 set ind [string first "3d curve" $che]
60 #Only variable "res" exists
62 if { $GoodNbCurv == 1 } {
63 puts "OK: Curve Number is good!"
65 puts "Error: Curve Number is bad!"
76 if {[expr {$U2 - $U1}] < 1.0e-20} {
77 puts "Error: Wrong curve's range!"
80 xdistcs res s1 ${U1} ${U2} 10 1e-7
81 xdistcs res s2 ${U1} ${U2} 10 1e-7
85 while { $AllowRepeate != 0 } {
86 set che [whatis res_$ic]
87 set ind [string first "3d curve" $che]
99 if {[expr {$U2 - $U1}] < 1.0e-20} {
100 puts "Error: Wrong curve's range!"
103 xdistcs res_$ic s1 ${U1} ${U2} 10 1e-7
104 xdistcs res_$ic s2 0 1 10 1e-7
110 if {[expr {$ic - 1}] == $GoodNbCurv} {
111 puts "OK: Curve Number is good!"
113 puts "Error: Curve Number is bad!"