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

manages a stack of composited images More...

#include <vtkImageStack.h>

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

Public Types

typedef vtkImageSlice Superclass
 
- Public Types inherited from vtkImageSlice
typedef vtkProp3D Superclass
 
- Public Types inherited from vtkProp3D
typedef vtkProp Superclass
 
- Public Types inherited from vtkProp
typedef vtkObject Superclass
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkImageStackNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void AddImage (vtkImageSlice *prop)
 
void RemoveImage (vtkImageSlice *prop)
 
int HasImage (vtkImageSlice *prop)
 
vtkImageSliceCollectionGetImages ()
 
vtkImageSliceGetActiveImage ()
 
vtkImageMapper3DGetMapper ()
 
vtkImagePropertyGetProperty ()
 
unsigned long int GetMTime ()
 
unsigned long GetRedrawMTime ()
 
void ShallowCopy (vtkProp *prop)
 
void GetImages (vtkPropCollection *)
 
virtual int HasTranslucentPolygonalGeometry ()
 
void ReleaseGraphicsResources (vtkWindow *win)
 
void BuildPaths (vtkAssemblyPaths *paths, vtkAssemblyPath *path)
 
virtual void SetActiveLayer (int)
 
int GetActiveLayer ()
 
doubleGetBounds ()
 
void GetBounds (double bounds[6])
 
virtual int RenderOverlay (vtkViewport *viewport)
 
virtual int RenderOpaqueGeometry (vtkViewport *viewport)
 
virtual int RenderTranslucentPolygonalGeometry (vtkViewport *viewport)
 
void InitPathTraversal ()
 
vtkAssemblyPathGetNextPath ()
 
int GetNumberOfPaths ()
 
- Public Member Functions inherited from vtkImageSlice
vtkImageSliceNewInstance () const
 
void Update ()
 
void GetImages (vtkPropCollection *)
 
virtual void Render (vtkRenderer *)
 
void SetStackedImagePass (int pass)
 
void SetMapper (vtkImageMapper3D *mapper)
 
void SetProperty (vtkImageProperty *property)
 
void GetBounds (double bounds[6])
 
double GetMinXBound ()
 
double GetMaxXBound ()
 
double GetMinYBound ()
 
double GetMaxYBound ()
 
double GetMinZBound ()
 
double GetMaxZBound ()
 
- Public Member Functions inherited from vtkProp3D
vtkProp3DNewInstance () const
 
virtual void SetPosition (double pos[3])
 
virtual doubleGetPosition ()
 
virtual void GetPosition (double data[3])
 
void AddPosition (double deltaPosition[3])
 
void AddPosition (double deltaX, double deltaY, double deltaZ)
 
doubleGetCenter ()
 
doubleGetXRange ()
 
doubleGetYRange ()
 
doubleGetZRange ()
 
double GetLength ()
 
void RotateX (double)
 
void RotateY (double)
 
void RotateZ (double)
 
void RotateWXYZ (double w, double x, double y, double z)
 
void SetOrientation (double x, double y, double z)
 
void SetOrientation (double orientation[3])
 
doubleGetOrientationWXYZ ()
 
void AddOrientation (double x, double y, double z)
 
void AddOrientation (double orentation[3])
 
void PokeMatrix (vtkMatrix4x4 *matrix)
 
unsigned long int GetUserTransformMatrixMTime ()
 
virtual void ComputeMatrix ()
 
virtual void SetPosition (double x, double y, double z)
 
virtual void SetOrigin (double x, double y, double z)
 
virtual void SetOrigin (const double pos[3])
 
virtual doubleGetOrigin ()
 
virtual void GetOrigin (double data[3])
 
virtual void SetScale (double x, double y, double z)
 
virtual void SetScale (double scale[3])
 
virtual doubleGetScale ()
 
virtual void GetScale (double data[3])
 
void SetScale (double s)
 
void SetUserTransform (vtkLinearTransform *transform)
 
virtual vtkLinearTransformGetUserTransform ()
 
