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

# vtkConnectivityFilter Class Reference

`#include <vtkConnectivityFilter.h>`

Inheritance diagram for vtkConnectivityFilter:

[legend]
Collaboration diagram for vtkConnectivityFilter:

[legend]
List of all members.

## Detailed Description

extract data based on geometric connectivity

Date:
  2002/09/03 12:52:22

Revision:
  1.53

vtkConnectivityFilter is a filter that extracts cells that share common points and/or meet other connectivity criterion. (Cells that share vertices and meet other connectivity criterion such as scalar range are known as a region.) The filter works in one of six ways: 1) extract the largest connected region in the dataset; 2) extract specified region numbers; 3) extract all regions sharing specified point ids; 4) extract all regions sharing specified cell ids; 5) extract the region closest to the specified point; or 6) extract all regions (used to color the data by region).

vtkConnectivityFilter is generalized to handle any type of input dataset. It generates output data of type vtkUnstructuredGrid. If you know that your input type is vtkPolyData, you may wish to use vtkPolyDataConnectivityFilter.

The behavior of vtkConnectivityFilter can be modified by turning on the boolean ivar ScalarConnectivity. If this flag is on, the connectivity algorithm is modified so that cells are considered connected only if 1) they are geometrically connected (share a point) and 2) the scalar values of one of the cell's points falls in the scalar range specified. This use of ScalarConnectivity is particularly useful for volume datasets: it can be used as a simple "connected segmentation" algorithm. For example, by using a seed voxel (i.e., cell) on a known anatomical structure, connectivity will pull out all voxels "containing" the anatomical structure. These voxels can then be contoured or processed by other visualization filters.

See also:
  vtkPolyDataConnectivityFilter

Created by:
  - Schroeder, Will

CVS contributions (if > 5%):
  - Schroeder, Will (63%)
  - Martin, Ken (19%)

