19 #ifndef OSGGA_FIRST_PERSON_MANIPULATOR
20 #define OSGGA_FIRST_PERSON_MANIPULATOR 1
22 #include <osgGA/StandardManipulator>
43 virtual void setByInverseMatrix(
const osg::Matrixd& matrix );
52 virtual void setVelocity(
const double& velocity );
53 inline double getVelocity()
const;
54 virtual void setAcceleration(
const double& acceleration,
bool relativeToModelSize =
false );
55 double getAcceleration(
bool *relativeToModelSize =
NULL )
const;
56 virtual void setMaxVelocity(
const double& maxVelocity,
bool relativeToModelSize =
false );
57 double getMaxVelocity(
bool *relativeToModelSize =
NULL )
const;
59 virtual void setWheelMovement(
const double& wheelMovement,
bool relativeToModelSize =
false );
60 double getWheelMovement(
bool *relativeToModelSize =
NULL )
const;
63 virtual void home(
double );
71 virtual bool performMovementLeftMouseButton(
const double eventTimeDelta,
const double dx,
const double dy );
72 virtual bool performMouseDeltaMovement(
const float dx,
const float dy );
73 virtual void applyAnimationStep(
const double currentProgress,
const double prevProgress );
76 void moveForward(
const double distance );
77 void moveForward(
const osg::Quat& rotation,
const double distance );
78 void moveRight(
const double distance );
79 void moveUp(
const double distance );
96 void start(
const osg::Quat& startRotation,
const osg::Quat& targetRotation,
const double startTime );
static int _wheelMovementFlagIndex
static int _maxVelocityFlagIndex
virtual void allocAnimationData()
#define META_Object(library, name)
double getVelocity() const
Returns velocity.
static int _accelerationFlagIndex