\hypertarget{classACG_1_1SceneGraph_1_1TrackballNode}{}\section{A\+CG\+:\+:Scene\+Graph\+:\+:Trackball\+Node Class Reference}
\label{classACG_1_1SceneGraph_1_1TrackballNode}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Trackball\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Trackball\+Node}}


{\ttfamily \#include $<$A\+C\+G/\+Scenegraph/\+Trackball\+Node.\+hh$>$}

Inheritance diagram for A\+CG\+:\+:Scene\+Graph\+:\+:Trackball\+Node\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{classACG_1_1SceneGraph_1_1TrackballNode}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_ab35938f32ecf50993bced6a07a8e86d9}\label{classACG_1_1SceneGraph_1_1TrackballNode_ab35938f32ecf50993bced6a07a8e86d9}} 
\hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_ab35938f32ecf50993bced6a07a8e86d9}{Trackball\+Node} (\hyperlink{classACG_1_1SceneGraph_1_1BaseNode}{Base\+Node} $\ast$\+\_\+parent=0, const std\+::string \&\+\_\+name=\char`\"{}$<$Trackball\+Node$>$\char`\"{})
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a90e446d81b440c0423d4f868d7e0c9d4}\label{classACG_1_1SceneGraph_1_1TrackballNode_a90e446d81b440c0423d4f868d7e0c9d4}} 
\hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a90e446d81b440c0423d4f868d7e0c9d4}{$\sim$\+Trackball\+Node} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a4561335a152647a3b38d06326fec8ffc}\label{classACG_1_1SceneGraph_1_1TrackballNode_a4561335a152647a3b38d06326fec8ffc}} 
\hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a4561335a152647a3b38d06326fec8ffc}{A\+C\+G\+\_\+\+C\+L\+A\+S\+S\+N\+A\+ME} (\hyperlink{classACG_1_1SceneGraph_1_1TrackballNode}{Trackball\+Node})
\begin{DoxyCompactList}\small\item\em Class name macro. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_acd4b65619be8f768f7b2fc03c28c0cd6}\label{classACG_1_1SceneGraph_1_1TrackballNode_acd4b65619be8f768f7b2fc03c28c0cd6}} 
void \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_acd4b65619be8f768f7b2fc03c28c0cd6}{set\+\_\+radius} (double \+\_\+r)
\begin{DoxyCompactList}\small\item\em Set trackball radius. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_aa68541fee879f6b38e3d1ac0f453557d}\label{classACG_1_1SceneGraph_1_1TrackballNode_aa68541fee879f6b38e3d1ac0f453557d}} 
double \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_aa68541fee879f6b38e3d1ac0f453557d}{radius} () const
\begin{DoxyCompactList}\small\item\em Get trackball radius. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a3995a0cc54dc7c705b4bc238742f5b80}\label{classACG_1_1SceneGraph_1_1TrackballNode_a3995a0cc54dc7c705b4bc238742f5b80}} 
virtual void \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a3995a0cc54dc7c705b4bc238742f5b80}{set\+Identity} () override
\begin{DoxyCompactList}\small\item\em override \hyperlink{classACG_1_1SceneGraph_1_1TransformNode_a03c77db3e04b239e622a4bc8dfb19c5e}{Transform\+Node\+::set\+Identity()} (update radius\+\_\+) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a66e7046af285c85e14e7ca9c2f10c758}\label{classACG_1_1SceneGraph_1_1TrackballNode_a66e7046af285c85e14e7ca9c2f10c758}} 
void \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a66e7046af285c85e14e7ca9c2f10c758}{set\+\_\+draw\+\_\+trackball} (bool \+\_\+b)
\begin{DoxyCompactList}\small\item\em Turn on/off drawing of the trackball. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_adc4fc75e7cadbfc2b19aa6e2d073bff8}\label{classACG_1_1SceneGraph_1_1TrackballNode_adc4fc75e7cadbfc2b19aa6e2d073bff8}} 
bool \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_adc4fc75e7cadbfc2b19aa6e2d073bff8}{draw\+\_\+trackball} () const
\begin{DoxyCompactList}\small\item\em Is trackball-\/drawing on? \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_ae82240c9d05035f5f273a20adb2911a3}\label{classACG_1_1SceneGraph_1_1TrackballNode_ae82240c9d05035f5f273a20adb2911a3}} 
void \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_ae82240c9d05035f5f273a20adb2911a3}{set\+\_\+draw\+\_\+axes} (bool \+\_\+b)
\begin{DoxyCompactList}\small\item\em Turn drawing the axes on/off. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a64dbe1b606a2ae37bb922aa219f36eab}\label{classACG_1_1SceneGraph_1_1TrackballNode_a64dbe1b606a2ae37bb922aa219f36eab}} 
bool \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a64dbe1b606a2ae37bb922aa219f36eab}{draw\+\_\+axes} () const
\begin{DoxyCompactList}\small\item\em Is axes-\/drawing on? \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a871ef1bb6b4f5ca62233abd15f6b8426}\label{classACG_1_1SceneGraph_1_1TrackballNode_a871ef1bb6b4f5ca62233abd15f6b8426}} 
void \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a871ef1bb6b4f5ca62233abd15f6b8426}{draw} (\hyperlink{classACG_1_1GLState}{G\+L\+State} \&\+\_\+state, const \hyperlink{classACG_1_1SceneGraph_1_1DrawModes_1_1DrawMode}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode) override
\begin{DoxyCompactList}\small\item\em Draw the trackball + axes (if enabled) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a987fb81398426cdc1f8945ea8d274269}\label{classACG_1_1SceneGraph_1_1TrackballNode_a987fb81398426cdc1f8945ea8d274269}} 
virtual void \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a987fb81398426cdc1f8945ea8d274269}{mouse\+Event} (\hyperlink{classACG_1_1GLState}{G\+L\+State} \&\+\_\+state, Q\+Mouse\+Event $\ast$\+\_\+event) override
\begin{DoxyCompactList}\small\item\em get mouse events \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a93a8eedee7f92d1c6d2f9c8198c00369}\label{classACG_1_1SceneGraph_1_1TrackballNode_a93a8eedee7f92d1c6d2f9c8198c00369}} 
bool \hyperlink{classACG_1_1SceneGraph_1_1TrackballNode_a93a8eedee7f92d1c6d2f9c8198c00369}{map\+To\+Sphere} (\hyperlink{classACG_1_1GLState}{G\+L\+State} \&\+\_\+state, const \hyperlink{namespaceACG_a72710dc6f55cd56f968f22bca0178e8c}{Vec2i} \&\+\_\+v2, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+v3)
\begin{DoxyCompactList}\small\item\em Map 2\+D-\/screen-\/coords to trackball. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a4ceaf303ddfd5647d9d178e197937ab4}\label{classACG_1_1SceneGraph_1_1TrackballNode_a4ceaf303ddfd5647d9d178e197937ab4}} 
bool {\bfseries draw\+Trackball\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a0024c6deeab0858aaea8fbf6626b5e6f}\label{classACG_1_1SceneGraph_1_1TrackballNode_a0024c6deeab0858aaea8fbf6626b5e6f}} 
bool {\bfseries draw\+Axes\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a3464f75f0631d54401194a39d8457ca1}\label{classACG_1_1SceneGraph_1_1TrackballNode_a3464f75f0631d54401194a39d8457ca1}} 
double {\bfseries radius\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a5c5087057dde82d4243edb085d406e8f}\label{classACG_1_1SceneGraph_1_1TrackballNode_a5c5087057dde82d4243edb085d406e8f}} 
\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} {\bfseries x\+Axis\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a6de9a68562323cfa0316a46c2e59ee0f}\label{classACG_1_1SceneGraph_1_1TrackballNode_a6de9a68562323cfa0316a46c2e59ee0f}} 
\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} {\bfseries y\+Axis\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a7d53b704374f95d978aa1a343754996c}\label{classACG_1_1SceneGraph_1_1TrackballNode_a7d53b704374f95d978aa1a343754996c}} 
\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} {\bfseries z\+Axis\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1TrackballNode_a70956639a4e1c8f98569c8fb6c910273}\label{classACG_1_1SceneGraph_1_1TrackballNode_a70956639a4e1c8f98569c8fb6c910273}} 
\hyperlink{namespaceACG_a72710dc6f55cd56f968f22bca0178e8c}{Vec2i} {\bfseries old\+Point2\+D\+\_\+}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
Use a virtual trackball to rotate, translate and scale the children of this node. If you want to do translations use the \hyperlink{classACG_1_1SceneGraph_1_1ManipulatorNode}{Manipulator\+Node}.

\begin{DoxySeeAlso}{See also}
\hyperlink{classACG_1_1SceneGraph_1_1ManipulatorNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Manipulator\+Node} 
\end{DoxySeeAlso}


Definition at line 96 of file Trackball\+Node.\+hh.



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