\hypertarget{class_ogre_1_1_p_c_plane}{}\section{Ogre\+:\+:P\+C\+Plane Class Reference}
\label{class_ogre_1_1_p_c_plane}\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}


{\ttfamily \#include $<$Ogre\+P\+C\+Plane.\+h$>$}



Inheritance diagram for Ogre\+:\+:P\+C\+Plane\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=166pt]{class_ogre_1_1_p_c_plane__inherit__graph}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Side} \{ \hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcaad112821a6c39f0097136ba5df53052a}{N\+O\+\_\+\+S\+I\+DE}, 
\hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcac5f2b56ac439b77aad6dfc4031891be5}{P\+O\+S\+I\+T\+I\+V\+E\+\_\+\+S\+I\+DE}, 
\hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcaaf227c36d02442779fd4600d00580f5e}{N\+E\+G\+A\+T\+I\+V\+E\+\_\+\+S\+I\+DE}, 
\hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bca44420e1c49338ae721f298826e164935}{B\+O\+T\+H\+\_\+\+S\+I\+DE}
 \}\begin{DoxyCompactList}\small\item\em The \char`\"{}positive side\char`\"{} of the plane is the half space to which the plane normal points. \end{DoxyCompactList}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_ogre_1_1_p_c_plane_a2472dfd80725c2e84b5ef7baa4384c2e}{P\+C\+Plane} ()