CVS logs (CVSweb):
  - .`h` (`/Graphics/vtkConnectivityFilter.h)`
  - .`cxx` (`/Graphics/vtkConnectivityFilter.cxx)`

Examples:
  vtkConnectivityFilter (Examples)

Tests:
  vtkConnectivityFilter (Tests)

Definition at line 87 of file vtkConnectivityFilter.h.

## Public Types

typedef vtkDataSetToUnstructuredGridFilter | Superclass

## Public Methods

virtual const char * | GetClassName ()
virtual int | IsA (const char *type)
void | PrintSelf (ostream &os, vtkIndent indent)
void | InitializeSeedList ()
void | AddSeed (vtkIdType id)
void | DeleteSeed (vtkIdType id)
void | InitializeSpecifiedRegionList ()
void | AddSpecifiedRegion (int id)
void | DeleteSpecifiedRegion (int id)
int | GetNumberOfExtractedRegions ()
virtual void | SetScalarConnectivity (int)
virtual int | GetScalarConnectivity ()
virtual void | ScalarConnectivityOn ()
virtual void | ScalarConnectivityOff ()
virtual void | SetScalarRange (float, float)
void | SetScalarRange (float[2])
virtual float * | GetScalarRange ()
virtual void | GetScalarRange (float &, float &)
virtual void | GetScalarRange (float[2])
virtual void | SetExtractionMode (int)
virtual int | GetExtractionMode ()
void | SetExtractionModeToPointSeededRegions ()
void | SetExtractionModeToCellSeededRegions ()
void | SetExtractionModeToLargestRegion ()
void | SetExtractionModeToSpecifiedRegions ()
void | SetExtractionModeToClosestPointRegion ()
void | SetExtractionModeToAllRegions ()
const char * | GetExtractionModeAsString ()
virtual void | SetClosestPoint (float, float, float)
virtual void | SetClosestPoint (float[3])
virtual float * | GetClosestPoint ()
virtual void | GetClosestPoint (float data[3])
virtual void | SetColorRegions (int)
virtual int | GetColorRegions ()
virtual void | ColorRegionsOn ()
virtual void | ColorRegionsOff ()

## Static Public Methods

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

## Protected Methods

| vtkConnectivityFilter ()
| ~vtkConnectivityFilter ()
void | Execute ()
void | TraverseAndMark ()

## Protected Attributes

int | ColorRegions
int | ExtractionMode
vtkIdList * | Seeds
vtkIdList * | SpecifiedRegionIds
vtkIntArray * | RegionSizes
float | ClosestPoint [3]
int | ScalarConnectivity
float | ScalarRange [2]

## Member Typedef Documentation

typedef vtkDataSetToUnstructuredGridFilter vtkConnectivityFilter::Superclass

| Reimplemented from vtkDataSetToUnstructuredGridFilter. Definition at line 90 of file vtkConnectivityFilter.h.

## Constructor & Destructor Documentation

vtkConnectivityFilter::vtkConnectivityFilter | ( |  | ) | `[protected]`

vtkConnectivityFilter::~vtkConnectivityFilter | ( |  | ) | `[protected]`

## Member Function Documentation

virtual const char* vtkConnectivityFilter::GetClassName | ( |  | ) | `[virtual]`

| Reimplemented from vtkDataSetToUnstructuredGridFilter.

int vtkConnectivityFilter::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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkDataSetToUnstructuredGridFilter.

virtual int vtkConnectivityFilter::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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkDataSetToUnstructuredGridFilter.

vtkConnectivityFilter* vtkConnectivityFilter::SafeDownCast | ( | vtkObject * | o | ) | `[static]`

| Reimplemented from vtkDataSetToUnstructuredGridFilter.

void vtkConnectivityFilter::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 vtkDataSetToUnstructuredGridFilter.

vtkConnectivityFilter* vtkConnectivityFilter::New | ( |  | ) | `[static]`

| Construct with default extraction mode to extract largest regions. Reimplemented from vtkObject.

virtual void vtkConnectivityFilter::SetScalarConnectivity | ( | int |  | ) | `[virtual]`

| Turn on/off connectivity based on scalar value. If on, cells are connected only if they share points AND one of the cells scalar values falls in the scalar range specified.

virtual int vtkConnectivityFilter::GetScalarConnectivity | ( |  | ) | `[virtual]`

| Turn on/off connectivity based on scalar value. If on, cells are connected only if they share points AND one of the cells scalar values falls in the scalar range specified.

virtual void vtkConnectivityFilter::ScalarConnectivityOn | ( |  | ) | `[virtual]`

| Turn on/off connectivity based on scalar value. If on, cells are connected only if they share points AND one of the cells scalar values falls in the scalar range specified.

virtual void vtkConnectivityFilter::ScalarConnectivityOff | ( |  | ) | `[virtual]`

| Turn on/off connectivity based on scalar value. If on, cells are connected only if they share points AND one of the cells scalar values falls in the scalar range specified.

virtual void vtkConnectivityFilter::SetScalarRange | ( | float | ,
|  | float |
| ) | `[virtual]`

| Set the scalar range to use to extract cells based on scalar connectivity.

void vtkConnectivityFilter::SetScalarRange | ( | float | [2] | ) |

| Set the scalar range to use to extract cells based on scalar connectivity.

virtual float* vtkConnectivityFilter::GetScalarRange | ( |  | ) | `[virtual]`

| Set the scalar range to use to extract cells based on scalar connectivity.

virtual void vtkConnectivityFilter::GetScalarRange | ( | float & | ,
|  | float & |
| ) | `[virtual]`

| Set the scalar range to use to extract cells based on scalar connectivity.

virtual void vtkConnectivityFilter::GetScalarRange | ( | float | [2] | ) | `[virtual]`

| Set the scalar range to use to extract cells based on scalar connectivity.

virtual void vtkConnectivityFilter::SetExtractionMode | ( | int |  | ) | `[virtual]`

| Control the extraction of connected surfaces.

virtual int vtkConnectivityFilter::GetExtractionMode | ( |  | ) | `[virtual]`

| Control the extraction of connected surfaces.

void vtkConnectivityFilter::SetExtractionModeToPointSeededRegions | ( |  | ) | `[inline]`

| Control the extraction of connected surfaces. Definition at line 117 of file vtkConnectivityFilter.h. References VTK_EXTRACT_POINT_SEEDED_REGIONS.

void vtkConnectivityFilter::SetExtractionModeToCellSeededRegions | ( |  | ) | `[inline]`

| Control the extraction of connected surfaces. Definition at line 119 of file vtkConnectivityFilter.h. References VTK_EXTRACT_CELL_SEEDED_REGIONS.

void vtkConnectivityFilter::SetExtractionModeToLargestRegion | ( |  | ) | `[inline]`

| Control the extraction of connected surfaces. Definition at line 121 of file vtkConnectivityFilter.h. References VTK_EXTRACT_LARGEST_REGION.

void vtkConnectivityFilter::SetExtractionModeToSpecifiedRegions | ( |  | ) | `[inline]`

| Control the extraction of connected surfaces. Definition at line 123 of file vtkConnectivityFilter.h. References VTK_EXTRACT_SPECIFIED_REGIONS.

void vtkConnectivityFilter::SetExtractionModeToClosestPointRegion | ( |  | ) | `[inline]`

| Control the extraction of connected surfaces. Definition at line 125 of file vtkConnectivityFilter.h. References VTK_EXTRACT_CLOSEST_POINT_REGION.

void vtkConnectivityFilter::SetExtractionModeToAllRegions | ( |  | ) | `[inline]`

| Control the extraction of connected surfaces. Definition at line 127 of file vtkConnectivityFilter.h. References VTK_EXTRACT_ALL_REGIONS.

const char * vtkConnectivityFilter::GetExtractionModeAsString | ( | void |  | ) | `[inline]`

| Return the method of extraction as a string. Definition at line 208 of file vtkConnectivityFilter.h. References ExtractionMode, VTK_EXTRACT_ALL_REGIONS, VTK_EXTRACT_CELL_SEEDED_REGIONS, VTK_EXTRACT_CLOSEST_POINT_REGION, VTK_EXTRACT_POINT_SEEDED_REGIONS, and VTK_EXTRACT_SPECIFIED_REGIONS.

void vtkConnectivityFilter::InitializeSeedList | ( |  | ) |

| Initialize list of point ids/cell ids used to seed regions.

void vtkConnectivityFilter::AddSeed | ( | vtkIdType | id | ) |

| Add a seed id (point or cell id). Note: ids are 0-offset.

void vtkConnectivityFilter::DeleteSeed | ( | vtkIdType | id | ) |

| Delete a seed id (point or cell id). Note: ids are 0-offset.

void vtkConnectivityFilter::InitializeSpecifiedRegionList | ( |  | ) |

| Initialize list of region ids to extract.

void vtkConnectivityFilter::AddSpecifiedRegion | ( | int | id | ) |

| Add a region id to extract. Note: ids are 0-offset.

void vtkConnectivityFilter::DeleteSpecifiedRegion | ( | int | id | ) |

| Delete a region id to extract. Note: ids are 0-offset.

virtual void vtkConnectivityFilter::SetClosestPoint | ( | float | ,
|  | float | ,
|  | float |
| ) | `[virtual]`

| Use to specify x-y-z point coordinates when extracting the region closest to a specified point.

virtual void vtkConnectivityFilter::SetClosestPoint | ( | float | [3] | ) | `[virtual]`

| Use to specify x-y-z point coordinates when extracting the region closest to a specified point.

virtual float* vtkConnectivityFilter::GetClosestPoint | ( |  | ) | `[virtual]`

| Use to specify x-y-z point coordinates when extracting the region closest to a specified point.

virtual void vtkConnectivityFilter::GetClosestPoint | ( | float | data[3] | ) | `[virtual]`

| Use to specify x-y-z point coordinates when extracting the region closest to a specified point.

int vtkConnectivityFilter::GetNumberOfExtractedRegions | ( |  | ) |

| Obtain the number of connected regions.

virtual void vtkConnectivityFilter::SetColorRegions | ( | int |  | ) | `[virtual]`

| Turn on/off the coloring of connected regions.

virtual int vtkConnectivityFilter::GetColorRegions | ( |  | ) | `[virtual]`

| Turn on/off the coloring of connected regions.

virtual void vtkConnectivityFilter::ColorRegionsOn | ( |  | ) | `[virtual]`

| Turn on/off the coloring of connected regions.

virtual void vtkConnectivityFilter::ColorRegionsOff | ( |  | ) | `[virtual]`

| Turn on/off the coloring of connected regions.

void vtkConnectivityFilter::Execute | ( |  | ) | `[protected, virtual]`

| This method is the old style execute method Reimplemented from vtkSource.

void vtkConnectivityFilter::TraverseAndMark | ( |  | ) | `[protected]`

## Member Data Documentation

int vtkConnectivityFilter::ColorRegions`[protected]`

| Definition at line 174 of file vtkConnectivityFilter.h.

int vtkConnectivityFilter::ExtractionMode`[protected]`

| Definition at line 175 of file vtkConnectivityFilter.h. Referenced by GetExtractionModeAsString().

vtkIdList* vtkConnectivityFilter::Seeds`[protected]`

| Definition at line 176 of file vtkConnectivityFilter.h.

vtkIdList* vtkConnectivityFilter::SpecifiedRegionIds`[protected]`

| Definition at line 177 of file vtkConnectivityFilter.h.

vtkIntArray* vtkConnectivityFilter::RegionSizes`[protected]`

| Definition at line 178 of file vtkConnectivityFilter.h.

float vtkConnectivityFilter::ClosestPoint[3]`[protected]`

| Definition at line 180 of file vtkConnectivityFilter.h.

int vtkConnectivityFilter::ScalarConnectivity`[protected]`

| Definition at line 182 of file vtkConnectivityFilter.h.

float vtkConnectivityFilter::ScalarRange[2]`[protected]`

| Definition at line 183 of file vtkConnectivityFilter.h.

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

- Graphics/vtkConnectivityFilter.h