void SetUserMatrix (vtkMatrix4x4 *matrix)
 
vtkMatrix4x4GetUserMatrix ()
 
virtual void GetMatrix (vtkMatrix4x4 *m)
 
virtual void GetMatrix (double m[16])
 
void GetBounds (double bounds[6])
 
doubleGetOrientation ()
 
void GetOrientation (double orentation[3])
 
vtkMatrix4x4GetMatrix ()
 
virtual int GetIsIdentity ()
 
- Public Member Functions inherited from vtkProp
vtkPropNewInstance () const
 
virtual void Pick ()
 
virtual bool HasKeys (vtkInformation *requiredKeys)
 
virtual void GetActors (vtkPropCollection *)
 
virtual void GetActors2D (vtkPropCollection *)
 
virtual void GetVolumes (vtkPropCollection *)
 
virtual void SetVisibility (int)
 
virtual int GetVisibility ()
 
virtual void VisibilityOn ()
 
virtual void VisibilityOff ()
 
virtual void SetPickable (int)
 
virtual int GetPickable ()
 
virtual void PickableOn ()
 
virtual void PickableOff ()
 
virtual void SetDragable (int)
 
virtual int GetDragable ()
 
virtual void DragableOn ()
 
virtual void DragableOff ()
 
virtual void SetUseBounds (bool)
 
virtual bool GetUseBounds ()
 
virtual void UseBoundsOn ()
 
virtual void UseBoundsOff ()
 
virtual void PokeMatrix (vtkMatrix4x4 *vtkNotUsed(matrix))
 
virtual vtkInformationGetPropertyKeys ()
 
virtual void SetPropertyKeys (vtkInformation *keys)
 
virtual int RenderVolumetricGeometry (vtkViewport *)
 
virtual bool RenderFilteredOpaqueGeometry (vtkViewport *v, vtkInformation *requiredKeys)
 
virtual bool RenderFilteredTranslucentPolygonalGeometry (vtkViewport *v, vtkInformation *requiredKeys)
 
virtual bool RenderFilteredVolumetricGeometry (vtkViewport *v, vtkInformation *requiredKeys)
 
virtual bool RenderFilteredOverlay (vtkViewport *v, vtkInformation *requiredKeys)
 
virtual double GetEstimatedRenderTime (vtkViewport *)
 
virtual double GetEstimatedRenderTime ()
 
virtual void SetEstimatedRenderTime (double t)
 
virtual void RestoreEstimatedRenderTime ()
 
virtual void AddEstimatedRenderTime (double t, vtkViewport *vtkNotUsed(vp))
 
virtual void SetAllocatedRenderTime (double t, vtkViewport *vtkNotUsed(v))
 
virtual double GetAllocatedRenderTime ()
 
void SetRenderTimeMultiplier (double t)
 
virtual double GetRenderTimeMultiplier ()
 
virtual bool GetSupportsSelection ()
 
virtual int GetNumberOfConsumers ()
 
void AddConsumer (vtkObject *c)
 
void RemoveConsumer (vtkObject *c)
 
vtkObjectGetConsumer (int i)
 
int IsConsumer (vtkObject *c)
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
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 int IsTypeOf (const char *type)
 
static vtkImageStackSafeDownCast (vtkObjectBase *o)
 
static vtkImageStackNew ()
 
- Static Public Member Functions inherited from vtkImageSlice
static int IsTypeOf (const char *type)
 
static vtkImageSliceSafeDownCast (vtkObjectBase *o)
 
static vtkImageSliceNew ()
 
- Static Public Member Functions inherited from vtkProp3D
static int IsTypeOf (const char *type)
 
static vtkProp3DSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkProp
static int IsTypeOf (const char *type)
 
static vtkPropSafeDownCast (vtkObjectBase *o)
 
static vtkInformationIntegerKeyGeneralTextureUnit ()
 
static vtkInformationDoubleVectorKeyGeneralTextureTransform ()
 
- 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
 
 vtkImageStack ()
 
 ~vtkImageStack ()
 
void SetMapper (vtkImageMapper3D *mapper)
 