\begin{DoxyCompactList}\small\item\em Standard constructor. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_p_c_plane_a0b88208979cd8ccffd4d91bb8373549f}{P\+C\+Plane} (const \hyperlink{class_ogre_1_1_plane}{Plane} \&plane)
\begin{DoxyCompactList}\small\item\em Alternative constructor. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_p_c_plane_ad3eff30e9736cc380facaa825306dbf2}{P\+C\+Plane} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Normal, const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point)
\begin{DoxyCompactList}\small\item\em Alternative constructor. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_p_c_plane_a060064e403c405d075786f043bcd37e8}{P\+C\+Plane} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point0, const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point1, const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point2)
\begin{DoxyCompactList}\small\item\em Alternative constructor. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_p_c_plane_a6f42638ed66e7661b8b911861fc67b64}{$\sim$\+P\+C\+Plane} ()
\begin{DoxyCompactList}\small\item\em Standard destructor. \end{DoxyCompactList}\item 
\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} \hyperlink{class_ogre_1_1_plane_aa397a61879a2c4ffdc6c237820fae177}{get\+Distance} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point) const
\begin{DoxyCompactList}\small\item\em This is a pseudodistance. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_portal_base}{Portal\+Base} $\ast$ \hyperlink{class_ogre_1_1_p_c_plane_a1f019fbfffb03059e03c369b956f1bed}{get\+Portal} ()
\begin{DoxyCompactList}\small\item\em Returns the \hyperlink{class_ogre_1_1_portal}{Portal} that was used to create this plane. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Side} \hyperlink{class_ogre_1_1_plane_a519225d752a20f3459d2f0cc20346468}{get\+Side} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point) const
\item 
\hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Side} \hyperlink{class_ogre_1_1_plane_a115540f9bb7a88c0f22dcbc0ca087a68}{get\+Side} (const \hyperlink{class_ogre_1_1_axis_aligned_box}{Axis\+Aligned\+Box} \&rk\+Box) const
\begin{DoxyCompactList}\small\item\em Returns the side where the aligned\+Box is. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Side} \hyperlink{class_ogre_1_1_plane_a1f4b68ae4354cd7b0cc63374497461cb}{get\+Side} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&centre, const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&half\+Size) const
\begin{DoxyCompactList}\small\item\em Returns which side of the plane that the given box lies on. \end{DoxyCompactList}\item 
\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} \hyperlink{class_ogre_1_1_plane_a090aae792b4fecc6e8b1b5810f029edf}{normalise} (void)
\begin{DoxyCompactList}\small\item\em Normalises the plane. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_plane_a699e7fd73bffd447e971c97ca38fe3b0}{operator!=} (const \hyperlink{class_ogre_1_1_plane}{Plane} \&rhs) const
\item 
\hyperlink{class_ogre_1_1_plane}{Plane} \hyperlink{class_ogre_1_1_plane_ada033b7c48e8628d4e9be5039ffa4278}{operator-\/} () const
\begin{DoxyCompactList}\small\item\em Get flipped plane, with same location but reverted orientation. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_plane_a1f5ace6a3a4bedc91a283895fb77a6a8}{operator==} (const \hyperlink{class_ogre_1_1_plane}{Plane} \&rhs) const
\begin{DoxyCompactList}\small\item\em Comparison operator. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_vector3}{Vector3} \hyperlink{class_ogre_1_1_plane_a513a2379245911d5ed1993d5f25c4bef}{project\+Vector} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&v) const
\begin{DoxyCompactList}\small\item\em Project a vector onto the plane. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_plane_a3edb29b896bac43b3a199460123e94b2}{redefine} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point0, const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point1, const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point2)
\begin{DoxyCompactList}\small\item\em Redefine this plane based on 3 points. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_plane_a74dab1f3fb059277cd477aa683b238f7}{redefine} (const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Normal, const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&rk\+Point)
\begin{DoxyCompactList}\small\item\em Redefine this plane based on a normal and a point. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_p_c_plane_a09ed045de29ff480bfaaf8d35549f3b5}{set\+From\+Ogre\+Plane} (\hyperlink{class_ogre_1_1_plane}{Plane} \&ogre\+Plane)
\begin{DoxyCompactList}\small\item\em Copy from an \hyperlink{namespace_ogre}{Ogre} \hyperlink{class_ogre_1_1_plane}{Plane}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_p_c_plane_a6b3f83e82290b617368501cab3c1919a}{set\+Portal} (\hyperlink{class_ogre_1_1_portal_base}{Portal\+Base} $\ast$o)
\begin{DoxyCompactList}\small\item\em Sets the \hyperlink{class_ogre_1_1_portal}{Portal} that was used to create this plane. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} \hyperlink{class_ogre_1_1_plane_a8e7de1712320968bee111002bc2938b8}{d}
\item 
\hyperlink{class_ogre_1_1_vector3}{Vector3} \hyperlink{class_ogre_1_1_plane_a3f97462d3822f6add8c070048f6c2d92}{normal}
\end{DoxyCompactItemize}


\subsection{Member Enumeration Documentation}
\mbox{\Hypertarget{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}\label{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!Side@{Side}}
\index{Side@{Side}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{Side}{Side}}
{\footnotesize\ttfamily enum \hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Ogre\+::\+Plane\+::\+Side}\hspace{0.3cm}{\ttfamily [inherited]}}



The \char`\"{}positive side\char`\"{} of the plane is the half space to which the plane normal points. 

