Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 807a538c0f4abf81467b8a86879881d9 > files > 964

OpenSceneGraph-devel-2.8.4-2.fc14.i686.rpm

<!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::KeySwitchMatrixManipulator 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&#160;<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&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;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="a00422.html">KeySwitchMatrixManipulator</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">osgGA::KeySwitchMatrixManipulator Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="osgGA::KeySwitchMatrixManipulator" --><!-- doxytag: inherits="osgGA::MatrixManipulator" -->
<p><a class="el" href="a00422.html" title="KeySwitchMatrixManipulator is a decorator which allows the type of camera manipulator being used to b...">KeySwitchMatrixManipulator</a> is a decorator which allows the type of camera manipulator being used to be switched by pressing a key.  
 <a href="a00422.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for osgGA::KeySwitchMatrixManipulator:</div>
<div class="dyncontent">
<div class="center"><img src="a02455.png" border="0" usemap="#osgGA_1_1KeySwitchMatrixManipulator_inherit__map" alt="Inheritance graph"/></div>
<map name="osgGA_1_1KeySwitchMatrixManipulator_inherit__map" id="osgGA_1_1KeySwitchMatrixManipulator_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="a02456.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef std::pair&lt; std::string, <br class="typebreak"/>
<a class="el" href="a00624.html">osg::ref_ptr</a><br class="typebreak"/>
&lt; <a class="el" href="a00462.html">MatrixManipulator</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a521dfbd44fe7feb7a56e0a3d39e30c5c">NamedManipulator</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; int, <br class="typebreak"/>
<a class="el" href="a00422.html#a521dfbd44fe7feb7a56e0a3d39e30c5c">NamedManipulator</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a8b1327649cc23e34089fd27999345897">KeyManipMap</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#aeaf8c5a734e2c73379dce7296df16fa2">className</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">return the name of the object's class type.  <a href="#aeaf8c5a734e2c73379dce7296df16fa2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#ad67250d29388ff6b612cd4d29e5c3c68">addMatrixManipulator</a> (int key, std::string name, <a class="el" href="a00462.html">MatrixManipulator</a> *cm)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a camera manipulator with an associated name, and a key to trigger the switch,.  <a href="#ad67250d29388ff6b612cd4d29e5c3c68"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a88515a07371764364a8a9dc15f883202">addNumberedMatrixManipulator</a> (<a class="el" href="a00462.html">MatrixManipulator</a> *cm)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a camera manipulator with an autogenerated keybinding which is '1' + previous number of camera's registerd.  <a href="#a88515a07371764364a8a9dc15f883202"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a38c4b6ef960b7e0b26a83d7ce74d0b7a">getNumMatrixManipulators</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#ac1694de27dff8da778ea23c2357b96aa">selectMatrixManipulator</a> (unsigned int num)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00422.html#a8b1327649cc23e34089fd27999345897">KeyManipMap</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a9407b2c6e4d0dcdd2e352bb724ea8d62">getKeyManipMap</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the complete list of manipulators attached to this keyswitch manipulator.  <a href="#a9407b2c6e4d0dcdd2e352bb724ea8d62"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00422.html#a8b1327649cc23e34089fd27999345897">KeyManipMap</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a2566b018be501946ff755d11e56ce506">getKeyManipMap</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the const complete list of manipulators attached to this keyswitch manipulator.  <a href="#a2566b018be501946ff755d11e56ce506"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a423d581889795c93043a4deff671e506">getCurrentMatrixManipulator</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current active manipulators.  <a href="#a423d581889795c93043a4deff671e506"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a0ea61f10af1b5f67229ee947dc508bbb">getCurrentMatrixManipulator</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the const current active manipulators.  <a href="#a0ea61f10af1b5f67229ee947dc508bbb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a082a345339b4e7eb0d500c23991c7842">getMatrixManipulatorWithIndex</a> (unsigned int key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get manipulator assigned to a specified index.  <a href="#a082a345339b4e7eb0d500c23991c7842"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#ada0ba386f048dec19b92f0cde73e82c1">getMatrixManipulatorWithIndex</a> (unsigned int key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get const manipulator assigned to a specified index.  <a href="#ada0ba386f048dec19b92f0cde73e82c1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a190a96d48bbfd60de08f4d42a028efd8">getMatrixManipulatorWithKey</a> (unsigned int key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get manipulator assigned to a specified key.  <a href="#a190a96d48bbfd60de08f4d42a028efd8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a6e4c036c04e195e823145ac967db85a3">getMatrixManipulatorWithKey</a> (unsigned int key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get const manipulator assigned to a specified key.  <a href="#a6e4c036c04e195e823145ac967db85a3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a1594bafbaaec48cdaa330987494c879e">setMinimumDistance</a> (float minimumDistance)</td></tr>
<tr><td class="mdescLeft">&#160;</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="#a1594bafbaaec48cdaa330987494c879e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a9c530f1ccc306fd55242677b29dfbd43">setCoordinateFrameCallback</a> (<a class="el" href="a00167.html">CoordinateFrameCallback</a> *cb)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">set the coordinate frame which callback tells the manipulator which way is up, east and north.  <a href="#a9c530f1ccc306fd55242677b29dfbd43"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a032634de502da7fc2b5b2adb0010d0fb">setByMatrix</a> (const <a class="el" href="a00460.html">osg::Matrixd</a> &amp;matrix)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the position of the matrix manipulator using a 4x4 Matrix.  <a href="#a032634de502da7fc2b5b2adb0010d0fb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a10e744e10ce2a3a5d7605c198702f575">setByInverseMatrix</a> (const <a class="el" href="a00460.html">osg::Matrixd</a> &amp;matrix)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">set the position of the matrix manipulator using a 4x4 Matrix.  <a href="#a10e744e10ce2a3a5d7605c198702f575"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00460.html">osg::Matrixd</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#ada5697f77d719db25ca40ed3814bbf94">getMatrix</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">get the position of the manipulator as 4x4 Matrix.  <a href="#ada5697f77d719db25ca40ed3814bbf94"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00460.html">osg::Matrixd</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a4f82957cb1aeb12d1e47a8f7d4f8862a">getInverseMatrix</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</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="#a4f82957cb1aeb12d1e47a8f7d4f8862a"></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>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a41d96668adb5366496bc412262b4750a">getFusionDistanceMode</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the FusionDistanceMode.  <a href="#a41d96668adb5366496bc412262b4750a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#ad0307525903dc6b654397e1cf042484b">getFusionDistanceValue</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the FusionDistanceValue.  <a href="#ad0307525903dc6b654397e1cf042484b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a6d79b4d1bf515791fceaff3c336f7a9e">setNode</a> (<a class="el" href="a00491.html">osg::Node</a> *n)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Attach a node to the manipulator, automatically detaching any previously attached node.  <a href="#a6d79b4d1bf515791fceaff3c336f7a9e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00491.html">osg::Node</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#afa30ba7dc04b7ac1b6c6c05795cb644c">getNode</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return const node if attached.  <a href="#afa30ba7dc04b7ac1b6c6c05795cb644c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00491.html">osg::Node</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a04a7b18ddca43690c32ce7fae8d918ac">getNode</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return node if attached.  <a href="#a04a7b18ddca43690c32ce7fae8d918ac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a418645cdbd6a7c9a823c0e4573efa361">setHomePosition</a> (const <a class="el" href="a01067.html">osg::Vec3d</a> &amp;eye, const <a class="el" href="a01067.html">osg::Vec3d</a> &amp;center, const <a class="el" href="a01067.html">osg::Vec3d</a> &amp;up, bool autoComputeHomePosition=false)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Manually set the home position, and set the automatic compute of home position.  <a href="#a418645cdbd6a7c9a823c0e4573efa361"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#aacc47d9fb219cb240fbbc6bd0621fb90">setAutoComputeHomePosition</a> (bool flag)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set whether the automatic compute of the home position is enabled.  <a href="#aacc47d9fb219cb240fbbc6bd0621fb90"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a94ffce1301d0359438f61023c51c4118">computeHomePosition</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the home position.  <a href="#a94ffce1301d0359438f61023c51c4118"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#ab0cdf8645eba2ab512e85993880acc51">home</a> (const <a class="el" href="a00340.html">GUIEventAdapter</a> &amp;ee, <a class="el" href="a00339.html">GUIActionAdapter</a> &amp;aa)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Move the camera to the default position.  <a href="#ab0cdf8645eba2ab512e85993880acc51"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a85d50de086905f3011aba4ee799f8c67">init</a> (const <a class="el" href="a00340.html">GUIEventAdapter</a> &amp;ee, <a class="el" href="a00339.html">GUIActionAdapter</a> &amp;aa)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Start/restart the manipulator.  <a href="#a85d50de086905f3011aba4ee799f8c67"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a626c3c73122d5e2824b6a7d96d0b0989">handle</a> (const <a class="el" href="a00340.html">GUIEventAdapter</a> &amp;ea, <a class="el" href="a00339.html">GUIActionAdapter</a> &amp;us)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Handle events, return true if handled, false otherwise.  <a href="#a626c3c73122d5e2824b6a7d96d0b0989"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00422.html#a61a8744a63270a6c6bfa7c3d87668b85">getUsage</a> (<a class="el" href="a00028.html">osg::ApplicationUsage</a> &amp;usage) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the keyboard and mouse usage of this manipulator.  <a href="#a61a8744a63270a6c6bfa7c3d87668b85"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p><a class="el" href="a00422.html" title="KeySwitchMatrixManipulator is a decorator which allows the type of camera manipulator being used to b...">KeySwitchMatrixManipulator</a> is a decorator which allows the type of camera manipulator being used to be switched by pressing a key. </p>
<p>E.g. '1' for a TrackballManipultor, '2' for a <a class="el" href="a00229.html" title="DriveManipulator is a camera manipulator which provides drive-like functionality.">DriveManipulator</a>, '3' for a <a class="el" href="a00292.html" title="FlightManipulator is a MatrixManipulator which provides flight simulator-like updating of the camera ...">FlightManipulator</a>. The manipulators available, and the associated switch keys, can be configured. </p>
</div><hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a8b1327649cc23e34089fd27999345897"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::KeyManipMap" ref="a8b1327649cc23e34089fd27999345897" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::map&lt;int, <a class="el" href="a00422.html#a521dfbd44fe7feb7a56e0a3d39e30c5c">NamedManipulator</a>&gt; <a class="el" href="a00422.html#a8b1327649cc23e34089fd27999345897">osgGA::KeySwitchMatrixManipulator::KeyManipMap</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a521dfbd44fe7feb7a56e0a3d39e30c5c"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::NamedManipulator" ref="a521dfbd44fe7feb7a56e0a3d39e30c5c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::pair&lt;std::string, <a class="el" href="a00624.html">osg::ref_ptr</a>&lt;<a class="el" href="a00462.html">MatrixManipulator</a>&gt; &gt; <a class="el" href="a00422.html#a521dfbd44fe7feb7a56e0a3d39e30c5c">osgGA::KeySwitchMatrixManipulator::NamedManipulator</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ad67250d29388ff6b612cd4d29e5c3c68"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::addMatrixManipulator" ref="ad67250d29388ff6b612cd4d29e5c3c68" args="(int key, std::string name, MatrixManipulator *cm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void osgGA::KeySwitchMatrixManipulator::addMatrixManipulator </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td>
          <td class="paramname"><em>cm</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a camera manipulator with an associated name, and a key to trigger the switch,. </p>

