vtkSelectEnclosedPoints Class Reference

#include <vtkSelectEnclosedPoints.h>

Inheritance diagram for vtkSelectEnclosedPoints:

Inheritance graph
[legend]
Collaboration diagram for vtkSelectEnclosedPoints:

Collaboration graph
[legend]

List of all members.


Detailed Description

mark points as to whether they are inside a closed surface

vtkSelectEnclosedPoints is a filter that evaluates all the input points to determine whether they are in an enclosed surface. The filter produces a (0,1) mask (in the form of a vtkDataArray) that indicates whether points are outside (mask value=0) or inside (mask value=1) a provided surface. (The name of the output vtkDataArray is "SelectedPointsArray".)

After running the filter, it is possible to query it as to whether a point is inside/outside by invoking the IsInside(ptId) method.

Warning:
The filter assumes that the surface is closed and manifold. A boolean flag can be set to force the filter to first check whether this is true. If false, all points will be marked outside. Note that if this check is not performed and the surface is not closed, the results are undefined.

This filter produces and output data array, but does not modify the input dataset. If you wish to extract cells or poinrs, various threshold filters are available (i.e., threshold the output array).

See also:
vtkMaskPoints
Tests:
vtkSelectEnclosedPoints (Tests)

Definition at line 56 of file vtkSelectEnclosedPoints.h.

typedef vtkDataSetAlgorithm Superclass
virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
static int IsTypeOf (const char *type)
static vtkSelectEnclosedPointsSafeDownCast (vtkObject *o)

Public Member Functions

int IsInside (vtkIdType inputPtId)
void SetSurface (vtkPolyData *pd)
void SetSurfaceConnection (vtkAlgorithmOutput *algOutput)
vtkPolyDataGetSurface ()
vtkPolyDataGetSurface (vtkInformationVector *sourceInfo)
virtual void SetInsideOut (int)
virtual void InsideOutOn ()
virtual void InsideOutOff ()
virtual int GetInsideOut ()
virtual void SetCheckSurface (int)
virtual void CheckSurfaceOn ()
virtual void CheckSurfaceOff ()
virtual int GetCheckSurface ()
virtual void SetTolerance (double)
virtual double GetTolerance ()
void Initialize (vtkPolyData *surface)
int IsInsideSurface (double x, double y, double z)
int IsInsideSurface (double x[3])
void Complete ()

Static Public Member Functions

static vtkSelectEnclosedPointsNew ()

Protected Member Functions

 vtkSelectEnclosedPoints ()
 ~vtkSelectEnclosedPoints ()
int IsSurfaceClosed (vtkPolyData *surface)
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int FillInputPortInformation (int, vtkInformation *)
virtual void ReportReferences (vtkGarbageCollector *)

Protected Attributes

int CheckSurface
int InsideOut
double Tolerance
vtkUnsignedCharArrayInsideOutsideArray
vtkCellLocatorCellLocator
vtkIdListCellIds
vtkGenericCellCell
vtkPolyDataSurface
double Bounds [6]
double Length

Member Typedef Documentation

Standard methods for type information and printing.

Reimplemented from vtkDataSetAlgorithm.

Definition at line 61 of file vtkSelectEnclosedPoints.h.


Constructor & Destructor Documentation

vtkSelectEnclosedPoints::vtkSelectEnclosedPoints (  )  [protected]

vtkSelectEnclosedPoints::~vtkSelectEnclosedPoints (  )  [protected]


Member Function Documentation

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

Standard methods for type information and printing.

Reimplemented from vtkDataSetAlgorithm.

static int vtkSelectEnclosedPoints::IsTypeOf ( const char *  type  )  [static]

Standard methods for type information and printing.

Reimplemented from vtkDataSetAlgorithm.

virtual int vtkSelectEnclosedPoints::IsA ( const char *  type  )  [virtual]

Standard methods for type information and printing.

Reimplemented from vtkDataSetAlgorithm.

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

Standard methods for type information and printing.

Reimplemented from vtkDataSetAlgorithm.

void vtkSelectEnclosedPoints::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Standard methods for type information and printing.

Reimplemented from vtkDataSetAlgorithm.

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

Instantiate this class.

Reimplemented from vtkDataSetAlgorithm.

void vtkSelectEnclosedPoints::SetSurface ( vtkPolyData pd  ) 

Set the surface to be used to test for containment. Two methods are provided: one directly for vtkPolyData, and one for the output of a filter.

void vtkSelectEnclosedPoints::SetSurfaceConnection ( vtkAlgorithmOutput algOutput  ) 

Set the surface to be used to test for containment. Two methods are provided: one directly for vtkPolyData, and one for the output of a filter.

vtkPolyData* vtkSelectEnclosedPoints::GetSurface (  ) 

Return a pointer to the enclosing surface.

vtkPolyData* vtkSelectEnclosedPoints::GetSurface ( vtkInformationVector sourceInfo  ) 

