VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends
vtkImageMapper3D Class Reference

abstract class for mapping images to the screen More...

#include <vtkImageMapper3D.h>

Inheritance diagram for vtkImageMapper3D:
Inheritance graph
[legend]
Collaboration diagram for vtkImageMapper3D:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkAbstractMapper3D Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void Render (vtkRenderer *renderer, vtkImageSlice *prop)=0
virtual void ReleaseGraphicsResources (vtkWindow *)=0
void SetInput (vtkImageData *input)
vtkImageDataGetInput ()
vtkDataSetGetDataSetInput ()
vtkDataObjectGetDataObjectInput ()
virtual void SetBorder (int)
virtual void BorderOn ()
virtual void BorderOff ()
virtual int GetBorder ()
virtual void SetBackground (int)
virtual void BackgroundOn ()
virtual void BackgroundOff ()
virtual int GetBackground ()
virtual void SetSliceAtFocalPoint (int)
virtual void SliceAtFocalPointOn ()
virtual void SliceAtFocalPointOff ()
virtual int GetSliceAtFocalPoint ()
virtual void SetSliceFacesCamera (int)
virtual void SliceFacesCameraOn ()
virtual void SliceFacesCameraOff ()
virtual int GetSliceFacesCamera ()
virtual vtkPlaneGetSlicePlane ()
virtual void GetSlicePlaneInDataCoords (vtkMatrix4x4 *propMatrix, double plane[4])
virtual void SetNumberOfThreads (int)
virtual int GetNumberOfThreads ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkImageMapper3DSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkImageMapper3D ()
 ~vtkImageMapper3D ()