The \char`\"{}negative side\char`\"{} is the other half space. The flag \char`\"{}no side\char`\"{} indicates the plane itself. \begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{N\+O\+\_\+\+S\+I\+DE@{N\+O\+\_\+\+S\+I\+DE}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!N\+O\+\_\+\+S\+I\+DE@{N\+O\+\_\+\+S\+I\+DE}}}\mbox{\Hypertarget{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcaad112821a6c39f0097136ba5df53052a}\label{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcaad112821a6c39f0097136ba5df53052a}} 
N\+O\+\_\+\+S\+I\+DE&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{P\+O\+S\+I\+T\+I\+V\+E\+\_\+\+S\+I\+DE@{P\+O\+S\+I\+T\+I\+V\+E\+\_\+\+S\+I\+DE}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!P\+O\+S\+I\+T\+I\+V\+E\+\_\+\+S\+I\+DE@{P\+O\+S\+I\+T\+I\+V\+E\+\_\+\+S\+I\+DE}}}\mbox{\Hypertarget{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcac5f2b56ac439b77aad6dfc4031891be5}\label{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcac5f2b56ac439b77aad6dfc4031891be5}} 
P\+O\+S\+I\+T\+I\+V\+E\+\_\+\+S\+I\+DE&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{N\+E\+G\+A\+T\+I\+V\+E\+\_\+\+S\+I\+DE@{N\+E\+G\+A\+T\+I\+V\+E\+\_\+\+S\+I\+DE}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!N\+E\+G\+A\+T\+I\+V\+E\+\_\+\+S\+I\+DE@{N\+E\+G\+A\+T\+I\+V\+E\+\_\+\+S\+I\+DE}}}\mbox{\Hypertarget{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcaaf227c36d02442779fd4600d00580f5e}\label{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bcaaf227c36d02442779fd4600d00580f5e}} 
N\+E\+G\+A\+T\+I\+V\+E\+\_\+\+S\+I\+DE&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{B\+O\+T\+H\+\_\+\+S\+I\+DE@{B\+O\+T\+H\+\_\+\+S\+I\+DE}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!B\+O\+T\+H\+\_\+\+S\+I\+DE@{B\+O\+T\+H\+\_\+\+S\+I\+DE}}}\mbox{\Hypertarget{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bca44420e1c49338ae721f298826e164935}\label{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bca44420e1c49338ae721f298826e164935}} 
B\+O\+T\+H\+\_\+\+S\+I\+DE&\\
\hline

\end{DoxyEnumFields}


\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_a2472dfd80725c2e84b5ef7baa4384c2e}\label{class_ogre_1_1_p_c_plane_a2472dfd80725c2e84b5ef7baa4384c2e}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!P\+C\+Plane@{P\+C\+Plane}}
\index{P\+C\+Plane@{P\+C\+Plane}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{P\+C\+Plane()}{PCPlane()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
{\footnotesize\ttfamily Ogre\+::\+P\+C\+Plane\+::\+P\+C\+Plane (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Standard constructor. 

\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_a0b88208979cd8ccffd4d91bb8373549f}\label{class_ogre_1_1_p_c_plane_a0b88208979cd8ccffd4d91bb8373549f}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!P\+C\+Plane@{P\+C\+Plane}}
\index{P\+C\+Plane@{P\+C\+Plane}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{P\+C\+Plane()}{PCPlane()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
{\footnotesize\ttfamily Ogre\+::\+P\+C\+Plane\+::\+P\+C\+Plane (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_plane}{Plane} \&}]{plane }\end{DoxyParamCaption})}



Alternative constructor. 

\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_ad3eff30e9736cc380facaa825306dbf2}\label{class_ogre_1_1_p_c_plane_ad3eff30e9736cc380facaa825306dbf2}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!P\+C\+Plane@{P\+C\+Plane}}
\index{P\+C\+Plane@{P\+C\+Plane}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{P\+C\+Plane()}{PCPlane()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
{\footnotesize\ttfamily Ogre\+::\+P\+C\+Plane\+::\+P\+C\+Plane (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Normal,  }\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point }\end{DoxyParamCaption})}



Alternative constructor. 

\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_a060064e403c405d075786f043bcd37e8}\label{class_ogre_1_1_p_c_plane_a060064e403c405d075786f043bcd37e8}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!P\+C\+Plane@{P\+C\+Plane}}
\index{P\+C\+Plane@{P\+C\+Plane}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{P\+C\+Plane()}{PCPlane()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
{\footnotesize\ttfamily Ogre\+::\+P\+C\+Plane\+::\+P\+C\+Plane (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point0,  }\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point1,  }\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point2 }\end{DoxyParamCaption})}



Alternative constructor. 

