#include <vtkImageData.h>
Inheritance diagram for vtkImageData:
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.
Definition at line 43 of file vtkImageData.h.
Public Types | |
typedef vtkDataSet | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | CopyStructure (vtkDataSet *ds) |
int | GetDataObjectType () |
void | UpdateData () |
vtkIdType | GetNumberOfCells () |
vtkIdType | GetNumberOfPoints () |
double * | GetPoint (vtkIdType ptId) |
void | GetPoint (vtkIdType id, double x[3]) |
vtkCell * | GetCell (vtkIdType cellId) |
void | GetCell (vtkIdType cellId, vtkGenericCell *cell) |
void | GetCellBounds (vtkIdType cellId, double bounds[6]) |
vtkIdType | FindPoint (double x, double y, double z) |
vtkIdType | FindPoint (double x[3]) |
vtkIdType | FindCell (double x[3], vtkCell *cell, vtkIdType cellId, double tol2, int &subId, double pcoords[3], double *weights) |
vtkIdType | FindCell (double x[3], vtkCell *cell, vtkGenericCell *gencell, vtkIdType cellId, double tol2, int &subId, double pcoords[3], double *weights) |
vtkCell * | FindAndGetCell (double x[3], vtkCell *cell, vtkIdType cellId, double tol2, int &subId, double pcoords[3], double *weights) |
int | GetCellType (vtkIdType cellId) |
void | GetCellPoints (vtkIdType cellId, vtkIdList *ptIds) |
void | GetPointCells (vtkIdType 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 (double x[3], int ijk[3], double pcoords[3]) |
void | GetVoxelGradient (int i, int j, int k, vtkDataArray *s, vtkDataArray *g) |
void | GetPointGradient (int i, int j, int k, vtkDataArray *s, double g[3]) |
int | GetDataDimension () |
vtkIdType | ComputePointId (int ijk[3]) |
vtkIdType | 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 extent[6]) |
void * | GetScalarPointer (int coordinates[3]) |
void * | GetScalarPointer (int x, int y, int z) |
void * | GetScalarPointer () |
double | GetScalarComponentAsDouble (int x, int y, int z, int component) |
void | SetScalarComponentFromDouble (int x, int y, int z, int component, double v) |
void | AllocateScalars () |
void | CopyAndCastFrom (vtkImageData *inData, int extent[6]) |
void | CopyAndCastFrom (vtkImageData *inData, int x0, int x1, int y0, int y1, int z0, int z1) |
virtual void | Crop () |
unsigned long | GetActualMemorySize () |
virtual void | SetSpacing (double, double, double) |
virtual void | SetSpacing (double[3]) |
virtual double * | GetSpacing () |
virtual void | GetSpacing (double &, double &, double &) |
virtual void | GetSpacing (double[3]) |
virtual void | SetOrigin (double, double, double) |
virtual void | SetOrigin (double[3]) |
virtual double * | GetOrigin () |
virtual void | GetOrigin (double &, double &, double &) |
virtual void | GetOrigin (double[3]) |
void | SetScalarTypeToFloat () |
void | SetScalarTypeToDouble () |
void | SetScalarTypeToInt () |
void | SetScalarTypeToUnsignedInt () |
void | SetScalarTypeToLong () |
void | SetScalarTypeToUnsignedLong () |
void | SetScalarTypeToShort () |
void | SetScalarTypeToUnsignedShort () |
void | SetScalarTypeToUnsignedChar () |
void | SetScalarTypeToChar () |
virtual void | SetScalarType (int) |
int | GetScalarType () |
const char * | GetScalarTypeAsString () |
void | SetNumberOfScalarComponents (int n) |
virtual int | GetNumberOfScalarComponents () |
void | CopyTypeSpecificInformation (vtkDataObject *image) |
virtual void | PrepareForNewData () |
void | ShallowCopy (vtkDataObject *src) |
void | DeepCopy (vtkDataObject *src) |
void * | GetArrayPointerForExtent (vtkDataArray *array, int extent[6]) |
void * | GetArrayPointer (vtkDataArray *array, int coordinates[3]) |
void | GetArrayIncrements (vtkDataArray *array, int increments[3]) |
void | ComputeInternalExtent (int *intExt, int *tgtExt, int *bnds) |
int | GetExtentType () |
Static Public Member Functions | |
static vtkImageData * | New () |
static int | IsTypeOf (const char *type) |
static vtkImageData * | SafeDownCast (vtkObject *o) |
Protected Member Functions | |
vtkImageData () | |
~vtkImageData () | |
void | ComputeIncrements () |
Protected Attributes | |
vtkVertex * | Vertex |
vtkLine * | Line |
vtkPixel * | Pixel |
vtkVoxel * | Voxel |
int | Dimensions [3] |
int | DataDescription |
int | Increments [3] |
double | Origin [3] |
double | Spacing [3] |
int | ScalarType |
int | NumberOfScalarComponents |
|
Reimplemented from vtkDataSet. Reimplemented in vtkStructuredPoints, and vtkImageCanvasSource2D. Definition at line 48 of file vtkImageData.h. |
|
|
|
|
|
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. Reimplemented from vtkDataObject. Reimplemented in vtkStructuredPoints, and vtkImageCanvasSource2D. |
|
Reimplemented from vtkDataSet. Reimplemented in vtkStructuredPoints, and vtkImageCanvasSource2D. |
|
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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkDataSet. Reimplemented in vtkStructuredPoints, and vtkImageCanvasSource2D. |
|
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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkDataSet. Reimplemented in vtkStructuredPoints, and vtkImageCanvasSource2D. |
|
Reimplemented from vtkDataSet. Reimplemented in vtkStructuredPoints, and vtkImageCanvasSource2D. |
|
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. |
|
Copy the geometric and topological structure of an input image data object. Implements vtkDataSet. |
|
Return what type of dataset this is. Reimplemented from vtkDataSet. Reimplemented in vtkStructuredPoints. Definition at line 56 of file vtkImageData.h. References VTK_IMAGE_DATA. |
|
This update method will supply the ghost level arrays if they are requested. Reimplemented from vtkDataObject. |
|
Standard vtkDataSet API methods. See vtkDataSet for more information. Implements vtkDataSet. |
|
Determine the number of points composing the dataset. THIS METHOD IS THREAD SAFE Implements vtkDataSet. Definition at line 376 of file vtkImageData.h. References GetDimensions(). |
|
Get point coordinates with ptId such that: 0 <= ptId < NumberOfPoints. THIS METHOD IS NOT THREAD SAFE. Implements vtkDataSet. Referenced by GetPoint(). |
|
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. Definition at line 368 of file vtkImageData.h. References GetPoint(). |
|
Get cell with cellId such that: 0 <= cellId < NumberOfCells. THIS METHOD IS NOT THREAD SAFE. Implements vtkDataSet. |
|
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. |
|
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. |
|
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. Definition at line 71 of file vtkImageData.h. References vtkDataSet::FindPoint(). |
|
Implements vtkDataSet. |
|
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. |
|
This is a version of the above method that can be used with multithreaded applications. A vtkGenericCell must be passed 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. |
|
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. |
|
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. |
|
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. Definition at line 82 of file vtkImageData.h. References vtkStructuredData::GetCellPoints(). |
|
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. Definition at line 85 of file vtkImageData.h. References vtkStructuredData::GetPointCells(). |
|
Compute the data bounding box from data points. THIS METHOD IS NOT THREAD SAFE. Reimplemented from vtkDataSet. |
|
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. Definition at line 88 of file vtkImageData.h. |
|
Set dimensions of structured points dataset. |
|
Set dimensions of structured points dataset. |
|
Get dimensions of this structured points dataset. Dimensions are computed from Extents during this call. Referenced by GetNumberOfPoints(). |
|
|
|
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. |
|
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). |
|
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. |
|
Return the dimensionality of the data. Definition at line 382 of file vtkImageData.h. References vtkStructuredData::GetDataDimension(). |
|
Given a location in structured coordinates (i-j-k), return the point id. Definition at line 134 of file vtkImageData.h. References vtkStructuredData::ComputePointId(). |
|
Given a location in structured coordinates (i-j-k), return the cell id. Definition at line 141 of file vtkImageData.h. References vtkStructuredData::ComputeCellId(). |
|
Set / Get the extent on just one axis |
|
|
|
Required for the lowest common denominator for setting the UpdateExtent (i.e. vtkDataSetToStructuredPointsFilter). This assumes that WholeExtent is valid (UpdateInformation has been called). |
|
Reimplemented from vtkDataObject. Definition at line 156 of file vtkImageData.h. References vtkDataObject::SetUpdateExtent(). |
|
Call superclass method to avoid hiding Reimplemented from vtkDataObject. Definition at line 162 of file vtkImageData.h. References vtkDataObject::SetUpdateExtent(). |
|
Reimplemented from vtkDataObject. Definition at line 164 of file vtkImageData.h. References vtkDataObject::SetUpdateExtent(). |
|
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). |
|
Reimplemented in vtkImageCanvasSource2D. |
|
|
|
|
|
|
|
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. |
|
These returns the minimum and maximum values the ScalarType can hold without overflowing. |
|
|
|
Set the size of the scalar type in bytes. |
|
Different ways to get the increments for moving around the data. GetIncrements() calls ComputeIncrements() to ensure the increments are up to date. |
|
|
|
|
|
Different ways to get the increments for moving around the data. incX is always returned with 0. incY is returned with the increment needed to move from the end of one X scanline of data to the start of the next line. incZ is filled in with the increment needed to move from the end of one image to the start of the next. The proper way to use these values is to for a loop over Z, Y, X, C, incrementing the pointer by 1 after each component. When the end of the component is reached, the pointer is set to the beginning of the next pixel, thus incX is properly set to 0. |
|
Access the native pointer for the scalar data |
|
|
|
|
|
|
|
For access to data from tcl |
|
|
|
Allocate the vtkScalars object associated with this object. |
|
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. |
|
Definition at line 236 of file vtkImageData.h. |
|
Reallocates and copies to set the Extent to the UpdateExtent. This is used internally when the exact extent is requested, and the source generated more than the update extent. Reimplemented from vtkDataObject. |
|
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. |
|
Set the spacing (width,height,length) of the cubical cells that compose the data set. |
|
|
|
|
|
|
|
|
|
Set the origin of the data. The origin plus spacing determine the position in space of the points. |
|
|
|
|
|
|
|
|
|
Set/Get the data scalar type (i.e VTK_DOUBLE). Definition at line 270 of file vtkImageData.h. References VTK_FLOAT. |
|
Definition at line 271 of file vtkImageData.h. References VTK_DOUBLE. |
|
Definition at line 272 of file vtkImageData.h. References VTK_INT. |
|
Definition at line 273 of file vtkImageData.h. References VTK_UNSIGNED_INT. |
|
Definition at line 275 of file vtkImageData.h. References VTK_LONG. |
|
Definition at line 276 of file vtkImageData.h. References VTK_UNSIGNED_LONG. |
|
Definition at line 278 of file vtkImageData.h. References VTK_SHORT. |
|
Definition at line 279 of file vtkImageData.h. References VTK_UNSIGNED_SHORT. |
|
Definition at line 281 of file vtkImageData.h. References VTK_UNSIGNED_CHAR. |
|
Definition at line 283 of file vtkImageData.h. References VTK_CHAR. |
|
|
|
|
|
Definition at line 287 of file vtkImageData.h. |
|
Set/Get the number of scalar components for points. |
|
|
|
By default, there is no type specific information Reimplemented from vtkDataObject. |
|
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. |
|
Shallow and Deep copy. Reimplemented from vtkDataSet. |
|
Reimplemented from vtkDataSet. |
|
These are convienence methods for getting a pointer from any filed array. It is a start at expanding image filters to process any array (not just scalars). |
|
|
|
Since various arrays have different number of components, the will have different increments. |
|
Given how many pixel are required on a side for bounrary conditions (in bnds), the target extent to traverse, compute the internal extent (the extent for this ImageData that does nto suffer from any boundary conditions) and place it in intExt |
|
The extent type is a 3D extent Reimplemented from vtkDataObject. Definition at line 334 of file vtkImageData.h. References VTK_3D_EXTENT. |
|
|
|
Definition at line 341 of file vtkImageData.h. |
|
Definition at line 342 of file vtkImageData.h. |
|
Definition at line 343 of file vtkImageData.h. |
|
Definition at line 344 of file vtkImageData.h. |
|
Definition at line 349 of file vtkImageData.h. |
|
Definition at line 350 of file vtkImageData.h. |
|
Definition at line 351 of file vtkImageData.h. |
|
Definition at line 353 of file vtkImageData.h. |
|
Definition at line 354 of file vtkImageData.h. |
|
Definition at line 355 of file vtkImageData.h. |
|
Definition at line 356 of file vtkImageData.h. |