30 #ifndef OGRE_TOOLS_CAMERA_BASE_H_ 31 #define OGRE_TOOLS_CAMERA_BASE_H_ 33 #include <OgreVector3.h> 34 #include <OgreQuaternion.h> 76 void setRelativeNode(Ogre::SceneNode* node);
89 virtual void setPosition(
const Ogre::Vector3& position);
93 virtual void setOrientation(
const Ogre::Quaternion& orientation);
107 virtual void yaw(
float angle) = 0;
120 virtual void pitch(
float angle) = 0;
133 virtual void roll(
float angle) = 0;
138 virtual void setOrientation(
float x,
float y,
float z,
float w) = 0;
142 virtual void setPosition(
float x,
float y,
float z) = 0;
155 virtual Ogre::Vector3 getPosition() = 0;
160 virtual Ogre::Quaternion getOrientation() = 0;
166 virtual void lookAt(
const Ogre::Vector3& point) = 0;
175 virtual void move(
float x,
float y,
float z) = 0;
202 virtual void mouseLeftDrag(
int diff_x,
int diff_y,
bool ctrl,
bool alt,
bool shift) = 0;
209 virtual void mouseMiddleDrag(
int diff_x,
int diff_y,
bool ctrl,
bool alt,
bool shift) = 0;
216 virtual void mouseRightDrag(
int diff_x,
int diff_y,
bool ctrl,
bool alt,
bool shift) = 0;
223 virtual void scrollWheel(
int diff,
bool ctrl,
bool alt,
bool shift) = 0;
229 virtual void fromString(
const std::string& str) = 0;
233 virtual std::string toString() = 0;
Generic interface for a camera.
Ogre::Camera * getOgreCamera()
Get the Ogre camera associated with this camera object.
IMETHOD Vector diff(const Vector &p_w_a, const Vector &p_w_b, double dt=1)
TFSIMD_FORCE_INLINE tfScalar angle(const Quaternion &q1, const Quaternion &q2)
void update(const std::string &key, const XmlRpc::XmlRpcValue &v)
virtual void mouseLeftDown(int, int)
Ogre::Camera * camera_
Ogre camera associated with this camera object.
Ogre::SceneNode * relative_node_
virtual void mouseLeftUp(int, int)
virtual void mouseMiddleDown(int, int)
virtual void relativeNodeChanged()
Called when the relative node changes.
virtual void mouseRightDown(int, int)
virtual void mouseRightUp(int, int)
Ogre::SceneManager * scene_manager_
Scene manager this camera is part of.
virtual void mouseMiddleUp(int, int)