void SetProperty (vtkImageProperty *property)
 
void PokeMatrices (vtkMatrix4x4 *matrix)
 
void UpdatePaths ()
 
- Protected Member Functions inherited from vtkImageSlice
 vtkImageSlice ()
 
 ~vtkImageSlice ()
 
- Protected Member Functions inherited from vtkProp3D
 vtkProp3D ()
 
 ~vtkProp3D ()
 
- Protected Member Functions inherited from vtkProp
 vtkProp ()
 
 ~vtkProp ()
 
- 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 &)
 

Protected Attributes

vtkTimeStamp PathTime
 
vtkCollectionImageMatrices
 
vtkImageSliceCollectionImages
 
int ActiveLayer
 
- Protected Attributes inherited from vtkImageSlice
vtkImageMapper3DMapper
 
vtkImagePropertyProperty
 
- Protected Attributes inherited from vtkProp3D
vtkLinearTransformUserTransform
 
vtkMatrix4x4UserMatrix
 
vtkMatrix4x4Matrix
 
vtkTimeStamp MatrixMTime
 
double Origin [3]
 
double Position [3]
 
double Orientation [3]
 
double Scale [3]
 
double Center [3]
 
vtkTransformTransform
 
double Bounds [6]
 
vtkProp3DCachedProp3D
 
int IsIdentity
 
- Protected Attributes inherited from vtkProp
int Visibility
 
int Pickable
 
int Dragable
 
bool UseBounds
 
double AllocatedRenderTime
 
double EstimatedRenderTime
 
double SavedEstimatedRenderTime
 
double RenderTimeMultiplier
 
int NumberOfConsumers
 
vtkObject ** Consumers
 
vtkAssemblyPathsPaths
 
vtkInformationPropertyKeys
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

manages a stack of composited images

vtkImageStack manages the compositing of a set of images. Each image is assigned a layer number through its property object, and it is this layer number that determines the compositing order: images with a higher layer number are drawn over top of images with a lower layer number. The image stack has a SetActiveLayer method for controlling which layer to use for interaction and picking.

Thanks:
Thanks to David Gobbi at the Seaman Family MR Centre and Dept. of Clinical Neurosciences, Foothills Medical Centre, Calgary, for providing this class.
See also
vtkImageMapper3D vtkImageProperty vtkProp3D
Tests:
vtkImageStack (Tests)

Definition at line 45 of file vtkImageStack.h.

Member Typedef Documentation

Definition at line 48 of file vtkImageStack.h.

Constructor & Destructor Documentation

vtkImageStack::vtkImageStack ( )
protected
vtkImageStack::~vtkImageStack ( )
protected

Member Function Documentation

static int vtkImageStack::IsTypeOf ( const char *  type)
static
virtual int vtkImageStack::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 vtkImageSlice.

static vtkImageStack* vtkImageStack::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkImageStack::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkImageSlice.

vtkImageStack* vtkImageStack::NewInstance ( ) const
void vtkImageStack::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 vtkImageSlice.

static vtkImageStack* vtkImageStack::New ( )
static
void vtkImageStack::AddImage ( vtkImageSlice prop)

Add an image to the stack. If the image is already present, then this method will do nothing.

void vtkImageStack::RemoveImage ( vtkImageSlice prop)

Remove an image from the stack. If the image is not present, then this method will do nothing.

int vtkImageStack::HasImage ( vtkImageSlice prop)

Check if an image is present. The returned value is one or zero.

vtkImageSliceCollection* vtkImageStack::GetImages ( )
inline

Get the list of images as a vtkImageSliceCollection.

Definition at line 64 of file vtkImageStack.h.

virtual void vtkImageStack::SetActiveLayer ( int  )
virtual

Set the active layer number. This is the layer that will be used for picking and interaction.

int vtkImageStack::GetActiveLayer ( )
inline

Set the active layer number. This is the layer that will be used for picking and interaction.

Definition at line 70 of file vtkImageStack.h.

