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

Flood fill an image region. More...

#include <vtkImageThresholdConnectivity.h>

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

List of all members.

Public Types

typedef vtkImageAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
void ThresholdByUpper (double thresh)
void ThresholdByLower (double thresh)
void ThresholdBetween (double lower, double upper)
unsigned long GetMTime ()
void SetSeedPoints (vtkPoints *points)
virtual vtkPointsGetSeedPoints ()
virtual void SetReplaceIn (int)
virtual int GetReplaceIn ()
virtual void ReplaceInOn ()
virtual void ReplaceInOff ()
void SetInValue (double val)
virtual double GetInValue ()
virtual void SetReplaceOut (int)
virtual int GetReplaceOut ()
virtual void ReplaceOutOn ()
virtual void ReplaceOutOff ()
void SetOutValue (double val)
virtual double GetOutValue ()
virtual double GetUpperThreshold ()
virtual double GetLowerThreshold ()
virtual void SetSliceRangeX (int, int)
void SetSliceRangeX (int[2])
virtual intGetSliceRangeX ()
virtual void GetSliceRangeX (int &, int &)
virtual void GetSliceRangeX (int[2])
virtual void SetSliceRangeY (int, int)
void SetSliceRangeY (int[2])
virtual intGetSliceRangeY ()
virtual void GetSliceRangeY (int &, int &)
virtual void GetSliceRangeY (int[2])
virtual void SetSliceRangeZ (int, int)
void SetSliceRangeZ (int[2])
virtual intGetSliceRangeZ ()
virtual void GetSliceRangeZ (int &, int &)
virtual void GetSliceRangeZ (int[2])
virtual void SetStencil (vtkImageStencilData *stencil)
vtkImageStencilDataGetStencil ()
virtual void SetActiveComponent (int)
virtual int GetActiveComponent ()
virtual void SetNeighborhoodRadius (double, double, double)
virtual void SetNeighborhoodRadius (double[3])
virtual doubleGetNeighborhoodRadius ()
virtual void GetNeighborhoodRadius (double &, double &, double &)
virtual void GetNeighborhoodRadius (double[3])
virtual void SetNeighborhoodFraction (double)
virtual double GetNeighborhoodFraction ()
virtual int GetNumberOfInVoxels ()

Static Public Member Functions

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

Protected Member Functions

 vtkImageThresholdConnectivity ()
 ~vtkImageThresholdConnectivity ()
void ComputeInputUpdateExtent (int inExt[6], int outExt[6])
virtual int FillInputPortInformation (int port, vtkInformation *info)
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)

Protected Attributes

double UpperThreshold
double LowerThreshold
double InValue
double OutValue
int ReplaceIn
int ReplaceOut
double NeighborhoodRadius [3]
double NeighborhoodFraction
vtkPointsSeedPoints
int SliceRangeX [2]
int SliceRangeY [2]
int SliceRangeZ [2]
int NumberOfInVoxels
int ActiveComponent
vtkImageDataImageMask

Detailed Description

Flood fill an image region.

vtkImageThresholdConnectivity will perform a flood fill on an image, given upper and lower pixel intensity thresholds. It works similarly to vtkImageThreshold, but also allows the user to set seed points to limit the threshold operation to contiguous regions of the image. The filled region, or the "inside", will be passed through to the output by default, while the "outside" will be replaced with zeros. This behavior can be changed by using the ReplaceIn() and ReplaceOut() methods. The scalar type of the output is the same as the input.

See also:
vtkImageThreshold
Thanks:
Thanks to David Gobbi for contributing this class to VTK.
Tests:
vtkImageThresholdConnectivity (Tests)

Definition at line 44 of file vtkImageThresholdConnectivity.h.


Member Typedef Documentation

Reimplemented from vtkImageAlgorithm.

Definition at line 49 of file vtkImageThresholdConnectivity.h.


Constructor & Destructor Documentation

vtkImageThresholdConnectivity::vtkImageThresholdConnectivity ( ) [protected]
vtkImageThresholdConnectivity::~vtkImageThresholdConnectivity ( ) [protected]

Member Function Documentation

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

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

Reimplemented from vtkAlgorithm.

virtual const char* vtkImageThresholdConnectivity::GetClassName ( ) [virtual]

Reimplemented from vtkImageAlgorithm.

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

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

static vtkImageThresholdConnectivity* vtkImageThresholdConnectivity::SafeDownCast ( vtkObject o) [static]

