Open CASCADE Technology 6.6.0
|
root class ; the inheriting classes will be able to give
sensitive Areas for the dynamic selection algorithms
#include <SelectBasics_SensitiveEntity.hxx>
Public Member Functions | |
virtual void | Set (const Handle< SelectBasics_EntityOwner > &TheOwnerId) |
const Handle_SelectBasics_EntityOwner & | OwnerId () const |
virtual void | Areas (SelectBasics_ListOfBox2d &aresult)=0 |
to be implemented specifically by each type of sensitive primitive . | |
virtual Standard_Boolean | Matches (const Standard_Real X, const Standard_Real Y, const Standard_Real aTol, Standard_Real &DMin)=0 |
returns True if the object is very close to the sensitive areas it gave to the selector... returns the minimum distance found if no match; to be implemented specifically by each type of sensitive primitive . | |
virtual Standard_Boolean | Matches (const Standard_Real XMin, const Standard_Real YMin, const Standard_Real XMax, const Standard_Real YMax, const Standard_Real aTol)=0 |
returns True if the box (Xmin,YMin)------(Xmax,Ymax) contains the SensitiveEntity. Necessary for selection using elastic boxes,or segments. | |
virtual Standard_Boolean | Matches (const TColgp_Array1OfPnt2d &Polyline, const Bnd_Box2d &aBox, const Standard_Real aTol)=0 |
returns True if the polyline xi,yi contains the SensitiveEntity. Necessary for selection using polyline selection | |
virtual Standard_Boolean | NeedsConversion () const =0 |
virtual Standard_Boolean | Is3D () const =0 |
returns True if able to give 3D information (Depth,...). See Select3D | |
virtual Standard_Real | Depth () const |
Sort Selected entities according to depth... | |
virtual Standard_Integer | MaxBoxes () const =0 |
returns the max number of boxes the entity is able to give at a time | |
void | SetSensitivityFactor (const Standard_ShortReal aFactor) |
Standard_ShortReal | SensitivityFactor () const |
allows a better sensitivity for a specific entity in selection algorithms useful for small sized entities. | |
Protected Member Functions | |
SelectBasics_SensitiveEntity (const Handle< SelectBasics_EntityOwner > &OwnerId, const Standard_ShortReal aSensitivityFactor=1) | |
Protected Attributes | |
Handle_SelectBasics_EntityOwner | myOwnerId |
SelectBasics_SensitiveEntity::SelectBasics_SensitiveEntity | ( | const Handle< SelectBasics_EntityOwner > & | OwnerId, |
const Standard_ShortReal | aSensitivityFactor = 1 |
||
) | [protected] |
virtual void SelectBasics_SensitiveEntity::Areas | ( | SelectBasics_ListOfBox2d & | aresult | ) | [pure virtual] |
virtual Standard_Real SelectBasics_SensitiveEntity::Depth | ( | ) | const [virtual] |
Reimplemented in Select3D_SensitiveEntity.
virtual Standard_Boolean SelectBasics_SensitiveEntity::Is3D | ( | ) | const [pure virtual] |
Implemented in Select3D_SensitiveEntity, and MeshVS_DummySensitiveEntity.
virtual Standard_Boolean SelectBasics_SensitiveEntity::Matches | ( | const Standard_Real | X, |
const Standard_Real | Y, | ||
const Standard_Real | aTol, | ||
Standard_Real & | DMin | ||
) | [pure virtual] |
Implemented in Select3D_SensitiveEntity, Select3D_SensitivePoint, Select3D_SensitiveSegment, Select3D_SensitiveCircle, Select3D_SensitiveCurve, Select3D_SensitiveTriangle, Select3D_SensitiveTriangulation, Select3D_SensitiveFace, Select3D_SensitiveBox, Select3D_SensitiveWire, Select3D_SensitiveGroup, MeshVS_DummySensitiveEntity, MeshVS_SensitiveMesh, and MeshVS_SensitivePolyhedron.
virtual Standard_Boolean SelectBasics_SensitiveEntity::Matches | ( | const Standard_Real | XMin, |
const Standard_Real | YMin, | ||
const Standard_Real | XMax, | ||
const Standard_Real | YMax, | ||
const Standard_Real | aTol | ||
) | [pure virtual] |
Implemented in Select3D_SensitiveEntity, Select3D_SensitivePoint, Select3D_SensitiveSegment, Select3D_SensitiveCircle, Select3D_SensitiveCurve, Select3D_SensitiveTriangle, Select3D_SensitiveTriangulation, Select3D_SensitiveFace, Select3D_SensitiveBox, Select3D_SensitiveWire, Select3D_SensitiveGroup, MeshVS_DummySensitiveEntity, MeshVS_SensitiveMesh, MeshVS_SensitiveFace, MeshVS_SensitiveSegment, and MeshVS_SensitivePolyhedron.
virtual Standard_Boolean SelectBasics_SensitiveEntity::Matches | ( | const TColgp_Array1OfPnt2d & | Polyline, |
const Bnd_Box2d & | aBox, | ||
const Standard_Real | aTol | ||
) | [pure virtual] |
Implemented in Select3D_SensitiveEntity, Select3D_SensitivePoint, Select3D_SensitiveSegment, Select3D_SensitiveCircle, Select3D_SensitiveCurve, Select3D_SensitiveTriangle, Select3D_SensitiveTriangulation, Select3D_SensitiveFace, Select3D_SensitiveBox, Select3D_SensitiveWire, Select3D_SensitiveGroup, MeshVS_DummySensitiveEntity, MeshVS_SensitiveMesh, MeshVS_SensitiveFace, MeshVS_SensitiveSegment, and MeshVS_SensitivePolyhedron.
virtual Standard_Integer SelectBasics_SensitiveEntity::MaxBoxes | ( | ) | const [pure virtual] |
virtual Standard_Boolean SelectBasics_SensitiveEntity::NeedsConversion | ( | ) | const [pure virtual] |
Implemented in Select3D_SensitiveEntity, and MeshVS_DummySensitiveEntity.
const Handle_SelectBasics_EntityOwner& SelectBasics_SensitiveEntity::OwnerId | ( | ) | const |
Standard_ShortReal SelectBasics_SensitiveEntity::SensitivityFactor | ( | ) | const |
virtual void SelectBasics_SensitiveEntity::Set | ( | const Handle< SelectBasics_EntityOwner > & | TheOwnerId | ) | [virtual] |
Reimplemented in Select3D_SensitiveWire, and Select3D_SensitiveGroup.
void SelectBasics_SensitiveEntity::SetSensitivityFactor | ( | const Standard_ShortReal | aFactor | ) |
Handle_SelectBasics_EntityOwner SelectBasics_SensitiveEntity::myOwnerId [protected] |