h : a x + b y + c z + d = 0
The plane splits $$ ^{3} in a positive and a negative side. A point $$p with Cartesian coordinates $$(px, py, pz) is on the positive side of h, iff a px + b py +c pz + d > 0. It is on the negative side, iff a px + b py +c pz + d < 0.
 
creates a plane h defined by the equation
a px + b py + c pz + d = 0.
Notice that h is degenerate if
a = b = c = 0.
 
 
creates a plane h passing through the points p,
q and r. The plane is oriented such that p,
q and r are oriented in a positive sense
(that is counterclockwise) when seen from the positive side of h.
Notice that h is degenerate if the points are collinear.
 
 
introduces a plane h that passes through point p and
that is orthogonal to v.
 
 
introduces a plane h that passes through point p and
that has as an orthogonal direction equal to d.
 
 
introduces a plane h that is defined through the three points
l.point(0), l.point(1) and p.
 
 
introduces a plane h that is defined through the three points
r.point(0), r.point(1) and p.
 
 
introduces a plane h that is defined through the three points
s.source(), s.target() and p.


 Test for equality: two planes are equal, iff they have a non empty intersection and the same orientation. 

 Test for inequality. 

 returns the first coefficient of h. 

 returns the second coefficient of h. 

 returns the third coefficient of h. 

 returns the fourth coefficient of h. 

 
returns the line that is perpendicular to h and that passes through point p. The line is oriented from the negative to the positive side of h.  

 
returns the orthogonal projection of $$p on h.  

 returns the plane with opposite orientation. 

 returns an arbitrary point on h. 

 returns a vector that is orthogonal to h and that is directed to the positive side of h. 

 returns the direction that is orthogonal to h and that is directed to the positive side of h. 

 returns a vector orthogonal to orthogonal_vector(). 

 returns a vector that is both orthogonal to base1(), and to orthogonal_vector(), and such that the result of orientation( point(), point() + base1(), point()+base2(), point() + orthogonal_vector() ) is positive. 
The following functions provide conversion between a plane and CGAL's twodimensional space. The transformation is affine, but not necessarily an isometry. This means, the transformation preserves combinatorics, but not distances.

 returns the image point of the projection of p under an affine transformation, which maps h onto the $$xyplane, with the $$zcoordinate removed. 

 returns a point $$q, such that to_2d( to_3d( p )) is equal to p. 

 
returns either ON_ORIENTED_BOUNDARY, or the constant ON_POSITIVE_SIDE, or the constant ON_NEGATIVE_SIDE, determined by the position of $$p relative to the oriented plane h. 
For convenience we provide the following Boolean functions:




 

 




 Plane h is degenerate, if the coefficients a, b, and c of the plane equation are zero. 

 
returns the plane obtained by applying $$t on a point of h and the orthogonal direction of h. 