1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-09-18 14:27:39 +03:00

0027834: Visualization, SelectMgr_ViewerSelector - iteration through detected Entities should be sorted

SelectMgr_SortCriterion now stores detected SensitiveEntity and 3D point.
SelectMgr_ToleranceMap class definition has been moved out to dedicated file (from SelectMgr_ViewerSelector).

SelectMgr_ViewerSelector - the methods implementing class-as-iterator
Init(), More(), Next(), Picked() and InitDetected(), MoreDetected(),
NextDetected(), DetectedEntity() have been deprecated.
User should access detection results by using index.
New methods PickedData(), PickedEntity(), PickedPoint() have been added
for accessing auxiliary information about picked object in sorted order.
This commit is contained in:
kgv
2016-09-02 19:11:23 +03:00
committed by bugmaster
parent 1ce0716bb1
commit aa75c0cf9d
10 changed files with 307 additions and 435 deletions

View File

@@ -19,12 +19,7 @@
#include <Graphic3d_ZLayerId.hxx>
#include <Precision.hxx>
#include <Standard.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <Standard_Integer.hxx>
#include <Standard_Real.hxx>
#include <SelectBasics_SensitiveEntity.hxx>
//! This class provides data and criterion for sorting candidate
//! entities in the process of interactive selection by mouse click
@@ -32,6 +27,8 @@ class SelectMgr_SortCriterion
{
public:
Handle(SelectBasics_SensitiveEntity) Entity; //!< detected entity
gp_Pnt Point; //!< 3D point
Standard_Real Depth; //!< distance from the view plane to the entity
Standard_Real MinDist; //!< distance from the clicked point to the entity on the view plane
Standard_Real Tolerance; //!< tolerance used for selecting candidates