Open CASCADE Technology 7.8.0
|
Sensitive entity covering entire mesh for global selection. More...
#include <MeshVS_CommonSensitiveEntity.hxx>
Public Member Functions | |
MeshVS_CommonSensitiveEntity (const Handle< SelectMgr_EntityOwner > &theOwner, const Handle< MeshVS_Mesh > &theParentMesh, const MeshVS_MeshSelectionMethod theSelMethod) | |
Default constructor. | |
virtual | ~MeshVS_CommonSensitiveEntity () |
Destructor. | |
virtual Standard_Integer | NbSubElements () const override |
Number of elements. | |
virtual Standard_Integer | Size () const override |
Returns the amount of sub-entities of the complex entity. | |
virtual Select3D_BndBox3d | Box (const Standard_Integer theIdx) const override |
Returns bounding box of sub-entity with index theIdx in sub-entity list. | |
virtual Standard_Real | Center (const Standard_Integer theIdx, const Standard_Integer theAxis) const override |
Returns geometry center of sensitive entity index theIdx along the given axis theAxis. | |
virtual void | Swap (const Standard_Integer theIdx1, const Standard_Integer theIdx2) override |
Swaps items with indexes theIdx1 and theIdx2. | |
virtual Select3D_BndBox3d | BoundingBox () override |
Returns bounding box of the triangulation. If location transformation is set, it will be applied. | |
virtual gp_Pnt | CenterOfGeometry () const override |
Returns center of a mesh. | |
virtual Handle< Select3D_SensitiveEntity > | GetConnected () override |
Create a copy. | |
Public Member Functions inherited from Select3D_SensitiveSet | |
Select3D_SensitiveSet (const Handle< SelectMgr_EntityOwner > &theOwnerId) | |
Creates new empty sensitive set and its content. | |
virtual Standard_Boolean | Matches (SelectBasics_SelectingVolumeManager &theMgr, SelectBasics_PickResult &thePickResult) override |
Checks whether one or more entities of the set overlap current selecting volume. Implements the traverse of BVH tree built for the set. | |
virtual void | BVH () override |
Builds BVH tree for sensitive set. Must be called manually to build BVH tree for any sensitive set in case if its content was initialized not in a constructor, but element by element. | |
virtual Standard_Boolean | ToBuildBVH () const override |
Returns TRUE if BVH tree is in invalidated state. | |
void | SetBuilder (const Handle< Select3D_BVHBuilder3d > &theBuilder) |
Sets the method (builder) used to construct BVH. | |
void | MarkDirty () |
Marks BVH tree of the set as outdated. It will be rebuild at the next call of BVH() | |
virtual void | Clear () override |
Destroys cross-reference to avoid memory leak. | |
Standard_Integer | GetLeafNodeSize () const |
Returns a number of nodes in 1 BVH leaf. | |
virtual void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const override |
Dumps the content of me into the stream. | |
Public Member Functions inherited from Select3D_SensitiveEntity | |
const Handle< SelectMgr_EntityOwner > & | OwnerId () const |
Returns pointer to owner of the entity. | |
virtual void | Set (const Handle< SelectMgr_EntityOwner > &theOwnerId) |
Sets owner of the entity. | |
Standard_Integer | SensitivityFactor () const |
allows a better sensitivity for a specific entity in selection algorithms useful for small sized entities. | |
void | SetSensitivityFactor (const Standard_Integer theNewSens) |
Allows to manage sensitivity of a particular sensitive entity. | |
virtual Standard_Boolean | HasInitLocation () const |
Returns true if the shape corresponding to the entity has init location. | |
virtual gp_GTrsf | InvInitLocation () const |
Returns inversed location transformation matrix if the shape corresponding to this entity has init location set. Otherwise, returns identity matrix. | |
const Handle< Graphic3d_TransformPers > & | TransformPersistence () const |
Return transformation persistence. | |
virtual void | SetTransformPersistence (const Handle< Graphic3d_TransformPers > &theTrsfPers) |
Set transformation persistence. | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. | |
virtual | ~Standard_Transient () |
Destructor must be virtual. | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. | |
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Transient * | This () const |
Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
Standard_Integer | GetRefCount () const noexcept |
Get the reference counter of this object. | |
void | IncrementRefCounter () noexcept |
Increments the reference counter of this object. | |
Standard_Integer | DecrementRefCounter () noexcept |
Decrements the reference counter of this object; returns the decremented value. | |
virtual void | Delete () const |
Memory deallocator for transient classes. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Select3D_SensitiveSet | |
static const Handle< Select3D_BVHBuilder3d > & | DefaultBVHBuilder () |
Return global instance to default BVH builder. | |
static void | SetDefaultBVHBuilder (const Handle< Select3D_BVHBuilder3d > &theBuilder) |
Assign new BVH builder to be used by default for new sensitive sets (assigning is NOT thread-safe!). | |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
Protected Attributes inherited from Select3D_SensitiveSet | |
BvhPrimitiveSet | myContent |
A link between sensitive entity and BVH_PrimitiveSet. | |
Standard_Integer | myDetectedIdx |
Index of detected primitive in BVH sorted primitive array. | |
Protected Attributes inherited from Select3D_SensitiveEntity | |
Handle< SelectMgr_EntityOwner > | myOwnerId |
Handle< Graphic3d_TransformPers > | myTrsfPers |
Standard_Integer | mySFactor |
Sensitive entity covering entire mesh for global selection.
MeshVS_CommonSensitiveEntity::MeshVS_CommonSensitiveEntity | ( | const Handle< SelectMgr_EntityOwner > & | theOwner, |
const Handle< MeshVS_Mesh > & | theParentMesh, | ||
const MeshVS_MeshSelectionMethod | theSelMethod | ||
) |
Default constructor.
|
virtual |
Destructor.
|
protected |
Protected copy constructor.
|
overridevirtual |
Returns bounding box of the triangulation. If location transformation is set, it will be applied.
Reimplemented from Select3D_SensitiveSet.
|
overridevirtual |
Returns bounding box of sub-entity with index theIdx in sub-entity list.
Implements Select3D_SensitiveSet.
|
overridevirtual |
Returns geometry center of sensitive entity index theIdx along the given axis theAxis.
Implements Select3D_SensitiveSet.
Returns center of a mesh.
Reimplemented from Select3D_SensitiveSet.
|
overrideprotectedvirtual |
Calculates distance from the 3d projection of used-picked screen point to center of the geometry.
Implements Select3D_SensitiveSet.
|
overrideprotectedvirtual |
Checks whether the entity with index theIdx is inside the current selecting volume.
Implements Select3D_SensitiveSet.
|
inlineoverridevirtual |
Create a copy.
Reimplemented from Select3D_SensitiveEntity.
|
overridevirtual |
Number of elements.
Implements Select3D_SensitiveEntity.
|
overrideprotectedvirtual |
Checks whether the entity with index theIdx overlaps the current selecting volume.
Implements Select3D_SensitiveSet.
|
overridevirtual |
Returns the amount of sub-entities of the complex entity.
Implements Select3D_SensitiveSet.
|
overridevirtual |
Swaps items with indexes theIdx1 and theIdx2.
Implements Select3D_SensitiveSet.