![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Represents the state of a given selection mode for a Selectable Object. Contains all the sensitive entities available for this mode. An interactive object can have an indefinite number of modes of selection, each representing a "decomposition" into sensitive primitives; each primitive has an Owner (SelectMgr_EntityOwner) which allows us to identify the exact entity which has been detected. Each Selection mode is identified by an index. The set of sensitive primitives which correspond to a given mode is stocked in a SelectMgr_Selection object. By Convention, the default selection mode which allows us to grasp the Interactive object in its entirety will be mode 0. AIS_Trihedron : 4 selection modes. More...
#include <SelectMgr_Selection.hxx>

Public Member Functions | |
| SelectMgr_Selection (const int theModeIdx=0) | |
| Constructs a selection object defined by the selection mode IdMode. The default setting 0 is the selection mode for a shape in its entirety. | |
| ~SelectMgr_Selection () override | |
| void | Destroy () |
| void | Add (const occ::handle< Select3D_SensitiveEntity > &theSensitive) |
| Adds the sensitive primitive to the list of stored entities in this object. Raises NullObject if the primitive is a null handle. | |
| void | Clear () |
| empties the selection from all the stored entities | |
| bool | IsEmpty () const |
| returns true if no sensitive entity is stored. | |
| int | Mode () const |
| returns the selection mode represented by this selection | |
| const NCollection_DynamicArray< occ::handle< SelectMgr_SensitiveEntity > > & | Entities () const |
| Return entities. | |
| NCollection_DynamicArray< occ::handle< SelectMgr_SensitiveEntity > > & | ChangeEntities () |
| Return entities. | |
| SelectMgr_TypeOfUpdate | UpdateStatus () const |
| Returns the flag UpdateFlag. This flag gives the update status of this framework in a ViewerSelector object: | |
| void | UpdateStatus (const SelectMgr_TypeOfUpdate theStatus) |
| void | UpdateBVHStatus (const SelectMgr_TypeOfBVHUpdate theStatus) |
| SelectMgr_TypeOfBVHUpdate | BVHUpdateStatus () const |
| SelectMgr_StateOfSelection | GetSelectionState () const |
| Returns status of selection. | |
| void | SetSelectionState (const SelectMgr_StateOfSelection theState) const |
| Sets status of selection. | |
| int | Sensitivity () const |
| Returns sensitivity of the selection. | |
| void | SetSensitivity (const int theNewSens) |
| Changes sensitivity of the selection and all its entities to the given value. IMPORTANT: This method does not update any outer selection structures, so for proper updates use SelectMgr_SelectionManager::SetSelectionSensitivity method. | |
| virtual void | DumpJson (Standard_OStream &theOStream, int theDepth=-1) const |
| Dumps the content of me into the stream. | |
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 ()=default |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| bool | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| bool | IsInstance (const char *const theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| bool | 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. | |
| bool | IsKind (const char *const 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. | |
| int | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations. | |
| int | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement. | |
| 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 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. | |
Represents the state of a given selection mode for a Selectable Object. Contains all the sensitive entities available for this mode. An interactive object can have an indefinite number of modes of selection, each representing a "decomposition" into sensitive primitives; each primitive has an Owner (SelectMgr_EntityOwner) which allows us to identify the exact entity which has been detected. Each Selection mode is identified by an index. The set of sensitive primitives which correspond to a given mode is stocked in a SelectMgr_Selection object. By Convention, the default selection mode which allows us to grasp the Interactive object in its entirety will be mode 0. AIS_Trihedron : 4 selection modes.
| SelectMgr_Selection::SelectMgr_Selection | ( | const int | theModeIdx = 0 | ) |
Constructs a selection object defined by the selection mode IdMode. The default setting 0 is the selection mode for a shape in its entirety.
|
override |
| void SelectMgr_Selection::Add | ( | const occ::handle< Select3D_SensitiveEntity > & | theSensitive | ) |
Adds the sensitive primitive to the list of stored entities in this object. Raises NullObject if the primitive is a null handle.
|
inline |
|
inline |
Return entities.
| void SelectMgr_Selection::Clear | ( | ) |
empties the selection from all the stored entities
| void SelectMgr_Selection::Destroy | ( | ) |
|
virtual |
Dumps the content of me into the stream.
|
inline |
Return entities.
|
inline |
Returns status of selection.
|
inline |
returns true if no sensitive entity is stored.
|
inline |
returns the selection mode represented by this selection
|
inline |
Returns sensitivity of the selection.
|
inline |
Sets status of selection.
Changes sensitivity of the selection and all its entities to the given value. IMPORTANT: This method does not update any outer selection structures, so for proper updates use SelectMgr_SelectionManager::SetSelectionSensitivity method.
|
inline |
|
inline |
Returns the flag UpdateFlag. This flag gives the update status of this framework in a ViewerSelector object:
|
inline |