VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkExtractVOI Class Reference

select piece (e.g., volume of interest) and/or subsample structured points dataset More...

#include <vtkExtractVOI.h>

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

List of all members.

Public Types

typedef vtkImageAlgorithm Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkExtractVOINewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
virtual void SetVOI (int, int, int, int, int, int)
virtual void SetVOI (int[6])
virtual intGetVOI ()
virtual void GetVOI (int data[6])
virtual void SetSampleRate (int, int, int)
virtual void SetSampleRate (int[3])
virtual intGetSampleRate ()
virtual void GetSampleRate (int data[3])
virtual void SetIncludeBoundary (int)
virtual int GetIncludeBoundary ()
virtual void IncludeBoundaryOn ()
virtual void IncludeBoundaryOff ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkExtractVOISafeDownCast (vtkObjectBase *o)
static vtkExtractVOINew ()

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkExtractVOI ()
 ~vtkExtractVOI ()
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
bool RequestDataImpl (int voi[6], vtkInformationVector **inputVector, vtkInformationVector *outputVector)

Protected Attributes

int VOI [6]
int SampleRate [3]
int IncludeBoundary
vtkExtractStructuredGridHelperInternal

Detailed Description

select piece (e.g., volume of interest) and/or subsample structured points dataset

vtkExtractVOI is a filter that selects a portion of an input structured points dataset, or subsamples an input dataset. (The selected portion of interested is referred to as the Volume Of Interest, or VOI.) The output of this filter is a structured points dataset. The filter treats input data of any topological dimension (i.e., point, line, image, or volume) and can generate output data of any topological dimension.

To use this filter set the VOI ivar which are i-j-k min/max indices that specify a rectangular region in the data. (Note that these are 0-offset.) You can also specify a sampling rate to subsample the data.

Typical applications of this filter are to extract a slice from a volume for image processing, subsampling large volumes to reduce data size, or extracting regions of a volume with interesting data.

See also:
vtkGeometryFilter vtkExtractGeometry vtkExtractGrid
Examples:
vtkExtractVOI (Examples)
Tests:
vtkExtractVOI (Tests)

Definition at line 53 of file vtkExtractVOI.h.


Member Typedef Documentation

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

Definition at line 56 of file vtkExtractVOI.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkExtractVOI::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 vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

virtual int vtkExtractVOI::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 vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

virtual vtkObjectBase* vtkExtractVOI::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

void vtkExtractVOI::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 vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

static vtkExtractVOI* vtkExtractVOI::New ( ) [static]

Construct object to extract all of the input data.

Reimplemented from vtkAlgorithm.

Reimplemented in vtkPExtractVOI.

virtual void vtkExtractVOI::SetVOI ( int  ,
int  ,
int  ,
int  ,
int  ,
int   
) [virtual]

Specify i-j-k (min,max) pairs to extract. The resulting structured points dataset can be of any topological dimension (i.e., point, line, image, or volume).

virtual void vtkExtractVOI::SetVOI ( int  [6]) [virtual]

Specify i-j-k (min,max) pairs to extract. The resulting structured points dataset can be of any topological dimension (i.e., point, line, image, or volume).

virtual int* vtkExtractVOI::GetVOI ( ) [virtual]

Specify i-j-k (min,max) pairs to extract. The resulting structured points dataset can be of any topological dimension (i.e., point, line, image, or volume).

virtual void vtkExtractVOI::GetVOI ( int  data[6]) [virtual]

Specify i-j-k (min,max) pairs to extract. The resulting structured points dataset can be of any topological dimension (i.e., point, line, image, or volume).

virtual void vtkExtractVOI::SetSampleRate ( int  ,
int  ,
int   
) [virtual]

Set the sampling rate in the i, j, and k directions. If the rate is > 1, then the resulting VOI will be subsampled representation of the input. For example, if the SampleRate=(2,2,2), every other point will be selected, resulting in a volume 1/8th the original size.

virtual void vtkExtractVOI::SetSampleRate ( int  [3]) [virtual]

Set the sampling rate in the i, j, and k directions. If the rate is > 1, then the resulting VOI will be subsampled representation of the input. For example, if the SampleRate=(2,2,2), every other point will be selected, resulting in a volume 1/8th the original size.

virtual int* vtkExtractVOI::GetSampleRate ( ) [virtual]

Set the sampling rate in the i, j, and k directions. If the rate is > 1, then the resulting VOI will be subsampled representation of the input. For example, if the SampleRate=(2,2,2), every other point will be selected, resulting in a volume 1/8th the original size.

virtual void vtkExtractVOI::GetSampleRate ( int  data[3]) [virtual]

Set the sampling rate in the i, j, and k directions. If the rate is > 1, then the resulting VOI will be subsampled representation of the input. For example, if the SampleRate=(2,2,2), every other point will be selected, resulting in a volume 1/8th the original size.

virtual void vtkExtractVOI::SetIncludeBoundary ( int  ) [virtual]

Control whether to enforce that the "boundary" of the grid is output in the subsampling process. (This ivar only has effect when the SampleRate in any direction is not equal to 1.) When this ivar IncludeBoundary is on, the subsampling will always include the boundary of the grid even though the sample rate is not an even multiple of the grid dimensions. (By default IncludeBoundary is off.)

virtual int vtkExtractVOI::GetIncludeBoundary ( ) [virtual]

Control whether to enforce that the "boundary" of the grid is output in the subsampling process. (This ivar only has effect when the SampleRate in any direction is not equal to 1.) When this ivar IncludeBoundary is on, the subsampling will always include the boundary of the grid even though the sample rate is not an even multiple of the grid dimensions. (By default IncludeBoundary is off.)

virtual void vtkExtractVOI::IncludeBoundaryOn ( ) [virtual]

Control whether to enforce that the "boundary" of the grid is output in the subsampling process. (This ivar only has effect when the SampleRate in any direction is not equal to 1.) When this ivar IncludeBoundary is on, the subsampling will always include the boundary of the grid even though the sample rate is not an even multiple of the grid dimensions. (By default IncludeBoundary is off.)

virtual void vtkExtractVOI::IncludeBoundaryOff ( ) [virtual]

Control whether to enforce that the "boundary" of the grid is output in the subsampling process. (This ivar only has effect when the SampleRate in any direction is not equal to 1.) When this ivar IncludeBoundary is on, the subsampling will always include the boundary of the grid even though the sample rate is not an even multiple of the grid dimensions. (By default IncludeBoundary is off.)

Subclasses can reimplement this method to translate the update extent requests from each output port into update extent requests for the input connections.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

virtual int vtkExtractVOI::RequestInformation ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

Subclasses can reimplement this method to collect information from their inputs and set information for their outputs.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

virtual int vtkExtractVOI::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

This is called in response to a REQUEST_DATA request from the executive. Subclasses should override either this method or the ExecuteDataWithInformation method in order to generate data for their outputs. For images, the output arrays will already be allocated, so all that is necessary is to fill in the voxel values.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkPExtractVOI.

bool vtkExtractVOI::RequestDataImpl ( int  voi[6],
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected]

Implementation for RequestData using a specified VOI. This is because the parallel filter needs to muck around with the VOI to get spacing and partitioning to play nice.


Member Data Documentation

int vtkExtractVOI::VOI[6] [protected]

Definition at line 114 of file vtkExtractVOI.h.

Definition at line 115 of file vtkExtractVOI.h.

Definition at line 116 of file vtkExtractVOI.h.

Definition at line 118 of file vtkExtractVOI.h.


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