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