
Class describing a geometrical plane in 3 dimensions.
A Plane3D is a 2 dimensional surface spanned by two linearly independent vectors.
The plane is described by the equation
\f$ a*x + b*y + c*z + d = 0 \f$ where (a,b,c) are the components of the
normal vector to the plane \f$ n = (a,b,c) \f$ and \f$ d = - n \dot x \f$, where x is any point
belonging to plane.
More information on the mathematics describing a plane in 3D is available on
<A HREF=http://mathworld.wolfram.com/Plane.html>MathWord</A>.
The Plane3D class contains the 4 scalar values in double which represent the
four coefficients, fA, fB, fC, fD. fA, fB, fC are the normal components normalized to 1,
i.e. fA**2 + fB**2 + fC**2 = 1
@ingroup GenVector
| void | Normalize() |

generic constructors from the four scalar values describing the plane
according to the equation ax + by + cz + d = 0
\param a scalar value
\param b scalar value
\param c scalar value
\param d sxcalar value
constructor from three generic point belonging to the plane
\param p1 point1 expressed as ROOT::Math::DisplacementVector3D<Cartesian3D<double> >
\param p2 point2 expressed as ROOT::Math::DisplacementVector3D<Cartesian3D<double> >
\param p3 point3 expressed as ROOT::Math::DisplacementVector3D<Cartesian3D<double> >
compiler-generated copy ctor and dtor are fine.
------ assignment ------
Assignment operator from other Plane3D class
Return the a coefficient of the plane equation \f$ a*x + b*y + c*z + d = 0 \f$. It is also the
x-component of the vector perpendicular to the plane.
{ return fA; }
Return the b coefficient of the plane equation \f$ a*x + b*y + c*z + d = 0 \f$. It is also the
y-component of the vector perpendicular to the plane
{ return fB; }
Return the c coefficient of the plane equation \f$ a*x + b*y + c*z + d = 0 \f$. It is also the
z-component of the vector perpendicular to the plane
{ return fC; }
Return the Hesse Distance (distance from the origin) of the plane or
the d coefficient expressed in normalize form
Return the signed distance to a Point.
The distance is signed positive if the Point is in the same side of the
normal vector to the plane.
\param p Point expressed in Cartesian Coordinates
Return the projection of a Cartesian point to a plane
\param p Point expressed as PositionVector3D<Cartesian3D<double> >
------------------- Equality -----------------
Exact equality