vtkRendererGetCurrentRenderer ()
vtkImageSliceGetCurrentProp ()
vtkMatrix4x4GetDataToWorldMatrix ()
void GetBackgroundColor (vtkImageProperty *property, double color[4])
virtual int FillInputPortInformation (int port, vtkInformation *info)
virtual int FillOutputPortInformation (int port, vtkInformation *info)
virtual int ProcessRequest (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
unsigned char * MakeTextureData (vtkImageProperty *property, vtkImageData *input, int extent[6], int &xsize, int &ysize, int &bytesPerPixel, bool &reuseTexture, bool &reuseData)
void MakeTextureGeometry (const int extent[6], double coords[12], double tcoords[8])
virtual void ComputeTextureSize (const int extent[6], int &xdim, int &ydim, int imageSize[2], int textureSize[2])

Static Protected Member Functions

static void CheckerboardRGBA (unsigned char *data, int xsize, int ysize, double originx, double originy, double spacingx, double spacingy)

Protected Attributes

int Border
int Background
vtkScalarsToColorsDefaultLookupTable
vtkMultiThreaderThreader
int NumberOfThreads
vtkPlaneSlicePlane
int SliceAtFocalPoint
int SliceFacesCamera
double DataSpacing [3]
double DataOrigin [3]
int DataWholeExtent [6]
bool MatteEnable
bool ColorEnable
bool DepthEnable

Friends

class vtkImageToImageMapper3DFriendship

Detailed Description

abstract class for mapping images to the screen

vtkImageMapper3D is a mapper that will draw a 2D image, or a slice of a 3D image. The slice plane can be set automatically follow the camera, so that it slices through the focal point and faces the camera.

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:
vtkImage vtkImageProperty vtkImageResliceMapper vtkImageSliceMapper
Tests:
vtkImageMapper3D (Tests)

Definition at line 48 of file vtkImageMapper3D.h.


Member Typedef Documentation


Constructor & Destructor Documentation

vtkImageMapper3D::vtkImageMapper3D ( ) [protected]
vtkImageMapper3D::~vtkImageMapper3D ( ) [protected]

Member Function Documentation

virtual const char* vtkImageMapper3D::GetClassName ( ) [virtual]
static int vtkImageMapper3D::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 vtkAbstractMapper3D.

Reimplemented in vtkImageResliceMapper, vtkImageSliceMapper, vtkMesaImageSliceMapper, and vtkOpenGLImageSliceMapper.

virtual int vtkImageMapper3D::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 vtkAbstractMapper3D.

Reimplemented in vtkImageResliceMapper, vtkImageSliceMapper, vtkMesaImageSliceMapper, and vtkOpenGLImageSliceMapper.

static vtkImageMapper3D* vtkImageMapper3D::SafeDownCast ( vtkObject o) [static]
void vtkImageMapper3D::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 vtkAbstractMapper3D.

Reimplemented in vtkImageResliceMapper, vtkImageSliceMapper, vtkMesaImageSliceMapper, and vtkOpenGLImageSliceMapper.

virtual void vtkImageMapper3D::Render ( vtkRenderer renderer,
vtkImageSlice prop 
) [pure virtual]

This should only be called by the renderer.

Implemented in vtkImageResliceMapper, vtkImageSliceMapper, vtkMesaImageSliceMapper, and vtkOpenGLImageSliceMapper.

virtual void vtkImageMapper3D::ReleaseGraphicsResources ( vtkWindow ) [pure virtual]

Release any graphics resources that are being consumed by this mapper. The parameter window is used to determine which graphic resources to release.

Reimplemented from vtkAbstractMapper.

Implemented in vtkImageResliceMapper, vtkImageSliceMapper, vtkMesaImageSliceMapper, and vtkOpenGLImageSliceMapper.

void vtkImageMapper3D::SetInput ( vtkImageData input)

The input data for this mapper.

vtkImageData* vtkImageMapper3D::GetInput ( )

The input data for this mapper.

vtkDataSet* vtkImageMapper3D::GetDataSetInput ( )

The input data for this mapper.

vtkDataObject* vtkImageMapper3D::GetDataObjectInput ( )

The input data for this mapper.

virtual void vtkImageMapper3D::SetBorder ( int  ) [virtual]

Instead of displaying the image only out to the image bounds, include a half-voxel border around the image. Within this border, the image values will be extrapolated rather than interpolated.

virtual void vtkImageMapper3D::BorderOn ( ) [virtual]

Instead of displaying the image only out to the image bounds, include a half-voxel border around the image. Within this border, the image values will be extrapolated rather than interpolated.

virtual void vtkImageMapper3D::BorderOff ( ) [virtual]

Instead of displaying the image only out to the image bounds, include a half-voxel border around the image. Within this border, the image values will be extrapolated rather than interpolated.

virtual int vtkImageMapper3D::GetBorder ( ) [virtual]

Instead of displaying the image only out to the image bounds, include a half-voxel border around the image. Within this border, the image values will be extrapolated rather than interpolated.

virtual void vtkImageMapper3D::SetBackground ( int  ) [virtual]

Instead of rendering only to the image border, render out to the viewport boundary with the background color. The background color will be the lowest color on the lookup table that is being used for the image.

virtual void vtkImageMapper3D::BackgroundOn ( ) [virtual]

Instead of rendering only to the image border, render out to the viewport boundary with the background color. The background color will be the lowest color on the lookup table that is being used for the image.

virtual void vtkImageMapper3D::BackgroundOff ( ) [virtual]

Instead of rendering only to the image border, render out to the viewport boundary with the background color. The background color will be the lowest color on the lookup table that is being used for the image.

virtual int vtkImageMapper3D::GetBackground ( ) [virtual]

Instead of rendering only to the image border, render out to the viewport boundary with the background color. The background color will be the lowest color on the lookup table that is being used for the image.

virtual void vtkImageMapper3D::SetSliceAtFocalPoint ( int  ) [virtual]

Automatically set the slice position to the camera focal point. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual void vtkImageMapper3D::SliceAtFocalPointOn ( ) [virtual]

Automatically set the slice position to the camera focal point. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual void vtkImageMapper3D::SliceAtFocalPointOff ( ) [virtual]

Automatically set the slice position to the camera focal point. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual int vtkImageMapper3D::GetSliceAtFocalPoint ( ) [virtual]

Automatically set the slice position to the camera focal point. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual void vtkImageMapper3D::SetSliceFacesCamera ( int  ) [virtual]

Automatically set the slice orientation so that it faces the camera. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual void vtkImageMapper3D::SliceFacesCameraOn ( ) [virtual]

Automatically set the slice orientation so that it faces the camera. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual void vtkImageMapper3D::SliceFacesCameraOff ( ) [virtual]

Automatically set the slice orientation so that it faces the camera. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual int vtkImageMapper3D::GetSliceFacesCamera ( ) [virtual]

Automatically set the slice orientation so that it faces the camera. This provides a convenient way to interact with the image, since most Interactors directly control the camera.

virtual vtkPlane* vtkImageMapper3D::GetSlicePlane ( ) [virtual]

A plane that describes what slice of the input is being rendered by the mapper. This plane is in world coordinates, not data coordinates. Before using this plane, call Update or UpdateInformation to make sure the plane is up-to-date. These methods are automatically called by Render.

virtual void vtkImageMapper3D::GetSlicePlaneInDataCoords ( vtkMatrix4x4 propMatrix,
double  plane[4] 
) [virtual]

Get the plane as a homogeneous 4-vector that gives the plane equation coefficients. The prop3D matrix must be provided so that the plane can be converted to data coords.

Reimplemented in vtkImageSliceMapper.

virtual void vtkImageMapper3D::SetNumberOfThreads ( int  ) [virtual]

The number of threads to create when rendering.

virtual int vtkImageMapper3D::GetNumberOfThreads ( ) [virtual]

The number of threads to create when rendering.

virtual int vtkImageMapper3D::FillInputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

See algorithm for more info

Reimplemented from vtkAlgorithm.

virtual int vtkImageMapper3D::FillOutputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

See algorithm for more info

Reimplemented from vtkAlgorithm.

virtual int vtkImageMapper3D::ProcessRequest ( vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo 
) [protected, virtual]

Handle requests from the pipeline executive.

Reimplemented from vtkAlgorithm.

Reimplemented in vtkImageResliceMapper, and vtkImageSliceMapper.

static void vtkImageMapper3D::CheckerboardRGBA ( unsigned char *  data,
int  xsize,
int  ysize,
double  originx,
double  originy,
double  spacingx,
double  spacingy 
) [static, protected]

Checkerboard the alpha component of an RGBA image. The origin and spacing are in pixel units.

unsigned char* vtkImageMapper3D::MakeTextureData ( vtkImageProperty property,
vtkImageData input,
int  extent[6],
int xsize,
int ysize,
int bytesPerPixel,
bool &  reuseTexture,
bool &  reuseData 
) [protected]

Perform window/level and color mapping operations to produce unsigned char data that can be used as a texture. See the source file for more information.

void vtkImageMapper3D::MakeTextureGeometry ( const int  extent[6],
double  coords[12],
double  tcoords[8] 
) [protected]

Compute the coordinates and texture coordinates for the image, given an extent that describes a single slice.

virtual void vtkImageMapper3D::ComputeTextureSize ( const int  extent[6],
int xdim,
int ydim,
int  imageSize[2],
int  textureSize[2] 
) [protected, virtual]

Given an extent that describes a slice (it must have unit thickness in one of the three directions), return the dimension indices that correspond to the texture "x" and "y", provide the x, y image size, and provide the texture size (padded to a power of two if the hardware requires).

Reimplemented in vtkOpenGLImageSliceMapper, and vtkMesaImageSliceMapper.

vtkRenderer* vtkImageMapper3D::GetCurrentRenderer ( ) [protected]

Get the renderer associated with this mapper, or zero if none. This will raise an error if multiple renderers are found.

vtkImageSlice* vtkImageMapper3D::GetCurrentProp ( ) [inline, protected]

Get the vtkImage prop associated with this mapper, or zero if none.

Definition at line 188 of file vtkImageMapper3D.h.

vtkMatrix4x4* vtkImageMapper3D::GetDataToWorldMatrix ( ) [protected]

Get the data-to-world matrix for this mapper, according to the assembly path for its prop.

void vtkImageMapper3D::GetBackgroundColor ( vtkImageProperty property,
double  color[4] 
) [protected]

Get the background color, by using the first color in the supplied lookup table, or black if there is no lookup table.


Friends And Related Function Documentation

friend class vtkImageToImageMapper3DFriendship [friend]

Definition at line 230 of file vtkImageMapper3D.h.


Member Data Documentation

Definition at line 198 of file vtkImageMapper3D.h.

Definition at line 199 of file vtkImageMapper3D.h.

Definition at line 200 of file vtkImageMapper3D.h.

Definition at line 201 of file vtkImageMapper3D.h.

Definition at line 202 of file vtkImageMapper3D.h.

Definition at line 205 of file vtkImageMapper3D.h.

Definition at line 206 of file vtkImageMapper3D.h.

Definition at line 207 of file vtkImageMapper3D.h.

Definition at line 210 of file vtkImageMapper3D.h.

Definition at line 211 of file vtkImageMapper3D.h.

Definition at line 212 of file vtkImageMapper3D.h.

Definition at line 215 of file vtkImageMapper3D.h.

Definition at line 216 of file vtkImageMapper3D.h.

Definition at line 217 of file vtkImageMapper3D.h.


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