\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_a6f42638ed66e7661b8b911861fc67b64}\label{class_ogre_1_1_p_c_plane_a6f42638ed66e7661b8b911861fc67b64}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!````~P\+C\+Plane@{$\sim$\+P\+C\+Plane}}
\index{````~P\+C\+Plane@{$\sim$\+P\+C\+Plane}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{$\sim$\+P\+C\+Plane()}{~PCPlane()}}
{\footnotesize\ttfamily Ogre\+::\+P\+C\+Plane\+::$\sim$\+P\+C\+Plane (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Standard destructor. 



\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_a09ed045de29ff480bfaaf8d35549f3b5}\label{class_ogre_1_1_p_c_plane_a09ed045de29ff480bfaaf8d35549f3b5}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!set\+From\+Ogre\+Plane@{set\+From\+Ogre\+Plane}}
\index{set\+From\+Ogre\+Plane@{set\+From\+Ogre\+Plane}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{set\+From\+Ogre\+Plane()}{setFromOgrePlane()}}
{\footnotesize\ttfamily void Ogre\+::\+P\+C\+Plane\+::set\+From\+Ogre\+Plane (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_plane}{Plane} \&}]{ogre\+Plane }\end{DoxyParamCaption})}



Copy from an \hyperlink{namespace_ogre}{Ogre} \hyperlink{class_ogre_1_1_plane}{Plane}. 

\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_a1f019fbfffb03059e03c369b956f1bed}\label{class_ogre_1_1_p_c_plane_a1f019fbfffb03059e03c369b956f1bed}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!get\+Portal@{get\+Portal}}
\index{get\+Portal@{get\+Portal}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{get\+Portal()}{getPortal()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_portal_base}{Portal\+Base}$\ast$ Ogre\+::\+P\+C\+Plane\+::get\+Portal (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Returns the \hyperlink{class_ogre_1_1_portal}{Portal} that was used to create this plane. 

\mbox{\Hypertarget{class_ogre_1_1_p_c_plane_a6b3f83e82290b617368501cab3c1919a}\label{class_ogre_1_1_p_c_plane_a6b3f83e82290b617368501cab3c1919a}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!set\+Portal@{set\+Portal}}
\index{set\+Portal@{set\+Portal}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{set\+Portal()}{setPortal()}}
{\footnotesize\ttfamily void Ogre\+::\+P\+C\+Plane\+::set\+Portal (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_portal_base}{Portal\+Base} $\ast$}]{o }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Sets the \hyperlink{class_ogre_1_1_portal}{Portal} that was used to create this plane. 

\mbox{\Hypertarget{class_ogre_1_1_plane_a519225d752a20f3459d2f0cc20346468}\label{class_ogre_1_1_plane_a519225d752a20f3459d2f0cc20346468}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!get\+Side@{get\+Side}}
\index{get\+Side@{get\+Side}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{get\+Side()}{getSide()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Side} Ogre\+::\+Plane\+::get\+Side (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}



Referenced by Ogre\+::\+Plane\+Bounded\+Volume\+::intersects().

\mbox{\Hypertarget{class_ogre_1_1_plane_a115540f9bb7a88c0f22dcbc0ca087a68}\label{class_ogre_1_1_plane_a115540f9bb7a88c0f22dcbc0ca087a68}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!get\+Side@{get\+Side}}
\index{get\+Side@{get\+Side}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{get\+Side()}{getSide()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Side} Ogre\+::\+Plane\+::get\+Side (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_axis_aligned_box}{Axis\+Aligned\+Box} \&}]{rk\+Box }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}



Returns the side where the aligned\+Box is. 

