vtkExtractSelectedFrustum Class Reference

#include <vtkExtractSelectedFrustum.h>

Inheritance diagram for vtkExtractSelectedFrustum:

Inheritance graph
[legend]
Collaboration diagram for vtkExtractSelectedFrustum:

Collaboration graph
[legend]

List of all members.


Detailed Description

Returns the portion of the input dataset that lies within a selection frustum.

This class intersects the input DataSet with a frustum and determines which cells and points lie within the frustum. The frustum is defined with a vtkPlanes containing six cutting planes. The output is a DataSet that is either a shallow copy of the input dataset with two new "vtkInsidedness" attribute arrays, or a completely new UnstructuredGrid that contains only the cells and points of the input that are inside the frustum. The PreserveTopology flag controls which occurs. When PreserveTopology is off this filter adds a scalar array called vtkOriginalCellIds that says what input cell produced each output cell. This is an example of a Pedigree ID which helps to trace back results.

See also:
vtkExtractGeometry, vtkAreaPicker, vtkExtractSelection, vtkSelection
Tests:
vtkExtractSelectedFrustum (Tests)

Definition at line 50 of file vtkExtractSelectedFrustum.h.


Public Types

typedef vtkExtractSelectionBase Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
unsigned long GetMTime ()
void CreateFrustum (double vertices[32])
int OverallBoundsTest (double *bounds)
virtual void SetFrustum (vtkPlanes *)
virtual vtkPlanesGetFrustum ()
virtual vtkPointsGetClipPoints ()
virtual void SetFieldType (int)
virtual int GetFieldType ()
virtual void SetContainingCells (int)
virtual int GetContainingCells ()
virtual void SetShowBounds (int)
virtual int GetShowBounds ()
virtual void ShowBoundsOn ()
virtual void ShowBoundsOff ()
virtual void SetInsideOut (int)
virtual int GetInsideOut ()
virtual void InsideOutOn ()
virtual void InsideOutOff ()

Static Public Member Functions

static vtkExtractSelectedFrustumNew ()
static int IsTypeOf (const char *type)
static vtkExtractSelectedFrustumSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkExtractSelectedFrustum (vtkPlanes *f=NULL)
 ~vtkExtractSelectedFrustum ()
