<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>OpenSceneGraph: osgGA::TrackballManipulator Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">OpenSceneGraph <span id="projectnumber">2.8.4</span></div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="inherits.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="a01632.html">osgGA</a> </li> <li class="navelem"><a class="el" href="a00918.html">TrackballManipulator</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#pro-attribs">Protected Attributes</a> </div> <div class="headertitle"> <div class="title">osgGA::TrackballManipulator Class Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="osgGA::TrackballManipulator" --><!-- doxytag: inherits="osgGA::MatrixManipulator" --><div class="dynheader"> Inheritance diagram for osgGA::TrackballManipulator:</div> <div class="dyncontent"> <div class="center"><img src="a02467.png" border="0" usemap="#osgGA_1_1TrackballManipulator_inherit__map" alt="Inheritance graph"/></div> <map name="osgGA_1_1TrackballManipulator_inherit__map" id="osgGA_1_1TrackballManipulator_inherit__map"> <area shape="rect" id="node2" href="a00462.html" title="MatrixManipulator is an abstract base class defining the interface, and a certain amount of default f..." alt="" coords="84,315,279,344"/><area shape="rect" id="node4" href="a00341.html" title="GUIEventHandler provides a basic interface for any class which wants to handle a GUI Events..." alt="" coords="87,237,276,267"/><area shape="rect" id="node6" href="a00493.html" title="osg::NodeCallback" alt="" coords="5,160,149,189"/><area shape="rect" id="node8" href="a00500.html" title="Base class/standard interface for objects which require IO support, cloning and reference counting..." alt="" coords="131,83,232,112"/><area shape="rect" id="node12" href="a00255.html" title="osg::Drawable::EventCallback" alt="" coords="173,160,397,189"/><area shape="rect" id="node10" href="a00627.html" title="Base class from providing referencing counted objects." alt="" coords="115,5,248,35"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="a02468.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#ab0b1f1d23e2058649d1a62ada1f9e223">TrackballManipulator</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#af3e3588565bbe36071f2be8507de207b">className</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">return the name of the object's class type. <a href="#af3e3588565bbe36071f2be8507de207b"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#aced106f8424edbc9863dcf1401172eff">setByMatrix</a> (const <a class="el" href="a00460.html">osg::Matrixd</a> &matrix)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">set the position of the matrix manipulator using a 4x4 Matrix. <a href="#aced106f8424edbc9863dcf1401172eff"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a4c1477934cf4e04e0265ca467c2acf57">setByInverseMatrix</a> (const <a class="el" href="a00460.html">osg::Matrixd</a> &matrix)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">set the position of the matrix manipulator using a 4x4 Matrix. <a href="#a4c1477934cf4e04e0265ca467c2acf57"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00460.html">osg::Matrixd</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#ab30105f2977986ff345afd340202c4d9">getMatrix</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">get the position of the manipulator as 4x4 Matrix. <a href="#ab30105f2977986ff345afd340202c4d9"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00460.html">osg::Matrixd</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#afcc8f74e6c8f296ca465599b1bdba913">getInverseMatrix</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model view matrix. <a href="#afcc8f74e6c8f296ca465599b1bdba913"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <br class="typebreak"/> <a class="el" href="a00685.html#ab68def273205a069203e26ff6987d201">osgUtil::SceneView::FusionDistanceMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a7fb6f1b635a4acd68f6298af5151939f">getFusionDistanceMode</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the FusionDistanceMode. <a href="#a7fb6f1b635a4acd68f6298af5151939f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a02f0fd6787f699410a4c7c1bdba9875d">getFusionDistanceValue</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the FusionDistanceValue. <a href="#a02f0fd6787f699410a4c7c1bdba9875d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#afba01acb3960ff1ec84ce662f8a12697">setNode</a> (<a class="el" href="a00491.html">osg::Node</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attach a node to the manipulator. <a href="#afba01acb3960ff1ec84ce662f8a12697"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00491.html">osg::Node</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a5e7b067abd7311b0a44192a9d55040e1">getNode</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return node if attached. <a href="#a5e7b067abd7311b0a44192a9d55040e1"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00491.html">osg::Node</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a030fe0567902e2cdab38c754d4dbd94c">getNode</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return node if attached. <a href="#a030fe0567902e2cdab38c754d4dbd94c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#aa3fd8a9b1e3afbb9c4d60c7eb64749d3">home</a> (const <a class="el" href="a00340.html">GUIEventAdapter</a> &ea, <a class="el" href="a00339.html">GUIActionAdapter</a> &us)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Move the camera to the default position. <a href="#aa3fd8a9b1e3afbb9c4d60c7eb64749d3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a7ba39d82a0ce97faa8f4f048e44508b1">home</a> (double)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Move the camera to the default position. <a href="#a7ba39d82a0ce97faa8f4f048e44508b1"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#abad6451514aff67c5f65a5ae04d9d9e3">init</a> (const <a class="el" href="a00340.html">GUIEventAdapter</a> &ea, <a class="el" href="a00339.html">GUIActionAdapter</a> &us)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Start/restart the manipulator. <a href="#abad6451514aff67c5f65a5ae04d9d9e3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#ad1a377fdced27c2eb787a672598091b1">handle</a> (const <a class="el" href="a00340.html">GUIEventAdapter</a> &ea, <a class="el" href="a00339.html">GUIActionAdapter</a> &us)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">handle events, return true if handled, false otherwise. <a href="#ad1a377fdced27c2eb787a672598091b1"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#aa67d1482c9b68c5d9f899270a0c678d4">getUsage</a> (<a class="el" href="a00028.html">osg::ApplicationUsage</a> &usage) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the keyboard and mouse usage of this manipulator. <a href="#aa67d1482c9b68c5d9f899270a0c678d4"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#aa042e4c2fa90c8f143ed9699ecd06aa8">setMinimumZoomScale</a> (double minimumZoomScale)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">set the minimum distance (as ratio) the eye point can be zoomed in towards the center before the center is pushed forward. <a href="#aa042e4c2fa90c8f143ed9699ecd06aa8"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a6b19d26dffe5a767f2af9661bfbaae9c">getMinimumZoomScale</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">get the minimum distance (as ratio) the eye point can be zoomed in <a href="#a6b19d26dffe5a767f2af9661bfbaae9c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a200a0d869b36af1c6248f3192fb70d9a">setCenter</a> (const <a class="el" href="a01067.html">osg::Vec3d</a> &center)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the center of the trackball. <a href="#a200a0d869b36af1c6248f3192fb70d9a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a01067.html">osg::Vec3d</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#ac6ccbcdbc2f5c8470a96b80ed89bc617">getCenter</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the center of the trackball. <a href="#ac6ccbcdbc2f5c8470a96b80ed89bc617"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a7c25765403bfe671beb37c9b27995e3d">setRotation</a> (const <a class="el" href="a00608.html">osg::Quat</a> &rotation)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the rotation of the trackball. <a href="#a7c25765403bfe671beb37c9b27995e3d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00608.html">osg::Quat</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a7cc57417559b422d8799fb525c1b0b1a">getRotation</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the rotation of the trackball. <a href="#a7cc57417559b422d8799fb525c1b0b1a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a80035442e235cf02a220fed5ceefaecf">setDistance</a> (double distance)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the distance of the trackball. <a href="#a80035442e235cf02a220fed5ceefaecf"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a9ee8b0dd7ca68a974594c85df33ac47b">getDistance</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the distance of the trackball. <a href="#a9ee8b0dd7ca68a974594c85df33ac47b"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a30ecfee9eafe179bc96928942b623261">setTrackballSize</a> (float size)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the size of the trackball. <a href="#a30ecfee9eafe179bc96928942b623261"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a06f199d6c326adb44893924adae1fd69">getTrackballSize</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the size of the trackball. <a href="#a06f199d6c326adb44893924adae1fd69"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a821b95921938a0f8b934d8fa792e13cd">~TrackballManipulator</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#aeef295f8aef71c6f91fa9200250167cb">flushMouseEventStack</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Reset the internal GUIEvent stack. <a href="#aeef295f8aef71c6f91fa9200250167cb"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#af3705d0cdefe165e586545d305aa8b51">addMouseEvent</a> (const <a class="el" href="a00340.html">GUIEventAdapter</a> &ea)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add the current mouse GUIEvent to internal stack. <a href="#af3705d0cdefe165e586545d305aa8b51"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a0720cd21f851a300f458ce8103bb2c55">computePosition</a> (const <a class="el" href="a01069.html">osg::Vec3</a> &eye, const <a class="el" href="a01069.html">osg::Vec3</a> &lv, const <a class="el" href="a01069.html">osg::Vec3</a> &up)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a34663a15afadd9393fa6c098c95ee8ce">calcMovement</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">For the give mouse movement calculate the movement of the camera. <a href="#a34663a15afadd9393fa6c098c95ee8ce"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a4f2b50fe4e44b408e90e8349b519bfab">trackball</a> (<a class="el" href="a01069.html">osg::Vec3</a> &axis, float &angle, float p1x, float p1y, float p2x, float p2y)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a8ac138814d32c3809a93fbe829a9b737">tb_project_to_sphere</a> (float r, float x, float y)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a1e4549ad6d5a4d206cef73de2ad2f3f3">isMouseMoving</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check the speed at which the mouse is moving. <a href="#a1e4549ad6d5a4d206cef73de2ad2f3f3"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="pro-attribs"></a> Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00624.html">osg::ref_ptr</a>< const <br class="typebreak"/> <a class="el" href="a00340.html">GUIEventAdapter</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#aa70a51ef6854e6dbd118ef29a06a2afc">_ga_t1</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00624.html">osg::ref_ptr</a>< const <br class="typebreak"/> <a class="el" href="a00340.html">GUIEventAdapter</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a7b47138836878bbfd67483e02b238976">_ga_t0</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00624.html">osg::ref_ptr</a>< <a class="el" href="a00491.html">osg::Node</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a00dfd97728adf17861faf14904a5c1b4">_node</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a49a1050dc718e640f8660b9a8d886f3e">_modelScale</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a37be9cdca66189e2e16800907332f705">_minimumZoomScale</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a62359c366964276b8e788d4526d327c2">_thrown</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a01067.html">osg::Vec3d</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a7bd8f06bddb8c01ea84b544511e8680c">_center</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00608.html">osg::Quat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a162c611650a67ab086d27f088f2bd899">_rotation</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a324bb449ad28a0cfcd5028f04b5552d3">_distance</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="a00918.html#a032e8399d8ebb45072d2ef2aabd8254b">_trackballSize</a></td></tr> </table> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="ab0b1f1d23e2058649d1a62ada1f9e223"></a><!-- doxytag: member="osgGA::TrackballManipulator::TrackballManipulator" ref="ab0b1f1d23e2058649d1a62ada1f9e223" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">osgGA::TrackballManipulator::TrackballManipulator </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a821b95921938a0f8b934d8fa792e13cd"></a><!-- doxytag: member="osgGA::TrackballManipulator::~TrackballManipulator" ref="a821b95921938a0f8b934d8fa792e13cd" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual osgGA::TrackballManipulator::~TrackballManipulator </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="af3705d0cdefe165e586545d305aa8b51"></a><!-- doxytag: member="osgGA::TrackballManipulator::addMouseEvent" ref="af3705d0cdefe165e586545d305aa8b51" args="(const GUIEventAdapter &ea)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::addMouseEvent </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00340.html">GUIEventAdapter</a> & </td> <td class="paramname"><em>ea</em></td><td>)</td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Add the current mouse GUIEvent to internal stack. </p> </div> </div> <a class="anchor" id="a34663a15afadd9393fa6c098c95ee8ce"></a><!-- doxytag: member="osgGA::TrackballManipulator::calcMovement" ref="a34663a15afadd9393fa6c098c95ee8ce" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool osgGA::TrackballManipulator::calcMovement </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p>For the give mouse movement calculate the movement of the camera. </p> <p>Return true is camera has moved and a redraw is required. </p> </div> </div> <a class="anchor" id="af3e3588565bbe36071f2be8507de207b"></a><!-- doxytag: member="osgGA::TrackballManipulator::className" ref="af3e3588565bbe36071f2be8507de207b" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const char* osgGA::TrackballManipulator::className </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>return the name of the object's class type. </p> <p>Must be defined by derived classes. </p> <p>Reimplemented from <a class="el" href="a00462.html#ab25243942ae95552bcde3effcf2e5dc0">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a0720cd21f851a300f458ce8103bb2c55"></a><!-- doxytag: member="osgGA::TrackballManipulator::computePosition" ref="a0720cd21f851a300f458ce8103bb2c55" args="(const osg::Vec3 &eye, const osg::Vec3 &lv, const osg::Vec3 &up)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::computePosition </td> <td>(</td> <td class="paramtype">const <a class="el" href="a01069.html">osg::Vec3</a> & </td> <td class="paramname"><em>eye</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a01069.html">osg::Vec3</a> & </td> <td class="paramname"><em>lv</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a01069.html">osg::Vec3</a> & </td> <td class="paramname"><em>up</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="aeef295f8aef71c6f91fa9200250167cb"></a><!-- doxytag: member="osgGA::TrackballManipulator::flushMouseEventStack" ref="aeef295f8aef71c6f91fa9200250167cb" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::flushMouseEventStack </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Reset the internal GUIEvent stack. </p> </div> </div> <a class="anchor" id="ac6ccbcdbc2f5c8470a96b80ed89bc617"></a><!-- doxytag: member="osgGA::TrackballManipulator::getCenter" ref="ac6ccbcdbc2f5c8470a96b80ed89bc617" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a01067.html">osg::Vec3d</a>& osgGA::TrackballManipulator::getCenter </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the center of the trackball. </p> </div> </div> <a class="anchor" id="a9ee8b0dd7ca68a974594c85df33ac47b"></a><!-- doxytag: member="osgGA::TrackballManipulator::getDistance" ref="a9ee8b0dd7ca68a974594c85df33ac47b" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double osgGA::TrackballManipulator::getDistance </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the distance of the trackball. </p> </div> </div> <a class="anchor" id="a7fb6f1b635a4acd68f6298af5151939f"></a><!-- doxytag: member="osgGA::TrackballManipulator::getFusionDistanceMode" ref="a7fb6f1b635a4acd68f6298af5151939f" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00685.html#ab68def273205a069203e26ff6987d201">osgUtil::SceneView::FusionDistanceMode</a> osgGA::TrackballManipulator::getFusionDistanceMode </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the FusionDistanceMode. </p> <p>Used by SceneView for setting up stereo convergence. </p> <p>Reimplemented from <a class="el" href="a00462.html#acd96a6c88898481dcb3433d4e9537f21">osgGA::MatrixManipulator</a>.</p> <p>References <a class="el" href="a00685.html#ab68def273205a069203e26ff6987d201acec4bcf0618f8625b09cc8d72ed08b3b">osgUtil::SceneView::USE_FUSION_DISTANCE_VALUE</a>.</p> </div> </div> <a class="anchor" id="a02f0fd6787f699410a4c7c1bdba9875d"></a><!-- doxytag: member="osgGA::TrackballManipulator::getFusionDistanceValue" ref="a02f0fd6787f699410a4c7c1bdba9875d" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual float osgGA::TrackballManipulator::getFusionDistanceValue </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the FusionDistanceValue. </p> <p>Used by SceneView for setting up stereo convergence. </p> <p>Reimplemented from <a class="el" href="a00462.html#a63a7b5f1e4a5fb20fb835af648864cf9">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="afcc8f74e6c8f296ca465599b1bdba913"></a><!-- doxytag: member="osgGA::TrackballManipulator::getInverseMatrix" ref="afcc8f74e6c8f296ca465599b1bdba913" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00460.html">osg::Matrixd</a> osgGA::TrackballManipulator::getInverseMatrix </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model view matrix. </p> <p>Implements <a class="el" href="a00462.html#a792dc8f687777978cf71680c024e912c">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="ab30105f2977986ff345afd340202c4d9"></a><!-- doxytag: member="osgGA::TrackballManipulator::getMatrix" ref="ab30105f2977986ff345afd340202c4d9" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00460.html">osg::Matrixd</a> osgGA::TrackballManipulator::getMatrix </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>get the position of the manipulator as 4x4 Matrix. </p> <p>Implements <a class="el" href="a00462.html#ae38df95f31e1aad8c7bc8d94414258bd">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a6b19d26dffe5a767f2af9661bfbaae9c"></a><!-- doxytag: member="osgGA::TrackballManipulator::getMinimumZoomScale" ref="a6b19d26dffe5a767f2af9661bfbaae9c" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double osgGA::TrackballManipulator::getMinimumZoomScale </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>get the minimum distance (as ratio) the eye point can be zoomed in </p> </div> </div> <a class="anchor" id="a5e7b067abd7311b0a44192a9d55040e1"></a><!-- doxytag: member="osgGA::TrackballManipulator::getNode" ref="a5e7b067abd7311b0a44192a9d55040e1" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const <a class="el" href="a00491.html">osg::Node</a>* osgGA::TrackballManipulator::getNode </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return node if attached. </p> <p>Reimplemented from <a class="el" href="a00462.html#a6736aa73dc963eecb8738287df49c604">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a030fe0567902e2cdab38c754d4dbd94c"></a><!-- doxytag: member="osgGA::TrackballManipulator::getNode" ref="a030fe0567902e2cdab38c754d4dbd94c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00491.html">osg::Node</a>* osgGA::TrackballManipulator::getNode </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return node if attached. </p> <p>Reimplemented from <a class="el" href="a00462.html#a24efa78c51b4b9944d177f8e5c0e098e">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a7cc57417559b422d8799fb525c1b0b1a"></a><!-- doxytag: member="osgGA::TrackballManipulator::getRotation" ref="a7cc57417559b422d8799fb525c1b0b1a" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00608.html">osg::Quat</a>& osgGA::TrackballManipulator::getRotation </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the rotation of the trackball. </p> </div> </div> <a class="anchor" id="a06f199d6c326adb44893924adae1fd69"></a><!-- doxytag: member="osgGA::TrackballManipulator::getTrackballSize" ref="a06f199d6c326adb44893924adae1fd69" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">float osgGA::TrackballManipulator::getTrackballSize </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the size of the trackball. </p> </div> </div> <a class="anchor" id="aa67d1482c9b68c5d9f899270a0c678d4"></a><!-- doxytag: member="osgGA::TrackballManipulator::getUsage" ref="aa67d1482c9b68c5d9f899270a0c678d4" args="(osg::ApplicationUsage &usage) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgGA::TrackballManipulator::getUsage </td> <td>(</td> <td class="paramtype"><a class="el" href="a00028.html">osg::ApplicationUsage</a> & </td> <td class="paramname"><em>usage</em></td><td>)</td> <td> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the keyboard and mouse usage of this manipulator. </p> <p>Reimplemented from <a class="el" href="a00341.html#a957395588d98dfa26bbfc63738126176">osgGA::GUIEventHandler</a>.</p> </div> </div> <a class="anchor" id="ad1a377fdced27c2eb787a672598091b1"></a><!-- doxytag: member="osgGA::TrackballManipulator::handle" ref="ad1a377fdced27c2eb787a672598091b1" args="(const GUIEventAdapter &ea, GUIActionAdapter &us)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool osgGA::TrackballManipulator::handle </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00340.html">GUIEventAdapter</a> & </td> <td class="paramname"><em>ea</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00339.html">GUIActionAdapter</a> & </td> <td class="paramname"><em>us</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>handle events, return true if handled, false otherwise. </p> <p>Reimplemented from <a class="el" href="a00462.html#a1d4a4c573106b61d7ff01a22d772c026">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="aa3fd8a9b1e3afbb9c4d60c7eb64749d3"></a><!-- doxytag: member="osgGA::TrackballManipulator::home" ref="aa3fd8a9b1e3afbb9c4d60c7eb64749d3" args="(const GUIEventAdapter &ea, GUIActionAdapter &us)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgGA::TrackballManipulator::home </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00340.html">GUIEventAdapter</a> & </td> <td class="paramname"><em>ea</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00339.html">GUIActionAdapter</a> & </td> <td class="paramname"><em>us</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Move the camera to the default position. </p> <p>May be ignored by manipulators if home functionality is not appropriate. </p> <p>Reimplemented from <a class="el" href="a00462.html#a2a19da81c944e552f3e6b1d334010975">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a7ba39d82a0ce97faa8f4f048e44508b1"></a><!-- doxytag: member="osgGA::TrackballManipulator::home" ref="a7ba39d82a0ce97faa8f4f048e44508b1" args="(double)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgGA::TrackballManipulator::home </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Move the camera to the default position. </p> <p>This version does not require <a class="el" href="a00340.html" title="Event class for storing Keyboard, mouse and window events.">GUIEventAdapter</a> and <a class="el" href="a00339.html" title="Abstract base class defining the interface by which GUIEventHandlers may request actions of the GUI s...">GUIActionAdapter</a> so may be called from somewhere other than a <a class="el" href="a00918.html#ad1a377fdced27c2eb787a672598091b1" title="handle events, return true if handled, false otherwise.">handle()</a> method in <a class="el" href="a00341.html" title="GUIEventHandler provides a basic interface for any class which wants to handle a GUI Events...">GUIEventHandler</a>. Application must be aware of implications. </p> <p>Reimplemented from <a class="el" href="a00462.html#adc60fc59e1a2c48bbf149651bb02766c">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="abad6451514aff67c5f65a5ae04d9d9e3"></a><!-- doxytag: member="osgGA::TrackballManipulator::init" ref="abad6451514aff67c5f65a5ae04d9d9e3" args="(const GUIEventAdapter &ea, GUIActionAdapter &us)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgGA::TrackballManipulator::init </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00340.html">GUIEventAdapter</a> & </td> <td class="paramname"><em>ea</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00339.html">GUIActionAdapter</a> & </td> <td class="paramname"><em>us</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Start/restart the manipulator. </p> <p>Reimplemented from <a class="el" href="a00462.html#a574e464ee738a91bd929c1bf5139df09">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a1e4549ad6d5a4d206cef73de2ad2f3f3"></a><!-- doxytag: member="osgGA::TrackballManipulator::isMouseMoving" ref="a1e4549ad6d5a4d206cef73de2ad2f3f3" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool osgGA::TrackballManipulator::isMouseMoving </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check the speed at which the mouse is moving. </p> <p>If speed is below a threshold then return false, otherwise return true. </p> </div> </div> <a class="anchor" id="a4c1477934cf4e04e0265ca467c2acf57"></a><!-- doxytag: member="osgGA::TrackballManipulator::setByInverseMatrix" ref="a4c1477934cf4e04e0265ca467c2acf57" args="(const osg::Matrixd &matrix)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgGA::TrackballManipulator::setByInverseMatrix </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00460.html">osg::Matrixd</a> & </td> <td class="paramname"><em>matrix</em></td><td>)</td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>set the position of the matrix manipulator using a 4x4 Matrix. </p> <p>Implements <a class="el" href="a00462.html#a6cf53a06ac040d99f28000dfe5cf701b">osgGA::MatrixManipulator</a>.</p> <p>References <a class="el" href="a00460.html#ab79475ff719cc1d9111b0e60a9369232">osg::Matrixd::inverse()</a>.</p> </div> </div> <a class="anchor" id="aced106f8424edbc9863dcf1401172eff"></a><!-- doxytag: member="osgGA::TrackballManipulator::setByMatrix" ref="aced106f8424edbc9863dcf1401172eff" args="(const osg::Matrixd &matrix)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgGA::TrackballManipulator::setByMatrix </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00460.html">osg::Matrixd</a> & </td> <td class="paramname"><em>matrix</em></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>set the position of the matrix manipulator using a 4x4 Matrix. </p> <p>Implements <a class="el" href="a00462.html#a163aeb92af212718f5033c9c099aeaa5">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a200a0d869b36af1c6248f3192fb70d9a"></a><!-- doxytag: member="osgGA::TrackballManipulator::setCenter" ref="a200a0d869b36af1c6248f3192fb70d9a" args="(const osg::Vec3d &center)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::setCenter </td> <td>(</td> <td class="paramtype">const <a class="el" href="a01067.html">osg::Vec3d</a> & </td> <td class="paramname"><em>center</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set the center of the trackball. </p> </div> </div> <a class="anchor" id="a80035442e235cf02a220fed5ceefaecf"></a><!-- doxytag: member="osgGA::TrackballManipulator::setDistance" ref="a80035442e235cf02a220fed5ceefaecf" args="(double distance)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::setDistance </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"><em>distance</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set the distance of the trackball. </p> </div> </div> <a class="anchor" id="aa042e4c2fa90c8f143ed9699ecd06aa8"></a><!-- doxytag: member="osgGA::TrackballManipulator::setMinimumZoomScale" ref="aa042e4c2fa90c8f143ed9699ecd06aa8" args="(double minimumZoomScale)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::setMinimumZoomScale </td> <td>(</td> <td class="paramtype">double </td> <td class="paramname"><em>minimumZoomScale</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>set the minimum distance (as ratio) the eye point can be zoomed in towards the center before the center is pushed forward. </p> </div> </div> <a class="anchor" id="afba01acb3960ff1ec84ce662f8a12697"></a><!-- doxytag: member="osgGA::TrackballManipulator::setNode" ref="afba01acb3960ff1ec84ce662f8a12697" args="(osg::Node *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgGA::TrackballManipulator::setNode </td> <td>(</td> <td class="paramtype"><a class="el" href="a00491.html">osg::Node</a> * </td> <td class="paramname"></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Attach a node to the manipulator. </p> <p>Automatically detaches previously attached node. setNode(NULL) detaches previously nodes. Is ignored by manipulators which do not require a reference model. </p> <p>Reimplemented from <a class="el" href="a00462.html#ab0943148913cfeafe6450f83e3cef789">osgGA::MatrixManipulator</a>.</p> </div> </div> <a class="anchor" id="a7c25765403bfe671beb37c9b27995e3d"></a><!-- doxytag: member="osgGA::TrackballManipulator::setRotation" ref="a7c25765403bfe671beb37c9b27995e3d" args="(const osg::Quat &rotation)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::setRotation </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00608.html">osg::Quat</a> & </td> <td class="paramname"><em>rotation</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set the rotation of the trackball. </p> </div> </div> <a class="anchor" id="a30ecfee9eafe179bc96928942b623261"></a><!-- doxytag: member="osgGA::TrackballManipulator::setTrackballSize" ref="a30ecfee9eafe179bc96928942b623261" args="(float size)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::setTrackballSize </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"><em>size</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Set the size of the trackball. </p> </div> </div> <a class="anchor" id="a8ac138814d32c3809a93fbe829a9b737"></a><!-- doxytag: member="osgGA::TrackballManipulator::tb_project_to_sphere" ref="a8ac138814d32c3809a93fbe829a9b737" args="(float r, float x, float y)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">float osgGA::TrackballManipulator::tb_project_to_sphere </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"><em>r</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a4f2b50fe4e44b408e90e8349b519bfab"></a><!-- doxytag: member="osgGA::TrackballManipulator::trackball" ref="a4f2b50fe4e44b408e90e8349b519bfab" args="(osg::Vec3 &axis, float &angle, float p1x, float p1y, float p2x, float p2y)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgGA::TrackballManipulator::trackball </td> <td>(</td> <td class="paramtype"><a class="el" href="a01069.html">osg::Vec3</a> & </td> <td class="paramname"><em>axis</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float & </td> <td class="paramname"><em>angle</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"><em>p1x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"><em>p1y</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"><em>p2x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"><em>p2y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="a7bd8f06bddb8c01ea84b544511e8680c"></a><!-- doxytag: member="osgGA::TrackballManipulator::_center" ref="a7bd8f06bddb8c01ea84b544511e8680c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a01067.html">osg::Vec3d</a> <a class="el" href="a00918.html#a7bd8f06bddb8c01ea84b544511e8680c">osgGA::TrackballManipulator::_center</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a324bb449ad28a0cfcd5028f04b5552d3"></a><!-- doxytag: member="osgGA::TrackballManipulator::_distance" ref="a324bb449ad28a0cfcd5028f04b5552d3" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double <a class="el" href="a00918.html#a324bb449ad28a0cfcd5028f04b5552d3">osgGA::TrackballManipulator::_distance</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a7b47138836878bbfd67483e02b238976"></a><!-- doxytag: member="osgGA::TrackballManipulator::_ga_t0" ref="a7b47138836878bbfd67483e02b238976" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00624.html">osg::ref_ptr</a><const <a class="el" href="a00340.html">GUIEventAdapter</a>> <a class="el" href="a00918.html#a7b47138836878bbfd67483e02b238976">osgGA::TrackballManipulator::_ga_t0</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="aa70a51ef6854e6dbd118ef29a06a2afc"></a><!-- doxytag: member="osgGA::TrackballManipulator::_ga_t1" ref="aa70a51ef6854e6dbd118ef29a06a2afc" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00624.html">osg::ref_ptr</a><const <a class="el" href="a00340.html">GUIEventAdapter</a>> <a class="el" href="a00918.html#aa70a51ef6854e6dbd118ef29a06a2afc">osgGA::TrackballManipulator::_ga_t1</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a37be9cdca66189e2e16800907332f705"></a><!-- doxytag: member="osgGA::TrackballManipulator::_minimumZoomScale" ref="a37be9cdca66189e2e16800907332f705" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double <a class="el" href="a00918.html#a37be9cdca66189e2e16800907332f705">osgGA::TrackballManipulator::_minimumZoomScale</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a49a1050dc718e640f8660b9a8d886f3e"></a><!-- doxytag: member="osgGA::TrackballManipulator::_modelScale" ref="a49a1050dc718e640f8660b9a8d886f3e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double <a class="el" href="a00918.html#a49a1050dc718e640f8660b9a8d886f3e">osgGA::TrackballManipulator::_modelScale</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a00dfd97728adf17861faf14904a5c1b4"></a><!-- doxytag: member="osgGA::TrackballManipulator::_node" ref="a00dfd97728adf17861faf14904a5c1b4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00624.html">osg::ref_ptr</a><<a class="el" href="a00491.html">osg::Node</a>> <a class="el" href="a00918.html#a00dfd97728adf17861faf14904a5c1b4">osgGA::TrackballManipulator::_node</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a162c611650a67ab086d27f088f2bd899"></a><!-- doxytag: member="osgGA::TrackballManipulator::_rotation" ref="a162c611650a67ab086d27f088f2bd899" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00608.html">osg::Quat</a> <a class="el" href="a00918.html#a162c611650a67ab086d27f088f2bd899">osgGA::TrackballManipulator::_rotation</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a62359c366964276b8e788d4526d327c2"></a><!-- doxytag: member="osgGA::TrackballManipulator::_thrown" ref="a62359c366964276b8e788d4526d327c2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool <a class="el" href="a00918.html#a62359c366964276b8e788d4526d327c2">osgGA::TrackballManipulator::_thrown</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a032e8399d8ebb45072d2ef2aabd8254b"></a><!-- doxytag: member="osgGA::TrackballManipulator::_trackballSize" ref="a032e8399d8ebb45072d2ef2aabd8254b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">float <a class="el" href="a00918.html#a032e8399d8ebb45072d2ef2aabd8254b">osgGA::TrackballManipulator::_trackballSize</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>osgGA/<a class="el" href="a01408.html">TrackballManipulator</a></li> </ul> </div> <hr> <table border="0"><tr><td> <img src="osg32-32.png" alt="osg logo" /> </td><td> <address><small>Generated at Tue May 31 2011 04:19:35 for the <a href="http://www.openscenegraph.org/">OpenSceneGraph</a> by <a href="http://www.doxygen.org">doxygen</a> 1.7.4.</small></address> <!-- Dimitri van Heesch's e-mail address removed, lest he get messages on the OpenSceneGraph --> </td></tr></table> </body> </html>