0025981: Wrong result obtained by projection algorithm.
[occt.git] / tests / bugs / moddata_3 / bug24068
1 puts "========"
2 puts "CR24068"
3 puts "========"
4 puts ""
5 #######################################################################
6 # Wrong result done by projection algorithm
7 #######################################################################
8
9 restore [locate_data_file bug23100_qf.brep] f
10
11 explode f
12 copy f_2 f
13
14 set CMP_TOL 5.0e-14
15
16 # 1
17 point p_1  100 86.6025403784439 2.25000977226544
18 vertex v_1 100 86.6025403784439 2.25000977226544
19 set GOOD_DIST_1 2.0175535360778957e-14
20
21 set log_1 [projponf f p_1 -min -t]
22 regexp {proj dist = ([-0-9.+eE]+)} ${log_1} full distmax_1
23 if { [expr abs(${distmax_1} - ${GOOD_DIST_1})] > ${CMP_TOL} } {
24    puts "Error: Wrong distanse (# 1)"
25 } else {
26    puts "OK: Good distanse (# 1)"
27 }
28
29 distmini d_1 v_1 f
30 set distmin_1 [dval d_1_val]
31 if { [expr abs(${distmin_1} - ${GOOD_DIST_1})] > ${CMP_TOL} } {
32    puts "Error: Wrong minidistanse (# 1)"
33 } else {
34    puts "OK: Good minidistanse (# 1)"
35 }
36
37 # 2
38 point p_2  100 86.6025403784439 8.2500100656622
39 vertex v_2 100 86.6025403784439 8.2500100656622
40 set GOOD_DIST_2 9.9491842071163076e-14
41
42 set log_2 [projponf f p_2 -min -t]
43 regexp {proj dist = ([-0-9.+eE]+)} ${log_2} full distmax_2
44 if { [expr abs(${distmax_2} - ${GOOD_DIST_2})] > ${CMP_TOL} } {
45    puts "Error: Wrong distanse (# 2)"
46 } else {
47    puts "OK: Good distanse (# 2)"
48 }
49
50 distmini d_2 v_2 f
51 set distmin_2 [dval d_2_val]
52 if { [expr abs(${distmin_2} - ${GOOD_DIST_2})] > ${CMP_TOL} } {
53    puts "Error: Wrong minidistanse (# 2)"
54 } else {
55    puts "OK: Good minidistanse (# 2)"
56 }
57
58 # 3
59 point p_3  100 86.602540378443891 11.249990478996615
60 vertex v_3 100 86.602540378443891 11.249990478996615
61 set GOOD_DIST_3 2.8421709430404007e-14
62
63 set log_3 [projponf f p_3 -min -t]
64 regexp {proj dist = ([-0-9.+eE]+)} ${log_3} full distmax_3
65 if { [expr abs(${distmax_3} - ${GOOD_DIST_3})] > ${CMP_TOL} } {
66    puts "Error: Wrong distanse (# 3)"
67 } else {
68    puts "OK: Good distanse (# 3)"
69 }
70
71 distmini d_3 v_3 f
72 set distmin_3 [dval d_3_val]
73 if { [expr abs(${distmin_3} - ${GOOD_DIST_3})] > ${CMP_TOL} } {
74    puts "Error: Wrong minidistanse (# 3)"
75 } else {
76    puts "OK: Good minidistanse (# 3)"
77 }