The flag B\+O\+T\+H\+\_\+\+S\+I\+DE indicates an intersecting box. One corner ON the plane is sufficient to consider the box and the plane intersecting. \mbox{\Hypertarget{class_ogre_1_1_plane_a1f4b68ae4354cd7b0cc63374497461cb}\label{class_ogre_1_1_plane_a1f4b68ae4354cd7b0cc63374497461cb}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!get\+Side@{get\+Side}}
\index{get\+Side@{get\+Side}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{get\+Side()}{getSide()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_plane_aa5d44b14d6f032f3e0a26e83589180bc}{Side} Ogre\+::\+Plane\+::get\+Side (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{centre,  }\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{half\+Size }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}



Returns which side of the plane that the given box lies on. 

The box is defined as centre/half-\/size pairs for effectively. 
\begin{DoxyParams}{Parameters}
{\em centre} & The centre of the box. \\
\hline
{\em half\+Size} & The half-\/size of the box. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
P\+O\+S\+I\+T\+I\+V\+E\+\_\+\+S\+I\+DE if the box complete lies on the \char`\"{}positive side\char`\"{} of the plane, N\+E\+G\+A\+T\+I\+V\+E\+\_\+\+S\+I\+DE if the box complete lies on the \char`\"{}negative side\char`\"{} of the plane, and B\+O\+T\+H\+\_\+\+S\+I\+DE if the box intersects the plane. 
\end{DoxyReturn}
\mbox{\Hypertarget{class_ogre_1_1_plane_aa397a61879a2c4ffdc6c237820fae177}\label{class_ogre_1_1_plane_aa397a61879a2c4ffdc6c237820fae177}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!get\+Distance@{get\+Distance}}
\index{get\+Distance@{get\+Distance}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{get\+Distance()}{getDistance()}}
{\footnotesize\ttfamily \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} Ogre\+::\+Plane\+::get\+Distance (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}



This is a pseudodistance. 

The sign of the return value is positive if the point is on the positive side of the plane, negative if the point is on the negative side, and zero if the point is on the plane. \begin{DoxyParagraph}{}
The absolute value of the return value is the true distance only when the plane normal is a unit length vector. 
\end{DoxyParagraph}


Referenced by Ogre\+::\+Plane\+Bounded\+Volume\+::intersects().

\mbox{\Hypertarget{class_ogre_1_1_plane_a3edb29b896bac43b3a199460123e94b2}\label{class_ogre_1_1_plane_a3edb29b896bac43b3a199460123e94b2}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!redefine@{redefine}}
\index{redefine@{redefine}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{redefine()}{redefine()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Plane\+::redefine (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point0,  }\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point1,  }\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point2 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}



Redefine this plane based on 3 points. 

\mbox{\Hypertarget{class_ogre_1_1_plane_a74dab1f3fb059277cd477aa683b238f7}\label{class_ogre_1_1_plane_a74dab1f3fb059277cd477aa683b238f7}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!redefine@{redefine}}
\index{redefine@{redefine}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{redefine()}{redefine()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Plane\+::redefine (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Normal,  }\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{rk\+Point }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}



Redefine this plane based on a normal and a point. 

\mbox{\Hypertarget{class_ogre_1_1_plane_a513a2379245911d5ed1993d5f25c4bef}\label{class_ogre_1_1_plane_a513a2379245911d5ed1993d5f25c4bef}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!project\+Vector@{project\+Vector}}
\index{project\+Vector@{project\+Vector}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{project\+Vector()}{projectVector()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_vector3}{Vector3} Ogre\+::\+Plane\+::project\+Vector (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_vector3}{Vector3} \&}]{v }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}



Project a vector onto the plane. 

\begin{DoxyRemark}{Remarks}
This gives you the element of the input vector that is perpendicular to the normal of the plane. You can get the element which is parallel to the normal of the plane by subtracting the result of this method from the original vector, since parallel + perpendicular = original. 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em v} & The input vector \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{class_ogre_1_1_plane_a090aae792b4fecc6e8b1b5810f029edf}\label{class_ogre_1_1_plane_a090aae792b4fecc6e8b1b5810f029edf}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!normalise@{normalise}}
\index{normalise@{normalise}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{normalise()}{normalise()}}
{\footnotesize\ttfamily \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} Ogre\+::\+Plane\+::normalise (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}



