Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions
IVtk_IShapePickerAlgo Class Referenceabstract

Interface for 3D shapes picking algorithm. More...

#include <IVtk_IShapePickerAlgo.hxx>

Inheritance diagram for IVtk_IShapePickerAlgo:
Inheritance graph
[legend]

Public Types

typedef occ::handle< IVtk_IShapePickerAlgoHandle
 
- Public Types inherited from IVtk_Interface
typedef occ::handle< IVtk_InterfaceHandle
 
- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 

Public Member Functions

 ~IVtk_IShapePickerAlgo () override=default
 
virtual void SetView (const IVtk_IView::Handle &theView)=0
 
virtual int NbPicked ()=0
 
virtual NCollection_List< IVtk_SelectionModeGetSelectionModes (const IVtk_IShape::Handle &theShape) const =0
 Get activated selection modes for a shape.
 
virtual void SetSelectionMode (const IVtk_IShape::Handle &theShape, const IVtk_SelectionMode theMode, const bool theIsTurnOn=true)=0
 Activates/deactivates the given selection mode for the shape. If mode == SM_None, the shape becomes non-selectable and is removed from the internal selection data.
 
virtual void SetSelectionMode (const NCollection_List< IVtk_IShape::Handle > &theShapes, const IVtk_SelectionMode theMode, const bool theIsTurnOn=true)=0
 Activates/deactivates the given selection mode for the shape. If mode == SM_None, the shape becomes non-selectable and is removed from the internal selection data.
 
virtual bool Pick (const double theX, const double theY)=0
 
virtual bool Pick (const double theXMin, const double theYMin, const double theXMax, const double theYMax)=0
 
virtual bool Pick (double **, const int theNbPoints)=0
 
virtual const NCollection_List< IVtk_IdType > & ShapesPicked () const =0
 
virtual void SubShapesPicked (const IVtk_IdType theId, NCollection_List< IVtk_IdType > &theShapeList) const =0
 
- Public Member Functions inherited from IVtk_Interface
 ~IVtk_Interface () override=default
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (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_TransientThis () 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

- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_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.
 

Detailed Description

Interface for 3D shapes picking algorithm.

Member Typedef Documentation

◆ Handle

Constructor & Destructor Documentation

◆ ~IVtk_IShapePickerAlgo()

IVtk_IShapePickerAlgo::~IVtk_IShapePickerAlgo ( )
overridedefault

Member Function Documentation

◆ GetSelectionModes()

virtual NCollection_List< IVtk_SelectionMode > IVtk_IShapePickerAlgo::GetSelectionModes ( const IVtk_IShape::Handle & theShape) const
pure virtual

Get activated selection modes for a shape.

Parameters
[in]theShapea shape with activated selection mode(s)
Returns
list of active selection modes

Implemented in IVtkOCC_ShapePickerAlgo.

◆ NbPicked()

virtual int IVtk_IShapePickerAlgo::NbPicked ( )
pure virtual

Implemented in IVtkOCC_ShapePickerAlgo.

◆ Pick() [1/3]

virtual bool IVtk_IShapePickerAlgo::Pick ( const double theX,
const double theY )
pure virtual

Implemented in IVtkOCC_ShapePickerAlgo.

◆ Pick() [2/3]

virtual bool IVtk_IShapePickerAlgo::Pick ( const double theXMin,
const double theYMin,
const double theXMax,
const double theYMax )
pure virtual

Implemented in IVtkOCC_ShapePickerAlgo.

◆ Pick() [3/3]

virtual bool IVtk_IShapePickerAlgo::Pick ( double ** ,
const int theNbPoints )
pure virtual

Implemented in IVtkOCC_ShapePickerAlgo.

◆ SetSelectionMode() [1/2]

virtual void IVtk_IShapePickerAlgo::SetSelectionMode ( const IVtk_IShape::Handle & theShape,
const IVtk_SelectionMode theMode,
const bool theIsTurnOn = true )
pure virtual

Activates/deactivates the given selection mode for the shape. If mode == SM_None, the shape becomes non-selectable and is removed from the internal selection data.

Parameters
[in]theShapeShape for which the selection mode should be activated
[in]theModeSelection mode to be activated
[in]theIsTurnOnFlag to turn on/off the selection mode

Implemented in IVtkOCC_ShapePickerAlgo.

◆ SetSelectionMode() [2/2]

virtual void IVtk_IShapePickerAlgo::SetSelectionMode ( const NCollection_List< IVtk_IShape::Handle > & theShapes,
const IVtk_SelectionMode theMode,
const bool theIsTurnOn = true )
pure virtual

Activates/deactivates the given selection mode for the shape. If mode == SM_None, the shape becomes non-selectable and is removed from the internal selection data.

Parameters
[in]theShapesList of shapes for which the selection mode should be activated
[in]theModeSelection mode to be activated
[in]theIsTurnOnFlag to turn on/off the selection mode

Implemented in IVtkOCC_ShapePickerAlgo.

◆ SetView()

virtual void IVtk_IShapePickerAlgo::SetView ( const IVtk_IView::Handle & theView)
pure virtual

Implemented in IVtkOCC_ShapePickerAlgo.

◆ ShapesPicked()

virtual const NCollection_List< IVtk_IdType > & IVtk_IShapePickerAlgo::ShapesPicked ( ) const
pure virtual
Returns
the list of picked top-level shape IDs, in the order of increasing depth (the ID of the shape closest to the eye is the first in the list)

Implemented in IVtkOCC_ShapePickerAlgo.

◆ SubShapesPicked()

virtual void IVtk_IShapePickerAlgo::SubShapesPicked ( const IVtk_IdType theId,
NCollection_List< IVtk_IdType > & theShapeList ) const
pure virtual
Parameters
[in]theIdTop-level shape ID
[out]theShapeListthe list of picked sub-shape IDs for the given top-level shape ID, in the order of increasing depth (the ID of the sub-shape closest to the eye is the first in the list)

Implemented in IVtkOCC_ShapePickerAlgo.


The documentation for this class was generated from the following file: