Main Page   Class Hierarchy   Alphabetical List   Compound List   Compound Members   Related Pages  

vtkImageData Class Reference

topologically and geometrically regular array of data. More...

#include <vtkImageData.h>

Inheritance diagram for vtkImageData:

Inheritance graph
[legend]
Collaboration diagram for vtkImageData:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
vtkDataObjectMakeObject ()
void CopyStructure (vtkDataSet *ds)
int GetDataObjectType ()
void UpdateData ()
int GetNumberOfCells ()
int GetNumberOfPoints ()
float * GetPoint (int ptId)
void GetPoint (int id, float x[3])
vtkCellGetCell (int cellId)
void GetCell (int cellId, vtkGenericCell *cell)
void GetCellBounds (int cellId, float bounds[6])
int FindPoint (float x, float y, float z)
int FindPoint (float x[3])
int FindCell (float x[3], vtkCell *cell, int cellId, float tol2, int &subId, float pcoords[3], float *weights)
int FindCell (float x[3], vtkCell *cell, vtkGenericCell *gencell, int cellId, float tol2, int &subId, float pcoords[3], float *weights)
vtkCellFindAndGetCell (float x[3], vtkCell *cell, int cellId, float tol2, int &subId, float pcoords[3], float *weights)
int GetCellType (int cellId)
void GetCellPoints (int cellId, vtkIdList *ptIds)
void GetPointCells (int ptId, vtkIdList *cellIds)
void ComputeBounds ()
int GetMaxCellSize ()
void SetDimensions (int i, int j, int k)
void SetDimensions (int dims[3])
int * GetDimensions ()
void GetDimensions (int dims[3])
int ComputeStructuredCoordinates (float x[3], int ijk[3], float pcoords[3])
void GetVoxelGradient (int i, int j, int k, vtkScalars *s, vtkVectors *g)
void GetPointGradient (int i, int j, int k, vtkScalars *s, float g[3])
int GetDataDimension ()
int ComputePointId (int ijk[3])
int ComputeCellId (int ijk[3])
void SetAxisUpdateExtent (int axis, int min, int max)
void GetAxisUpdateExtent (int axis, int &min, int &max)
void SetUpdateExtent (int piece, int numPieces, int ghostLevel)
void SetUpdateExtent (int piece, int numPieces)
void SetUpdateExtent (int x1, int x2, int y1, int y2, int z1, int z2)
void SetUpdateExtent (int ext[6])
void SetExtent (int extent[6])
void SetExtent (int x1, int x2, int y1, int y2, int z1, int z2)
virtual int * GetExtent ()
virtual void GetExtent (int &, int &, int &, int &, int &, int &)
virtual void GetExtent (int[6])
virtual unsigned long GetEstimatedMemorySize ()
double GetScalarTypeMin ()
double GetScalarTypeMax ()
int GetScalarSize ()
int * GetIncrements ()
void GetIncrements (int &incX, int &incY, int &incZ)
void GetIncrements (int inc[3])
void GetContinuousIncrements (int extent[6], int &incX, int &incY, int &incZ)
void * GetScalarPointerForExtent (int coordinates[6])
void * GetScalarPointer (int coordinates[3])
void * GetScalarPointer (int x, int y, int z)
void * GetScalarPointer ()
float GetScalarComponentAsFloat (int x, int y, int z, int component)
void AllocateScalars ()
void CopyAndCastFrom (vtkImageData *inData, int extent[6])
vtkImageToStructuredPointsMakeImageToStructuredPoints ()
unsigned long GetActualMemorySize ()
virtual void SetSpacing (float, float, float)
virtual void SetSpacing (float[3])
virtual float * GetSpacing ()
virtual void GetSpacing (float &, float &, float &)
virtual void GetSpacing (float[3])
virtual void SetOrigin (float, float, float)
virtual void SetOrigin (float[3])
virtual float * GetOrigin ()
virtual void GetOrigin (float &, float &, float &)
virtual void GetOrigin (float[3])
virtual void SetScalarType (int)
int GetScalarType ()
void SetNumberOfScalarComponents (int n)
virtual int GetNumberOfScalarComponents ()
void CopyTypeSpecificInformation (vtkDataObject *image)
virtual void PrepareForNewData ()
void ShallowCopy (vtkDataObject *src)
void DeepCopy (vtkDataObject *src)
void GetCellPoints (int cellId, vtkIdList &ptIds)
void GetPointCells (int ptId, vtkIdList &cellIds)
void GetVoxelGradient (int i, int j, int k, vtkScalars *s, vtkVectors &g)
vtkImageData * UpdateAndReturnData ()

