\hypertarget{a00965}{\section{Plane\+Object Class Reference}
\label{a00965}\index{Plane\+Object@{Plane\+Object}}
}
Inheritance diagram for Plane\+Object\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=4.000000cm]{a00965}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a00965_a8c135f953af1205c3fc08de4d55c1b24}{Plane\+Object} ()
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item 
\hyperlink{a00965_a2b6b7792d3d6b010abef7aacd6e59a3b}{Plane\+Object} (const \hyperlink{a00965}{Plane\+Object} \&\+\_\+object)
\begin{DoxyCompactList}\small\item\em copy constructor \end{DoxyCompactList}\item 
virtual \hyperlink{a00965_af026bbcc2c3dfc5d6bdaf9c6b0960ef7}{$\sim$\+Plane\+Object} ()
\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
virtual void \hyperlink{a00965_a48a92ae8fc03538482bac560530de951}{cleanup} ()
\begin{DoxyCompactList}\small\item\em Reset current object, including all related nodes. \end{DoxyCompactList}\item 
\hyperlink{a00329}{Base\+Object} $\ast$ \hyperlink{a00965_ae4a95053f26e0e73e8cf9f803a7df421}{copy} ()
\end{DoxyCompactItemize}
\begin{Indent}{\bf Name and Path handling}\par
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a00965_a6e67409e12b650c0573aa19dccc925c9}{set\+Name} (Q\+String \+\_\+name)
\begin{DoxyCompactList}\small\item\em Set the name of the Object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}{\bf Object Information}\par
\begin{DoxyCompactItemize}
\item 
Q\+String \hyperlink{a00965_ac46a3df84ae694e89f592d8ecf357272}{get\+Objectinfo} ()
\begin{DoxyCompactList}\small\item\em Get all Info for the Object as a string. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}{\bf Picking}\par
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{a00965_a725562fdcf558e8be3081576fb11352d}{picked} (uint \+\_\+node\+\_\+idx)
\begin{DoxyCompactList}\small\item\em detect if the node has been picked \end{DoxyCompactList}\item 
\hypertarget{a00965_a340eb15f399bd295f5671bf284f20fce}{void \hyperlink{a00965_a340eb15f399bd295f5671bf284f20fce}{enable\+Picking} (bool \+\_\+enable)}\label{a00965_a340eb15f399bd295f5671bf284f20fce}

\begin{DoxyCompactList}\small\item\em Enable or disable picking for this Object. \end{DoxyCompactList}\item 
\hypertarget{a00965_a3fd3c8a9f1b657c9ac6b1cca6e41db92}{bool \hyperlink{a00965_a3fd3c8a9f1b657c9ac6b1cca6e41db92}{picking\+Enabled} ()}\label{a00965_a3fd3c8a9f1b657c9ac6b1cca6e41db92}

\begin{DoxyCompactList}\small\item\em Check if picking is enabled for this Object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{a00965_a298f5e2bba82d0c294d8f777844b091d}{init} (const \hyperlink{a00961}{Plane} $\ast$\+\_\+plane=0)
\begin{DoxyCompactList}\small\item\em Initialize current object, including all related nodes. \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}{\bf Update handling}\par
{\em This is mostly private. Updates have to be triggered via emit updated\+Object() }\begin{DoxyCompactItemize}
\item 
void \hyperlink{a00965_aab4eff42b5bdf4f4f9d5dc4078bb92af}{update} (\hyperlink{a01393}{Update\+Type} \+\_\+type=\hyperlink{a03407_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+L\+L})
\begin{DoxyCompactList}\small\item\em This function is called to update the object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00965_aa76705f96a2f13485d9393519172ae8a}{class {\bfseries Type\+Plane\+Plugin}}\label{a00965_aa76705f96a2f13485d9393519172ae8a}

\end{DoxyCompactItemize}
\subsection*{Data}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00965_a6f84025ebe0d2e6754184edc0efdd8a1}{\hyperlink{a00961}{Plane} {\bfseries plane\+\_\+}}\label{a00965_a6f84025ebe0d2e6754184edc0efdd8a1}

\item 
\hypertarget{a00965_a665ac2d5eb74ba1eb4d21dc2b7a6c6d1}{\hyperlink{a00961}{Plane} \& {\bfseries plane} ()}\label{a00965_a665ac2d5eb74ba1eb4d21dc2b7a6c6d1}

\item 
\hypertarget{a00965_adb609e9b0fcda2f39fd1a43351b0337a}{void {\bfseries plane} (\hyperlink{a00961}{Plane} \+\_\+plane)}\label{a00965_adb609e9b0fcda2f39fd1a43351b0337a}

\end{DoxyCompactItemize}
\subsection*{Visualization}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00965_a9755ee027169ac2c54e64a236396af2d}{\hyperlink{a00964}{Plane\+Node} $\ast$ \hyperlink{a00965_a9755ee027169ac2c54e64a236396af2d}{plane\+Node\+\_\+}}\label{a00965_a9755ee027169ac2c54e64a236396af2d}

