\section{L\-C\-Plane3\-D Class Reference}
\label{classLCPlane3D}\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}}


Definition of a \doxyref{L\-C\-Plane3\-D}{p.}{classLCPlane3D} describing a geometrical plane in 3\-D space.  




{\ttfamily \#include $<$L\-C\-Plane3\-D.\-h$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\bf L\-C\-Plane3\-D} (double {\bf a}=0, double {\bf b}=0, double {\bf c}=1, double {\bf d}=0)
\begin{DoxyCompactList}\small\item\em Constructor from four numbers -\/ creates plane a$\ast$x+b$\ast$y+c$\ast$z+d=0. \end{DoxyCompactList}\item 
{\bf L\-C\-Plane3\-D} (L\-C\-Vector3\-D {\bf normal}, L\-C\-Vector3\-D point)
\begin{DoxyCompactList}\small\item\em Constructor from normal and point. \end{DoxyCompactList}\item 
{\bf L\-C\-Plane3\-D} (L\-C\-Vector3\-D point1, L\-C\-Vector3\-D point2, L\-C\-Vector3\-D point3)
\begin{DoxyCompactList}\small\item\em Constructor from three different points. \end{DoxyCompactList}\item 
{\bf L\-C\-Plane3\-D} (L\-C\-Vector3\-D {\bf normal}, double {\bf distance})
\begin{DoxyCompactList}\small\item\em Constructor for a plane using a normal and the Distance between Origen and the plane. \end{DoxyCompactList}\item 
{\bf L\-C\-Plane3\-D} (const {\bf L\-C\-Plane3\-D} \&plane)
\begin{DoxyCompactList}\small\item\em Copy constructor. \end{DoxyCompactList}\item 
{\bf $\sim$\-L\-C\-Plane3\-D} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
{\bf L\-C\-Plane3\-D} \& {\bf operator=} (const {\bf L\-C\-Plane3\-D} \&rhs)
\begin{DoxyCompactList}\small\item\em Assignment. \end{DoxyCompactList}\item 
double {\bf a} () const 
\begin{DoxyCompactList}\small\item\em Returns the a-\/coefficient in the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. \end{DoxyCompactList}\item 
double {\bf b} () const 
\begin{DoxyCompactList}\small\item\em Returns the b-\/coefficient in the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. \end{DoxyCompactList}\item 
double {\bf c} () const 
\begin{DoxyCompactList}\small\item\em Returns the c-\/coefficient in the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. \end{DoxyCompactList}\item 
double {\bf d} () const 
\begin{DoxyCompactList}\small\item\em Returns the free member of the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. \end{DoxyCompactList}\item 
L\-C\-Vector3\-D {\bf normal} () const 
\begin{DoxyCompactList}\small\item\em Returns normal. \end{DoxyCompactList}\item 
{\bf L\-C\-Plane3\-D} \& {\bf normalize} ()
\begin{DoxyCompactList}\small\item\em Normalization. \end{DoxyCompactList}\item 
double {\bf distance} (const L\-C\-Vector3\-D \&point) const 
\begin{DoxyCompactList}\small\item\em Distance of a point to the plane. \end{DoxyCompactList}\item 
L\-C\-Vector3\-D {\bf project\-Point} (const L\-C\-Vector3\-D \&point) const 
\begin{DoxyCompactList}\small\item\em Projection of a point on to the plane. \end{DoxyCompactList}\item 
L\-C\-Vector3\-D {\bf project\-Point} () const 
\begin{DoxyCompactList}\small\item\em Projection of the origin onto the plane. \end{DoxyCompactList}\item 
bool {\bf operator==} (const {\bf L\-C\-Plane3\-D} \&plane) const 
\begin{DoxyCompactList}\small\item\em Test for equality. \end{DoxyCompactList}\item 
bool {\bf operator!=} (const {\bf L\-C\-Plane3\-D} \&plane) const 
\begin{DoxyCompactList}\small\item\em Test for inequality. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
double {\bfseries \-\_\-a}\label{classLCPlane3D_a755b7df937a4fd26461976743c3ef7e0}

\item 
double {\bfseries \-\_\-b}\label{classLCPlane3D_a764693c911d6098766f3c08b51a2497c}

\item 
double {\bfseries \-\_\-c}\label{classLCPlane3D_a8d5c2c8fa322b6ac56bc984cc7f93584}

\item 
double {\bfseries \-\_\-d}\label{classLCPlane3D_ac1922c731314bd181bbf4f2e94b40d09}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Definition of a \doxyref{L\-C\-Plane3\-D}{p.}{classLCPlane3D} describing a geometrical plane in 3\-D space. 

\begin{DoxyAuthor}{Author}
T.\-Kraemer, D\-E\-S\-Y 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id\-:}
\doxyref{L\-C\-Plane3\-D.\-h}{p.}{LCPlane3D_8h_source},v 1.\-3 2006-\/10-\/19 15\-:59\-:26 tkraemer Exp 
\end{DoxyParagraph}


