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

implicit function for convex set of planes More...

#include <vtkPlanes.h>

Inherits vtkImplicitFunction.

Collaboration diagram for vtkPlanes:
[legend]

Public Types

typedef vtkImplicitFunction Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkPlanesNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void EvaluateGradient (double x[3], double n[3])
 
void SetFrustumPlanes (double planes[24])
 
int GetNumberOfPlanes ()
 
double EvaluateFunction (double x[3])
 
double EvaluateFunction (double x, double y, double z)
 
virtual void SetPoints (vtkPoints *)
 
virtual vtkPointsGetPoints ()
 
void SetNormals (vtkDataArray *normals)
 
virtual vtkDataArrayGetNormals ()
 
void SetBounds (double bounds[6])
 
void SetBounds (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
 
vtkPlaneGetPlane (int i)
 
void GetPlane (int i, vtkPlane *plane)
 

Static Public Member Functions

static vtkPlanesNew ()
 
static int IsTypeOf (const char *type)
 
static vtkPlanesSafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkPlanes ()
 
 ~vtkPlanes ()
 

Protected Attributes

vtkPointsPoints
 
vtkDataArrayNormals
 
vtkPlanePlane
 

Detailed Description

implicit function for convex set of planes

vtkPlanes computes the implicit function and function gradient for a set of planes. The planes must define a convex space.

The function value is the closest first order distance of a point to the convex region defined by the planes. The function gradient is the plane normal at the function value. Note that the normals must point outside of the convex region. Thus, a negative function value means that a point is inside the convex region.

There are several methods to define the set of planes. The most general is to supply an instance of vtkPoints and an instance of vtkDataArray. (The points define a point on the plane, and the normals corresponding plane normals.) Two other specialized ways are to 1) supply six planes defining the view frustrum of a camera, and 2) provide a bounding box.

See Also
vtkCamera
Examples:
vtkPlanes (Examples)
Tests:
vtkPlanes (Tests)

Definition at line 53 of file vtkPlanes.h.

Member Typedef Documentation

typedef vtkImplicitFunction vtkPlanes::Superclass

Definition at line 57 of file vtkPlanes.h.

Constructor & Destructor Documentation

vtkPlanes::vtkPlanes ( )
protected
vtkPlanes::~vtkPlanes ( )
protected

Member Function Documentation

static vtkPlanes* vtkPlanes::New ( )
static
static int vtkPlanes::IsTypeOf ( const char *  type)
static
virtual int vtkPlanes::IsA ( const char *  type)
virtual
static vtkPlanes* vtkPlanes::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkPlanes::NewInstanceInternal ( ) const
protectedvirtual
vtkPlanes* vtkPlanes::NewInstance ( ) const
void vtkPlanes::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
double vtkPlanes::EvaluateFunction ( double  x[3])

Evaluate plane equations. Return smallest absolute value.

double vtkPlanes::EvaluateFunction ( double  x,
double  y,
double  z 
)
inline

Evaluate plane equations. Return smallest absolute value.

Definition at line 63 of file vtkPlanes.h.

void vtkPlanes::EvaluateGradient ( double  x[3],
double  n[3] 
)

Evaluate planes gradient.

virtual void vtkPlanes::SetPoints ( vtkPoints )
virtual

Specify a list of points defining points through which the planes pass.

virtual vtkPoints* vtkPlanes::GetPoints ( )
virtual

Specify a list of points defining points through which the planes pass.

void vtkPlanes::SetNormals ( vtkDataArray normals)

Specify a list of normal vectors for the planes. There is a one-to-one correspondence between plane points and plane normals.

virtual vtkDataArray* vtkPlanes::GetNormals ( )
virtual

Specify a list of normal vectors for the planes. There is a one-to-one correspondence between plane points and plane normals.

void vtkPlanes::SetFrustumPlanes ( double  planes[24])

An alternative method to specify six planes defined by the camera view frustrum. See vtkCamera::GetFrustumPlanes() documentation.

void vtkPlanes::SetBounds ( double  bounds[6])

An alternative method to specify six planes defined by a bounding box. The bounding box is a six-vector defined as (xmin,xmax,ymin,ymax,zmin,zmax). It defines six planes orthogonal to the x-y-z coordinate axes.

void vtkPlanes::SetBounds ( double  xmin,
double  xmax,
double  ymin,
double  ymax,
double  zmin,
double  zmax 
)

An alternative method to specify six planes defined by a bounding box. The bounding box is a six-vector defined as (xmin,xmax,ymin,ymax,zmin,zmax). It defines six planes orthogonal to the x-y-z coordinate axes.

int vtkPlanes::GetNumberOfPlanes ( )

Return the number of planes in the set of planes.

vtkPlane* vtkPlanes::GetPlane ( int  i)

Create and return a pointer to a vtkPlane object at the ith position. Asking for a plane outside the allowable range returns NULL. This method always returns the same object. Use GetPlane(int i, vtkPlane plane) instead

void vtkPlanes::GetPlane ( int  i,
vtkPlane plane 
)

Create and return a pointer to a vtkPlane object at the ith position. Asking for a plane outside the allowable range returns NULL. This method always returns the same object. Use GetPlane(int i, vtkPlane plane) instead

Member Data Documentation

vtkPoints* vtkPlanes::Points
protected

Definition at line 114 of file vtkPlanes.h.

vtkDataArray* vtkPlanes::Normals
protected

Definition at line 115 of file vtkPlanes.h.

vtkPlane* vtkPlanes::Plane
protected

Definition at line 116 of file vtkPlanes.h.


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