e6cd0977 |
1 | puts "================" |
2 | puts "OCC25224" |
3 | puts "================" |
4 | puts "" |
5 | ####################################################################### |
6 | # The section curve between two cylindrical faces is incomplete |
7 | ####################################################################### |
8 | |
9 | restore [locate_data_file bug25224_Input_5.brep] b1 |
10 | restore [locate_data_file bug25224_Input_21.brep] b2 |
11 | |
12 | # 1. bopcurves |
13 | explode b1 f |
14 | explode b2 f |
15 | |
16 | set log [bopcurves b1_1 b2_1] |
17 | |
18 | regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} ${log} full Toler NbCurv |
19 | set MaxTol 1.e-7 |
20 | if {${Toler} > ${MaxTol}} { |
21 | puts "Error: Tolerance is too big!" |
22 | } |
23 | |
24 | regexp {The length c_1 is ([-0-9.+eE]+)} [length c_1] full Curve_Length |
25 | |
26 | set expected_length 0.52377379499528021 |
27 | set tol_abs_length 1.e-7 |
28 | set tol_rel_length 0.01 |
29 | checkreal "Curve length" ${Curve_Length} ${expected_length} ${tol_abs_length} ${tol_rel_length} |
30 | |
31 | # 2. BOP |
32 | bclearobjects |
33 | bcleartools |
34 | baddobjects b1 |
35 | baddtools b2 |
36 | bfillds |
37 | bbuild result |
38 | |
39 | set square 21.4983 |
40 | |
41 | set nb_v_good 10 |
42 | set nb_e_good 19 |
43 | set nb_w_good 13 |
44 | set nb_f_good 13 |
45 | set nb_sh_good 3 |
46 | set nb_sol_good 3 |
47 | set nb_compsol_good 0 |
48 | set nb_compound_good 1 |
49 | set nb_shape_good 62 |
50 | |
51 | set 3dviewer 1 |