mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-09-08 14:17:06 +03:00
0026147: Visualization - restore the ability to pick only fully included objects in rectangular selection
2 modes of rectangular selection are available: inclusion-only and overlap-allowing; The modes can be switched using method AllowOverlapDetection from StdSelect_ViewerSelector3d; BVH for sensitive entities now builds if there is more than max number of leafs in collection; Added option -allowoverlap to command vselect; Interactive rectangular selection in Draw is now available in 2 modes: - if the user starts selection from upper corners, only fully included objects will be selected; - if the user starts selection from lower corners, both partially and fully overlapped objects will be selected.
This commit is contained in:
60
tests/bugs/vis/bug26147
Normal file
60
tests/bugs/vis/bug26147
Normal file
@@ -0,0 +1,60 @@
|
||||
puts "============"
|
||||
puts "CR26147"
|
||||
puts "============"
|
||||
puts ""
|
||||
|
||||
##########################################################################################
|
||||
puts "Visualization - restore the ability to pick only fully included objects in rectangular selection"
|
||||
##########################################################################################
|
||||
|
||||
pload VISUALIZATION MODELING
|
||||
|
||||
box b1 0 0 0 1 1 1
|
||||
box b2 2 2 2 1 1 1
|
||||
box b3 4 4 4 1 1 1
|
||||
|
||||
vinit View1
|
||||
vdisplay b1 b2 b3
|
||||
vfit
|
||||
|
||||
vselmode b1 1 1
|
||||
vselmode b1 2 1
|
||||
vselmode b2 1 1
|
||||
vselmode b2 2 1
|
||||
|
||||
vselect 75 230 235 320 -allowoverlap 0
|
||||
set aNbSelected1 [vnbselected]
|
||||
if {$aNbSelected1 != 4} {
|
||||
puts "ERROR: Wrong number of entities in vertice-edge selection without overlap allowed!"
|
||||
}
|
||||
|
||||
vselect 75 230 235 320 -allowoverlap 1
|
||||
vnbselected
|
||||
set aNbSelected2 [vnbselected]
|
||||
if {$aNbSelected2 != 11} {
|
||||
puts "ERROR: Wrong number of entities in vertice-edge selection with overlap allowed!"
|
||||
}
|
||||
|
||||
vselect 0 0
|
||||
|
||||
vselmode b3 4 1
|
||||
|
||||
vselect 75 230 235 320 -allowoverlap 0 1
|
||||
vselect 350 150 380 170 1
|
||||
vnbselected
|
||||
set aNbSelected3 [vnbselected]
|
||||
if {$aNbSelected3 != 4} {
|
||||
puts "ERROR: Wrong number of entities in vertice-edge-face shift selection without overlap allowed!"
|
||||
}
|
||||
|
||||
vselect 0 0
|
||||
|
||||
vselect 75 230 235 320 -allowoverlap 1 1
|
||||
vselect 350 150 380 170 1
|
||||
vnbselected
|
||||
set aNbSelected4 [vnbselected]
|
||||
if {$aNbSelected4 != 13} {
|
||||
puts "ERROR: Wrong number of entities in vertice-edge-face shift selection with overlap allowed!"
|
||||
}
|
||||
|
||||
vdump $imagedir/${casename}
|
Reference in New Issue
Block a user