h : a x + b y + c z + d = 0
The plane splits in a positive and a negative side. A point with Cartesian coordinates 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.
| |||
| |||
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 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 two-dimensional 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 -plane, with the -coordinate removed. | ||
|
| |
returns a point , 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 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 on a point of h and the orthogonal direction of h. |