47 #ifndef vtkCellPicker_h
48 #define vtkCellPicker_h
50 #include "vtkRenderingCoreModule.h"
82 virtual int Pick(
double selectionX,
double selectionY,
double selectionZ,
106 void RemoveAllLocators();
118 vtkGetMacro(VolumeOpacityIsovalue,
double);
130 vtkGetMacro(UseVolumeGradientOpacity,
int);
148 vtkGetMacro(PickClippingPlanes,
int);
160 vtkGetMacro(ClippingPlaneId,
int);
169 vtkGetVectorMacro(PickNormal,
double, 3);
177 vtkGetVector3Macro(MapperNormal,
double);
185 vtkGetVector3Macro(PointIJK,
int);
194 vtkGetVector3Macro(CellIJK,
int);
217 vtkGetMacro(SubId,
int);
226 vtkGetVector3Macro(PCoords,
double);
248 vtkGetMacro(PickTextureData,
int);
257 virtual void ResetPickInfo();
263 virtual double IntersectActorWithLine(
const double p1[3],
const double p2[3],
264 double t1,
double t2,
double tol,
267 virtual double IntersectVolumeWithLine(
const double p1[3],
269 double t1,
double t2,
273 virtual double IntersectImageWithLine(
const double p1[3],
275 double t1,
double t2,
279 virtual double IntersectProp3DWithLine(
const double p1[3],
281 double t1,
double t2,
double tol,
287 const double p1[3],
const double p2[3],
288 double &t1,
double &t2,
int& planeId);
290 static int ClipLineWithExtent(
const int extent[6],
291 const double x1[3],
const double x2[3],
292 double &t1,
double &t2,
int &planeId);
295 const double *weights,
double normal[3]);
298 const double *weights,
double tcoord[3]);
300 static int HasSubCells(
int cellType);
309 void SetImageDataPickInfo(
const double x[3],
const int extent[6]);
311 double ComputeVolumeOpacity(
const int xi[3],
const double pcoords[3],
331 double PickNormal[3];
332 double MapperNormal[3];
338 void ResetCellPickerInfo();
int UseVolumeGradientOpacity
represent and manipulate 4x4 transformation matrices
Defines a 1D piecewise function.
abstract class to specify dataset behavior
maintain a list of planes
an abstract base class for locators which find cells
Abstract class for a volume mapper.
abstract specification for renderers
double VolumeOpacityIsovalue
represents an 3D object for placement in a rendered scene
provides thread-safe access to cells
superclass for 3D geometric pickers (uses ray cast)
vtkTexture * GetTexture()
Get the texture that was picked.
dynamic, self-adjusting array of double
abstract class to specify cell behavior
a list of nodes that form an assembly path
a simple class to control print indentation
abstract class for mapping images to the screen
topologically and geometrically regular array of data
list of point or cell ids
abstract superclass for arrays of numeric data
virtual void Initialize()
handles properties associated with a texture map
virtual int Pick(double selectionX, double selectionY, double selectionZ, vtkRenderer *renderer)
Perform pick operation with selection point provided.
abstract class specifies interface to map 3D data
virtual double IntersectWithLine(double p1[3], double p2[3], double tol, vtkAssemblyPath *path, vtkProp3D *p, vtkAbstractMapper3D *m)
abstract class specifies interface to map data to graphics primitives
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
CellTypeInDataSet cellType(vtkDataSet *input)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
create and manipulate unsorted lists of objects
ray-cast cell picker for all kinds of Prop3Ds
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.