Static Public Methods

vtkImageData * New ()
int IsTypeOf (const char *type)
vtkImageData * SafeDownCast (vtkObject *o)

Protected Methods

 vtkImageData ()
 ~vtkImageData ()
 vtkImageData (const vtkImageData &)
void operator= (const vtkImageData &)
int GetExtentType ()
void ComputeIncrements ()

Protected Attributes

vtkImageToStructuredPointsImageToStructuredPoints
vtkVertexVertex
vtkLineLine
vtkPixelPixel
vtkVoxelVoxel
int Dimensions [3]
int DataDescription
int Increments [3]
float Origin [3]
float Spacing [3]
int ScalarType
int NumberOfScalarComponents

Detailed Description

topologically and geometrically regular array of data.

Date:
2000/12/12 20:04:30
Revision:
1.80

vtkImageData is a data object that is a concrete implementation of vtkDataSet. vtkImageData represents a geometric structure that is a topological and geometrical regular array of points. Examples include volumes (voxel data) and pixmaps.


Member Function Documentation

void vtkImageData::AllocateScalars  
 

Allocate the vtkScalars object associated with this object.

void vtkImageData::ComputeBounds   [virtual]
 

Compute the data bounding box from data points. THIS METHOD IS NOT THREAD SAFE.

Reimplemented from vtkDataSet.

int vtkImageData::ComputeCellId int    ijk[3] [inline]
 

Given a location in structured coordinates (i-j-k), return the cell id.

int vtkImageData::ComputePointId int    ijk[3] [inline]
 

Given a location in structured coordinates (i-j-k), return the point id.

int vtkImageData::ComputeStructuredCoordinates float    x[3],
int    ijk[3],
float    pcoords[3]
 

Convenience function computes the structured coordinates for a point x[3]. The voxel is specified by the array ijk[3], and the parametric coordinates in the cell are specified with pcoords[3]. The function returns a 0 if the point x is outside of the volume, and a 1 if inside the volume.

void vtkImageData::CopyAndCastFrom vtkImageData *    inData,
int    extent[6]
 

This method is passed a input and output region, and executes the filter algorithm to fill the output from the input. It just executes a switch statement to call the correct function for the regions data types.

void vtkImageData::CopyStructure vtkDataSet   ds [virtual]
 

Copy the geometric and topological structure of an input image data object.

Implements vtkDataSet.

void vtkImageData::CopyTypeSpecificInformation vtkDataObject   image [virtual]
 

By default, there is no type specific information

Reimplemented from vtkDataObject.

vtkCell* vtkImageData::FindAndGetCell float    x[3],
vtkCell   cell,
int    cellId,
float    tol2,
int &    subId,
float    pcoords[3],
float *    weights
[virtual]
 

Locate the cell that contains a point and return the cell. Also returns the subcell id, parametric coordinates and weights for subsequent interpolation. This method combines the derived class methods int FindCell and vtkCell *GetCell. Derived classes may provide a more efficient implementation. See for example vtkStructuredPoints. THIS METHOD IS NOT THREAD SAFE.

Reimplemented from vtkDataSet.

int vtkImageData::FindCell float    x[3],
vtkCell   cell,
vtkGenericCell   gencell,
int    cellId,
float    tol2,
int &    subId,
float    pcoords[3],
float *    weights
[virtual]
 

This is a version of the above method that can be used with multithreaded applications. A vtkGenericCell must be passes in to be used in internal calls that might be made to GetCell() THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Implements vtkDataSet.

int vtkImageData::FindCell float    x[3],
vtkCell   cell,
int    cellId,
float    tol2,
int &    subId,
float    pcoords[3],
float *    weights
[virtual]
 

Locate cell based on global coordinate x and tolerance squared. If cell and cellId is non-NULL, then search starts from this cell and looks at immediate neighbors. Returns cellId >= 0 if inside, < 0 otherwise. The parametric coordinates are provided in pcoords[3]. The interpolation weights are returned in weights[]. (The number of weights is equal to the number of points in the found cell). Tolerance is used to control how close the point is to be considered "in" the cell. THIS METHOD IS NOT THREAD SAFE.

Implements vtkDataSet.

int vtkImageData::FindPoint float    x,
float    y,
float    z
[inline]
 

Locate the closest point to the global coordinate x. Return the point id. If point id < 0; then no point found. (This may arise when point is outside of dataset.) THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Reimplemented from vtkDataSet.

unsigned long vtkImageData::GetActualMemorySize   [virtual]
 

Return the actual size of the data in kilobytes. This number is valid only after the pipeline has updated. The memory size returned is guaranteed to be greater than or equal to the memory required to represent the data (e.g., extra space in arrays, etc. are not included in the return value). THIS METHOD IS THREAD SAFE.

Reimplemented from vtkDataSet.

void vtkImageData::GetCell int    cellId,
vtkGenericCell   cell
[virtual]
 

Get cell with cellId such that: 0 <= cellId < NumberOfCells. This is a thread-safe alternative to the previous GetCell() method. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Implements vtkDataSet.

vtkCell* vtkImageData::GetCell int    cellId [virtual]
 

Get cell with cellId such that: 0 <= cellId < NumberOfCells. THIS METHOD IS NOT THREAD SAFE.

Implements vtkDataSet.

void vtkImageData::GetCellBounds int    cellId,
float    bounds[6]
[virtual]
 

Get the bounds of the cell with cellId such that: 0 <= cellId < NumberOfCells. A subclass may be able to determine the bounds of cell without using an expensive GetCell() method. A default implementation is provided that actually uses a GetCell() call. This is to ensure the method is available to all datasets. Subclasses should override this method to provide an efficient implementation. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Reimplemented from vtkDataSet.

void vtkImageData::GetCellPoints int    cellId,
vtkIdList   ptIds
[inline]
 

For legacy compatibility. Do not use.

Reimplemented from vtkDataSet.

void vtkImageData::GetCellPoints int    cellId,
vtkIdList   ptIds
[inline, virtual]
 

Topological inquiry to get points defining cell. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Implements vtkDataSet.

int vtkImageData::GetCellType int    cellId [virtual]
 

Get type of cell with cellId such that: 0 <= cellId < NumberOfCells. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Implements vtkDataSet.

virtual const char* vtkImageData::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSet.

Reimplemented in vtkStructuredPoints.

void vtkImageData::GetContinuousIncrements int    extent[6],
int &    incX,
int &    incY,
int &    incZ
 

Different ways to get the increments for moving around the data. They are store (Component, X, Y, Z). This method returns increments that are suited for continuous incrementing of the pointer in a Z, Y, X, C nested for loop.

int vtkImageData::GetDataDimension   [inline]
 

Return the dimensionality of the data.

int vtkImageData::GetDataObjectType   [inline, virtual]
 

Return what type of dataset this is.

Reimplemented from vtkDataSet.

Reimplemented in vtkStructuredPoints.

int* vtkImageData::GetDimensions  
 

Get dimensions of this structured points dataset. Dimensions are computed from Extents during this call.

virtual unsigned long vtkImageData::GetEstimatedMemorySize   [virtual]
 

Get the estimated size of this data object itself. Should be called after UpdateInformation() and PropagateUpdateExtent() have both been called. This estimate should be fairly accurate since this is structured data.

Reimplemented from vtkDataObject.

int* vtkImageData::GetIncrements  
 

Different ways to get the increments for moving around the data. GetIncrements() calls ComputeIncrements() to ensure the increments are up to date.

int vtkImageData::GetMaxCellSize   [inline, virtual]
 

Convenience method returns largest cell size in dataset. This is generally used to allocate memory for supporting data structures. THIS METHOD IS THREAD SAFE

Implements vtkDataSet.

int vtkImageData::GetNumberOfCells   [virtual]
 

Standard vtkDataSet API methods. See vtkDataSet for more information.

Implements vtkDataSet.

int vtkImageData::GetNumberOfPoints   [inline, virtual]
 

Determine the number of points composing the dataset. THIS METHOD IS THREAD SAFE

Implements vtkDataSet.

void vtkImageData::GetPoint int    id,
float    x[3]
[inline, virtual]
 

Copy point coordinates into user provided array x[3] for specified point id. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Reimplemented from vtkDataSet.

float* vtkImageData::GetPoint int    ptId [virtual]
 

Get point coordinates with ptId such that: 0 <= ptId < NumberOfPoints. THIS METHOD IS NOT THREAD SAFE.

Implements vtkDataSet.

void vtkImageData::GetPointCells int    ptId,
vtkIdList   cellIds
[inline, virtual]
 

Topological inquiry to get cells using point. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED

Implements vtkDataSet.

void vtkImageData::GetPointGradient int    i,
int    j,
int    k,
vtkScalars   s,
float    g[3]
 