\subsection{Constructor \& Destructor Documentation}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!L\-C\-Plane3\-D@{L\-C\-Plane3\-D}}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{L\-C\-Plane3\-D}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Plane3\-D\-::\-L\-C\-Plane3\-D (
\begin{DoxyParamCaption}
\item[{double}]{a = {\ttfamily 0}, }
\item[{double}]{b = {\ttfamily 0}, }
\item[{double}]{c = {\ttfamily 1}, }
\item[{double}]{d = {\ttfamily 0}}
\end{DoxyParamCaption}
)}\label{classLCPlane3D_aac2182766dcd8bdffef7c1a4fc243f8e}


Constructor from four numbers -\/ creates plane a$\ast$x+b$\ast$y+c$\ast$z+d=0. 


\begin{DoxyParams}{Parameters}
{\em a} & \\
\hline
{\em b} & \\
\hline
{\em c} & \\
\hline
{\em d} & \\
\hline
\end{DoxyParams}


References a(), b(), c(), d(), and normalize().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!L\-C\-Plane3\-D@{L\-C\-Plane3\-D}}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{L\-C\-Plane3\-D}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Plane3\-D\-::\-L\-C\-Plane3\-D (
\begin{DoxyParamCaption}
\item[{L\-C\-Vector3\-D}]{normal, }
\item[{L\-C\-Vector3\-D}]{point}
\end{DoxyParamCaption}
)}\label{classLCPlane3D_a3cd4dab7540695f6a0d069db393245b9}


Constructor from normal and point. 


\begin{DoxyParams}{Parameters}
{\em normal} & vector pointing in the direction of the normal. This vector does not have to be normalised. \\
\hline
{\em point} & Point on the plane. \\
\hline
\end{DoxyParams}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!L\-C\-Plane3\-D@{L\-C\-Plane3\-D}}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{L\-C\-Plane3\-D}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Plane3\-D\-::\-L\-C\-Plane3\-D (
\begin{DoxyParamCaption}
\item[{L\-C\-Vector3\-D}]{point1, }
\item[{L\-C\-Vector3\-D}]{point2, }
\item[{L\-C\-Vector3\-D}]{point3}
\end{DoxyParamCaption}
)}\label{classLCPlane3D_aa0ff9ee298594031d0f6c76f2b2f15bb}


Constructor from three different points. 


\begin{DoxyParams}{Parameters}
{\em point1} & Point on the plane. \\
\hline
{\em point2} & Point on the plane. \\
\hline
{\em point3} & Point on the plane. \\
\hline
\end{DoxyParams}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!L\-C\-Plane3\-D@{L\-C\-Plane3\-D}}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{L\-C\-Plane3\-D}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Plane3\-D\-::\-L\-C\-Plane3\-D (
\begin{DoxyParamCaption}
\item[{L\-C\-Vector3\-D}]{normal, }
\item[{double}]{distance}
\end{DoxyParamCaption}
)}\label{classLCPlane3D_a9d77bf977d26ba6d4c4f544254121310}


Constructor for a plane using a normal and the Distance between Origen and the plane. 


\begin{DoxyParams}{Parameters}
{\em normal} & vector pointing in the direction of the normal. This vector does not have to be normalised. \\
\hline
{\em distance} & distance is the distance from the origen to the plane. \\
\hline
\end{DoxyParams}


References distance().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!L\-C\-Plane3\-D@{L\-C\-Plane3\-D}}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{L\-C\-Plane3\-D}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Plane3\-D\-::\-L\-C\-Plane3\-D (
\begin{DoxyParamCaption}
\item[{const {\bf L\-C\-Plane3\-D} \&}]{plane}
\end{DoxyParamCaption}
)}\label{classLCPlane3D_ac38992b7d7e3b2ca64532b9d1018e16f}


Copy constructor. 


