340054e1 |
1 | puts "========" |
2 | puts "OCC27090" |
3 | puts "========" |
4 | puts "" |
5 | ####################################################### |
6 | # Point is classified IN solid but actually it is OUT |
7 | ####################################################### |
8 | |
9 | smallview |
10 | |
11 | # planar face |
12 | plane pln_f1 0 -875 -1.4432899320127035e-014 0 1 1.1102230246251565e-016 |
13 | erase pln_f1 |
14 | mkface f1 pln_f1 -1000000 1000000 -1000000 1000000 |
15 | |
16 | # planar face |
17 | plane pln_f2 1084.71007164 -980 -2128.6796868400002 1.110223024625157e-016 -1 1.1102230246251563e-016 |
18 | erase pln_f2 |
19 | mkface f2 pln_f2 -1000000 1000000 -1000000 1000000 |
20 | |
21 | # planar face |
22 | plane pln_f3 -308.43155740558768 -800 -2407.1041518310276 0.80901699437494767 9.2444637330587307e-033 -0.5877852522924728 |
23 | erase pln_f3 |
24 | mkface f3 pln_f3 -1000000 1000000 -1000000 1000000 |
25 | |
26 | # planar face |
27 | plane pln_f4 -381.4805392043022 -800 -2409.117597419774 -0.15639998811787861 -1.5422229525403152e-032 -0.98769380058635958 |
28 | erase pln_f4 |
29 | mkface f4 pln_f4 -1000000 1000000 -1000000 1000000 |
30 | |
31 | # cylindrical face |
32 | cylinder cyl_f5 0 0 -1.0103029524088925e-013 0 1 1.1102230246251565e-016 2440 |
33 | erase cyl_f5 |
34 | mkface f5 cyl_f5 0 6.2831853071795862 -1000000 1000000 |
35 | |
36 | # planar face |
37 | plane pln_f6 -309.45754782652125 -800 -2369.8806246344966 0.98769380058635958 -4.4408920985006262e-016 -0.15639998811787881 |
38 | erase pln_f6 |
39 | mkface f6 pln_f6 -1000000 1000000 -1000000 1000000 |
40 | |
41 | # planar face |
42 | plane pln_f7 -330.11602392243287 -800 -2299.7847255135234 -0.58778525229247269 -1.6653345369377348e-016 -0.80901699437494767 |
43 | erase pln_f7 |
44 | mkface f7 pln_f7 -1000000 1000000 -1000000 1000000 |
45 | |
46 | # cylindrical face |
47 | cylinder cyl_f8 0 0 -2.0206059048177849e-013 0 -1 1.1102230246251565e-016 2340 |
48 | erase cyl_f8 |
49 | mkface f8 cyl_f8 0 6.2831853071795862 -1000000 1000000 |
50 | |
51 | # make volume operation |
52 | mkvolume v f1 f2 f3 f4 f5 f6 f7 f8 |
53 | |
54 | donly v |
55 | |
56 | explode v |
57 | |
58 | if {[llength [explode v_6]] > 1} { |
59 | # We expect that v_6 is invalid solid containing 2 shells, |
60 | # and use the first shell to create a new valid solid. |
61 | |
62 | shape solid so |
63 | add v_6_1 solid |
64 | point p -131.81074615766306 -874.99999999999977 -2443.8619433375443 |
65 | |
66 | donly solid p |
67 | |
68 | set output [bclassify solid p] |
69 | |
70 | regexp {The point is ([^ ]*)} $output dummy state |
71 | if {$state != "OUT"} { |
72 | puts "Error: point is classified as $state, but must be OUT" |
73 | } else { |
74 | puts "Info: point is classified OUT, it is OK" |
75 | } |
76 | } else { |
77 | puts "Info: test is not actual for the current version" |
78 | } |
79 | |
80 | fit |
81 | checkview -screenshot -2d -path ${imagedir}/${test_image}.png |