puts "=================================" puts "0032547: Visualization, Select3D_SensitiveCylinder - implement picking of a hollow cylinder" puts " " puts "=================================" pload MODELING VISUALIZATION pcone cone 10 5 10 trotate cone 0 0 0 1 1 0 30 ttranslate cone 15 15 0 pcylinder cyl 7 7 trotate cyl 0 0 0 1 1 0 30 explode cyl F explode cone F vdisplay -dispmode 1 cyl_1 cone_1 vaxo vfit vselect 60 220 140 220 140 190 60 190 -allowoverlap 0 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cylinder should not be detected" } vselect 60 220 140 220 140 190 60 190 -allowoverlap 1 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cylinder should not be detected" } vselect 60 220 140 190 -allowoverlap 0 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cylinder should not be detected" } vselect 60 220 140 190 -allowoverlap 1 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cylinder should not be detected" } vselect 270 210 310 210 310 160 270 160 -allowoverlap 0 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cone should not be detected" } vselect 270 210 310 210 310 160 270 160 -allowoverlap 1 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cone should not be detected" } vselect 270 210 310 160 -allowoverlap 0 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cone should not be detected" } vselect 270 210 310 160 -allowoverlap 1 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cone should not be detected" } vselect 60 210 310 210 310 200 60 200 -allowoverlap 0 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]]} { puts "Error: cone should not be detected" } vselect 60 210 310 210 310 200 60 200 -allowoverlap 1 if { ![string match "*Select3D_SensitiveCylinder*" [vstate -entities]] && [string first "Select3D_SensitiveCylinder" [vstate -entities]] != [string last "Select3D_SensitiveCylinder" [vstate -entities]]} { puts "Error: cone should be detected" } vselect 60 210 310 200 -allowoverlap 0 if { [string match "*Select3D_SensitiveCylinder*" [vstate -entities]] } { puts "Error: cone should not be detected" } vselect 60 210 310 200 -allowoverlap 1 if { ![string match "*Select3D_SensitiveCylinder*" [vstate -entities]] && [string first "Select3D_SensitiveCylinder" [vstate -entities]] != [string last "Select3D_SensitiveCylinder" [vstate -entities]] } { puts "Error: cone should be detected" }