VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
vtkVolumePicker Class Reference

ray-cast picker enhanced for volumes More...

#include <vtkVolumePicker.h>

Inheritance diagram for vtkVolumePicker:
[legend]
Collaboration diagram for vtkVolumePicker:
[legend]

Public Types

typedef vtkCellPicker Superclass
 
- Public Types inherited from vtkCellPicker
typedef vtkPicker Superclass
 
- Public Types inherited from vtkPicker
typedef vtkAbstractPropPicker Superclass
 
- Public Types inherited from vtkAbstractPropPicker
typedef vtkAbstractPicker Superclass
 
- Public Types inherited from vtkAbstractPicker
typedef vtkObject Superclass
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkVolumePickerNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual void SetPickCroppingPlanes (int)
 
virtual void PickCroppingPlanesOn ()
 
virtual void PickCroppingPlanesOff ()
 
virtual int GetPickCroppingPlanes ()
 
virtual int GetCroppingPlaneId ()
 
- Public Member Functions inherited from vtkCellPicker
vtkCellPickerNewInstance () const
 
void AddLocator (vtkAbstractCellLocator *locator)
 
void RemoveLocator (vtkAbstractCellLocator *locator)
 
void RemoveAllLocators ()
 
vtkTextureGetTexture ()
 
virtual int Pick (double selectionX, double selectionY, double selectionZ, vtkRenderer *renderer)
 
virtual void SetVolumeOpacityIsovalue (double)
 
virtual double GetVolumeOpacityIsovalue ()
 
virtual void SetUseVolumeGradientOpacity (int)
 
virtual void UseVolumeGradientOpacityOn ()
 
virtual void UseVolumeGradientOpacityOff ()
 
virtual int GetUseVolumeGradientOpacity ()
 
virtual void SetPickClippingPlanes (int)
 
virtual void PickClippingPlanesOn ()
 
virtual void PickClippingPlanesOff ()
 
virtual int GetPickClippingPlanes ()
 
virtual int GetClippingPlaneId ()
 
virtual doubleGetPickNormal ()
 
virtual void GetPickNormal (double data[3])
 
virtual doubleGetMapperNormal ()
 
virtual void GetMapperNormal (double &, double &, double &)
 
virtual void GetMapperNormal (double[3])
 
virtual intGetPointIJK ()
 
virtual void GetPointIJK (int &, int &, int &)
 
virtual void GetPointIJK (int[3])
 
virtual intGetCellIJK ()
 
virtual void GetCellIJK (int &, int &, int &)
 
virtual void GetCellIJK (int[3])
 
virtual vtkIdType GetPointId ()
 
virtual vtkIdType GetCellId ()
 
virtual int GetSubId ()
 
virtual doubleGetPCoords ()
 
virtual void GetPCoords (double &, double &, double &)
 
virtual void GetPCoords (double[3])
 
virtual void SetPickTextureData (int)
 
virtual void PickTextureDataOn ()
 
virtual void PickTextureDataOff ()
 
virtual int GetPickTextureData ()
 
- Public Member Functions inherited from vtkPicker
vtkPickerNewInstance () const
 
vtkActorCollectionGetActors ()
 
virtual void SetTolerance (double)
 
virtual double GetTolerance ()
 
virtual doubleGetMapperPosition ()
 
virtual void GetMapperPosition (double data[3])
 
virtual vtkAbstractMapper3DGetMapper ()
 
virtual vtkDataSetGetDataSet ()
 
vtkProp3DCollectionGetProp3Ds ()
 
vtkPointsGetPickedPositions ()
 
int Pick (double selectionPt[3], vtkRenderer *ren)
 
- Public Member Functions inherited from vtkAbstractPropPicker
vtkAbstractPropPickerNewInstance () const
 
virtual vtkPropGetViewProp ()
 
virtual vtkProp3DGetProp3D ()
 
virtual vtkActorGetActor ()
 
virtual vtkActor2DGetActor2D ()
 
virtual vtkVolumeGetVolume ()
 
virtual vtkAssemblyGetAssembly ()
 
virtual vtkPropAssemblyGetPropAssembly ()
 
virtual void SetPath (vtkAssemblyPath *)
 
virtual vtkAssemblyPathGetPath ()
 
- Public Member Functions inherited from vtkAbstractPicker
vtkAbstractPickerNewInstance () const
 
void InitializePickList ()
 
void AddPickList (vtkProp *)
 
void DeletePickList (vtkProp *)
 
vtkPropCollectionGetPickList ()
 
virtual vtkRendererGetRenderer ()
 
virtual doubleGetSelectionPoint ()
 
virtual void GetSelectionPoint (double data[3])
 
virtual doubleGetPickPosition ()
 
virtual void GetPickPosition (double data[3])
 
int Pick (double selectionPt[3], vtkRenderer *ren)
 
virtual void SetPickFromList (int)
 
virtual int GetPickFromList ()
 
virtual void PickFromListOn ()
 
virtual void PickFromListOff ()
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
virtual unsigned long GetMTime ()
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 

Static Public Member Functions

static vtkVolumePickerNew ()
 
static int IsTypeOf (const char *type)
 
static vtkVolumePickerSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkCellPicker
static vtkCellPickerNew ()
 
static int IsTypeOf (const char *type)
 
static vtkCellPickerSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkPicker
static vtkPickerNew ()
 
static int IsTypeOf (const char *type)
 
static vtkPickerSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAbstractPropPicker
static int IsTypeOf (const char *type)
 
static vtkAbstractPropPickerSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAbstractPicker
static int IsTypeOf (const char *type)
 
static vtkAbstractPickerSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObjectBase *o)
 
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static int IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkVolumePicker ()
 
 ~vtkVolumePicker ()
 
virtual void ResetPickInfo ()
 
virtual double IntersectVolumeWithLine (const double p1[3], const double p2[3], double t1, double t2, vtkProp3D *prop, vtkAbstractVolumeMapper *mapper)
 
- Protected Member Functions inherited from vtkCellPicker
 vtkCellPicker ()
 
 ~vtkCellPicker ()
 
void Initialize ()
 
virtual double IntersectWithLine (double p1[3], double p2[3], double tol, vtkAssemblyPath *path, vtkProp3D *p, vtkAbstractMapper3D *m)
 
virtual double IntersectActorWithLine (const double p1[3], const double p2[3], double t1, double t2, double tol, vtkProp3D *prop, vtkMapper *mapper)
 
virtual double IntersectImageWithLine (const double p1[3], const double p2[3], double t1, double t2, vtkProp3D *prop, vtkImageMapper3D *mapper)
 
virtual double IntersectProp3DWithLine (const double p1[3], const double p2[3], double t1, double t2, double tol, vtkProp3D *prop, vtkAbstractMapper3D *mapper)
 
void SetImageDataPickInfo (const double x[3], const int extent[6])
 
double ComputeVolumeOpacity (const int xi[3], const double pcoords[3], vtkImageData *data, vtkDataArray *scalars, vtkPiecewiseFunction *scalarOpacity, vtkPiecewiseFunction *gradientOpacity)
 
- Protected Member Functions inherited from vtkPicker
 vtkPicker ()
 
 ~vtkPicker ()
 
void MarkPicked (vtkAssemblyPath *path, vtkProp3D *p, vtkAbstractMapper3D *m, double tMin, double mapperPos[3])
 
- Protected Member Functions inherited from vtkAbstractPropPicker
 vtkAbstractPropPicker ()
 
 ~vtkAbstractPropPicker ()
 
- Protected Member Functions inherited from vtkAbstractPicker
 vtkAbstractPicker ()
 
 ~vtkAbstractPicker ()
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
virtual void RegisterInternal (vtkObjectBase *, int check)
 
virtual void UnRegisterInternal (vtkObjectBase *, int check)
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

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)
 
- Static Protected Member Functions inherited from vtkCellPicker
static int ClipLineWithPlanes (vtkAbstractMapper3D *mapper, vtkMatrix4x4 *propMatrix, const double p1[3], const double p2[3], double &t1, double &t2, int &planeId)
 
static int ClipLineWithExtent (const int extent[6], const double x1[3], const double x2[3], double &t1, double &t2, int &planeId)
 
static int ComputeSurfaceNormal (vtkDataSet *data, vtkCell *cell, const double *weights, double normal[3])
 
static int ComputeSurfaceTCoord (vtkDataSet *data, vtkCell *cell, const double *weights, double tcoord[3])
 
static int HasSubCells (int cellType)
 
static int GetNumberOfSubCells (vtkIdList *pointIds, int cellType)
 
static void GetSubCell (vtkDataSet *data, vtkIdList *pointIds, int subId, int cellType, vtkGenericCell *cell)
 
static void SubCellFromCell (vtkGenericCell *cell, int subId)
 

Protected Attributes

int PickCroppingPlanes
 
int CroppingPlaneId
 
- Protected Attributes inherited from vtkCellPicker
vtkCollectionLocators
 
double VolumeOpacityIsovalue
 
int UseVolumeGradientOpacity
 
int PickClippingPlanes
 
int ClippingPlaneId
 
vtkIdType PointId
 
vtkIdType CellId
 
int SubId
 
double PCoords [3]
 
int PointIJK [3]
 
int CellIJK [3]
 
double PickNormal [3]
 
double MapperNormal [3]
 
vtkTextureTexture
 
int PickTextureData
 
- Protected Attributes inherited from vtkPicker
double Tolerance
 
double MapperPosition [3]
 
vtkAbstractMapper3DMapper
 
vtkDataSetDataSet
 
double GlobalTMin
 
vtkTransformTransform
 
vtkActorCollectionActors
 
vtkProp3DCollectionProp3Ds
 
vtkPointsPickedPositions
 
- Protected Attributes inherited from vtkAbstractPropPicker
vtkAssemblyPathPath
 
- Protected Attributes inherited from vtkAbstractPicker
vtkRendererRenderer
 
double SelectionPoint [3]
 
double PickPosition [3]
 
int PickFromList
 
vtkPropCollectionPickList
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

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 44 of file vtkVolumePicker.h.

Member Typedef Documentation

Definition at line 48 of file vtkVolumePicker.h.

Constructor & Destructor Documentation

vtkVolumePicker::vtkVolumePicker ( )
protected
vtkVolumePicker::~vtkVolumePicker ( )
protected

Member Function Documentation

static vtkVolumePicker* vtkVolumePicker::New ( )
static
static int vtkVolumePicker::IsTypeOf ( const char *  type)
static
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 ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkVolumePicker::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkCellPicker.

vtkVolumePicker* vtkVolumePicker::NewInstance ( ) const
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 ( )
protectedvirtual

Reimplemented from vtkCellPicker.

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

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 
)
staticprotected

Member Data Documentation

int vtkVolumePicker::PickCroppingPlanes
protected

Definition at line 91 of file vtkVolumePicker.h.

int vtkVolumePicker::CroppingPlaneId
protected

Definition at line 92 of file vtkVolumePicker.h.


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