Given structured coordinates (i,j,k) for a point in a structured point dataset, compute the gradient vector from the scalar data at that point. The scalars s are the scalars from which the gradient is to be computed. This method will treat structured point datasets of any dimension.

float vtkImageData::GetScalarComponentAsFloat int    x,
int    y,
int    z,
int    component
 

For access to data from tcl

void* vtkImageData::GetScalarPointerForExtent int    coordinates[6]
 

Access the native pointer for the scalar data

int vtkImageData::GetScalarSize  
 

Set the size of the scalar type in bytes.

double vtkImageData::GetScalarTypeMin  
 

These returns the minimum and maximum values the ScalarType can hold without overflowing.

void vtkImageData::GetVoxelGradient int    i,
int    j,
int    k,
vtkScalars   s,
vtkVectors   g
 

Given structured coordinates (i,j,k) for a voxel cell, compute the eight gradient values for the voxel corners. The order in which the gradient vectors are arranged corresponds to the ordering of the voxel points. Gradient vector is computed by central differences (except on edges of volume where forward difference is used). The scalars s are the scalars from which the gradient is to be computed. This method will treat only 3D structured point datasets (i.e., volumes).

virtual int vtkImageData::IsA const char *    type [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 vtkDataSet.

Reimplemented in vtkStructuredPoints.

int vtkImageData::IsTypeOf const char *    type [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 vtkDataSet.

Reimplemented in vtkStructuredPoints.

vtkImageToStructuredPoints* vtkImageData::MakeImageToStructuredPoints  
 

This method is used transparently by the "SetInput(vtkImageCache *)" method to connect the image pipeline to the visualization pipeline.

vtkDataObject* vtkImageData::MakeObject   [inline, virtual]
 

Create the same type object as this (virtual constructor).

Reimplemented from vtkDataObject.

Reimplemented in vtkStructuredPoints.

vtkImageData* vtkImageData::New   [static]
 

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

Reimplemented from vtkDataObject.

Reimplemented in vtkStructuredPoints.

virtual void vtkImageData::PrepareForNewData   [virtual]
 

make the output data ready for new data to be inserted. For most objects we just call Initialize. But for image data we leave the old data in case the memory can be reused.

Reimplemented from vtkDataObject.

void vtkImageData::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 vtkDataSet.

Reimplemented in vtkImageCanvasSource2D.

vtkImageData* vtkImageData::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSet.

Reimplemented in vtkStructuredPoints.

void vtkImageData::SetAxisUpdateExtent int    axis,
int    min,
int    max
 

Set / Get the extent on just one axis

void vtkImageData::SetDimensions int    dims[3]
 

Set dimensions of structured points dataset.

void vtkImageData::SetDimensions int    i,
int    j,
int    k
 

Set dimensions of structured points dataset.

void vtkImageData::SetExtent int    extent[6]
 

Different ways to set the extent of the data array. The extent should be set before the "Scalars" are set or allocated. The Extent is stored in the order (X, Y, Z).

void vtkImageData::SetNumberOfScalarComponents int    n
 

Set/Get the number of scalar components for points.

virtual void vtkImageData::SetOrigin float   ,
float   ,
float   
[virtual]
 

Set the origin of the data. The origin plus spacing determine the position in space of the points.

virtual void vtkImageData::SetScalarType int    [virtual]
 

Set/Get the data scalar type (i.e VTK_FLOAT).

virtual void vtkImageData::SetSpacing float   ,
float   ,
float   
[virtual]
 

Set the spacing (width,height,length) of the cubical cells that compose the data set.

void vtkImageData::SetUpdateExtent int    x1,
int    x2,
int    y1,
int    y2,
int    z1,
int    z2
[inline, virtual]
 

Call superclass method to avoid hiding

Reimplemented from vtkDataObject.

void vtkImageData::SetUpdateExtent int    piece,
int    numPieces,
int    ghostLevel
 

Required for the lowest common denominator for setting the UpdateExtent (i.e. vtkDataSetToStructuredPointsFilter). This assumes that WholeExtent is valid (UpdateInformation has been called).

void vtkImageData::ShallowCopy vtkDataObject   src [virtual]
 

Shallow and Deep copy.

Reimplemented from vtkDataSet.

void vtkImageData::UpdateData   [virtual]
 

This update method will supply the ghost level arrays if they are requested.

Reimplemented from vtkDataObject.


The documentation for this class was generated from the following file:
Generated on Tue Mar 19 13:26:06 2002 for VTK by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002