58 #ifndef vtkAbstractPicker_h
59 #define vtkAbstractPicker_h
62 #include "vtkRenderingCoreModule.h"
86 vtkGetVectorMacro(SelectionPoint,
double, 3);
93 vtkGetVectorMacro(PickPosition,
double, 3);
103 double selectionX,
double selectionY,
double selectionZ,
vtkRenderer* renderer) = 0;
112 return this->Pick(selectionPt[0], selectionPt[1], selectionPt[2], ren);
122 vtkErrorMacro(
"Pick3DPoint called without implementation");
133 vtkErrorMacro(
"Pick3DRay called without implementation");
175 double SelectionPoint[3];
176 double PickPosition[3];
define API for picking subclasses
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual int Pick(double selectionX, double selectionY, double selectionZ, vtkRenderer *renderer)=0
Perform pick operation with selection point provided.
virtual void Initialize()
virtual int Pick3DRay(double[3], double[4], vtkRenderer *)
Perform pick operation with selection point and orientation provided.
void DeletePickList(vtkProp *)
Delete an actor from the pick list.
~vtkAbstractPicker() override
void AddPickList(vtkProp *)
Add an actor to the pick list.
void InitializePickList()
Initialize list of actors in pick list.
vtkPropCollection * GetPickList()
Return the list of actors in the PickList.
virtual int Pick3DPoint(double[3], vtkRenderer *)
Perform pick operation with selection point provided.
int Pick(double selectionPt[3], vtkRenderer *ren)
provided.
vtkPropCollection * PickList
a simple class to control print indentation
abstract base class for most VTK objects
abstract superclass for all actors, volumes and annotations
abstract specification for renderers