Inheritance:
Public Methods
-
TrackballManipulator()
-
virtual const char* className() const
-
void setMinimumZoomScale(float minimumZoomScale)
- set the minimum distance (as ratio) the eye point can be zoomed in towards the center before the center is pushed forward
-
float getMinimumZoomScale() const
- get the minimum distance (as ratio) the eye point can be zoomed in
-
virtual void setByMatrix(const osg::Matrixd& matrix)
- set the position of the matrix manipulator using a 4x4 Matrix
-
virtual void setByInverseMatrix(const osg::Matrixd& matrix)
- set the position of the matrix manipulator using a 4x4 Matrix
-
virtual osg::Matrixd getMatrix() const
- get the position of the manipulator as 4x4 Matrix
-
virtual osg::Matrixd getInverseMatrix() const
- get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model view matrix
-
virtual osgUtil::SceneView::FusionDistanceMode getFusionDistanceMode() const
- Get the FusionDistanceMode.
-
virtual float getFusionDistanceValue() const
- Get the FusionDistanceValue.
-
virtual void setNode(osg::Node*)
- Attach a node to the manipulator.
-
virtual const osg::Node* getNode() const
- Return node if attached
-
virtual osg::Node* getNode()
- Return node if attached
-
virtual void home(const GUIEventAdapter& ea, GUIActionAdapter& us)
- Move the camera to the default position.
-
virtual void init(const GUIEventAdapter& ea, GUIActionAdapter& us)
- Start/restart the manipulator
-
virtual bool handle(const GUIEventAdapter& ea, GUIActionAdapter& us)
- handle events, return true if handled, false otherwise
-
virtual void getUsage(osg::ApplicationUsage& usage) const
- Get the keyboard and mouse usage of this manipulator
Protected Fields
-
osg::ref_ptr<const GUIEventAdapter> _ga_t1
-
osg::ref_ptr<const GUIEventAdapter> _ga_t0
-
osg::ref_ptr<osg::Node> _node
-
double _modelScale
-
double _minimumZoomScale
-
bool _thrown
-
osg::Vec3d _center
-
osg::Quat _rotation
-
double _distance
Protected Methods
-
virtual ~TrackballManipulator()
-
void flushMouseEventStack()
- Reset the internal GUIEvent stack
-
void addMouseEvent(const GUIEventAdapter& ea)
- Add the current mouse GUIEvent to internal stack
-
void computePosition(const osg::Vec3& eye, const osg::Vec3& lv, const osg::Vec3& up)
-
bool calcMovement()
- For the give mouse movement calculate the movement of the camera.
-
void trackball(osg::Vec3& axis, float& angle, float p1x, float p1y, float p2x, float p2y)
-
float tb_project_to_sphere(float r, float x, float y)
-
bool isMouseMoving()
- Check the speed at which the mouse is moving.
Public Classes
-
class CoordinateFrameCallback: public osg::Referenced
- callback class to use to allow matrix manipulators to querry the application for the local coordinate frame
Public Methods
-
virtual void setMinimumDistance(float minimumDistance)
-
float getMinimumDistance() const
-
virtual void setCoordinateFrameCallback(CoordinateFrameCallback* cb)
-
CoordinateFrameCallback* getCoordinateFrameCallback()
-
const CoordinateFrameCallback* getCoordinateFrameCallback() const
-
osg::CoordinateFrame getCoordinateFrame(const osg::Vec3d& position) const
-
osg::Vec3d getSideVector(const osg::CoordinateFrame& cf) const
-
osg::Vec3d getFrontVector(const osg::CoordinateFrame& cf) const
-
osg::Vec3d getUpVector(const osg::CoordinateFrame& cf) const
-
virtual void setHomePosition(const osg::Vec3d& eye, const osg::Vec3d& center, const osg::Vec3d& up)
-
virtual void getHomePosition(osg::Vec3d& eye, osg::Vec3d& center, osg::Vec3d& up)
-
virtual void setAutoComputeHomePosition(bool flag)
-
bool getAutoComputeHomePosition() const
-
virtual void computeHomePosition()
-
virtual void accept(GUIEventHandlerVisitor& v)
Protected Fields
-
double _minimumDistance
-
bool _autoComputeHomePosition
-
osg::Vec3d _homeEye
-
osg::Vec3d _homeCenter
-
osg::Vec3d _homeUp
-
osg::ref_ptr<CoordinateFrameCallback> _coordinateFrameCallback
Public Methods
-
META_Object (osgGA, GUIEventHandler) const () const
-
virtual CompositeGUIEventHandler* getComposite()
Documentation
- TrackballManipulator()
- virtual const char* className() const
- void setMinimumZoomScale(float minimumZoomScale)
- set the minimum distance (as ratio) the eye point can be zoomed in towards the
center before the center is pushed forward
- float getMinimumZoomScale() const
- get the minimum distance (as ratio) the eye point can be zoomed in
- virtual void setByMatrix(const osg::Matrixd& matrix)
- set the position of the matrix manipulator using a 4x4 Matrix
- virtual void setByInverseMatrix(const osg::Matrixd& matrix)
- set the position of the matrix manipulator using a 4x4 Matrix
- virtual osg::Matrixd getMatrix() const
- get the position of the manipulator as 4x4 Matrix
- virtual osg::Matrixd getInverseMatrix() const
- get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model view matrix
- virtual osgUtil::SceneView::FusionDistanceMode getFusionDistanceMode() const
- Get the FusionDistanceMode. Used by SceneView for setting up setereo convergence.
- virtual float getFusionDistanceValue() const
- Get the FusionDistanceValue. Used by SceneView for setting up setereo convergence.
- virtual void setNode(osg::Node*)
- Attach a node to the manipulator.
Automatically detaches previously attached node.
setNode(NULL) detaches previously nodes.
Is ignored by manipulators which do not require a reference model.
- virtual const osg::Node* getNode() const
- Return node if attached
- virtual osg::Node* getNode()
- Return node if attached
- virtual void home(const GUIEventAdapter& ea, GUIActionAdapter& us)
- Move the camera to the default position.
May be ignored by manipulators if home functionality is not appropriate.
- virtual void init(const GUIEventAdapter& ea, GUIActionAdapter& us)
- Start/restart the manipulator
- virtual bool handle(const GUIEventAdapter& ea, GUIActionAdapter& us)
- handle events, return true if handled, false otherwise
- virtual void getUsage(osg::ApplicationUsage& usage) const
- Get the keyboard and mouse usage of this manipulator
- virtual ~TrackballManipulator()
- void flushMouseEventStack()
- Reset the internal GUIEvent stack
- void addMouseEvent(const GUIEventAdapter& ea)
- Add the current mouse GUIEvent to internal stack
- void computePosition(const osg::Vec3& eye, const osg::Vec3& lv, const osg::Vec3& up)
- bool calcMovement()
- For the give mouse movement calculate the movement of the camera.
Return true is camera has moved and a redraw is required.
- void trackball(osg::Vec3& axis, float& angle, float p1x, float p1y, float p2x, float p2y)
- float tb_project_to_sphere(float r, float x, float y)
- bool isMouseMoving()
- Check the speed at which the mouse is moving.
If speed is below a threshold then return false, otherwise return true.
- osg::ref_ptr<const GUIEventAdapter> _ga_t1
- osg::ref_ptr<const GUIEventAdapter> _ga_t0
- osg::ref_ptr<osg::Node> _node
- double _modelScale
- double _minimumZoomScale
- bool _thrown
- osg::Vec3d _center
- osg::Quat _rotation
- double _distance
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.