285 lines
13 KiB
HTML
285 lines
13 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE>class OSGGA_EXPORT osgGA::DriveManipulator</TITLE>
|
|
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.10">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#ffffff">
|
|
|
|
<H2>class OSGGA_EXPORT <A HREF="#DOC.DOCU">osgGA::DriveManipulator</A></H2></H2><BLOCKQUOTE> DriveManipulator is a camera manipulator which provides drive-like functionality.</BLOCKQUOTE>
|
|
<HR>
|
|
|
|
<H2>Inheritance:</H2>
|
|
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=125>
|
|
<param name=classes value="Mosg::Object,M,CGUIEventHandler,MGUIEventHandler.html,CMatrixManipulator,MMatrixManipulator.html,CDriveManipulator,MDriveManipulator.html">
|
|
<param name=before value="M,M,M,M">
|
|
<param name=after value="Md_SPSP,Md_SP,Md_,M">
|
|
<param name=indent value="0,1,2,3">
|
|
<param name=arrowdir value="down">
|
|
</APPLET>
|
|
<HR>
|
|
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.2.1">DriveManipulator</A></B>()
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const char* <B><A HREF="#DOC.2.2.2">className</A></B>() const
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.2.3">setByMatrix</A></B>(const osg::Matrixd& matrix)
|
|
<DD><I>set the position of the matrix manipulator using a 4x4 Matrix</I>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.2.4">setByInverseMatrix</A></B>(const osg::Matrixd& matrix)
|
|
<DD><I>set the position of the matrix manipulator using a 4x4 Matrix</I>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual osg::Matrixd <B><A HREF="#DOC.2.2.5">getMatrix</A></B>() const
|
|
<DD><I>get the position of the manipulator as 4x4 Matrix</I>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual osg::Matrixd <B><A HREF="#DOC.2.2.6">getInverseMatrix</A></B>() const
|
|
<DD><I>get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model view matrix</I>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.2.7">setNode</A></B>(osg::Node*)
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const osg::Node* <B><A HREF="#DOC.2.2.8">getNode</A></B>() const
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual osg::Node* <B><A HREF="#DOC.2.2.9">getNode</A></B>()
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.2.10">home</A></B>(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea, <!1><A HREF="GUIActionAdapter.html">GUIActionAdapter</A>& us)
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.2.11">init</A></B>(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea, <!1><A HREF="GUIActionAdapter.html">GUIActionAdapter</A>& us)
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual bool <B><A HREF="#DOC.2.2.12">handle</A></B>(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea, <!1><A HREF="GUIActionAdapter.html">GUIActionAdapter</A>& us)
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.2.13">getUsage</A></B>(osg::ApplicationUsage& usage) const
|
|
<DD><I>Get the keyboard and mouse usage of this manipulator</I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Fields</H3><DD><DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>osg::ref_ptr<const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>> <B><A HREF="#DOC.2.2.19">_ga_t1</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>osg::ref_ptr<const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>> <B><A HREF="#DOC.2.2.20">_ga_t0</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>osg::ref_ptr<osg::Node> <B><A HREF="#DOC.2.2.21">_node</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>float <B><A HREF="#DOC.2.2.22">_modelScale</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>float <B><A HREF="#DOC.2.2.23">_velocity</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>float <B><A HREF="#DOC.2.2.24">_height</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>float <B><A HREF="#DOC.2.2.25">_buffer</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="DriveManipulator.html#DOC.2.2.26">SpeedControlMode</A> <B><A HREF="#DOC.2.2.27">_speedMode</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>osg::Vec3 <B><A HREF="#DOC.2.2.28">_eye</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>osg::Quat <B><A HREF="#DOC.2.2.29">_rotation</A></B>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>float <B><A HREF="#DOC.2.2.30">_distance</A></B>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Methods</H3><DD><DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual <B><A HREF="#DOC.2.2.14">~DriveManipulator</A></B>()
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.2.15">flushMouseEventStack</A></B>()
|
|
<DD><I>Reset the internal GUIEvent stack</I>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.2.16">addMouseEvent</A></B>(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea)
|
|
<DD><I>Add the current mouse GUIEvent to internal stack</I>
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.2.17">computePosition</A></B>(const osg::Vec3& eye, const osg::Vec3& lv, const osg::Vec3& up)
|
|
<DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>bool <B><A HREF="#DOC.2.2.18">calcMovement</A></B>()
|
|
<DD><I>For the give mouse movement calculate the movement of the camera.</I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Members</H3><DD><DT>
|
|
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>enum <B><A HREF="#DOC.2.2.26">SpeedControlMode</A></B>
|
|
</DL></P>
|
|
|
|
</DL>
|
|
<HR><H3>Inherited from <A HREF="MatrixManipulator.html">MatrixManipulator</A>:</H3>
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif>virtual osgUtil::SceneView::FusionDistanceMode <B>getFusionDistanceMode</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>virtual float <B>getFusionDistanceValue</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>virtual void <B>accept</B>(<!1><A HREF="GUIEventHandlerVisitor.html">GUIEventHandlerVisitor</A>& v)
|
|
</DL></P>
|
|
|
|
</DL>
|
|
<HR><H3>Inherited from <A HREF="GUIEventHandler.html">GUIEventHandler</A>:</H3>
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif>META_Object <B>(osgGA, GUIEventHandler) const </B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>virtual <!1><A HREF="CompositeGUIEventHandler.html">CompositeGUIEventHandler</A>* <B>getComposite</B>()
|
|
</DL></P>
|
|
|
|
</DL>
|
|
|
|
<A NAME="DOC.DOCU"></A>
|
|
<HR>
|
|
<H2>Documentation</H2>
|
|
<BLOCKQUOTE>
|
|
DriveManipulator is a camera manipulator which provides drive-like
|
|
functionality. By default, the left mouse button accelerates, the right
|
|
mouse button decelerates, and the middle mouse button (or left and
|
|
right simultaneously) stops dead.</BLOCKQUOTE>
|
|
<DL>
|
|
|
|
<A NAME="DriveManipulator"></A>
|
|
<A NAME="DOC.2.2.1"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> DriveManipulator()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="className"></A>
|
|
<A NAME="DOC.2.2.2"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const char* className() const </B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="setByMatrix"></A>
|
|
<A NAME="DOC.2.2.3"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void setByMatrix(const osg::Matrixd& matrix)</B></TT>
|
|
<DD>set the position of the matrix manipulator using a 4x4 Matrix
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="setByInverseMatrix"></A>
|
|
<A NAME="DOC.2.2.4"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void setByInverseMatrix(const osg::Matrixd& matrix)</B></TT>
|
|
<DD>set the position of the matrix manipulator using a 4x4 Matrix
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getMatrix"></A>
|
|
<A NAME="DOC.2.2.5"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual osg::Matrixd getMatrix() const </B></TT>
|
|
<DD>get the position of the manipulator as 4x4 Matrix
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getInverseMatrix"></A>
|
|
<A NAME="DOC.2.2.6"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual osg::Matrixd getInverseMatrix() const </B></TT>
|
|
<DD>get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model view matrix
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="setNode"></A>
|
|
<A NAME="DOC.2.2.7"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void setNode(osg::Node*)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getNode"></A>
|
|
<A NAME="DOC.2.2.8"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const osg::Node* getNode() const </B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getNode"></A>
|
|
<A NAME="DOC.2.2.9"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual osg::Node* getNode()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="home"></A>
|
|
<A NAME="DOC.2.2.10"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void home(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea, <!1><A HREF="GUIActionAdapter.html">GUIActionAdapter</A>& us)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="init"></A>
|
|
<A NAME="DOC.2.2.11"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void init(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea, <!1><A HREF="GUIActionAdapter.html">GUIActionAdapter</A>& us)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="handle"></A>
|
|
<A NAME="DOC.2.2.12"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool handle(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea, <!1><A HREF="GUIActionAdapter.html">GUIActionAdapter</A>& us)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getUsage"></A>
|
|
<A NAME="DOC.2.2.13"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void getUsage(osg::ApplicationUsage& usage) const </B></TT>
|
|
<DD>Get the keyboard and mouse usage of this manipulator
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="~DriveManipulator"></A>
|
|
<A NAME="DOC.2.2.14"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual ~DriveManipulator()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="flushMouseEventStack"></A>
|
|
<A NAME="DOC.2.2.15"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void flushMouseEventStack()</B></TT>
|
|
<DD>Reset the internal GUIEvent stack
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="addMouseEvent"></A>
|
|
<A NAME="DOC.2.2.16"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addMouseEvent(const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>& ea)</B></TT>
|
|
<DD>Add the current mouse GUIEvent to internal stack
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="computePosition"></A>
|
|
<A NAME="DOC.2.2.17"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void computePosition(const osg::Vec3& eye, const osg::Vec3& lv, const osg::Vec3& up)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="calcMovement"></A>
|
|
<A NAME="DOC.2.2.18"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool calcMovement()</B></TT>
|
|
<DD>For the give mouse movement calculate the movement of the camera.
|
|
Return true is camera has moved and a redraw is required.
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_ga_t1"></A>
|
|
<A NAME="DOC.2.2.19"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>osg::ref_ptr<const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>> _ga_t1</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_ga_t0"></A>
|
|
<A NAME="DOC.2.2.20"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>osg::ref_ptr<const <!1><A HREF="GUIEventAdapter.html">GUIEventAdapter</A>> _ga_t0</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_node"></A>
|
|
<A NAME="DOC.2.2.21"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>osg::ref_ptr<osg::Node> _node</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_modelScale"></A>
|
|
<A NAME="DOC.2.2.22"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>float _modelScale</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_velocity"></A>
|
|
<A NAME="DOC.2.2.23"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>float _velocity</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_height"></A>
|
|
<A NAME="DOC.2.2.24"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>float _height</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_buffer"></A>
|
|
<A NAME="DOC.2.2.25"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>float _buffer</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="SpeedControlMode"></A>
|
|
<A NAME="DOC.2.2.26"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum SpeedControlMode</B></TT>
|
|
<DL><DT><DD></DL><P><DL>
|
|
|
|
<A NAME="USE_MOUSE_Y_FOR_SPEED"></A>
|
|
<A NAME="DOC.2.2.26.1"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> USE_MOUSE_Y_FOR_SPEED</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="USE_MOUSE_BUTTONS_FOR_SPEED"></A>
|
|
<A NAME="DOC.2.2.26.2"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> USE_MOUSE_BUTTONS_FOR_SPEED</B></TT>
|
|
<DL><DT><DD></DL><P></DL>
|
|
|
|
<A NAME="_speedMode"></A>
|
|
<A NAME="DOC.2.2.27"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="DriveManipulator.html#DOC.2.2.26">SpeedControlMode</A> _speedMode</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_eye"></A>
|
|
<A NAME="DOC.2.2.28"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>osg::Vec3 _eye</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_rotation"></A>
|
|
<A NAME="DOC.2.2.29"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>osg::Quat _rotation</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_distance"></A>
|
|
<A NAME="DOC.2.2.30"></A>
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>float _distance</B></TT>
|
|
<DL><DT><DD></DL><P></DL>
|
|
|
|
<HR><DL><DT><B>This class has no child classes.</B></DL>
|
|
|
|
<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
|
|
<BR>
|
|
This page was generated with the help of <A HREF="http://docpp.sourceforge.net">DOC++</A>.
|
|
</BODY>
|
|
</HTML>
|