virtual int RequestDataObject (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
int ABoxFrustumIsect (double bounds[], vtkCell *cell)
int FrustumClipPolygon (int nverts, double *ivlist, double *wvlist, double *ovlist)
void PlaneClipPolygon (int nverts, double *ivlist, int pid, int &noverts, double *ovlist)
void PlaneClipEdge (double *V0, double *V1, int pid, int &noverts, double *overts)
int IsectDegenerateCell (vtkCell *cell)
void ComputePlane (int idx, double v0[3], double v1[2], double v2[3], vtkPoints *points, vtkDoubleArray *norms)

Protected Attributes

int FieldType
int ContainingCells
int InsideOut
vtkPlanesFrustum
int np_vertids [6][2]
vtkPointsClipPoints
int NumRejects
int NumIsects
int NumAccepts
int ShowBounds

Member Typedef Documentation

Reimplemented from vtkExtractSelectionBase.

Definition at line 54 of file vtkExtractSelectedFrustum.h.


Constructor & Destructor Documentation

vtkExtractSelectedFrustum::vtkExtractSelectedFrustum ( vtkPlanes f = NULL  )  [protected]

vtkExtractSelectedFrustum::~vtkExtractSelectedFrustum (  )  [protected]


Member Function Documentation

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

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

Reimplemented from vtkDataObjectAlgorithm.

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

Reimplemented from vtkExtractSelectionBase.

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

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

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

Reimplemented from vtkExtractSelectionBase.

void vtkExtractSelectedFrustum::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 vtkExtractSelectionBase.

unsigned long vtkExtractSelectedFrustum::GetMTime (  )  [virtual]

Return the MTime taking into account changes to the Frustum

Reimplemented from vtkObject.

virtual void vtkExtractSelectedFrustum::SetFrustum ( vtkPlanes  )  [virtual]

Set the selection frustum. The planes object must contain six planes.

virtual vtkPlanes* vtkExtractSelectedFrustum::GetFrustum (  )  [virtual]

Set the selection frustum. The planes object must contain six planes.

void vtkExtractSelectedFrustum::CreateFrustum ( double  vertices[32]  ) 

Given eight vertices, creates a frustum. each pt is x,y,z,1 in the following order near lower left, far lower left near upper left, far upper left near lower right, far lower right near upper right, far upper right

virtual vtkPoints* vtkExtractSelectedFrustum::GetClipPoints (  )  [virtual]

Return eight points that define the selection frustum. Valid if create Frustum was used, invalid if SetFrustum was.

virtual void vtkExtractSelectedFrustum::SetFieldType ( int   )  [virtual]

Sets/gets the intersection test type.

virtual int vtkExtractSelectedFrustum::GetFieldType (  )  [virtual]

Sets/gets the intersection test type.

virtual void vtkExtractSelectedFrustum::SetContainingCells ( int   )  [virtual]

Sets/gets the intersection test type. Only meaningful when fieldType is vtkSelection::POINT

virtual int vtkExtractSelectedFrustum::GetContainingCells (  )  [virtual]

Sets/gets the intersection test type. Only meaningful when fieldType is vtkSelection::POINT

int vtkExtractSelectedFrustum::OverallBoundsTest ( double *  bounds  ) 

Does a quick test on the AABBox defined by the bounds.

virtual void vtkExtractSelectedFrustum::SetShowBounds ( int   )  [virtual]

When On, this returns an unstructured grid that outlines selection area. Off is the default.

virtual int vtkExtractSelectedFrustum::GetShowBounds (  )  [virtual]

When On, this returns an unstructured grid that outlines selection area. Off is the default.

virtual void vtkExtractSelectedFrustum::ShowBoundsOn (  )  [virtual]

When On, this returns an unstructured grid that outlines selection area. Off is the default.

virtual void vtkExtractSelectedFrustum::ShowBoundsOff (  )  [virtual]

When On, this returns an unstructured grid that outlines selection area. Off is the default.

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

When on, extracts cells outside the frustum instead of inside.

virtual int vtkExtractSelectedFrustum::GetInsideOut (  )  [virtual]

When on, extracts cells outside the frustum instead of inside.

virtual void vtkExtractSelectedFrustum::InsideOutOn (  )  [virtual]

When on, extracts cells outside the frustum instead of inside.

virtual void vtkExtractSelectedFrustum::InsideOutOff (  )  [virtual]

When on, extracts cells outside the frustum instead of inside.

virtual int vtkExtractSelectedFrustum::RequestDataObject ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

Sets up empty output dataset

Reimplemented from vtkExtractSelectionBase.

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

Reimplemented from vtkDataObjectAlgorithm.

int vtkExtractSelectedFrustum::ABoxFrustumIsect ( double  bounds[],
vtkCell cell 
) [protected]

int vtkExtractSelectedFrustum::FrustumClipPolygon ( int  nverts,
double *  ivlist,
double *  wvlist,
double *  ovlist 
) [protected]

void vtkExtractSelectedFrustum::PlaneClipPolygon ( int  nverts,
double *  ivlist,
int  pid,
int &  noverts,
double *  ovlist 
) [protected]

void vtkExtractSelectedFrustum::PlaneClipEdge ( double *  V0,
double *  V1,
int  pid,
int &  noverts,
double *  overts 
) [protected]

int vtkExtractSelectedFrustum::IsectDegenerateCell ( vtkCell cell  )  [protected]

void vtkExtractSelectedFrustum::ComputePlane ( int  idx,
double  v0[3],
double  v1[2],
double  v2[3],
vtkPoints points,
vtkDoubleArray norms 
) [protected]


Member Data Documentation

Definition at line 137 of file vtkExtractSelectedFrustum.h.

Definition at line 138 of file vtkExtractSelectedFrustum.h.

Definition at line 139 of file vtkExtractSelectedFrustum.h.

Definition at line 142 of file vtkExtractSelectedFrustum.h.

Definition at line 143 of file vtkExtractSelectedFrustum.h.

Definition at line 146 of file vtkExtractSelectedFrustum.h.

Definition at line 147 of file vtkExtractSelectedFrustum.h.

Definition at line 148 of file vtkExtractSelectedFrustum.h.

Definition at line 149 of file vtkExtractSelectedFrustum.h.

Definition at line 150 of file vtkExtractSelectedFrustum.h.


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

Generated on Mon Sep 27 18:23:47 2010 for VTK by  doxygen 1.5.6