\hypertarget{a00464}{\section{A\+C\+G\+:\+:Scene\+Graph\+:\+:Coordsys\+Node Class Reference}
\label{a00464}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}
}
Inheritance diagram for A\+C\+G\+:\+:Scene\+Graph\+:\+:Coordsys\+Node\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a00464}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3}{Projection\+Mode} \{ \hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3ac8ab217a306f3d3c1327ad21fbb3d019}{O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+I\+C\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}, 
\hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3abd97d3aee81bbfe0c397d9e440cb357a}{P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}
 \}
\begin{DoxyCompactList}\small\item\em projection mode \end{DoxyCompactList}\item 
enum \hyperlink{a00464_a1c7e73414f8075c17d908341f340838e}{Coordsys\+Mode} \{ \hyperlink{a00464_a1c7e73414f8075c17d908341f340838eac4dc5485549984e2156e7db1f563bab6}{P\+O\+S\+I\+T\+I\+O\+N}, 
\hyperlink{a00464_a1c7e73414f8075c17d908341f340838ea00c14ff0f97ed5beb381c0defb3eed49}{S\+C\+R\+E\+E\+N\+P\+O\+S}
 \}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a00464_a97b0772c5c643161a8deb37012f423e9}{Coordsys\+Node} (\hyperlink{a00327}{Base\+Node} $\ast$\+\_\+parent=0, std\+::string \+\_\+name=\char`\"{}$<$Text\+Node$>$\char`\"{}, Coordsys\+Mode \+\_\+mode=\hyperlink{a00464_a1c7e73414f8075c17d908341f340838ea00c14ff0f97ed5beb381c0defb3eed49}{S\+C\+R\+E\+E\+N\+P\+O\+S}, \hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3}{Projection\+Mode} \+\_\+projection\+Mode=\hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3abd97d3aee81bbfe0c397d9e440cb357a}{P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N})
\item 
\hypertarget{a00464_ad204c5d37f9f47ea2bcbd7a56c65c026}{\hyperlink{a00464_ad204c5d37f9f47ea2bcbd7a56c65c026}{$\sim$\+Coordsys\+Node} ()}\label{a00464_ad204c5d37f9f47ea2bcbd7a56c65c026}

\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
\hypertarget{a00464_a4100b8946db749edd88b8d708d3d7622}{\hyperlink{a00464_a4100b8946db749edd88b8d708d3d7622}{A\+C\+G\+\_\+\+C\+L\+A\+S\+S\+N\+A\+M\+E} (\hyperlink{a00464}{Coordsys\+Node})}\label{a00464_a4100b8946db749edd88b8d708d3d7622}

\begin{DoxyCompactList}\small\item\em static name of this class \end{DoxyCompactList}\item 
\hypertarget{a00464_a451d694f5e55c6ecce1c2e70d1b545da}{\hyperlink{a00510}{A\+C\+G\+::\+Scene\+Graph\+::\+Draw\+Modes\+::\+Draw\+Mode} \hyperlink{a00464_a451d694f5e55c6ecce1c2e70d1b545da}{available\+Draw\+Modes} () const }\label{a00464_a451d694f5e55c6ecce1c2e70d1b545da}

\begin{DoxyCompactList}\small\item\em return available draw modes \end{DoxyCompactList}\item 
\hypertarget{a00464_ad139235b59f613b58b5e44643e979622}{void \hyperlink{a00464_ad139235b59f613b58b5e44643e979622}{bounding\+Box} (\hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Min, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Max)}\label{a00464_ad139235b59f613b58b5e44643e979622}

\begin{DoxyCompactList}\small\item\em update bounding box \end{DoxyCompactList}\item 
\hypertarget{a00464_a551e434a429167491336a96a0864f11e}{void \hyperlink{a00464_a551e434a429167491336a96a0864f11e}{draw} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state, const \hyperlink{a00509}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode)}\label{a00464_a551e434a429167491336a96a0864f11e}