Return a pointer to the enclosing surface.

virtual void vtkSelectEnclosedPoints::SetInsideOut ( int   )  [virtual]

By default, points inside the surface are marked inside or sent to the output. If InsideOut is on, then the points outside the surface are marked inside.

virtual void vtkSelectEnclosedPoints::InsideOutOn (  )  [virtual]

By default, points inside the surface are marked inside or sent to the output. If InsideOut is on, then the points outside the surface are marked inside.

virtual void vtkSelectEnclosedPoints::InsideOutOff (  )  [virtual]

By default, points inside the surface are marked inside or sent to the output. If InsideOut is on, then the points outside the surface are marked inside.

virtual int vtkSelectEnclosedPoints::GetInsideOut (  )  [virtual]

By default, points inside the surface are marked inside or sent to the output. If InsideOut is on, then the points outside the surface are marked inside.

virtual void vtkSelectEnclosedPoints::SetCheckSurface ( int   )  [virtual]

Specify whether to check the surface for closure. If on, then the algorithm first checks to see if the surface is closed and manifold.

virtual void vtkSelectEnclosedPoints::CheckSurfaceOn (  )  [virtual]

Specify whether to check the surface for closure. If on, then the algorithm first checks to see if the surface is closed and manifold.

virtual void vtkSelectEnclosedPoints::CheckSurfaceOff (  )  [virtual]

Specify whether to check the surface for closure. If on, then the algorithm first checks to see if the surface is closed and manifold.

virtual int vtkSelectEnclosedPoints::GetCheckSurface (  )  [virtual]

Specify whether to check the surface for closure. If on, then the algorithm first checks to see if the surface is closed and manifold.

int vtkSelectEnclosedPoints::IsInside ( vtkIdType  inputPtId  ) 

Query an input point id as to whether it is inside or outside. Note that the result requires that the filter execute first.

virtual void vtkSelectEnclosedPoints::SetTolerance ( double   )  [virtual]

Specify the tolerance on the intersection. The tolerance is expressed as a fraction of the bounding box of the enclosing surface.

virtual double vtkSelectEnclosedPoints::GetTolerance (  )  [virtual]

Specify the tolerance on the intersection. The tolerance is expressed as a fraction of the bounding box of the enclosing surface.

void vtkSelectEnclosedPoints::Initialize ( vtkPolyData surface  ) 

This is a backdoor that can be used to test many points for containment. First initialize the instance, then repeated calls to IsInsideSurface() can be used without rebuilding the search structures. The complete method releases memory.

int vtkSelectEnclosedPoints::IsInsideSurface ( double  x,
double  y,
double  z 
)

This is a backdoor that can be used to test many points for containment. First initialize the instance, then repeated calls to IsInsideSurface() can be used without rebuilding the search structures. The complete method releases memory.

int vtkSelectEnclosedPoints::IsInsideSurface ( double  x[3]  ) 

This is a backdoor that can be used to test many points for containment. First initialize the instance, then repeated calls to IsInsideSurface() can be used without rebuilding the search structures. The complete method releases memory.

void vtkSelectEnclosedPoints::Complete (  ) 

This is a backdoor that can be used to test many points for containment. First initialize the instance, then repeated calls to IsInsideSurface() can be used without rebuilding the search structures. The complete method releases memory.

int vtkSelectEnclosedPoints::IsSurfaceClosed ( vtkPolyData surface  )  [protected]

virtual int vtkSelectEnclosedPoints::RequestData ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [protected, virtual]

This is called within ProcessRequest when a request asks the algorithm to do its work. This is the method you should override to do whatever the algorithm is designed to do. This happens during the fourth pass in the pipeline execution process.

Reimplemented from vtkDataSetAlgorithm.

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

virtual void vtkSelectEnclosedPoints::ReportReferences ( vtkGarbageCollector  )  [protected, virtual]

Reimplemented from vtkAlgorithm.


Member Data Documentation

Definition at line 125 of file vtkSelectEnclosedPoints.h.

Definition at line 126 of file vtkSelectEnclosedPoints.h.

Definition at line 127 of file vtkSelectEnclosedPoints.h.

Definition at line 130 of file vtkSelectEnclosedPoints.h.

Definition at line 133 of file vtkSelectEnclosedPoints.h.

Definition at line 134 of file vtkSelectEnclosedPoints.h.

Definition at line 135 of file vtkSelectEnclosedPoints.h.

Definition at line 136 of file vtkSelectEnclosedPoints.h.

double vtkSelectEnclosedPoints::Bounds[6] [protected]

Definition at line 137 of file vtkSelectEnclosedPoints.h.

double vtkSelectEnclosedPoints::Length [protected]

Definition at line 138 of file vtkSelectEnclosedPoints.h.


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

Generated on Sat Dec 27 13:48:56 2008 for VTK by  doxygen 1.5.6