45#include "vtkRenderingCoreModule.h"
68 vtkSetMacro(Tolerance,
double);
69 vtkGetMacro(Tolerance,
double);
77 vtkGetVectorMacro(MapperPosition,
double, 3);
138 int Pick(
double selectionX,
double selectionY,
double selectionZ,
vtkRenderer* renderer)
override;
147 return this->
Pick(selectionPt[0], selectionPt[1], selectionPt[2], ren);
186 const double p1[3],
const double p2[3],
double ray[3],
double& rayFactor);
189 double MapperPosition[3];
204 void operator=(
const vtkPicker&) =
delete;
abstract class specifies interface to map 3D data
virtual int Pick(double selectionX, double selectionY, double selectionZ, vtkRenderer *renderer)=0
Perform pick operation with selection point provided.
abstract API for pickers that can pick an instance of vtkProp
an ordered list of actors
a list of nodes that form an assembly path
abstract superclass for composite (multi-block or AMR) datasets
abstract class to specify dataset behavior
a simple class to control print indentation
superclass for 3D geometric pickers (uses ray cast)
virtual int Pick3DPoint(double p1World[3], double p2World[3], vtkRenderer *ren)
vtkActorCollection * GetActors()
Return a collection of all the actors that were intersected.
vtkPoints * PickedPositions
vtkPoints * GetPickedPositions()
Return a list of the points the actors returned by GetProp3Ds were intersected at.
int Pick(double selectionPt[3], vtkRenderer *ren)
Perform pick operation with selection point provided.
vtkProp3DCollection * GetProp3Ds()
Return a collection of all the prop 3D's that were intersected by the pick ray.
vtkCompositeDataSet * CompositeDataSet
int Pick3DRay(double selectionPt[3], double orient[4], vtkRenderer *ren) override
Perform pick operation with selection point and orientation provided.
int Pick3DPoint(double selectionPt[3], vtkRenderer *ren) override
Perform pick operation with selection point provided.
void Initialize() override
virtual int Pick3DInternal(vtkRenderer *ren, double p1World[4], double p2World[4])
static bool CalculateRay(const double p1[3], const double p2[3], double ray[3], double &rayFactor)
virtual double IntersectWithLine(const double p1[3], const double p2[3], double tol, vtkAssemblyPath *path, vtkProp3D *p, vtkAbstractMapper3D *m)
int Pick(double selectionX, double selectionY, double selectionZ, vtkRenderer *renderer) override
Perform pick operation with selection point provided.
vtkProp3DCollection * Prop3Ds
void MarkPickedData(vtkAssemblyPath *path, double tMin, double mapperPos[3], vtkAbstractMapper3D *mapper, vtkDataSet *input, vtkIdType flatBlockIndex=-1)
vtkActorCollection * Actors
void MarkPicked(vtkAssemblyPath *path, vtkProp3D *p, vtkAbstractMapper3D *m, double tMin, double mapperPos[3])
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkAbstractMapper3D * Mapper
represent and manipulate 3D points
an ordered list of 3D props
represents an 3D object for placement in a rendered scene
abstract specification for renderers
std::map< std::string, DataArray > DataSet
key: variable name, value: DataArray