</div>
</div>
<a class="anchor" id="a88515a07371764364a8a9dc15f883202"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::addNumberedMatrixManipulator" ref="a88515a07371764364a8a9dc15f883202" args="(MatrixManipulator *cm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void osgGA::KeySwitchMatrixManipulator::addNumberedMatrixManipulator </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00462.html">MatrixManipulator</a> *&#160;</td>
          <td class="paramname"><em>cm</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a camera manipulator with an autogenerated keybinding which is '1' + previous number of camera's registerd. </p>

</div>
</div>
<a class="anchor" id="aeaf8c5a734e2c73379dce7296df16fa2"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::className" ref="aeaf8c5a734e2c73379dce7296df16fa2" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* osgGA::KeySwitchMatrixManipulator::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="a94ffce1301d0359438f61023c51c4118"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::computeHomePosition" ref="a94ffce1301d0359438f61023c51c4118" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::computeHomePosition </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the home position. </p>

<p>Reimplemented from <a class="el" href="a00462.html#a952fec4339063b877669c870a50f6949">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="a423d581889795c93043a4deff671e506"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getCurrentMatrixManipulator" ref="a423d581889795c93043a4deff671e506" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00462.html">MatrixManipulator</a>* osgGA::KeySwitchMatrixManipulator::getCurrentMatrixManipulator </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the current active manipulators. </p>

</div>
</div>
<a class="anchor" id="a0ea61f10af1b5f67229ee947dc508bbb"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getCurrentMatrixManipulator" ref="a0ea61f10af1b5f67229ee947dc508bbb" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00462.html">MatrixManipulator</a>* osgGA::KeySwitchMatrixManipulator::getCurrentMatrixManipulator </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the const current active manipulators. </p>

</div>
</div>
<a class="anchor" id="a41d96668adb5366496bc412262b4750a"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getFusionDistanceMode" ref="a41d96668adb5366496bc412262b4750a" 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::KeySwitchMatrixManipulator::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>

</div>
</div>
<a class="anchor" id="ad0307525903dc6b654397e1cf042484b"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getFusionDistanceValue" ref="ad0307525903dc6b654397e1cf042484b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float osgGA::KeySwitchMatrixManipulator::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="a4f82957cb1aeb12d1e47a8f7d4f8862a"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getInverseMatrix" ref="a4f82957cb1aeb12d1e47a8f7d4f8862a" 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::KeySwitchMatrixManipulator::getInverseMatrix </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 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="a9407b2c6e4d0dcdd2e352bb724ea8d62"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getKeyManipMap" ref="a9407b2c6e4d0dcdd2e352bb724ea8d62" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00422.html#a8b1327649cc23e34089fd27999345897">KeyManipMap</a>&amp; osgGA::KeySwitchMatrixManipulator::getKeyManipMap </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the complete list of manipulators attached to this keyswitch manipulator. </p>

</div>
</div>
<a class="anchor" id="a2566b018be501946ff755d11e56ce506"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getKeyManipMap" ref="a2566b018be501946ff755d11e56ce506" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00422.html#a8b1327649cc23e34089fd27999345897">KeyManipMap</a>&amp; osgGA::KeySwitchMatrixManipulator::getKeyManipMap </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the const complete list of manipulators attached to this keyswitch manipulator. </p>

</div>
</div>
<a class="anchor" id="ada5697f77d719db25ca40ed3814bbf94"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getMatrix" ref="ada5697f77d719db25ca40ed3814bbf94" 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::KeySwitchMatrixManipulator::getMatrix </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 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="a082a345339b4e7eb0d500c23991c7842"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithIndex" ref="a082a345339b4e7eb0d500c23991c7842" args="(unsigned int key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00462.html">MatrixManipulator</a>* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithIndex </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get manipulator assigned to a specified index. </p>

</div>
</div>
<a class="anchor" id="ada0ba386f048dec19b92f0cde73e82c1"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithIndex" ref="ada0ba386f048dec19b92f0cde73e82c1" args="(unsigned int key) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00462.html">MatrixManipulator</a>* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithIndex </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get const manipulator assigned to a specified index. </p>

</div>
</div>
<a class="anchor" id="a190a96d48bbfd60de08f4d42a028efd8"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithKey" ref="a190a96d48bbfd60de08f4d42a028efd8" args="(unsigned int key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00462.html">MatrixManipulator</a>* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithKey </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get manipulator assigned to a specified key. </p>

</div>
</div>
<a class="anchor" id="a6e4c036c04e195e823145ac967db85a3"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithKey" ref="a6e4c036c04e195e823145ac967db85a3" args="(unsigned int key) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00462.html">MatrixManipulator</a>* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithKey </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get const manipulator assigned to a specified key. </p>

</div>
</div>
<a class="anchor" id="a04a7b18ddca43690c32ce7fae8d918ac"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getNode" ref="a04a7b18ddca43690c32ce7fae8d918ac" 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::KeySwitchMatrixManipulator::getNode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, 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="afa30ba7dc04b7ac1b6c6c05795cb644c"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getNode" ref="afa30ba7dc04b7ac1b6c6c05795cb644c" 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::KeySwitchMatrixManipulator::getNode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return const node if attached. </p>

<p>Reimplemented from <a class="el" href="a00462.html#a6736aa73dc963eecb8738287df49c604">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="a38c4b6ef960b7e0b26a83d7ce74d0b7a"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getNumMatrixManipulators" ref="a38c4b6ef960b7e0b26a83d7ce74d0b7a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int osgGA::KeySwitchMatrixManipulator::getNumMatrixManipulators </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a61a8744a63270a6c6bfa7c3d87668b85"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::getUsage" ref="a61a8744a63270a6c6bfa7c3d87668b85" args="(osg::ApplicationUsage &amp;usage) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::getUsage </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00028.html">osg::ApplicationUsage</a> &amp;&#160;</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="a626c3c73122d5e2824b6a7d96d0b0989"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::handle" ref="a626c3c73122d5e2824b6a7d96d0b0989" args="(const GUIEventAdapter &amp;ea, GUIActionAdapter &amp;us)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool osgGA::KeySwitchMatrixManipulator::handle </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00340.html">GUIEventAdapter</a> &amp;&#160;</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> &amp;&#160;</td>
          <td class="paramname"><em>us</em>&#160;</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="ab0cdf8645eba2ab512e85993880acc51"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::home" ref="ab0cdf8645eba2ab512e85993880acc51" args="(const GUIEventAdapter &amp;ee, GUIActionAdapter &amp;aa)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::home </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00340.html">GUIEventAdapter</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00339.html">GUIActionAdapter</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, 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="a85d50de086905f3011aba4ee799f8c67"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::init" ref="a85d50de086905f3011aba4ee799f8c67" args="(const GUIEventAdapter &amp;ee, GUIActionAdapter &amp;aa)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::init </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00340.html">GUIEventAdapter</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00339.html">GUIActionAdapter</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Start/restart the manipulator. </p>
<p>FIXME: what does this actually mean? Provide examples. </p>

<p>Reimplemented from <a class="el" href="a00462.html#a574e464ee738a91bd929c1bf5139df09">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="ac1694de27dff8da778ea23c2357b96aa"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::selectMatrixManipulator" ref="ac1694de27dff8da778ea23c2357b96aa" args="(unsigned int num)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void osgGA::KeySwitchMatrixManipulator::selectMatrixManipulator </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>num</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="aacc47d9fb219cb240fbbc6bd0621fb90"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::setAutoComputeHomePosition" ref="aacc47d9fb219cb240fbbc6bd0621fb90" args="(bool flag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::setAutoComputeHomePosition </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set whether the automatic compute of the home position is enabled. </p>

<p>Reimplemented from <a class="el" href="a00462.html#a04fcc98dc3bc4182a1300e96a8ef19b8">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="a10e744e10ce2a3a5d7605c198702f575"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::setByInverseMatrix" ref="a10e744e10ce2a3a5d7605c198702f575" args="(const osg::Matrixd &amp;matrix)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::setByInverseMatrix </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00460.html">osg::Matrixd</a> &amp;&#160;</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>

</div>
</div>
<a class="anchor" id="a032634de502da7fc2b5b2adb0010d0fb"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::setByMatrix" ref="a032634de502da7fc2b5b2adb0010d0fb" args="(const osg::Matrixd &amp;matrix)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::setByMatrix </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00460.html">osg::Matrixd</a> &amp;&#160;</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#a163aeb92af212718f5033c9c099aeaa5">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="a9c530f1ccc306fd55242677b29dfbd43"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::setCoordinateFrameCallback" ref="a9c530f1ccc306fd55242677b29dfbd43" args="(CoordinateFrameCallback *cb)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::setCoordinateFrameCallback </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00167.html">CoordinateFrameCallback</a> *&#160;</td>
          <td class="paramname"><em>cb</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the coordinate frame which callback tells the manipulator which way is up, east and north. </p>

<p>Reimplemented from <a class="el" href="a00462.html#a129add853d758ad624e7e8eeb776d3f4">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="a418645cdbd6a7c9a823c0e4573efa361"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::setHomePosition" ref="a418645cdbd6a7c9a823c0e4573efa361" args="(const osg::Vec3d &amp;eye, const osg::Vec3d &amp;center, const osg::Vec3d &amp;up, bool autoComputeHomePosition=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::setHomePosition </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a01067.html">osg::Vec3d</a> &amp;&#160;</td>
          <td class="paramname"><em>eye</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01067.html">osg::Vec3d</a> &amp;&#160;</td>
          <td class="paramname"><em>center</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01067.html">osg::Vec3d</a> &amp;&#160;</td>
          <td class="paramname"><em>up</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>autoComputeHomePosition</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Manually set the home position, and set the automatic compute of home position. </p>

<p>Reimplemented from <a class="el" href="a00462.html#a944dd8b24f008598988fc3b6b522a27b">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="a1594bafbaaec48cdaa330987494c879e"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::setMinimumDistance" ref="a1594bafbaaec48cdaa330987494c879e" args="(float minimumDistance)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::setMinimumDistance </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>minimumDistance</em></td><td>)</td>
          <td><code> [virtual]</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>

<p>Reimplemented from <a class="el" href="a00462.html#acbfe861e357e39586e18c50006bddda1">osgGA::MatrixManipulator</a>.</p>

</div>
</div>
<a class="anchor" id="a6d79b4d1bf515791fceaff3c336f7a9e"></a><!-- doxytag: member="osgGA::KeySwitchMatrixManipulator::setNode" ref="a6d79b4d1bf515791fceaff3c336f7a9e" args="(osg::Node *n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgGA::KeySwitchMatrixManipulator::setNode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00491.html">osg::Node</a> *&#160;</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, automatically detaching any previously attached node. </p>
<p>setNode(NULL) detaches previous nodes. May be 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>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>osgGA/<a class="el" href="a01403.html">KeySwitchMatrixManipulator</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>