Reimplemented from vtkImageAlgorithm.

void vtkImageThresholdConnectivity::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.

void vtkImageThresholdConnectivity::SetSeedPoints ( vtkPoints points)

Set the seeds. The seeds are in real data coordinates, not in voxel index locations.

virtual vtkPoints* vtkImageThresholdConnectivity::GetSeedPoints ( ) [virtual]

Set the seeds. The seeds are in real data coordinates, not in voxel index locations.

void vtkImageThresholdConnectivity::ThresholdByUpper ( double  thresh)

Values greater than or equal to this threshold will be filled.

void vtkImageThresholdConnectivity::ThresholdByLower ( double  thresh)

Values less than or equal to this threshold will be filled.

void vtkImageThresholdConnectivity::ThresholdBetween ( double  lower,
double  upper 
)

Values within this range will be filled, where the range inludes values that are exactly equal to the lower and upper thresholds.

virtual void vtkImageThresholdConnectivity::SetReplaceIn ( int  ) [virtual]

Replace the filled region by the value set by SetInValue().

virtual int vtkImageThresholdConnectivity::GetReplaceIn ( ) [virtual]

Replace the filled region by the value set by SetInValue().

virtual void vtkImageThresholdConnectivity::ReplaceInOn ( ) [virtual]

Replace the filled region by the value set by SetInValue().

virtual void vtkImageThresholdConnectivity::ReplaceInOff ( ) [virtual]

Replace the filled region by the value set by SetInValue().

void vtkImageThresholdConnectivity::SetInValue ( double  val)

If ReplaceIn is set, the filled region will be replaced by this value.

virtual double vtkImageThresholdConnectivity::GetInValue ( ) [virtual]

If ReplaceIn is set, the filled region will be replaced by this value.

virtual void vtkImageThresholdConnectivity::SetReplaceOut ( int  ) [virtual]

Replace the filled region by the value set by SetInValue().

virtual int vtkImageThresholdConnectivity::GetReplaceOut ( ) [virtual]

Replace the filled region by the value set by SetInValue().

virtual void vtkImageThresholdConnectivity::ReplaceOutOn ( ) [virtual]

Replace the filled region by the value set by SetInValue().

virtual void vtkImageThresholdConnectivity::ReplaceOutOff ( ) [virtual]

Replace the filled region by the value set by SetInValue().

void vtkImageThresholdConnectivity::SetOutValue ( double  val)

If ReplaceOut is set, outside the fill will be replaced by this value.

virtual double vtkImageThresholdConnectivity::GetOutValue ( ) [virtual]

If ReplaceOut is set, outside the fill will be replaced by this value.

virtual double vtkImageThresholdConnectivity::GetUpperThreshold ( ) [virtual]

Get the Upper and Lower thresholds.

virtual double vtkImageThresholdConnectivity::GetLowerThreshold ( ) [virtual]

Get the Upper and Lower thresholds.

virtual void vtkImageThresholdConnectivity::SetSliceRangeX ( int  ,
int   
) [virtual]

Limit the flood to a range of slices in the specified direction.

void vtkImageThresholdConnectivity::SetSliceRangeX ( int  [2])

Limit the flood to a range of slices in the specified direction.

virtual int* vtkImageThresholdConnectivity::GetSliceRangeX ( ) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::GetSliceRangeX ( int ,
int  
) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::GetSliceRangeX ( int  [2]) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::SetSliceRangeY ( int  ,
int   
) [virtual]

Limit the flood to a range of slices in the specified direction.

void vtkImageThresholdConnectivity::SetSliceRangeY ( int  [2])

Limit the flood to a range of slices in the specified direction.

virtual int* vtkImageThresholdConnectivity::GetSliceRangeY ( ) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::GetSliceRangeY ( int ,
int  
) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::GetSliceRangeY ( int  [2]) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::SetSliceRangeZ ( int  ,
int   
) [virtual]

Limit the flood to a range of slices in the specified direction.

void vtkImageThresholdConnectivity::SetSliceRangeZ ( int  [2])

Limit the flood to a range of slices in the specified direction.

virtual int* vtkImageThresholdConnectivity::GetSliceRangeZ ( ) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::GetSliceRangeZ ( int ,
int  
) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::GetSliceRangeZ ( int  [2]) [virtual]

Limit the flood to a range of slices in the specified direction.