\begin{DoxyCompactList}\small\item\em draw Coordsys \end{DoxyCompactList}\item 
\hypertarget{a00464_a13c8ea39b46c76c3fd17d79bb71390f9}{void \hyperlink{a00464_a13c8ea39b46c76c3fd17d79bb71390f9}{get\+Render\+Objects} (\hyperlink{a00738}{I\+Renderer} $\ast$\+\_\+renderer, \hyperlink{a00643}{G\+L\+State} \&\+\_\+state, const \hyperlink{a00509}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode, const \hyperlink{a00789}{Material} $\ast$\+\_\+mat)}\label{a00464_a13c8ea39b46c76c3fd17d79bb71390f9}

\begin{DoxyCompactList}\small\item\em add renderobjects for shader pipeline renderer \end{DoxyCompactList}\item 
\hypertarget{a00464_ac4243f595ab13f0e4c98bf4e5606f720}{void \hyperlink{a00464_ac4243f595ab13f0e4c98bf4e5606f720}{pick} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state, \hyperlink{a03343_af5fad41dadeca314c2077f897377dbd0}{Pick\+Target} \+\_\+target)}\label{a00464_ac4243f595ab13f0e4c98bf4e5606f720}

\begin{DoxyCompactList}\small\item\em draw Coordsys for object picking \end{DoxyCompactList}\item 
\hypertarget{a00464_a625cc9fa48d5baa2109415474877cd34}{void \hyperlink{a00464_a625cc9fa48d5baa2109415474877cd34}{set\+Mode} (const \hyperlink{a00464_a1c7e73414f8075c17d908341f340838e}{Coordsys\+Mode} \+\_\+mode)}\label{a00464_a625cc9fa48d5baa2109415474877cd34}

\begin{DoxyCompactList}\small\item\em set mode to either P\+O\+S\+I\+T\+I\+O\+N or S\+C\+R\+E\+E\+N\+P\+O\+S \end{DoxyCompactList}\item 
\hypertarget{a00464_a83fd510eecd6e3dbfb306d4e6041dee9}{void \hyperlink{a00464_a83fd510eecd6e3dbfb306d4e6041dee9}{set\+Projection\+Mode} (const \hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3}{Projection\+Mode} \+\_\+mode)}\label{a00464_a83fd510eecd6e3dbfb306d4e6041dee9}

\begin{DoxyCompactList}\small\item\em set mode to either O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+I\+C\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N or P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N \end{DoxyCompactList}\item 
\hypertarget{a00464_ac0549628453f7f4b18f0d1dc445d1f4e}{void \hyperlink{a00464_ac0549628453f7f4b18f0d1dc445d1f4e}{set\+Position} (const \hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} \&\+\_\+pos)}\label{a00464_ac0549628453f7f4b18f0d1dc445d1f4e}

\begin{DoxyCompactList}\small\item\em set position of the coordsys \end{DoxyCompactList}\item 
\hypertarget{a00464_a236ca429e0eb2a9ffa60db148e6c26a4}{\hyperlink{a00464_a1c7e73414f8075c17d908341f340838e}{Coordsys\+Mode} \hyperlink{a00464_a236ca429e0eb2a9ffa60db148e6c26a4}{get\+Mode} () const }\label{a00464_a236ca429e0eb2a9ffa60db148e6c26a4}

\begin{DoxyCompactList}\small\item\em get current mode \end{DoxyCompactList}\item 
\hypertarget{a00464_a38808ef712b78c0f26439858308064b1}{\hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3}{Projection\+Mode} \hyperlink{a00464_a38808ef712b78c0f26439858308064b1}{get\+Projection\+Mode} () const }\label{a00464_a38808ef712b78c0f26439858308064b1}

\begin{DoxyCompactList}\small\item\em get current projection mode \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00464_a5424ae57cad6d34141dedb2f4d733781}{void {\bfseries draw\+Coordsys} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state)}\label{a00464_a5424ae57cad6d34141dedb2f4d733781}

\item 
\hypertarget{a00464_a1fd22f3e3b20c82164a7a327d0f42e53}{void {\bfseries draw\+Coordsys} (\hyperlink{a00738}{I\+Renderer} $\ast$\+\_\+renderer, \hyperlink{a01110}{Render\+Object} $\ast$\+\_\+base\+R\+O)}\label{a00464_a1fd22f3e3b20c82164a7a327d0f42e53}

