1b7ae951 |
1 | puts "TODO OCC25597 ALL: Error: Tolerance is too big!" |
ecc4f148 |
2 | puts "=========" |
3 | puts "CR24915" |
4 | puts "=========" |
5 | puts "" |
6 | ############################### |
7 | ## Wrong intersection curves between two cylinders |
8 | ############################### |
9 | |
ecc4f148 |
10 | puts "##############################" |
11 | puts "#!!!Searh \"Attention\" keyword on this web-page for additinal checking!!!" |
12 | puts "##############################" |
13 | |
14 | restore [locate_data_file bug24915_ft2.brep] b1 |
15 | restore [locate_data_file bug24915_ft3.brep] b2 |
16 | |
17 | # 1. topology |
18 | bclearobjects |
19 | bcleartools |
20 | baddobjects b1 b2 |
21 | bfillds |
22 | bbuild r |
23 | checkshape r |
24 | |
25 | # 2. geometry |
7c32c7c4 |
26 | set MaxTol 5.0e-7 |
ecc4f148 |
27 | set log [bopcurves b1 b2] |
28 | |
29 | mksurface s1 b1 |
30 | mksurface s2 b2 |
31 | |
32 | regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} ${log} full Toler NbCurv |
33 | |
34 | if {${Toler} > ${MaxTol}} { |
35 | puts "Error: Tolerance is too big!" |
36 | } |
37 | |
38 | for {set i 1} {$i <= ${NbCurv}} {incr i} { |
39 | set log [dump c_$i] |
40 | |
41 | regexp {Degree +([-0-9.+eE]+), +([-0-9.+eE]+) Poles, +([-0-9.+eE]+)} ${log} full Degree Poles KnotsPoles |
42 | |
43 | set Knot 1 |
44 | set exp_string "Knots :\n\n +${Knot} : +(\[-0-9.+eE\]+) +(\[-0-9.+eE\]+)" |
45 | regexp ${exp_string} ${log} full U1 Mult1 |
46 | |
47 | set Knot ${KnotsPoles} |
48 | set exp_string " +${Knot} : +(\[-0-9.+eE\]+) +(\[-0-9.+eE\]+)" |
49 | regexp ${exp_string} ${log} full U2 Mult2 |
50 | |
51 | dlog reset |
52 | dlog on |
53 | xdistcs c_$i s1 ${U1} ${U2} 100 |
54 | set Log2 [dlog get] |
55 | set List2 [split ${Log2} {TD= \t\n}] |
7c32c7c4 |
56 | set Tolerance 1.6e-6 |
ecc4f148 |
57 | set Limit_Tol 1.0e-7 |
58 | set D_good 0. |
59 | catch {checkList ${List2} ${Tolerance} ${D_good} ${Limit_Tol}} |
60 | |
61 | dlog reset |
62 | dlog on |
63 | xdistcs c_$i s2 ${U1} ${U2} 100 |
64 | set Log2 [dlog get] |
65 | set List2 [split ${Log2} {TD= \t\n}] |
7c32c7c4 |
66 | set Tolerance 1.6e-6 |
ecc4f148 |
67 | set Limit_Tol 1.0e-7 |
68 | set D_good 0. |
69 | catch {checkList ${List2} ${Tolerance} ${D_good} ${Limit_Tol}} |
70 | } |
71 | |
72 | smallview |
73 | donly b2 c_2 |
74 | fit |
75 | set only_screen_axo 1 |