virtual void vtkImageThresholdConnectivity::SetStencil ( vtkImageStencilData stencil) [virtual]

Specify a stencil that will be used to limit the flood fill to an arbitrarily-shaped region of the image.

vtkImageStencilData* vtkImageThresholdConnectivity::GetStencil ( )

Specify a stencil that will be used to limit the flood fill to an arbitrarily-shaped region of the image.

virtual void vtkImageThresholdConnectivity::SetActiveComponent ( int  ) [virtual]

For multi-component images, you can set which component will be used for the threshold checks.

virtual int vtkImageThresholdConnectivity::GetActiveComponent ( ) [virtual]

For multi-component images, you can set which component will be used for the threshold checks.

virtual void vtkImageThresholdConnectivity::SetNeighborhoodRadius ( double  ,
double  ,
double   
) [virtual]

The radius of the neighborhood that must be within the threshold values in order for the voxel to be included in the mask. The default radius is zero (one single voxel). The radius is measured in voxels.

virtual void vtkImageThresholdConnectivity::SetNeighborhoodRadius ( double  [3]) [virtual]

The radius of the neighborhood that must be within the threshold values in order for the voxel to be included in the mask. The default radius is zero (one single voxel). The radius is measured in voxels.

virtual double* vtkImageThresholdConnectivity::GetNeighborhoodRadius ( ) [virtual]

The radius of the neighborhood that must be within the threshold values in order for the voxel to be included in the mask. The default radius is zero (one single voxel). The radius is measured in voxels.

virtual void vtkImageThresholdConnectivity::GetNeighborhoodRadius ( double ,
double ,
double  
) [virtual]

The radius of the neighborhood that must be within the threshold values in order for the voxel to be included in the mask. The default radius is zero (one single voxel). The radius is measured in voxels.

virtual void vtkImageThresholdConnectivity::GetNeighborhoodRadius ( double  [3]) [virtual]

The radius of the neighborhood that must be within the threshold values in order for the voxel to be included in the mask. The default radius is zero (one single voxel). The radius is measured in voxels.

virtual void vtkImageThresholdConnectivity::SetNeighborhoodFraction ( double  ) [virtual]

The fraction of the neighborhood that must be within the thresholds. The default value is 0.5.

virtual double vtkImageThresholdConnectivity::GetNeighborhoodFraction ( ) [virtual]

The fraction of the neighborhood that must be within the thresholds. The default value is 0.5.

unsigned long vtkImageThresholdConnectivity::GetMTime ( ) [virtual]

Override the MTime to account for the seed points.

Reimplemented from vtkObject.

virtual int vtkImageThresholdConnectivity::GetNumberOfInVoxels ( ) [virtual]

After the filter has executed, use GetNumberOfVoxels() to find out how many voxels were filled.

void vtkImageThresholdConnectivity::ComputeInputUpdateExtent ( int  inExt[6],
int  outExt[6] 
) [protected]
virtual int vtkImageThresholdConnectivity::FillInputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

Fill the input port information objects for this algorithm. This is invoked by the first call to GetInputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkImageAlgorithm.

virtual int vtkImageThresholdConnectivity::RequestUpdateExtent ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [protected, virtual]

Reimplemented from vtkImageAlgorithm.

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

This is called by the superclass. This is the method you should override.

Reimplemented from vtkImageAlgorithm.


Member Data Documentation

Definition at line 156 of file vtkImageThresholdConnectivity.h.

Definition at line 157 of file vtkImageThresholdConnectivity.h.

Definition at line 158 of file vtkImageThresholdConnectivity.h.

Definition at line 159 of file vtkImageThresholdConnectivity.h.

Definition at line 160 of file vtkImageThresholdConnectivity.h.

Definition at line 161 of file vtkImageThresholdConnectivity.h.

Definition at line 163 of file vtkImageThresholdConnectivity.h.

Definition at line 164 of file vtkImageThresholdConnectivity.h.

Definition at line 166 of file vtkImageThresholdConnectivity.h.

Definition at line 168 of file vtkImageThresholdConnectivity.h.

Definition at line 169 of file vtkImageThresholdConnectivity.h.

Definition at line 170 of file vtkImageThresholdConnectivity.h.

Definition at line 172 of file vtkImageThresholdConnectivity.h.

Definition at line 174 of file vtkImageThresholdConnectivity.h.

Definition at line 176 of file vtkImageThresholdConnectivity.h.


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