\begin{DoxyParams}{Parameters}
{\em plane} & plane is an other \doxyref{L\-C\-Plane3\-D}{p.}{classLCPlane3D}. \\
\hline
\end{DoxyParams}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!$\sim$\-L\-C\-Plane3\-D@{$\sim$\-L\-C\-Plane3\-D}}
\index{$\sim$\-L\-C\-Plane3\-D@{$\sim$\-L\-C\-Plane3\-D}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{$\sim$\-L\-C\-Plane3\-D}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Plane3\-D\-::$\sim$\-L\-C\-Plane3\-D (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{classLCPlane3D_a5a175eae54540775a0edd57095e1f391}


Destructor. 



\subsection{Member Function Documentation}
\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!a@{a}}
\index{a@{a}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{a}]{\setlength{\rightskip}{0pt plus 5cm}double L\-C\-Plane3\-D\-::a (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_ae5091a15f180a1f2d1b269eaf0670af5}


Returns the a-\/coefficient in the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. 



Referenced by L\-C\-Plane3\-D().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!b@{b}}
\index{b@{b}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{b}]{\setlength{\rightskip}{0pt plus 5cm}double L\-C\-Plane3\-D\-::b (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_a4153fdb4f2f61864f0e96f78b1786469}


Returns the b-\/coefficient in the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. 



Referenced by L\-C\-Plane3\-D().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!c@{c}}
\index{c@{c}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{c}]{\setlength{\rightskip}{0pt plus 5cm}double L\-C\-Plane3\-D\-::c (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_a672780bdb3bdab6c9896c1c0bc0368e2}


Returns the c-\/coefficient in the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. 



Referenced by L\-C\-Plane3\-D().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!d@{d}}
\index{d@{d}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{d}]{\setlength{\rightskip}{0pt plus 5cm}double L\-C\-Plane3\-D\-::d (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_af3e1bb69e42e4e32bebd3e513942a098}


Returns the free member of the plane equation\-: a$\ast$x+b$\ast$y+c$\ast$z+d=0. 



Referenced by L\-C\-Line3\-D\-::intersection\-With\-Plane(), and L\-C\-Plane3\-D().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!distance@{distance}}
\index{distance@{distance}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{distance}]{\setlength{\rightskip}{0pt plus 5cm}double L\-C\-Plane3\-D\-::distance (
\begin{DoxyParamCaption}
\item[{const L\-C\-Vector3\-D \&}]{point}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_aa3d8ba738510ebc5384dfee070c1131f}


Distance of a point to the plane. 

The value of the distance is
\begin{DoxyItemize}
\item negative if the point and the origen are on the same side of the plane
\item positive if the Point and the origen are on opposite sides of the plane. 
\begin{DoxyParams}{Parameters}
{\em point} & point is a point in space \\
\hline
\end{DoxyParams}

\end{DoxyItemize}

Referenced by Simple\-Helix\-::get\-Intersection\-With\-Plane(), L\-C\-Plane3\-D(), and project\-Point().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!normal@{normal}}
\index{normal@{normal}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{normal}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Vector3\-D L\-C\-Plane3\-D\-::normal (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_acd6c5b4af016912462e3a47b04727c49}


Returns normal. 



Referenced by Simple\-Helix\-::get\-Intersection\-With\-Plane(), and L\-C\-Line3\-D\-::intersection\-With\-Plane().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!normalize@{normalize}}
\index{normalize@{normalize}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{normalize}]{\setlength{\rightskip}{0pt plus 5cm}{\bf L\-C\-Plane3\-D} \& L\-C\-Plane3\-D\-::normalize (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classLCPlane3D_af4cf4fbcd2392b008fbf0ace1d4afa94}


Normalization. 



Referenced by L\-C\-Plane3\-D().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!operator!=@{operator!=}}
\index{operator!=@{operator!=}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{operator!=}]{\setlength{\rightskip}{0pt plus 5cm}bool L\-C\-Plane3\-D\-::operator!= (
\begin{DoxyParamCaption}
\item[{const {\bf L\-C\-Plane3\-D} \&}]{plane}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_a5634254257560bbe4c70a1360fdaf714}


Test for inequality. 

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!operator=@{operator=}}
\index{operator=@{operator=}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf L\-C\-Plane3\-D} \& L\-C\-Plane3\-D\-::operator= (
\begin{DoxyParamCaption}
\item[{const {\bf L\-C\-Plane3\-D} \&}]{rhs}
\end{DoxyParamCaption}
)}\label{classLCPlane3D_a62b99f92b75fc88dff4f05c3c9bd333e}


Assignment. 

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!operator==@{operator==}}
\index{operator==@{operator==}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{operator==}]{\setlength{\rightskip}{0pt plus 5cm}bool L\-C\-Plane3\-D\-::operator== (
\begin{DoxyParamCaption}
\item[{const {\bf L\-C\-Plane3\-D} \&}]{plane}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_a7bffc2cb6942bfc921c4ead1f3ae5242}


Test for equality. 

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!project\-Point@{project\-Point}}
\index{project\-Point@{project\-Point}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{project\-Point}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Vector3\-D L\-C\-Plane3\-D\-::project\-Point (
\begin{DoxyParamCaption}
\item[{const L\-C\-Vector3\-D \&}]{point}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_ae1da7aa85d0c0c6551d92bce7b434c0f}


Projection of a point on to the plane. 


\begin{DoxyParams}{Parameters}
{\em point} & point is a point in space. \\
\hline
\end{DoxyParams}


References distance().



Referenced by L\-C\-Cylinder\-::project\-Point().

\index{L\-C\-Plane3\-D@{L\-C\-Plane3\-D}!project\-Point@{project\-Point}}
\index{project\-Point@{project\-Point}!LCPlane3D@{L\-C\-Plane3\-D}}
\subsubsection[{project\-Point}]{\setlength{\rightskip}{0pt plus 5cm}L\-C\-Vector3\-D L\-C\-Plane3\-D\-::project\-Point (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\label{classLCPlane3D_ad514fe0893d855f4a8a40c48a3653d2c}


Projection of the origin onto the plane. 



The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
L\-C\-Plane3\-D.\-h\item 
L\-C\-Plane3\-D.\-cc\end{DoxyCompactItemize}
