vtkVolumePicker Class Reference

#include <vtkVolumePicker.h>

Inheritance diagram for vtkVolumePicker:

Inheritance graph
[legend]
Collaboration diagram for vtkVolumePicker:

Collaboration graph
[legend]

List of all members.


Detailed Description

ray-cast picker enhanced for volumes

vtkVolumePicker is a subclass of vtkCellPicker. It has one advantage over vtkCellPicker for volumes: it will be able to correctly perform picking when CroppingPlanes are present. This isn't possible for vtkCellPicker since it doesn't link to the VolumeRendering classes and hence cannot access information about the CroppingPlanes.

See also:
vtkPicker vtkPointPicker vtkCellPicker
Thanks:
This class was contributed to VTK by David Gobbi on behalf of Atamai Inc.
Examples:
vtkVolumePicker (Examples)
Tests:
vtkVolumePicker (Tests)

Definition at line 43 of file vtkVolumePicker.h.


Public Types

typedef vtkCellPicker Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void SetPickCroppingPlanes (int)
virtual void PickCroppingPlanesOn ()
virtual void PickCroppingPlanesOff ()
virtual int GetPickCroppingPlanes ()
virtual int GetCroppingPlaneId ()

Static Public Member Functions

static vtkVolumePickerNew ()
static int IsTypeOf (const char *type)
static vtkVolumePickerSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkVolumePicker ()
 ~vtkVolumePicker ()
virtual void ResetPickInfo ()
virtual double IntersectVolumeWithLine (const double p1[3], const double p2[3], double t1, double t2, vtkProp3D *prop, vtkAbstractVolumeMapper *mapper)

Static Protected Member Functions

static int ClipLineWithCroppingRegion (const double bounds[6], const int extent[6], int flags, const double x1[3], const double x2[3], double t1, double t2, int &extentPlaneId, int &numSegments, double *t1List, double *t2List, double *s1List, int *planeIdList)

Protected Attributes

int PickCroppingPlanes
int CroppingPlaneId

Member Typedef Documentation

Reimplemented from vtkCellPicker.

Definition at line 47 of file vtkVolumePicker.h.


Constructor & Destructor Documentation

vtkVolumePicker::vtkVolumePicker (  )  [protected]

vtkVolumePicker::~vtkVolumePicker (  )  [protected]


Member Function Documentation

static vtkVolumePicker* vtkVolumePicker::New (  )  [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkCellPicker.

virtual const char* vtkVolumePicker::GetClassName (  )  [virtual]

Reimplemented from vtkCellPicker.

static int vtkVolumePicker::IsTypeOf ( const char *  name  )  [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkCellPicker.

virtual int vtkVolumePicker::IsA ( const char *  name  )  [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkCellPicker.

static vtkVolumePicker* vtkVolumePicker::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkCellPicker.

void vtkVolumePicker::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkCellPicker.

virtual void vtkVolumePicker::SetPickCroppingPlanes ( int   )  [virtual]

Set whether to pick the cropping planes of props that have them. If this is set, then the pick will be done on the cropping planes rather than on the data. The GetCroppingPlaneId() method will return the index of the cropping plane of the volume that was picked. This setting is only relevant to the picking of volumes.

virtual void vtkVolumePicker::PickCroppingPlanesOn (  )  [virtual]

Set whether to pick the cropping planes of props that have them. If this is set, then the pick will be done on the cropping planes rather than on the data. The GetCroppingPlaneId() method will return the index of the cropping plane of the volume that was picked. This setting is only relevant to the picking of volumes.

virtual void vtkVolumePicker::PickCroppingPlanesOff (  )  [virtual]

Set whether to pick the cropping planes of props that have them. If this is set, then the pick will be done on the cropping planes rather than on the data. The GetCroppingPlaneId() method will return the index of the cropping plane of the volume that was picked. This setting is only relevant to the picking of volumes.

virtual int vtkVolumePicker::GetPickCroppingPlanes (  )  [virtual]

Set whether to pick the cropping planes of props that have them. If this is set, then the pick will be done on the cropping planes rather than on the data. The GetCroppingPlaneId() method will return the index of the cropping plane of the volume that was picked. This setting is only relevant to the picking of volumes.

virtual int vtkVolumePicker::GetCroppingPlaneId (  )  [virtual]

Get the index of the cropping plane that the pick ray passed through on its way to the prop. This will be set regardless of whether PickCroppingPlanes is on. The crop planes are ordered as follows: xmin, xmax, ymin, ymax, zmin, zmax. If the volume is not cropped, the value will bet set to -1.

virtual void vtkVolumePicker::ResetPickInfo (  )  [protected, virtual]

Reimplemented from vtkCellPicker.

virtual double vtkVolumePicker::IntersectVolumeWithLine ( const double  p1[3],
const double  p2[3],
double  t1,
double  t2,
vtkProp3D prop,
vtkAbstractVolumeMapper mapper 
) [protected, virtual]

Reimplemented from vtkCellPicker.

static int vtkVolumePicker::ClipLineWithCroppingRegion ( const double  bounds[6],
const int  extent[6],
int  flags,
const double  x1[3],
const double  x2[3],
double  t1,
double  t2,
int &  extentPlaneId,
int &  numSegments,
double *  t1List,
double *  t2List,
double *  s1List,
int *  planeIdList 
) [static, protected]


Member Data Documentation

Definition at line 90 of file vtkVolumePicker.h.

Definition at line 91 of file vtkVolumePicker.h.


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

Generated on Mon Sep 27 19:00:11 2010 for VTK by  doxygen 1.5.6