## HepPlane3D |

`HepPlane3D` is a class describing an infinite plane in 3D.
Transformations (translations, rotations, scalings and
reflections) of `HepPlane3D` are performed by
`HepTransform3D`.

`HepPoint3D`,
`HepNormal3D`,
`HepVector3D`.
`HepTransform3D`,

#include "CLHEP/Geometry/Plane3D.h" class HepPlane3D

**Constructor**`HepPlane3D(HepDouble a=0, HepDouble b=0, HepDouble c=0, HepDouble d=0)`- Construct a plane given by equation
*Ax+By+Cz+D=0*. **Constructor**`HepPlane3D(const HepNormal3D &n, const HepPoint3D &p)`- Construct a plane given by normal and point.
**Constructor**`HepPlane3D(const HepPoint3D &p1, const HepPoint3D &p2, const HepPoint3D &p3)`- Construct a plane given by three points.
**Copy constructor**`HepPlane3D(const HepPlane3D &plane)`**=**`HepPlane3D & operator = (const HepPlane3D &plane)`- Assignment.
**==**`HepBoolean operator == (const HepPlane3D &p) const`- Test for equality.
**!=**`HepBoolean operator != (const HepPlane3D &p) const`- Test for inequality.
**a**`HepDouble a() const`- Return first coefficient in the plane equation
*Ax+By+Cz+D=0*. **b**`HepDouble b() const`- Return second coefficient in the plane equation
*Ax+By+Cz+D=0*. **c**`HepDouble c() const`- Return third coefficient in the plane equation
*Ax+By+Cz+D=0*. **d**`HepDouble d() const`- Return free coefficient in the plane equation
*Ax+By+Cz+D=0*. **distance**`HepDouble distance(const HepPoint3D &p)`- Distance from the point.
**normal**`HepNormal3D normal() const`- Return normal.
**normalize**`HepPlane3D & normalize()`- Normalize the plane equation.
**point**`HepPoint3D point(const HepPoint3D &p)`- Return the projection of a point to the plane.
`HepPoint3D point()`- Projection of the origin to the plane.
**transform**`HepPlane3D & transform(HepTransform3D &m)`- Affine trnasformation of the plane.

**<<**`HepStd::ostream & operator << (HepStd::ostream &os, const HepPlane3D &plane)`- Output to a stream.

EVC