0027322: geom/revolution_00/A1: Incorrect pcurve creation
[occt.git] / tests / bugs / fclasses / bug23774
1 puts "==========="
2 puts "OCC23774"
3 puts "==========="
4 ######################################################
5 # Incorrect conversion from gp_Trsf2d to gp_Trsf
6 ######################################################
7
8 pload QAcommands
9 pload TOPTEST
10
11 set BugNumber OCC23774
12
13 restore [locate_data_file bug23774_GrossPlateFace.brep] face
14 restore [locate_data_file bug23774_OriginalWire.brep] wire
15
16 set Info [OCC23774 face wire]
17
18 regexp {Dist0 += +([-0-9.+eE]+)} ${Info} full Dist0
19 regexp {Dist1 += +([-0-9.+eE]+)} ${Info} full Dist1
20 regexp {Distance2 += +([-0-9.+eE]+)} ${Info} full Distance2
21 puts "Dist0 = ${Dist0}"
22 puts "Dist1 = ${Dist1}"
23 puts "Distance2 = ${Distance2}"
24
25 set face_tolerance [maxtolerance face]
26 regexp { +Face +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} ${face_tolerance} full F_MaxFaceTolerance
27 regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} ${face_tolerance} full F_MaxEdgeTolerance
28 regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} ${face_tolerance} full F_MaxVertexTolerance
29
30 set wire_tolerance [maxtolerance wire]
31 regexp { +Face +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} ${face_tolerance} full W_MaxFaceTolerance
32 regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} ${face_tolerance} full W_MaxEdgeTolerance
33 regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} ${face_tolerance} full W_MaxVertexTolerance
34
35 set max_tolerance ${F_MaxFaceTolerance}
36 if { ${F_MaxEdgeTolerance} > ${max_tolerance} } {
37    set max_tolerance ${F_MaxEdgeTolerance}
38 }
39 if { ${F_MaxVertexTolerance} > ${max_tolerance} } {
40    set max_tolerance ${F_MaxVertexTolerance}
41 }
42 if { ${W_MaxFaceTolerance} > ${max_tolerance} } {
43    set max_tolerance ${W_MaxFaceTolerance}
44 }
45 if { ${W_MaxEdgeTolerance} > ${max_tolerance} } {
46    set max_tolerance ${W_MaxEdgeTolerance}
47 }
48 if { ${W_MaxVertexTolerance} > ${max_tolerance} } {
49    set max_tolerance ${W_MaxVertexTolerance}
50 }
51 puts "max_tolerance = ${max_tolerance}"
52
53 set status 0
54 set Dist0_GoodValue 0.
55 set Dist1_GoodValue 0.
56 set Distance2_GoodValue 0.
57
58 if { [expr abs(${Dist0} - ${Dist0_GoodValue})] > ${max_tolerance} } {
59    set status 1
60 }
61 if { [expr abs(${Dist1} - ${Dist1_GoodValue})] > ${max_tolerance} } {
62    set status 1
63 }
64 if { [expr abs(${Distance2} - ${Distance2_GoodValue})] > ${max_tolerance} } {
65    set status 1
66 }
67
68 # Resume
69 puts ""
70 if { ${status} != 0 } {
71    puts "Faulty ${BugNumber}"
72 } else {
73    puts "OK ${BugNumber}"
74 }