46 #ifndef vtkCellPicker_h
47 #define vtkCellPicker_h
80 virtual int Pick(
double selectionX,
double selectionY,
double selectionZ,
99 void RemoveAllLocators();
108 vtkSetMacro(VolumeOpacityIsovalue,
double);
109 vtkGetMacro(VolumeOpacityIsovalue,
double);
117 vtkSetMacro(UseVolumeGradientOpacity,
int);
118 vtkBooleanMacro(UseVolumeGradientOpacity,
int);
119 vtkGetMacro(UseVolumeGradientOpacity,
int);
132 vtkSetMacro(PickClippingPlanes,
int);
133 vtkBooleanMacro(PickClippingPlanes,
int);
134 vtkGetMacro(PickClippingPlanes,
int);
144 vtkGetMacro(ClippingPlaneId,
int);
151 vtkGetVectorMacro(PickNormal,
double, 3);
157 vtkGetVector3Macro(MapperNormal,
double);
163 vtkGetVector3Macro(PointIJK,
int);
170 vtkGetVector3Macro(CellIJK,
int);
187 vtkGetMacro(SubId,
int);
194 vtkGetVector3Macro(PCoords,
double);
210 vtkSetMacro(PickTextureData,
int);
211 vtkBooleanMacro(PickTextureData,
int);
212 vtkGetMacro(PickTextureData,
int);
221 virtual void ResetPickInfo();
227 virtual double IntersectActorWithLine(
const double p1[3],
const double p2[3],
228 double t1,
double t2,
double tol,
231 virtual double IntersectVolumeWithLine(
const double p1[3],
233 double t1,
double t2,
237 virtual double IntersectImageWithLine(
const double p1[3],
239 double t1,
double t2,
243 virtual double IntersectProp3DWithLine(
const double p1[3],
245 double t1,
double t2,
double tol,
251 const double p1[3],
const double p2[3],
252 double &t1,
double &t2,
int& planeId);
254 static int ClipLineWithExtent(
const int extent[6],
255 const double x1[3],
const double x2[3],
256 double &t1,
double &t2,
int &planeId);
259 const double *weights,
double normal[3]);
262 const double *weights,
double tcoord[3]);
264 static int HasSubCells(
int cellType);
273 void SetImageDataPickInfo(
const double x[3],
const int extent[6]);
275 double ComputeVolumeOpacity(
const int xi[3],
const double pcoords[3],
295 double PickNormal[3];
296 double MapperNormal[3];
302 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()
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)
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
CellTypeInDataSet cellType(vtkDataSet *input)
void PrintSelf(ostream &os, vtkIndent indent)
create and manipulate unsorted lists of objects
#define VTKRENDERINGCORE_EXPORT
ray-cast cell picker for all kinds of Prop3Ds