VTK
|
implicit function for convex set of planes More...
#include <vtkPlanes.h>
Inherits vtkImplicitFunction.
Public Types | |
typedef vtkImplicitFunction | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkPlanes * | NewInstance () 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 vtkPoints * | GetPoints () |
void | SetNormals (vtkDataArray *normals) |
virtual vtkDataArray * | GetNormals () |
void | SetBounds (double bounds[6]) |
void | SetBounds (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) |
vtkPlane * | GetPlane (int i) |
void | GetPlane (int i, vtkPlane *plane) |
Static Public Member Functions | |
static vtkPlanes * | New () |
static int | IsTypeOf (const char *type) |
static vtkPlanes * | SafeDownCast (vtkObjectBase *o) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkPlanes () | |
~vtkPlanes () | |
Protected Attributes | |
vtkPoints * | Points |
vtkDataArray * | Normals |
vtkPlane * | Plane |
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.
Definition at line 53 of file vtkPlanes.h.
typedef vtkImplicitFunction vtkPlanes::Superclass |
Definition at line 57 of file vtkPlanes.h.
|
protected |
|
protected |
|
static |
|
static |
|
virtual |
|
static |
|
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.
|
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 |
Specify a list of points defining points through which the planes pass.
|
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 |
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 | ) |
void vtkPlanes::GetPlane | ( | int | i, |
vtkPlane * | plane | ||
) |
|
protected |
Definition at line 114 of file vtkPlanes.h.
|
protected |
Definition at line 115 of file vtkPlanes.h.
|
protected |
Definition at line 116 of file vtkPlanes.h.