\item 
\hypertarget{a00464_a00624f7564de68b23a7e0c90d01a6200}{void {\bfseries draw\+Coordsys\+Pick} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state)}\label{a00464_a00624f7564de68b23a7e0c90d01a6200}

\item 
\hypertarget{a00464_a90ae7622d646a57a5150a0a4007f7428}{void {\bfseries clear\+Pick\+Area} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state, bool \+\_\+draw, G\+Lfloat \+\_\+depth)}\label{a00464_a90ae7622d646a57a5150a0a4007f7428}

\item 
\hypertarget{a00464_a71f8813b6dddb77e469bd503cb2c7afe}{void {\bfseries bounding\+Circle} (std\+::vector$<$ \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{Vec2f} $>$ \&\+\_\+in, \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{Vec2f} \&\+\_\+center, float \&\+\_\+radius)}\label{a00464_a71f8813b6dddb77e469bd503cb2c7afe}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00464_a9bff0b741dc562870cc002483de206d7}{\hyperlink{a00464_a1c7e73414f8075c17d908341f340838e}{Coordsys\+Mode} {\bfseries mode\+\_\+}}\label{a00464_a9bff0b741dc562870cc002483de206d7}

\item 
\hypertarget{a00464_ab4c47dbcd706c93193d630754b5b9675}{\hyperlink{a00464_a5f761809c31a7595b4291755b9b5c0b3}{Projection\+Mode} {\bfseries projection\+Mode\+\_\+}}\label{a00464_ab4c47dbcd706c93193d630754b5b9675}

\item 
\hypertarget{a00464_a2725e843640e3488f298bdc2d5336619}{\hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} {\bfseries pos3f\+\_\+}}\label{a00464_a2725e843640e3488f298bdc2d5336619}

\item 
\hypertarget{a00464_a6f855fc9b368754835f31462ded83b64}{\hyperlink{a00641}{A\+C\+G\+::\+G\+L\+Sphere} $\ast$ {\bfseries sphere\+\_\+}}\label{a00464_a6f855fc9b368754835f31462ded83b64}

\item 
\hypertarget{a00464_a1f06c743c169831f680bed89a9c18bef}{\hyperlink{a00633}{A\+C\+G\+::\+G\+L\+Cylinder} $\ast$ {\bfseries cylinder\+\_\+}}\label{a00464_a1f06c743c169831f680bed89a9c18bef}

\item 
\hypertarget{a00464_a5aabb74558ca5d8258f516d43cc9650e}{\hyperlink{a00632}{A\+C\+G\+::\+G\+L\+Cone} $\ast$ {\bfseries cone\+\_\+}}\label{a00464_a5aabb74558ca5d8258f516d43cc9650e}

\item 
\hypertarget{a00464_a5bd46e8344ea6ba97ae79c8afd6ea6bf}{\hyperlink{a00634}{A\+C\+G\+::\+G\+L\+Disk} $\ast$ {\bfseries disk\+\_\+}}\label{a00464_a5bd46e8344ea6ba97ae79c8afd6ea6bf}

\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 87 of file Coordsys\+Node.\+hh.



\subsection{Member Enumeration Documentation}
\hypertarget{a00464_a1c7e73414f8075c17d908341f340838e}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}!Coordsys\+Mode@{Coordsys\+Mode}}
\index{Coordsys\+Mode@{Coordsys\+Mode}!A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}
\subsubsection[{Coordsys\+Mode}]{\setlength{\rightskip}{0pt plus 5cm}enum A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node\+::\+Coordsys\+Mode}}\label{a00464_a1c7e73414f8075c17d908341f340838e}
\begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{P\+O\+S\+I\+T\+I\+O\+N@{P\+O\+S\+I\+T\+I\+O\+N}!A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}!P\+O\+S\+I\+T\+I\+O\+N@{P\+O\+S\+I\+T\+I\+O\+N}}\item[{\em 
\hypertarget{a00464_a1c7e73414f8075c17d908341f340838eac4dc5485549984e2156e7db1f563bab6}{P\+O\+S\+I\+T\+I\+O\+N}\label{a00464_a1c7e73414f8075c17d908341f340838eac4dc5485549984e2156e7db1f563bab6}
}]Draws the Coordsys at the coordsys origin. \index{S\+C\+R\+E\+E\+N\+P\+O\+S@{S\+C\+R\+E\+E\+N\+P\+O\+S}!A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}!S\+C\+R\+E\+E\+N\+P\+O\+S@{S\+C\+R\+E\+E\+N\+P\+O\+S}}\item[{\em 
\hypertarget{a00464_a1c7e73414f8075c17d908341f340838ea00c14ff0f97ed5beb381c0defb3eed49}{S\+C\+R\+E\+E\+N\+P\+O\+S}\label{a00464_a1c7e73414f8075c17d908341f340838ea00c14ff0f97ed5beb381c0defb3eed49}
}]Draws the Coordsys at the upper right position on the screen. \end{description}
\end{Desc}