vtkImageSlice* vtkImageStack::GetActiveImage ( )

Get the active image. This will be the topmost image whose LayerNumber is the ActiveLayer. If no image matches, then NULL will be returned.

vtkImageMapper3D* vtkImageStack::GetMapper ( )
virtual

Get the mapper for the currently active image.

Reimplemented from vtkImageSlice.

vtkImageProperty* vtkImageStack::GetProperty ( )
virtual

Get the property for the currently active image.

Reimplemented from vtkImageSlice.

double* vtkImageStack::GetBounds ( )
virtual

Get the combined bounds of all of the images.

Reimplemented from vtkImageSlice.

void vtkImageStack::GetBounds ( double  bounds[6])
inline

Get the combined bounds of all of the images.

Definition at line 87 of file vtkImageStack.h.

unsigned long int vtkImageStack::GetMTime ( )
virtual

Return the max MTime of all the images.

Reimplemented from vtkImageSlice.

unsigned long vtkImageStack::GetRedrawMTime ( )
virtual

Return the mtime of anything that would cause the rendered image to appear differently. Usually this involves checking the mtime of the prop plus anything else it depends on such as properties, mappers, etc.

Reimplemented from vtkImageSlice.

void vtkImageStack::ShallowCopy ( vtkProp prop)
virtual

Shallow copy of this prop. Overloads the virtual vtkProp method.

Reimplemented from vtkImageSlice.

void vtkImageStack::GetImages ( vtkPropCollection )

For some exporters and other other operations we must be able to collect all the actors, volumes, and images. These methods are used in that process.

virtual int vtkImageStack::RenderOverlay ( vtkViewport viewport)
virtual

Support the standard render methods.

Reimplemented from vtkImageSlice.

virtual int vtkImageStack::RenderOpaqueGeometry ( vtkViewport viewport)
virtual

Support the standard render methods.

Reimplemented from vtkImageSlice.

virtual int vtkImageStack::RenderTranslucentPolygonalGeometry ( vtkViewport viewport)
virtual

Support the standard render methods.

Reimplemented from vtkImageSlice.

virtual int vtkImageStack::HasTranslucentPolygonalGeometry ( )
virtual

Does this prop have some translucent polygonal geometry?

Reimplemented from vtkImageSlice.

void vtkImageStack::ReleaseGraphicsResources ( vtkWindow win)
virtual

Release any resources held by this prop.

Reimplemented from vtkImageSlice.

void vtkImageStack::InitPathTraversal ( )
virtual

Methods for traversing the stack as if it was an assembly. The traversal only gives the view prop for the active layer.

Reimplemented from vtkProp3D.

vtkAssemblyPath* vtkImageStack::GetNextPath ( )
virtual

Methods for traversing the stack as if it was an assembly. The traversal only gives the view prop for the active layer.

Reimplemented from vtkProp.

int vtkImageStack::GetNumberOfPaths ( )
virtual

Methods for traversing the stack as if it was an assembly. The traversal only gives the view prop for the active layer.

Reimplemented from vtkProp.

void vtkImageStack::BuildPaths ( vtkAssemblyPaths paths,
vtkAssemblyPath path 
)
virtual

WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS Used to construct assembly paths and perform part traversal.

Reimplemented from vtkProp.

void vtkImageStack::SetMapper ( vtkImageMapper3D mapper)
protected
void vtkImageStack::SetProperty ( vtkImageProperty property)
protected
void vtkImageStack::PokeMatrices ( vtkMatrix4x4 matrix)
protected
void vtkImageStack::UpdatePaths ( )
protected

Member Data Documentation

vtkTimeStamp vtkImageStack::PathTime
protected

Definition at line 143 of file vtkImageStack.h.

vtkCollection* vtkImageStack::ImageMatrices
protected

Definition at line 144 of file vtkImageStack.h.

vtkImageSliceCollection* vtkImageStack::Images
protected

Definition at line 145 of file vtkImageStack.h.

int vtkImageStack::ActiveLayer
protected

Definition at line 146 of file vtkImageStack.h.


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