Open CASCADE Technology
7.3.0

This class provides an interface for selecting volume manager, which is responsible for all overlap detection methods and calculation of minimum depth, distance to center of geometry and detected closest point on entity. More...
#include <SelectBasics_SelectingVolumeManager.hxx>
Public Types  
enum  SelectionType { Point, Box, Polyline, Unknown } 
Available selection types. More...  
Public Member Functions  
SelectBasics_SelectingVolumeManager ()  
virtual  ~SelectBasics_SelectingVolumeManager () 
virtual Standard_Integer  GetActiveSelectionType () const =0 
virtual Standard_Boolean  Overlaps (const NCollection_Vec3< Standard_Real > &theBoxMin, const NCollection_Vec3< Standard_Real > &theBoxMax, Standard_Real &theDepth)=0 
Returns true if selecting volume is overlapped by box theBox. More...  
virtual Standard_Boolean  Overlaps (const NCollection_Vec3< Standard_Real > &theBoxMin, const NCollection_Vec3< Standard_Real > &theBoxMax, Standard_Boolean *theInside=NULL)=0 
Returns true if selecting volume is overlapped by axisaligned bounding box with minimum corner at point theMinPt and maximum at point theMaxPt. More...  
virtual Standard_Boolean  Overlaps (const gp_Pnt &thePnt, Standard_Real &theDepth)=0 
Returns true if selecting volume is overlapped by point thePnt. More...  
virtual Standard_Boolean  Overlaps (const gp_Pnt &thePnt)=0 
Returns true if selecting volume is overlapped by point thePnt. Does not perform depth calculation, so this method is defined as helper function for inclusion test. More...  
virtual Standard_Boolean  Overlaps (const Handle< TColgp_HArray1OfPnt > &theArrayOfPts, Standard_Integer theSensType, Standard_Real &theDepth)=0 
Returns true if selecting volume is overlapped by planar convex polygon, which points are stored in theArrayOfPts, taking into account sensitivity type theSensType. More...  
virtual Standard_Boolean  Overlaps (const TColgp_Array1OfPnt &theArrayOfPts, Standard_Integer theSensType, Standard_Real &theDepth)=0 
Returns true if selecting volume is overlapped by planar convex polygon, which points are stored in theArrayOfPts, taking into account sensitivity type theSensType. More...  
virtual Standard_Boolean  Overlaps (const gp_Pnt &thePt1, const gp_Pnt &thePt2, Standard_Real &theDepth)=0 
Returns true if selecting volume is overlapped by line segment with start point at thePt1 and end point at thePt2. More...  
virtual Standard_Boolean  Overlaps (const gp_Pnt &thePt1, const gp_Pnt &thePt2, const gp_Pnt &thePt3, Standard_Integer theSensType, Standard_Real &theDepth)=0 
Returns true if selecting volume is overlapped by triangle with vertices thePt1, thePt2 and thePt3, taking into account sensitivity type theSensType. More...  
virtual Standard_Real  DistToGeometryCenter (const gp_Pnt &theCOG)=0 
Calculates distance from 3d projection of userdefined selection point to the given point theCOG. More...  
virtual gp_Pnt  DetectedPoint (const Standard_Real theDepth) const =0 
virtual Standard_Boolean  IsOverlapAllowed () const =0 
virtual gp_Pnt  GetNearPickedPnt () const =0 
Valid only for point and rectangular selection. Returns projection of 2d mouse picked point or projection of center of 2d rectangle (for point and rectangular selection correspondingly) onto near view frustum plane. More...  
virtual gp_Pnt  GetFarPickedPnt () const =0 
Valid only for point and rectangular selection. Returns projection of 2d mouse picked point or projection of center of 2d rectangle (for point and rectangular selection correspondingly) onto far view frustum plane. More...  
virtual void  GetPlanes (NCollection_Vector< NCollection_Vec4< Standard_Real > > &thePlaneEquations) const =0 
Stores plane equation coefficients (in the following form: Ax + By + Cz + D = 0) to the given vector. More...  
Protected Attributes  
SelectionType  myActiveSelectionType 
Active selection type: point, box or polyline. More...  
This class provides an interface for selecting volume manager, which is responsible for all overlap detection methods and calculation of minimum depth, distance to center of geometry and detected closest point on entity.

inline 

inlinevirtual 

pure virtual 
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Calculates distance from 3d projection of userdefined selection point to the given point theCOG.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Valid only for point and rectangular selection. Returns projection of 2d mouse picked point or projection of center of 2d rectangle (for point and rectangular selection correspondingly) onto far view frustum plane.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Valid only for point and rectangular selection. Returns projection of 2d mouse picked point or projection of center of 2d rectangle (for point and rectangular selection correspondingly) onto near view frustum plane.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Stores plane equation coefficients (in the following form: Ax + By + Cz + D = 0) to the given vector.

pure virtual 
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Returns true if selecting volume is overlapped by box theBox.

pure virtual 
Returns true if selecting volume is overlapped by axisaligned bounding box with minimum corner at point theMinPt and maximum at point theMaxPt.

pure virtual 
Returns true if selecting volume is overlapped by point thePnt.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Returns true if selecting volume is overlapped by point thePnt. Does not perform depth calculation, so this method is defined as helper function for inclusion test.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Returns true if selecting volume is overlapped by planar convex polygon, which points are stored in theArrayOfPts, taking into account sensitivity type theSensType.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Returns true if selecting volume is overlapped by planar convex polygon, which points are stored in theArrayOfPts, taking into account sensitivity type theSensType.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Returns true if selecting volume is overlapped by line segment with start point at thePt1 and end point at thePt2.
Implemented in SelectMgr_SelectingVolumeManager.

pure virtual 
Returns true if selecting volume is overlapped by triangle with vertices thePt1, thePt2 and thePt3, taking into account sensitivity type theSensType.
Implemented in SelectMgr_SelectingVolumeManager.

protected 
Active selection type: point, box or polyline.