Definition at line 98 of file Coordsys\+Node.\+hh.

\hypertarget{a00464_a5f761809c31a7595b4291755b9b5c0b3}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}!Projection\+Mode@{Projection\+Mode}}
\index{Projection\+Mode@{Projection\+Mode}!A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}
\subsubsection[{Projection\+Mode}]{\setlength{\rightskip}{0pt plus 5cm}enum A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node\+::\+Projection\+Mode}}\label{a00464_a5f761809c31a7595b4291755b9b5c0b3}


projection mode 

\begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+I\+C\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N@{O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+I\+C\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}!A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}!O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+I\+C\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N@{O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+I\+C\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}}\item[{\em 
\hypertarget{a00464_a5f761809c31a7595b4291755b9b5c0b3ac8ab217a306f3d3c1327ad21fbb3d019}{O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+I\+C\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}\label{a00464_a5f761809c31a7595b4291755b9b5c0b3ac8ab217a306f3d3c1327ad21fbb3d019}
}]orthographic \index{P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N@{P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}!A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}!P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N@{P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}}\item[{\em 
\hypertarget{a00464_a5f761809c31a7595b4291755b9b5c0b3abd97d3aee81bbfe0c397d9e440cb357a}{P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}\label{a00464_a5f761809c31a7595b4291755b9b5c0b3abd97d3aee81bbfe0c397d9e440cb357a}
}]perspective \end{description}
\end{Desc}


Definition at line 93 of file Coordsys\+Node.\+hh.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00464_a97b0772c5c643161a8deb37012f423e9}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}!Coordsys\+Node@{Coordsys\+Node}}
\index{Coordsys\+Node@{Coordsys\+Node}!A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node}}
\subsubsection[{Coordsys\+Node}]{\setlength{\rightskip}{0pt plus 5cm}A\+C\+G\+::\+Scene\+Graph\+::\+Coordsys\+Node\+::\+Coordsys\+Node (
\begin{DoxyParamCaption}
\item[{{\bf Base\+Node} $\ast$}]{\+\_\+parent = {\ttfamily 0}, }
\item[{std\+::string}]{\+\_\+name = {\ttfamily \char`\"{}$<$TextNode$>$\char`\"{}}, }
\item[{{\bf Coordsys\+Mode}}]{\+\_\+mode = {\ttfamily {\bf S\+C\+R\+E\+E\+N\+P\+O\+S}}, }
\item[{{\bf Projection\+Mode}}]{\+\_\+projection\+Mode = {\ttfamily {\bf P\+E\+R\+S\+P\+E\+C\+T\+I\+V\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+O\+N}}}
\end{DoxyParamCaption}
)}}\label{a00464_a97b0772c5c643161a8deb37012f423e9}
default constructor 
\begin{DoxyParams}{Parameters}
{\em \+\_\+parent} & Define the parent Node this node gets attached to \\
\hline
{\em \+\_\+name} & Name of this Node \\
\hline
{\em \+\_\+mode} & upper right of the screen or position based \\
\hline
{\em \+\_\+projection\+Mode} & Draw an orthogonal coordinate system or also enable projection mode \\
\hline
\end{DoxyParams}


Definition at line 74 of file Coordsys\+Node.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
A\+C\+G/\+Scenegraph/Coordsys\+Node.\+hh\item 
A\+C\+G/\+Scenegraph/Coordsys\+Node.\+cc\end{DoxyCompactItemize}
