0029311: Implementation of the Oriented Bounding Boxes (OBB) functionality
[occt.git] / tests / bugs / moddata_2 / bug23165
CommitLineData
3bea4c16 1puts "================"
2puts "OCC23165"
3puts "================"
4puts ""
5###################################################################################################################
6# BndLib_Add3dCurve::Add incorrectly segmented original B-Spline what resulting in wrong bounding box or exception.
7###################################################################################################################
8
9catch { pload XDE }
10
11set BugNumber OCC23165
12
13smallview
14
15# 1 step
16set exception_status 0
3bea4c16 17
18restore [locate_data_file OCC23165-edge1.brep] e1
19
20donly e1
1a0339b4 21catch { bounding -s e1 } msg
3bea4c16 22fit
23
24set index [lsearch $msg exception]
25if {$index > -1} {
26 set exception_status 1
27} else {
1a0339b4 28 bounding -s e1 -save e1_x1 e1_y1 e1_z1 e1_x2 e1_y2 e1_z2
3bea4c16 29
30 set e1_good_x1 -17.610622244944413
31 set e1_good_y1 -0.010622244944394899
32 set e1_good_z1 -3.0106222449443973
33 set e1_good_x2 -17.589377755055537
bcd19756 34 set e1_good_y2 5.700038816113608
35 set e1_good_z2 -1.6251884728673096
3bea4c16 36
1a0339b4 37 checkreal "e1_x1" [dval e1_x1] ${e1_good_x1} 0 0.001
38 checkreal "e1_y1" [dval e1_y1] ${e1_good_y1} 0 0.001
39 checkreal "e1_z1" [dval e1_z1] ${e1_good_z1} 0 0.001
40 checkreal "e1_x2" [dval e1_x2] ${e1_good_x2} 0 0.001
41 checkreal "e1_y2" [dval e1_y2] ${e1_good_y2} 0 0.001
42 checkreal "e1_z2" [dval e1_z2] ${e1_good_z2} 0 0.001
3bea4c16 43}
44
45# 2 step
46restore [locate_data_file OCC23165-curve.rle] c
47mkedge result c 20 36
48
49donly result
1a0339b4 50set res [bounding -s result -save x1 y1 z1 x2 y2 z2 ]
3bea4c16 51fit
52
3bea4c16 53set good_x1 -17.6105835090592
54set good_y1 -4.7133570660117909
55set good_z1 -4.3679100133425806
56set good_x2 -17.589416490940806
bcd19756 57set good_y2 5.7000000802283299
58set good_z2 -1.6252272087525899
3bea4c16 59
1a0339b4 60checkreal "x1" [dval x1] ${good_x1} 0 0.001
61checkreal "y1" [dval y1] ${good_y1} 0 0.001
62checkreal "z1" [dval z1] ${good_z1} 0 0.001
63checkreal "x2" [dval x2] ${good_x2} 0 0.001
64checkreal "y2" [dval y2] ${good_y2} 0 0.001
65checkreal "z2" [dval z2] ${good_z2} 0 0.001
3bea4c16 66
cd718a73 67if { ${exception_status} == 0 } {
3bea4c16 68 puts "${BugNumber}: OK"
69} else {
70 puts "${BugNumber}: Faulty"
71}
72
5747059b 73checkview -display result -2d -path ${imagedir}/${test_image}.png
58cf74e0 74checkprops result -l 15.8888
75checksection result