Normalises the plane. 

\begin{DoxyRemark}{Remarks}
This method normalises the plane\textquotesingle{}s normal and the length scale of d is as well. 
\end{DoxyRemark}
\begin{DoxyNote}{Note}
This function will not crash for zero-\/sized vectors, but there will be no changes made to their components. 
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
The previous length of the plane\textquotesingle{}s normal. 
\end{DoxyReturn}
\mbox{\Hypertarget{class_ogre_1_1_plane_ada033b7c48e8628d4e9be5039ffa4278}\label{class_ogre_1_1_plane_ada033b7c48e8628d4e9be5039ffa4278}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!operator-\/@{operator-\/}}
\index{operator-\/@{operator-\/}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{operator-\/()}{operator-()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_plane}{Plane} Ogre\+::\+Plane\+::operator-\/ (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [inherited]}}



Get flipped plane, with same location but reverted orientation. 



References Ogre\+::\+Vector3\+::x, Ogre\+::\+Vector3\+::y, and Ogre\+::\+Vector3\+::z.

\mbox{\Hypertarget{class_ogre_1_1_plane_a1f5ace6a3a4bedc91a283895fb77a6a8}\label{class_ogre_1_1_plane_a1f5ace6a3a4bedc91a283895fb77a6a8}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!operator==@{operator==}}
\index{operator==@{operator==}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{operator==()}{operator==()}}
{\footnotesize\ttfamily bool Ogre\+::\+Plane\+::operator== (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_plane}{Plane} \&}]{rhs }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [inherited]}}



Comparison operator. 



References Ogre\+::\+Plane\+::d, and Ogre\+::\+Plane\+::normal.

\mbox{\Hypertarget{class_ogre_1_1_plane_a699e7fd73bffd447e971c97ca38fe3b0}\label{class_ogre_1_1_plane_a699e7fd73bffd447e971c97ca38fe3b0}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!operator"!=@{operator"!=}}
\index{operator"!=@{operator"!=}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{operator"!=()}{operator!=()}}
{\footnotesize\ttfamily bool Ogre\+::\+Plane\+::operator!= (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_plane}{Plane} \&}]{rhs }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [inherited]}}



References Ogre\+::\+Plane\+::d, Ogre\+::\+Plane\+::normal, and Ogre\+::operator$<$$<$().



\subsection{Member Data Documentation}
\mbox{\Hypertarget{class_ogre_1_1_plane_a3f97462d3822f6add8c070048f6c2d92}\label{class_ogre_1_1_plane_a3f97462d3822f6add8c070048f6c2d92}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!normal@{normal}}
\index{normal@{normal}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{normal}{normal}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_vector3}{Vector3} Ogre\+::\+Plane\+::normal\hspace{0.3cm}{\ttfamily [inherited]}}



Referenced by Ogre\+::\+Plane\+::operator!=(), Ogre\+::operator$\ast$(), and Ogre\+::\+Plane\+::operator==().

\mbox{\Hypertarget{class_ogre_1_1_plane_a8e7de1712320968bee111002bc2938b8}\label{class_ogre_1_1_plane_a8e7de1712320968bee111002bc2938b8}} 
\index{Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}!d@{d}}
\index{d@{d}!Ogre\+::\+P\+C\+Plane@{Ogre\+::\+P\+C\+Plane}}
\subsubsection{\texorpdfstring{d}{d}}
{\footnotesize\ttfamily \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} Ogre\+::\+Plane\+::d\hspace{0.3cm}{\ttfamily [inherited]}}



Referenced by Ogre\+::\+Plane\+::operator!=(), Ogre\+::operator$\ast$(), and Ogre\+::\+Plane\+::operator==().



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\hyperlink{_ogre_p_c_plane_8h}{Ogre\+P\+C\+Plane.\+h}\end{DoxyCompactItemize}
