VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkSelectEnclosedPoints Class Reference

mark points as to whether they are inside a closed surface More...

#include <vtkSelectEnclosedPoints.h>

Inherits vtkDataSetAlgorithm.

Public Member Functions

int IsInside (vtkIdType inputPtId)
 
void SetSurfaceData (vtkPolyData *pd)
 
void SetSurfaceConnection (vtkAlgorithmOutput *algOutput)
 
vtkPolyData * GetSurface ()
 
vtkPolyData * GetSurface (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
 
vtkUnsignedCharArray * InsideOutsideArray
 
vtkCellLocator * CellLocator
 
vtkIdList * CellIds
 
vtkGenericCell * Cell
 
vtkPolyData * Surface
 
double Bounds [6]
 
double Length
 
typedef vtkDataSetAlgorithm Superclass
 
static int IsTypeOf (const char *type)
 
static vtkSelectEnclosedPointsSafeDownCast (vtkObjectBase *o)
 
virtual int IsA (const char *type)
 
vtkSelectEnclosedPointsNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual vtkObjectBase * NewInstanceInternal () const
 

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 57 of file vtkSelectEnclosedPoints.h.

Member Typedef Documentation

typedef vtkDataSetAlgorithm vtkSelectEnclosedPoints::Superclass

Standard methods for type information and printing.

Definition at line 62 of file vtkSelectEnclosedPoints.h.

Constructor & Destructor Documentation

vtkSelectEnclosedPoints::vtkSelectEnclosedPoints ( )
protected
vtkSelectEnclosedPoints::~vtkSelectEnclosedPoints ( )
protected

Member Function Documentation

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

Standard methods for type information and printing.

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

Standard methods for type information and printing.

static vtkSelectEnclosedPoints* vtkSelectEnclosedPoints::SafeDownCast ( vtkObjectBase *  o)
static

Standard methods for type information and printing.

virtual vtkObjectBase* vtkSelectEnclosedPoints::NewInstanceInternal ( ) const
protectedvirtual

Standard methods for type information and printing.

vtkSelectEnclosedPoints* vtkSelectEnclosedPoints::NewInstance ( ) const

Standard methods for type information and printing.

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

Standard methods for type information and printing.

static vtkSelectEnclosedPoints* vtkSelectEnclosedPoints::New ( )
static

Instantiate this class.

void vtkSelectEnclosedPoints::SetSurfaceData ( 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 *   
)
protectedvirtual
virtual int vtkSelectEnclosedPoints::FillInputPortInformation ( int  ,
vtkInformation *   
)
protectedvirtual
virtual void vtkSelectEnclosedPoints::ReportReferences ( vtkGarbageCollector *  )
protectedvirtual

Member Data Documentation

int vtkSelectEnclosedPoints::CheckSurface
protected

Definition at line 126 of file vtkSelectEnclosedPoints.h.

int vtkSelectEnclosedPoints::InsideOut
protected

Definition at line 127 of file vtkSelectEnclosedPoints.h.

double vtkSelectEnclosedPoints::Tolerance
protected

Definition at line 128 of file vtkSelectEnclosedPoints.h.

vtkUnsignedCharArray* vtkSelectEnclosedPoints::InsideOutsideArray
protected

Definition at line 131 of file vtkSelectEnclosedPoints.h.

vtkCellLocator* vtkSelectEnclosedPoints::CellLocator
protected

Definition at line 134 of file vtkSelectEnclosedPoints.h.

vtkIdList* vtkSelectEnclosedPoints::CellIds
protected

Definition at line 135 of file vtkSelectEnclosedPoints.h.

vtkGenericCell* vtkSelectEnclosedPoints::Cell
protected

Definition at line 136 of file vtkSelectEnclosedPoints.h.

vtkPolyData* vtkSelectEnclosedPoints::Surface
protected

Definition at line 137 of file vtkSelectEnclosedPoints.h.

double vtkSelectEnclosedPoints::Bounds[6]
protected

Definition at line 138 of file vtkSelectEnclosedPoints.h.

double vtkSelectEnclosedPoints::Length
protected

Definition at line 139 of file vtkSelectEnclosedPoints.h.


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