Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# vtkPlane Class Reference

`#include <vtkPlane.h>`

Inheritance diagram for vtkPlane:

[legend]
Collaboration diagram for vtkPlane:

[legend]
List of all members.

## Detailed Description

perform various plane computations

Date:
  2003/01/06 20:36:14

Revision:
  1.50

vtkPlane provides methods for various plane computations. These include projecting points onto a plane, evaluating the plane equation, and returning plane normal. vtkPlane is a concrete implementation of the abstract class vtkImplicitFunction.

Created by:
  - Schroeder, Will

CVS contributions (if > 5%):
  - Schroeder, Will (55%)
  - Miller, Jim (25%)
  - Martin, Ken (10%)
  - Kelly, Ann (5%)

CVS logs (CVSweb):
  - .`h` (`/Common/vtkPlane.h)`
  - .`cxx` (`/Common/vtkPlane.cxx)`

Examples:
  vtkPlane (Examples)

Tests:
  vtkPlane (Tests)

Definition at line 52 of file vtkPlane.h.

## Public Types

typedef vtkImplicitFunction | Superclass

## Public Methods

virtual const char * | GetClassName ()
virtual int | IsA (const char *type)
void | PrintSelf (ostream &os, vtkIndent indent)
void | EvaluateGradient (float x[3], float g[3])
void | Push (float distance)
float | EvaluateFunction (float x[3])
float | EvaluateFunction (float x, float y, float z)
virtual void | SetNormal (float, float, float)
virtual void | SetNormal (float[3])
virtual float * | GetNormal ()
virtual void | GetNormal (float data[3])
virtual void | SetOrigin (float, float, float)
virtual void | SetOrigin (float[3])
virtual float * | GetOrigin ()
virtual void | GetOrigin (float data[3])

## Static Public Methods

vtkPlane * | New ()
int | IsTypeOf (const char *type)
vtkPlane * | SafeDownCast (vtkObject *o)
float | DistanceToPlane (float x[3], float n[3], float p0[3])
void | ProjectPoint (float x[3], float origin[3], float normal[3], float xproj[3])
void | ProjectPoint (double x[3], double origin[3], double normal[3], double xproj[3])
void | GeneralizedProjectPoint (float x[3], float origin[3], float normal[3], float xproj[3])
float | Evaluate (float normal[3], float origin[3], float x[3])
float | Evaluate (double normal[3], double origin[3], double x[3])
int | IntersectWithLine (float p1[3], float p2[3], float n[3], float p0[3], float &t, float x[3])

## Protected Methods

| vtkPlane ()
| ~vtkPlane ()

## Protected Attributes

float | Normal [3]
float | Origin [3]

## Member Typedef Documentation

typedef vtkImplicitFunction vtkPlane::Superclass

| Reimplemented from vtkImplicitFunction. Definition at line 58 of file vtkPlane.h.

## Constructor & Destructor Documentation

vtkPlane::vtkPlane | ( |  | ) | `[protected]`

vtkPlane::~vtkPlane | ( |  | ) | `[inline, protected]`

| Definition at line 129 of file vtkPlane.h.

## Member Function Documentation

vtkPlane* vtkPlane::New | ( |  | ) | `[static]`

| Construct plane passing through origin and normal to z-axis. Reimplemented from vtkObject.

virtual const char* vtkPlane::GetClassName | ( |  | ) | `[virtual]`

| Reimplemented from vtkImplicitFunction.

int vtkPlane::IsTypeOf | ( | const char * | type | ) | `[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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkImplicitFunction.

virtual int vtkPlane::IsA | ( | const char * | type | ) | `[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 vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkImplicitFunction.

vtkPlane* vtkPlane::SafeDownCast | ( | vtkObject * | o | ) | `[static]`

| Reimplemented from vtkImplicitFunction.

void vtkPlane::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 vtkImplicitFunction.

float vtkPlane::EvaluateFunction | ( | float | x[3] | ) | `[virtual]`

| Evaluate plane equation for point x[3]. Implements vtkImplicitFunction.

float vtkPlane::EvaluateFunction | ( | float | x,
|  | float | y,
|  | float | z
| ) | `[inline]`

| Evaluate plane equation for point x[3]. Reimplemented from vtkImplicitFunction. Definition at line 64 of file vtkPlane.h. References vtkImplicitFunction::EvaluateFunction().

void vtkPlane::EvaluateGradient | ( | float | x[3],
|  | float | g[3]
| ) | `[virtual]`

| Evaluate function gradient at point x[3]. Implements vtkImplicitFunction.

virtual void vtkPlane::SetNormal | ( | float | ,
|  | float | ,
|  | float |
| ) | `[virtual]`

| Set/get plane normal. Plane is defined by point and normal.

virtual void vtkPlane::SetNormal | ( | float | [3] | ) | `[virtual]`

| Set/get plane normal. Plane is defined by point and normal.

virtual float* vtkPlane::GetNormal | ( |  | ) | `[virtual]`

| Set/get plane normal. Plane is defined by point and normal.

virtual void vtkPlane::GetNormal | ( | float | data[3] | ) | `[virtual]`

| Set/get plane normal. Plane is defined by point and normal.

virtual void vtkPlane::SetOrigin | ( | float | ,
|  | float | ,
|  | float |
| ) | `[virtual]`

| Set/get point through which plane passes. Plane is defined by point and normal.

virtual void vtkPlane::SetOrigin | ( | float | [3] | ) | `[virtual]`

| Set/get point through which plane passes. Plane is defined by point and normal.

virtual float* vtkPlane::GetOrigin | ( |  | ) | `[virtual]`

| Set/get point through which plane passes. Plane is defined by point and normal.

virtual void vtkPlane::GetOrigin | ( | float | data[3] | ) | `[virtual]`

| Set/get point through which plane passes. Plane is defined by point and normal.

void vtkPlane::Push | ( | float | distance | ) |

| Translate the plane in the direction of the normal by the distance specified. Negative values move the plane in the opposite direction.

void vtkPlane::ProjectPoint | ( | float | x[3],
|  | float | origin[3],
|  | float | normal[3],
|  | float | xproj[3]
| ) | `[static]`

| Project a point x onto plane defined by origin and normal. The projected point is returned in xproj. NOTE : normal assumed to have magnitude 1.

void vtkPlane::ProjectPoint | ( | double | x[3],
|  | double | origin[3],
|  | double | normal[3],
|  | double | xproj[3]
| ) | `[static]`

| Project a point x onto plane defined by origin and normal. The projected point is returned in xproj. NOTE : normal assumed to have magnitude 1.

void vtkPlane::GeneralizedProjectPoint | ( | float | x[3],
|  | float | origin[3],
|  | float | normal[3],
|  | float | xproj[3]
| ) | `[static]`

| Project a point x onto plane defined by origin and normal. The projected point is returned in xproj. NOTE : normal does NOT have to have magnitude 1.

float vtkPlane::Evaluate | ( | float | normal[3],
|  | float | origin[3],
|  | float | x[3]
| ) | `[inline, static]`

| Quick evaluation of plane equation n(x-origin)=0. Definition at line 139 of file vtkPlane.h.

float vtkPlane::Evaluate | ( | double | normal[3],
|  | double | origin[3],
|  | double | x[3]
| ) | `[inline, static]`

| Quick evaluation of plane equation n(x-origin)=0. Definition at line 144 of file vtkPlane.h.

float vtkPlane::DistanceToPlane | ( | float | x[3],
|  | float | n[3],
|  | float | p0[3]
| ) | `[inline, static]`

| Return the distance of a point x to a plane defined by n(x-p0) = 0. The normal n[3] must be magnitude=1. Definition at line 150 of file vtkPlane.h.

int vtkPlane::IntersectWithLine | ( | float | p1[3],
|  | float | p2[3],
|  | float | n[3],
|  | float | p0[3],
|  | float & | t,
|  | float | x[3]
| ) | `[static]`

| Given a line defined by the two points p1,p2; and a plane defined by the normal n and point p0, compute an intersection. The parametric coordinate along the line is returned in t, and the coordinates of intersection are returned in x. A zero is returned if the plane and line are parallel.

## Member Data Documentation

float vtkPlane::Normal[3]`[protected]`

| Definition at line 131 of file vtkPlane.h.

float vtkPlane::Origin[3]`[protected]`

| Definition at line 132 of file vtkPlane.h.

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

- Common/vtkPlane.h