The ManipulatedCameraFrame class represents a ManipulatedFrame with Camera specific mouse bindings. More...
Public Member Functions | |
ManipulatedCameraFrame () | |
Default constructor. | |
ManipulatedCameraFrame (const ManipulatedCameraFrame &mcf) | |
Copy constructor. | |
virtual | ~ManipulatedCameraFrame () |
Virtual destructor. | |
ManipulatedCameraFrame & | operator= (const ManipulatedCameraFrame &mcf) |
Equal operator. | |
Public Member Functions inherited from ManipulatedFrame | |
ManipulatedFrame () | |
Default constructor. | |
ManipulatedFrame (const ManipulatedFrame &mf) | |
Copy constructor. | |
virtual | ~ManipulatedFrame () |
Virtual destructor. | |
ManipulatedFrame & | operator= (const ManipulatedFrame &mf) |
Equal operator. | |
float | rotationSensitivity () const |
Returns the influence of a mouse displacement on the ManipulatedFrame rotation. | |
float | translationSensitivity () const |
Returns the influence of a mouse displacement on the ManipulatedFrame translation. | |
float | spinningSensitivity () const |
Returns the minimum mouse speed required (at button release) to make the ManipulatedFrame spin(). | |
float | wheelSensitivity () const |
Returns the mouse wheel sensitivity. | |
bool | isSpinning () const |
Returns true when the ManipulatedFrame is spinning. | |
Quaternion | spinningQuaternion () const |
Returns the incremental rotation that is applied by spin() to the ManipulatedFrame orientation when it isSpinning(). | |
bool | isManipulated () const |
Returns true when the ManipulatedFrame is being manipulated with the mouse. | |
virtual void | checkIfGrabsMouse (int x, int y, const Camera *const camera) |
Implementation of the MouseGrabber main method. | |
Public Member Functions inherited from Frame | |
Frame () | |
Creates a default Frame. | |
Frame (const Frame &frame) | |
Copy constructor. | |
virtual | ~Frame () |
Virtual destructor. | |
Frame & | operator= (const Frame &frame) |
Equal operator. | |
Frame (const Vec &position, const Quaternion &orientation) | |
Creates a Frame with a position() and an orientation(). | |
void | setPosition (const Vec &position) |
Sets the position() of the Frame, defined in the world coordinate system. | |
void | setPosition (float x, float y, float z) |
Same as setPosition(), but with float parameters. | |
void | setPositionWithConstraint (Vec &position) |
Same as setPosition(), but position is modified so that the potential constraint() of the Frame is satisfied. | |
void | setOrientation (const Quaternion &orientation) |
Sets the orientation() of the Frame, defined in the world coordinate system. | |
void | setOrientation (double q0, double q1, double q2, double q3) |
Same as setOrientation(), but with float parameters. | |
void | setOrientationWithConstraint (Quaternion &orientation) |
Same as setOrientation(), but orientation is modified so that the potential constraint() of the Frame is satisfied. | |
void | setPositionAndOrientation (const Vec &position, const Quaternion &orientation) |
Same as successive calls to setPosition() and then setOrientation(). | |
void | setPositionAndOrientationWithConstraint (Vec &position, Quaternion &orientation) |
Same as setPositionAndOrientation() but position and orientation are modified to satisfy the constraint. | |
Vec | position () const |
Returns the position of the Frame, defined in the world coordinate system. | |
Quaternion | orientation () const |
Returns the orientation of the Frame, defined in the world coordinate system. | |
void | getPosition (float &x, float &y, float &z) const |
x , y and z are set to the position() of the Frame. | |
void | getOrientation (double &q0, double &q1, double &q2, double &q3) const |
Get the current orientation of the frame (same as orientation()). | |
void | setTranslation (const Vec &translation) |
Sets the translation() of the frame, locally defined with respect to the referenceFrame(). | |
void | setTranslation (float x, float y, float z) |
Same as setTranslation(), but with float parameters. | |
void | setTranslationWithConstraint (Vec &translation) |
Same as setTranslation(), but translation is modified so that the potential constraint() of the Frame is satisfied. | |
void | setRotation (const Quaternion &rotation) |
Set the current rotation Quaternion. | |
void | setRotation (double q0, double q1, double q2, double q3) |
Same as setRotation() but with float Quaternion parameters. | |
void | setRotationWithConstraint (Quaternion &rotation) |
Same as setRotation(), but rotation is modified so that the potential constraint() of the Frame is satisfied. | |
void | setTranslationAndRotation (const Vec &translation, const Quaternion &rotation) |
Same as successive calls to setTranslation() and then setRotation(). | |
void | setTranslationAndRotationWithConstraint (Vec &translation, Quaternion &rotation) |
Same as setTranslationAndRotation(), but translation and orientation are modified to satisfy the constraint(). | |
Vec | translation () const |
Returns the Frame translation, defined with respect to the referenceFrame(). | |
Quaternion | rotation () const |
Returns the Frame rotation, defined with respect to the referenceFrame(). | |
void | getTranslation (float &x, float &y, float &z) const |
Fill x , y and z with the translation() of the Frame. | |
void | getRotation (double &q0, double &q1, double &q2, double &q3) const |
The q are set to the rotation() of the Frame. | |
const Frame * | referenceFrame () const |
Returns the reference Frame, in which coordinates system the Frame is defined. | |
void | setReferenceFrame (const Frame *const refFrame) |
Sets the referenceFrame() of the Frame. | |
bool | settingAsReferenceFrameWillCreateALoop (const Frame *const frame) |
Returns true if setting frame as the Frame's referenceFrame() would create a loop in the Frame hierarchy. | |
void | translate (Vec &t) |
Same as translate(const Vec&) but t may be modified to satisfy the translation constraint(). | |
void | translate (const Vec &t) |
Translates the Frame of t (defined in the Frame coordinate system). | |
void | translate (float x, float y, float z) |
Same as translate(const Vec&) but with float parameters. | |
void | translate (float &x, float &y, float &z) |
Same as translate(Vec&) but with float parameters. | |
void | rotate (Quaternion &q) |
Same as rotate(const Quaternion&) but q may be modified to satisfy the rotation constraint(). | |
void | rotate (const Quaternion &q) |
Rotates the Frame by q (defined in the Frame coordinate system): R = R*q. | |
void | rotate (double q0, double q1, double q2, double q3) |
Same as rotate(const Quaternion&) but with float Quaternion parameters. | |
void | rotate (double &q0, double &q1, double &q2, double &q3) |
Same as rotate(Quaternion&) but with float Quaternion parameters. | |
void | rotateAroundPoint (Quaternion &rotation, const Vec &point) |
Makes the Frame rotate() by rotation around point . | |
void | rotateAroundPoint (const Quaternion &rotation, const Vec &point) |
Same as rotateAroundPoint(), but with a const rotation Quaternion. | |
void | alignWithFrame (const Frame *const frame, bool move=false, float threshold=0.85f) |
Aligns the Frame with frame , so that two of their axis are parallel. | |
void | projectOnLine (const Vec &origin, const Vec &direction) |
Translates the Frame so that its position() lies on the line defined by origin and direction (defined in the world coordinate system). | |
Vec | coordinatesOf (const Vec &src) const |
Returns the Frame coordinates of a point src defined in the world coordinate system (converts from world to Frame). | |
Vec | inverseCoordinatesOf (const Vec &src) const |
Returns the world coordinates of the point whose position in the Frame coordinate system is src (converts from Frame to world). | |
Vec | localCoordinatesOf (const Vec &src) const |
Returns the Frame coordinates of a point src defined in the referenceFrame() coordinate system (converts from referenceFrame() to Frame). | |
Vec | localInverseCoordinatesOf (const Vec &src) const |
Returns the referenceFrame() coordinates of a point src defined in the Frame coordinate system (converts from Frame to referenceFrame()). | |
Vec | coordinatesOfIn (const Vec &src, const Frame *const in) const |
Returns the in coordinates of the point whose position in the Frame coordinate system is src (converts from Frame to in ). | |
Vec | coordinatesOfFrom (const Vec &src, const Frame *const from) const |
Returns the Frame coordinates of the point whose position in the from coordinate system is src (converts from from to Frame). | |
void | getCoordinatesOf (const float src[3], float res[3]) const |
Same as coordinatesOf(), but with float parameters. | |
void | getInverseCoordinatesOf (const float src[3], float res[3]) const |
Same as inverseCoordinatesOf(), but with float parameters. | |
void | getLocalCoordinatesOf (const float src[3], float res[3]) const |
Same as localCoordinatesOf(), but with float parameters. | |
void | getLocalInverseCoordinatesOf (const float src[3], float res[3]) const |
Same as localInverseCoordinatesOf(), but with float parameters. | |
void | getCoordinatesOfIn (const float src[3], float res[3], const Frame *const in) const |
Same as coordinatesOfIn(), but with float parameters. | |
void | getCoordinatesOfFrom (const float src[3], float res[3], const Frame *const from) const |
Same as coordinatesOfFrom(), but with float parameters. | |
Vec | transformOf (const Vec &src) const |
Returns the Frame transform of a vector src defined in the world coordinate system (converts vectors from world to Frame). | |
Vec | inverseTransformOf (const Vec &src) const |
Returns the world transform of the vector whose coordinates in the Frame coordinate system is src (converts vectors from Frame to world). | |
Vec | localTransformOf (const Vec &src) const |
Returns the Frame transform of a vector src defined in the referenceFrame() coordinate system (converts vectors from referenceFrame() to Frame). | |
Vec | localInverseTransformOf (const Vec &src) const |
Returns the referenceFrame() transform of a vector src defined in the Frame coordinate system (converts vectors from Frame to referenceFrame()). | |
Vec | transformOfIn (const Vec &src, const Frame *const in) const |
Returns the in transform of the vector whose coordinates in the Frame coordinate system is src (converts vectors from Frame to in ). | |
Vec | transformOfFrom (const Vec &src, const Frame *const from) const |
Returns the Frame transform of the vector whose coordinates in the from coordinate system is src (converts vectors from from to Frame). | |
void | getTransformOf (const float src[3], float res[3]) const |
Same as transformOf(), but with float parameters. | |
void | getInverseTransformOf (const float src[3], float res[3]) const |
Same as inverseTransformOf(), but with float parameters. | |
void | getLocalTransformOf (const float src[3], float res[3]) const |
Same as localTransformOf(), but with float parameters. | |
void | getLocalInverseTransformOf (const float src[3], float res[3]) const |
Same as localInverseTransformOf(), but with float parameters. | |
void | getTransformOfIn (const float src[3], float res[3], const Frame *const in) const |
Same as transformOfIn(), but with float parameters. | |
void | getTransformOfFrom (const float src[3], float res[3], const Frame *const from) const |
Same as transformOfFrom(), but with float parameters. | |
Constraint * | constraint () const |
Returns the current constraint applied to the Frame. | |
void | setConstraint (Constraint *const constraint) |
Sets the constraint() attached to the Frame. | |
const GLdouble * | matrix () const |
Returns the 4x4 OpenGL transformation matrix represented by the Frame. | |
void | getMatrix (GLdouble m[4][4]) const |
GLdouble [4][4] version of matrix(). | |
void | getMatrix (GLdouble m[16]) const |
GLdouble [16] version of matrix(). | |
const GLdouble * | worldMatrix () const |
Returns the 4x4 OpenGL transformation matrix represented by the Frame. | |
void | getWorldMatrix (GLdouble m[4][4]) const |
float[4][4] parameter version of worldMatrix(). | |
void | getWorldMatrix (GLdouble m[16]) const |
float[16] parameter version of worldMatrix(). | |
void | setFromMatrix (const GLdouble m[4][4]) |
This is an overloaded method provided for convenience. | |
void | setFromMatrix (const GLdouble m[16]) |
Sets the Frame from an OpenGL matrix representation (rotation in the upper left 3x3 matrix and translation on the last line). | |
Frame | inverse () const |
Returns a Frame representing the inverse of the Frame space transformation. | |
Frame | worldInverse () const |
Returns the inverse() of the Frame world transformation. | |
Public Member Functions inherited from MouseGrabber | |
MouseGrabber () | |
Default constructor. | |
virtual | ~MouseGrabber () |
Virtual destructor. | |
bool | grabsMouse () const |
Returns true when the MouseGrabber grabs the QGLViewer's mouse events. | |
bool | isInMouseGrabberPool () const |
Returns true if the MouseGrabber is currently in the MouseGrabberPool() list. | |
void | addInMouseGrabberPool () |
Adds the MouseGrabber in the MouseGrabberPool(). | |
void | removeFromMouseGrabberPool () |
Removes the MouseGrabber from the MouseGrabberPool(). | |
void | clearMouseGrabberPool (bool autoDelete=false) |
Clears the MouseGrabberPool(). | |
Protected Member Functions | |
virtual void | startAction (int ma, bool withConstraint=true) |
Protected internal method used to handle mouse events. | |
Protected Member Functions inherited from ManipulatedFrame | |
void | computeMouseSpeed (const QMouseEvent *const e) |
Updates mouse speed, measured in pixels/milliseconds. | |
Quaternion | deformedBallQuaternion (int x, int y, float cx, float cy, const Camera *const camera) |
Returns a quaternion computed according to the mouse motion. | |
int | mouseOriginalDirection (const QMouseEvent *const e) |
Return 1 if mouse motion was started horizontally and -1 if it was more vertical. | |
virtual void | mousePressEvent (QMouseEvent *const event, Camera *const camera) |
Initiates the ManipulatedFrame mouse manipulation. | |
virtual void | mouseDoubleClickEvent (QMouseEvent *const event, Camera *const camera) |
Overloading of MouseGrabber::mouseDoubleClickEvent(). | |
Protected Member Functions inherited from MouseGrabber | |
void | setGrabsMouse (bool grabs) |
Sets the grabsMouse() flag. | |
Friends | |
class | ::QGLViewer |
class | Camera |
Revolve around point | |
Vec | revolveAroundPoint () const |
Returns the point the ManipulatedCameraFrame revolves around when rotated. | |
void | setRevolveAroundPoint (const Vec &revolveAroundPoint) |
Sets the revolveAroundPoint(), defined in the world coordinate system. | |
Fly parameters | |
float | flySpeed () const |
Returns the fly speed, expressed in OpenGL units. | |
Vec | flyUpVector () const |
Returns the up vector used in fly mode, expressed in the world coordinate system. | |
void | setFlySpeed (float speed) |
Sets the flySpeed(), defined in OpenGL units. | |
void | setFlyUpVector (const Vec &up) |
Sets the flyUpVector(), defined in the world coordinate system. | |
Mouse event handlers | |
virtual void | mouseReleaseEvent (QMouseEvent *const event, Camera *const camera) |
This is an overload of ManipulatedFrame::mouseReleaseEvent(). | |
virtual void | mouseMoveEvent (QMouseEvent *const event, Camera *const camera) |
Overloading of ManipulatedFrame::mouseMoveEvent(). | |
virtual void | wheelEvent (QWheelEvent *const event, Camera *const camera) |
This is an overload of ManipulatedFrame::wheelEvent(). | |
Spinning | |
virtual void | spin () |
Overloading of ManipulatedFrame::spin(). | |
XML representation | |
virtual QDomElement | domElement (const QString &name, QDomDocument &document) const |
Returns an XML QDomElement that represents the ManipulatedCameraFrame. | |
virtual void | initFromDOMElement (const QDomElement &element) |
Restores the ManipulatedCameraFrame state from a QDomElement created by domElement(). | |
Additional Inherited Members | |
Public Slots inherited from ManipulatedFrame | |
void | setRotationSensitivity (float sensitivity) |
Defines the rotationSensitivity(). | |
void | setTranslationSensitivity (float sensitivity) |
Defines the translationSensitivity(). | |
void | setSpinningSensitivity (float sensitivity) |
Defines the spinningSensitivity(), in pixels per milliseconds. | |
void | setWheelSensitivity (float sensitivity) |
Defines the wheelSensitivity(). | |
void | setSpinningQuaternion (const Quaternion &spinningQuaternion) |
Defines the spinningQuaternion(). | |
virtual void | startSpinning (int updateInterval) |
Starts the spinning of the ManipulatedFrame. | |
virtual void | stopSpinning () |
Stops the spinning motion started using startSpinning(). | |
virtual void | initFromDOMElement (const QDomElement &element) |
Restores the ManipulatedFrame state from a QDomElement created by domElement(). | |
Public Slots inherited from Frame | |
virtual void | initFromDOMElement (const QDomElement &element) |
Restores the Frame state from a QDomElement created by domElement(). | |
Signals inherited from ManipulatedFrame | |
void | manipulated () |
This signal is emitted when ever the ManipulatedFrame is manipulated (i.e. | |
void | spun () |
This signal is emitted when the ManipulatedFrame isSpinning(). | |
Static Public Member Functions inherited from MouseGrabber | |
static const QList < MouseGrabber > & | MouseGrabberPool () |
Returns a list containing pointers to all the active MouseGrabbers. | |
Protected Slots inherited from ManipulatedFrame | |
virtual void | spin () |
Rotates the ManipulatedFrame by its spinningQuaternion(). | |
Protected Attributes inherited from ManipulatedFrame | |
int | action_ |
QPoint | pressPos_ |
Constraint * | previousConstraint_ |
QPoint | prevPos_ |
Detailed Description
The ManipulatedCameraFrame class represents a ManipulatedFrame with Camera specific mouse bindings.
A ManipulatedCameraFrame is a specialization of a ManipulatedFrame, designed to be set as the Camera::frame(). Mouse motions are basically interpreted in a negated way: when the mouse goes to the right, the ManipulatedFrame translation goes to the right, while the ManipulatedCameraFrame has to go to the left, so that the scene seems to move to the right.
A ManipulatedCameraFrame rotates around its revolveAroundPoint(), which corresponds to the associated Camera::revolveAroundPoint().
A ManipulatedCameraFrame can also "fly" in the scene. It basically moves forward, and turns according to the mouse motion. See flySpeed(), flyUpVector() and the QGLViewer::MOVE_FORWARD and QGLViewer::MOVE_BACKWARD QGLViewer::MouseAction.
See the mouse page for a description of the possible actions that can be performed using the mouse and their bindings.
Definition at line 47 of file manipulatedCameraFrame.h.
Constructor & Destructor Documentation
Default constructor.
flySpeed() is set to 0.0 and flyUpVector() is (0,1,0). The revolveAroundPoint() is set to (0,0,0).
- Attention
- Created object is removeFromMouseGrabberPool().
Definition at line 39 of file manipulatedCameraFrame.cpp.
References MouseGrabber::removeFromMouseGrabberPool(), and ManipulatedCameraFrame::setFlySpeed().
|
inlinevirtual |
ManipulatedCameraFrame | ( | const ManipulatedCameraFrame & | mcf | ) |
Copy constructor.
Performs a deep copy of all members using operator=().
Definition at line 60 of file manipulatedCameraFrame.cpp.
References MouseGrabber::removeFromMouseGrabberPool().
Member Function Documentation
|
virtual |
Returns an XML QDomElement
that represents the ManipulatedCameraFrame.
Adds to the ManipulatedFrame::domElement() the ManipulatedCameraFrame specific informations in a ManipulatedCameraParameters
child QDomElement.
name
is the name of the QDomElement tag. doc
is the QDomDocument
factory used to create QDomElement.
Use initFromDOMElement() to restore the ManipulatedCameraFrame state from the resulting QDomElement
.
See Vec::domElement() for a complete example. See also Quaternion::domElement(), Frame::domElement(), Camera::domElement()...
Reimplemented from ManipulatedFrame.
Definition at line 132 of file manipulatedCameraFrame.cpp.
References ManipulatedFrame::domElement(), ManipulatedCameraFrame::flySpeed(), and ManipulatedCameraFrame::flyUpVector().
|
inline |
Returns the fly speed, expressed in OpenGL units.
It corresponds to the incremental displacement that is periodically applied to the ManipulatedCameraFrame position when a QGLViewer::MOVE_FORWARD or QGLViewer::MOVE_BACKWARD QGLViewer::MouseAction is proceeded.
- Attention
- When the ManipulatedCameraFrame is set as the Camera::frame(), this value is set according to the QGLViewer::sceneRadius() by QGLViewer::setSceneRadius().
Definition at line 104 of file manipulatedCameraFrame.h.
Referenced by ManipulatedCameraFrame::domElement(), ManipulatedCameraFrame::initFromDOMElement(), ManipulatedCameraFrame::operator=(), and ManipulatedCameraFrame::wheelEvent().
|
inline |
Returns the up vector used in fly mode, expressed in the world coordinate system.
Fly mode corresponds to the QGLViewer::MOVE_FORWARD and QGLViewer::MOVE_BACKWARD QGLViewer::MouseAction bindings. In these modes, horizontal displacements of the mouse rotate the ManipulatedCameraFrame around this vector. Vertical displacements rotate always around the Camera X
axis.
Default value is (0,1,0), but it is updated by the Camera when set as its Camera::frame(). Camera::setOrientation() and Camera::setUpVector()) modify this value and should be used instead.
Definition at line 116 of file manipulatedCameraFrame.h.
Referenced by ManipulatedCameraFrame::domElement(), and ManipulatedCameraFrame::operator=().
|
virtualslot |
Restores the ManipulatedCameraFrame state from a QDomElement
created by domElement().
First calls ManipulatedFrame::initFromDOMElement() and then initializes ManipulatedCameraFrame specific parameters.
Definition at line 146 of file manipulatedCameraFrame.cpp.
References ManipulatedCameraFrame::flySpeed(), ManipulatedFrame::initFromDOMElement(), ManipulatedCameraFrame::setFlySpeed(), and ManipulatedCameraFrame::setFlyUpVector().
Referenced by Camera::initFromDOMElement().
|
protectedvirtual |
Overloading of ManipulatedFrame::mouseMoveEvent().
Motion depends on mouse binding (see mouse page for details). The resulting displacements are basically inverted from those of a ManipulatedFrame.
Reimplemented from ManipulatedFrame.
Definition at line 204 of file manipulatedCameraFrame.cpp.
References ManipulatedFrame::computeMouseSpeed(), Frame::coordinatesOf(), ManipulatedFrame::deformedBallQuaternion(), Camera::fieldOfView(), Camera::frame(), Camera::getOrthoWidthHeight(), Frame::inverseTransformOf(), ManipulatedFrame::manipulated(), ManipulatedFrame::mouseOriginalDirection(), Camera::projectedCoordinatesOf(), ManipulatedCameraFrame::revolveAroundPoint(), Camera::revolveAroundPoint(), Frame::rotate(), Camera::sceneRadius(), Camera::screenHeight(), Camera::screenWidth(), ManipulatedFrame::setSpinningQuaternion(), Vec::setValue(), ManipulatedCameraFrame::spin(), Frame::translate(), ManipulatedFrame::translationSensitivity(), and Camera::type().
|
protectedvirtual |
This is an overload of ManipulatedFrame::mouseReleaseEvent().
The QGLViewer::MouseAction is terminated.
Reimplemented from ManipulatedFrame.
Definition at line 360 of file manipulatedCameraFrame.cpp.
References Camera::fitScreenRegion(), and ManipulatedFrame::mouseReleaseEvent().
ManipulatedCameraFrame & operator= | ( | const ManipulatedCameraFrame & | mcf | ) |
Equal operator.
Calls ManipulatedFrame::operator=() and then copy attributes.
Definition at line 49 of file manipulatedCameraFrame.cpp.
References ManipulatedCameraFrame::flySpeed(), ManipulatedCameraFrame::flyUpVector(), ManipulatedFrame::operator=(), ManipulatedCameraFrame::setFlySpeed(), and ManipulatedCameraFrame::setFlyUpVector().
|
inline |
Returns the point the ManipulatedCameraFrame revolves around when rotated.
It is defined in the world coordinate system. Default value is (0,0,0).
When the ManipulatedCameraFrame is associated to a Camera, Camera::revolveAroundPoint() also returns this value. This point can interactively be changed using the mouse (see QGLViewer::RAP_FROM_PIXEL and QGLViewer::RAP_IS_CENTER in the mouse page).
Definition at line 75 of file manipulatedCameraFrame.h.
Referenced by ManipulatedCameraFrame::mouseMoveEvent(), and ManipulatedCameraFrame::spin().
|
inlineslot |
Sets the flySpeed(), defined in OpenGL units.
Default value is 0.0, but it is modified according to the QGLViewer::sceneRadius() when the ManipulatedCameraFrame is set as the Camera::frame().
Definition at line 87 of file manipulatedCameraFrame.h.
Referenced by ManipulatedCameraFrame::initFromDOMElement(), ManipulatedCameraFrame::ManipulatedCameraFrame(), ManipulatedCameraFrame::operator=(), and Camera::setSceneRadius().
|
inlineslot |
Sets the flyUpVector(), defined in the world coordinate system.
Default value is (0,1,0), but it is updated by the Camera when set as its Camera::frame(). Use Camera::setUpVector() instead in that case.
Definition at line 93 of file manipulatedCameraFrame.h.
Referenced by ManipulatedCameraFrame::initFromDOMElement(), and ManipulatedCameraFrame::operator=().
|
inline |
Sets the revolveAroundPoint(), defined in the world coordinate system.
Definition at line 77 of file manipulatedCameraFrame.h.
Referenced by Camera::setRevolveAroundPoint().
|
protectedvirtualslot |
Overloading of ManipulatedFrame::spin().
Rotates the ManipulatedCameraFrame around its revolveAroundPoint() instead of its origin.
Definition at line 73 of file manipulatedCameraFrame.cpp.
References ManipulatedCameraFrame::revolveAroundPoint(), Frame::rotateAroundPoint(), and ManipulatedFrame::spinningQuaternion().
Referenced by ManipulatedCameraFrame::mouseMoveEvent().
|
protectedvirtual |
Protected internal method used to handle mouse events.
Reimplemented from ManipulatedFrame.
Definition at line 180 of file manipulatedCameraFrame.cpp.
References ManipulatedFrame::startAction().
|
protectedvirtual |
This is an overload of ManipulatedFrame::wheelEvent().
The wheel behavior depends on the wheel binded action. Current possible actions are QGLViewer::ZOOM, QGLViewer::MOVE_FORWARD, QGLViewer::MOVE_BACKWARD. QGLViewer::ZOOM speed depends on wheelSensitivity() while QGLViewer::MOVE_FORWARD and QGLViewer::MOVE_BACKWARD depend on flySpeed(). See QGLViewer::setWheelBinding() to customize the binding.
Reimplemented from ManipulatedFrame.
Definition at line 377 of file manipulatedCameraFrame.cpp.
References Frame::coordinatesOf(), ManipulatedCameraFrame::flySpeed(), Camera::frame(), Frame::inverseTransformOf(), ManipulatedFrame::manipulated(), Camera::revolveAroundPoint(), Camera::sceneRadius(), Frame::setConstraint(), Frame::translate(), and ManipulatedFrame::wheelSensitivity().
The documentation for this class was generated from the following files:
- worldsim/3rdParts/qglviewer/manipulatedCameraFrame.h
- worldsim/3rdParts/qglviewer/manipulatedCameraFrame.cpp