\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\item 
\hypertarget{a00965_a3a4b3b30434a183b6b87218ab52b28e5}{\hyperlink{a00964}{Plane\+Node} $\ast$ \hyperlink{a00965_a3a4b3b30434a183b6b87218ab52b28e5}{plane\+Node} ()}\label{a00965_a3a4b3b30434a183b6b87218ab52b28e5}

\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}


Definition at line 79 of file Plane\+Object.\+hh.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00965_a8c135f953af1205c3fc08de4d55c1b24}{\index{Plane\+Object@{Plane\+Object}!Plane\+Object@{Plane\+Object}}
\index{Plane\+Object@{Plane\+Object}!Plane\+Object@{Plane\+Object}}
\subsubsection[{Plane\+Object}]{\setlength{\rightskip}{0pt plus 5cm}Plane\+Object\+::\+Plane\+Object (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{a00965_a8c135f953af1205c3fc08de4d55c1b24}


constructor 

Constructor for \hyperlink{a00961}{Plane} Objects. This object class gets a Separator Node giving the root node to which it should be connected. The plane is generated internally and all nodes for visualization will be added below the scenegraph node.~\newline
You dont need to create an object of this type manually. Use the functions from \hyperlink{a00778}{Load\+Save\+Interface} ( add\+Empty() ) 

Definition at line 75 of file Plane\+Object.\+cc.

\hypertarget{a00965_a2b6b7792d3d6b010abef7aacd6e59a3b}{\index{Plane\+Object@{Plane\+Object}!Plane\+Object@{Plane\+Object}}
\index{Plane\+Object@{Plane\+Object}!Plane\+Object@{Plane\+Object}}
\subsubsection[{Plane\+Object}]{\setlength{\rightskip}{0pt plus 5cm}Plane\+Object\+::\+Plane\+Object (
\begin{DoxyParamCaption}
\item[{const {\bf Plane\+Object} \&}]{\+\_\+object}
\end{DoxyParamCaption}
)}}\label{a00965_a2b6b7792d3d6b010abef7aacd6e59a3b}


copy constructor 

Create a copy of this object

Copy Constructor -\/ generates a copy of the given object 

Definition at line 89 of file Plane\+Object.\+cc.

\hypertarget{a00965_af026bbcc2c3dfc5d6bdaf9c6b0960ef7}{\index{Plane\+Object@{Plane\+Object}!````~Plane\+Object@{$\sim$\+Plane\+Object}}
\index{````~Plane\+Object@{$\sim$\+Plane\+Object}!Plane\+Object@{Plane\+Object}}
\subsubsection[{$\sim$\+Plane\+Object}]{\setlength{\rightskip}{0pt plus 5cm}Plane\+Object\+::$\sim$\+Plane\+Object (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00965_af026bbcc2c3dfc5d6bdaf9c6b0960ef7}


destructor 

Destructor for \hyperlink{a00961}{Plane} Objects. The destructor deletes the Line and all Scenegraph nodes associated with the \hyperlink{a00961}{Plane} or the object. 

Definition at line 101 of file Plane\+Object.\+cc.



\subsection{Member Function Documentation}
\hypertarget{a00965_a48a92ae8fc03538482bac560530de951}{\index{Plane\+Object@{Plane\+Object}!cleanup@{cleanup}}
\index{cleanup@{cleanup}!Plane\+Object@{Plane\+Object}}
\subsubsection[{cleanup}]{\setlength{\rightskip}{0pt plus 5cm}void Plane\+Object\+::cleanup (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00965_a48a92ae8fc03538482bac560530de951}


Reset current object, including all related nodes. 

Cleanup Function for \hyperlink{a00961}{Plane} Objects. Deletes the contents of the whole object and calls \hyperlink{a00965_a298f5e2bba82d0c294d8f777844b091d}{Plane\+Object\+::init} afterwards. 

Reimplemented from \hyperlink{a00330_ae8e8f4f5995a356a9876d354c2822afd}{Base\+Object\+Data}.



Definition at line 117 of file Plane\+Object.\+cc.

\hypertarget{a00965_ae4a95053f26e0e73e8cf9f803a7df421}{\index{Plane\+Object@{Plane\+Object}!copy@{copy}}
\index{copy@{copy}!Plane\+Object@{Plane\+Object}}
\subsubsection[{copy}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Base\+Object} $\ast$ Plane\+Object\+::copy (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00965_ae4a95053f26e0e73e8cf9f803a7df421}
return a full copy of this object ( All scenegraph nodes will be created ) but the object will not be a part of the object tree.

Generate a copy 

Reimplemented from \hyperlink{a00329_aa914502976b64d3048fe068cd0097e67}{Base\+Object}.



Definition at line 133 of file Plane\+Object.\+cc.

\hypertarget{a00965_ac46a3df84ae694e89f592d8ecf357272}{\index{Plane\+Object@{Plane\+Object}!get\+Objectinfo@{get\+Objectinfo}}
\index{get\+Objectinfo@{get\+Objectinfo}!Plane\+Object@{Plane\+Object}}
\subsubsection[{get\+Objectinfo}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String Plane\+Object\+::get\+Objectinfo (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00965_ac46a3df84ae694e89f592d8ecf357272}


Get all Info for the Object as a string. 

Returns a string containing all information about the current object. This also includes the information provided by \hyperlink{a00329_a16966c1c32af694839bc4d31eed8759b}{Base\+Object\+Data\+::get\+Objectinfo}

\begin{DoxyReturn}{Returns}
String containing the object information 
\end{DoxyReturn}


Reimplemented from \hyperlink{a00329_a16966c1c32af694839bc4d31eed8759b}{Base\+Object}.



Definition at line 190 of file Plane\+Object.\+cc.

\hypertarget{a00965_a298f5e2bba82d0c294d8f777844b091d}{\index{Plane\+Object@{Plane\+Object}!init@{init}}
\index{init@{init}!Plane\+Object@{Plane\+Object}}
\subsubsection[{init}]{\setlength{\rightskip}{0pt plus 5cm}void Plane\+Object\+::init (
\begin{DoxyParamCaption}
\item[{const {\bf Plane} $\ast$}]{\+\_\+plane = {\ttfamily 0}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{a00965_a298f5e2bba82d0c294d8f777844b091d}


Initialize current object, including all related nodes. 

This function initializes the plane object. It creates the scenegraph nodes. 

Definition at line 140 of file Plane\+Object.\+cc.

\hypertarget{a00965_a725562fdcf558e8be3081576fb11352d}{\index{Plane\+Object@{Plane\+Object}!picked@{picked}}
\index{picked@{picked}!Plane\+Object@{Plane\+Object}}
\subsubsection[{picked}]{\setlength{\rightskip}{0pt plus 5cm}bool Plane\+Object\+::picked (
\begin{DoxyParamCaption}
\item[{uint}]{\+\_\+node\+\_\+idx}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00965_a725562fdcf558e8be3081576fb11352d}


detect if the node has been picked 

Given an node index from \hyperlink{a03393_a0ae515c8553f9e7f671bd2627bbecf6a}{Plugin\+Functions\+::scenegraph\+Pick} this function can be used to check if the plane\+Node of the object has been picked.


\begin{DoxyParams}{Parameters}
{\em \+\_\+node\+\_\+idx} & Index of the picked plane node \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
bool if the plane\+Node of this object is the picking target. 
\end{DoxyReturn}


Reimplemented from \hyperlink{a00330_afdb0f57814b92dd4ad19c81b1601857c}{Base\+Object\+Data}.



Definition at line 240 of file Plane\+Object.\+cc.

\hypertarget{a00965_a6e67409e12b650c0573aa19dccc925c9}{\index{Plane\+Object@{Plane\+Object}!set\+Name@{set\+Name}}
\index{set\+Name@{set\+Name}!Plane\+Object@{Plane\+Object}}
\subsubsection[{set\+Name}]{\setlength{\rightskip}{0pt plus 5cm}void Plane\+Object\+::set\+Name (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00965_a6e67409e12b650c0573aa19dccc925c9}


Set the name of the Object. 

Set the name of an object. All Scenegraph nodes are renamed too. It also calls \hyperlink{a00330_a625a358192b886259eec57f134f0b363}{Base\+Object\+Data\+::set\+Name}. 

Reimplemented from \hyperlink{a00330_a625a358192b886259eec57f134f0b363}{Base\+Object\+Data}.



Definition at line 166 of file Plane\+Object.\+cc.

\hypertarget{a00965_aab4eff42b5bdf4f4f9d5dc4078bb92af}{\index{Plane\+Object@{Plane\+Object}!update@{update}}
\index{update@{update}!Plane\+Object@{Plane\+Object}}
\subsubsection[{update}]{\setlength{\rightskip}{0pt plus 5cm}void Plane\+Object\+::update (
\begin{DoxyParamCaption}
\item[{{\bf Update\+Type}}]{\+\_\+type = {\ttfamily {\bf U\+P\+D\+A\+T\+E\+\_\+\+A\+L\+L}}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{a00965_aab4eff42b5bdf4f4f9d5dc4078bb92af}


This function is called to update the object. 

If the object changes, the core will call this function. This function triggers an vbo update in the plane node.

\begin{DoxyNote}{Note}
Do not call this function yourself to avoid unnecessary overhead(the core will call it when it is required) 
\end{DoxyNote}


Reimplemented from \hyperlink{a00330_a26063c9234d22ec1306e4f163e3f88be}{Base\+Object\+Data}.



Definition at line 213 of file Plane\+Object.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Object\+Types/\+Plane/\hyperlink{a02315}{Plane\+Object.\+hh}\item 
Object\+Types/\+Plane/Plane\+Object.\+cc\end{DoxyCompactItemize}
