0027059: Point->Curve Projection/Extrema fails [OCCT 7 only]
[occt.git] / tests / bugs / moddata_3 / bug27059
1 puts "================"
2 puts "0027059"
3 puts "================"
4 puts ""
5 ##############################################################
6 # Point->Curve Projection/Extrema fails.
7 # (No extrema found)
8 ##############################################################
9
10 set absTol 1.0e-6
11 set relTol 0.001
12 set expectedLength 1.0e-6
13 set exp_x 12.700000
14 set exp_y 16.8949999999593
15 set exp_z  0.534684851975074
16
17 restore [locate_data_file bug27059.brep] aC
18 explode aC
19 mkcurve curve aC_2
20
21 # case 1: Curve
22 # existence check
23 set info1 [proj curve 12.699999 16.8949999999593 0.534684851975074]
24
25 if {![regexp {ext_1} $info1]} {
26   puts "Error: No extrema found in case 1"
27 }
28 # length check
29 set case1Info [length ext_1]
30 regexp {The length ext_1 is ([-0-9.+eE]+)} $case1Info full case1Length
31 checkreal "case 1 extrema value" $case1Length $expectedLength $absTol $relTol
32
33
34 # case 2: Curve
35 # existence check
36 set info2 [proj curve 12.700001 16.8949999999593 0.534684851975074]
37
38 if {![regexp {ext_1} $info2]} {
39   puts "Error: No extrema found in case 2"
40 }
41 # length check
42 set case2Info [length ext_1]
43 regexp {The length ext_1 is ([-0-9.+eE]+)} $case2Info full case2Length
44 checkreal "case 2 extrema value" $case2Length $expectedLength $absTol $relTol
45
46 #case 3: Point
47 # existence check
48 set info3 [proj curve 12.700000 16.8949999999593 0.534684851975074]
49 if {![regexp {ext_1} $info3]} {
50   puts "Error: No extrema found in case 3"
51 }
52 # point coords check
53 set case3Info [dump ext_1]
54 regexp {Point : ([-0-9.+eE]+), ([-0-9.+eE]+), ([-0-9.+eE]+)} $case3Info full x y z
55 checkreal "case 3 coord X" $x $exp_x $absTol $relTol
56 checkreal "case 3 coord Y" $y $exp_y $absTol $relTol
57 checkreal "case 3 coord Z" $z $exp_z $absTol $relTol