[libqglviewer] 03/08: Imported Upstream version 2.6.1+dfsg1

Anton Gladky gladk at moszumanska.debian.org
Mon Mar 2 23:35:05 UTC 2015


This is an automated email from the git hooks/post-receive script.

gladk pushed a commit to branch experimental
in repository libqglviewer.

commit 543dce6eead15e6eb0f069c1f3775950a88c079b
Author: Anton Gladky <gladk at debian.org>
Date:   Mon Mar 2 22:56:58 2015 +0100

    Imported Upstream version 2.6.1+dfsg1
---
 CHANGELOG                                          |    2 +-
 QGLViewer/QGLViewer.pro                            |   23 +-
 QGLViewer/VRender/AxisAlignedBox.h                 |    2 +-
 QGLViewer/VRender/BSPSortMethod.cpp                |    2 +-
 QGLViewer/VRender/BackFaceCullingOptimizer.cpp     |    8 +-
 QGLViewer/VRender/EPSExporter.cpp                  |    2 +-
 QGLViewer/VRender/Exporter.cpp                     |    2 +-
 QGLViewer/VRender/Exporter.h                       |    2 +-
 QGLViewer/VRender/FIGExporter.cpp                  |    2 +-
 QGLViewer/VRender/NVector3.cpp                     |    2 +-
 QGLViewer/VRender/NVector3.h                       |    2 +-
 QGLViewer/VRender/Optimizer.h                      |    2 +-
 QGLViewer/VRender/ParserGL.cpp                     |   10 +-
 QGLViewer/VRender/ParserGL.h                       |    2 +-
 QGLViewer/VRender/Primitive.cpp                    |   19 +-
 QGLViewer/VRender/Primitive.h                      |  245 +-
 QGLViewer/VRender/PrimitivePositioning.cpp         |   34 +-
 QGLViewer/VRender/PrimitivePositioning.h           |    2 +-
 QGLViewer/VRender/SortMethod.h                     |    2 +-
 QGLViewer/VRender/TopologicalSortMethod.cpp        |  184 +-
 QGLViewer/VRender/Types.h                          |    2 +-
 QGLViewer/VRender/VRender.cpp                      |    2 +-
 QGLViewer/VRender/VRender.h                        |    2 +-
 QGLViewer/VRender/Vector2.cpp                      |    2 +-
 QGLViewer/VRender/Vector2.h                        |    2 +-
 QGLViewer/VRender/Vector3.cpp                      |    2 +-
 QGLViewer/VRender/Vector3.h                        |    2 +-
 QGLViewer/VRender/VisibilityOptimizer.cpp          |   18 +-
 QGLViewer/VRender/gpc.cpp                          | 3341 ++++++++++----------
 QGLViewer/VRender/gpc.h                            |   68 +-
 QGLViewer/camera.cpp                               |  316 +-
 QGLViewer/camera.h                                 |  108 +-
 QGLViewer/config.h                                 |    6 +-
 QGLViewer/constraint.cpp                           |    6 +-
 QGLViewer/constraint.h                             |    2 +-
 QGLViewer/domUtils.h                               |   37 +-
 QGLViewer/frame.cpp                                |  128 +-
 QGLViewer/frame.h                                  |   52 +-
 QGLViewer/keyFrameInterpolator.cpp                 |  102 +-
 QGLViewer/keyFrameInterpolator.h                   |   44 +-
 QGLViewer/manipulatedCameraFrame.cpp               |   26 +-
 QGLViewer/manipulatedCameraFrame.h                 |   12 +-
 QGLViewer/manipulatedFrame.cpp                     |   70 +-
 QGLViewer/manipulatedFrame.h                       |   42 +-
 QGLViewer/mouseGrabber.cpp                         |    2 +-
 QGLViewer/mouseGrabber.h                           |    2 +-
 QGLViewer/qglviewer.cpp                            |  204 +-
 QGLViewer/qglviewer.h                              |   88 +-
 QGLViewer/qglviewer_fr.qm                          |  Bin 14813 -> 14815 bytes
 QGLViewer/qglviewer_fr.ts                          |    2 +-
 QGLViewer/quaternion.cpp                           |  160 +-
 QGLViewer/quaternion.h                             |   52 +-
 QGLViewer/saveSnapshot.cpp                         |   30 +-
 QGLViewer/vec.cpp                                  |    6 +-
 QGLViewer/vec.h                                    |   50 +-
 README                                             |    2 +-
 designerPlugin/designerPlugin.pro                  |   14 +-
 designerPlugin/qglviewerPlugin.Qt3.cpp             |    2 +-
 designerPlugin/qglviewerPlugin.Qt3.h               |    2 +-
 designerPlugin/qglviewerPlugin.cpp                 |    2 +-
 designerPlugin/qglviewerPlugin.h                   |    2 +-
 doc/changeLog-1.html                               |    2 +-
 doc/changeLog.html                                 |   31 +-
 doc/commercial.html                                |    2 +-
 doc/compilation.html                               |   14 +-
 doc/developer.html                                 |    2 +-
 doc/download.html                                  |    2 +-
 doc/download_statistics.html                       |    2 +-
 doc/dualLicensing.html                             |    2 +-
 doc/examples/animation.html                        |    2 +-
 doc/examples/callback.html                         |    2 +-
 doc/examples/cameraLight.html                      |    2 +-
 doc/examples/clippingPlane.html                    |    2 +-
 doc/examples/constrainedCamera.html                |    2 +-
 doc/examples/constrainedFrame.html                 |    2 +-
 doc/examples/contribs.html                         |    2 +-
 doc/examples/drawLight.html                        |   12 +-
 doc/examples/fastDraw.html                         |    2 +-
 doc/examples/frameTransform.html                   |    2 +-
 doc/examples/frustumCulling.html                   |    2 +-
 doc/examples/index.html                            |    2 +-
 doc/examples/interface.html                        |    2 +-
 doc/examples/keyFrames.html                        |    2 +-
 doc/examples/keyboardAndMouse.html                 |    2 +-
 doc/examples/luxo.html                             |    2 +-
 doc/examples/manipulatedFrame.html                 |    2 +-
 doc/examples/mouseGrabber.html                     |    2 +-
 doc/examples/multiSelect.html                      |    2 +-
 doc/examples/multiView.html                        |    2 +-
 doc/examples/overpainting.html                     |    2 +-
 doc/examples/screenCoordSystem.html                |    2 +-
 doc/examples/select.html                           |    2 +-
 doc/examples/simpleViewer.html                     |    2 +-
 doc/examples/standardCamera.html                   |   16 +-
 doc/examples/stereoViewer.html                     |    2 +-
 doc/faq.html                                       |    2 +-
 doc/features.html                                  |    2 +-
 doc/index.html                                     |   24 +-
 doc/installUnix.html                               |   24 +-
 doc/installWindows.html                            |    6 +-
 doc/introduction.html                              |    2 +-
 doc/keyboard.html                                  |    2 +-
 doc/libQGLViewer-2.5.3.qch                         |  Bin 724992 -> 0 bytes
 doc/libQGLViewer-2.6.1.qch                         |  Bin 0 -> 724992 bytes
 doc/mouse.html                                     |    2 +-
 doc/refManual/annotated.html                       |    4 +-
 doc/refManual/camera_8cpp.html                     |    4 +-
 doc/refManual/camera_8h.html                       |    4 +-
 doc/refManual/classQGLViewer-members.html          |   32 +-
 doc/refManual/classQGLViewer.html                  |  220 +-
 doc/refManual/classes.html                         |    4 +-
 ...ssqglviewer_1_1AxisPlaneConstraint-members.html |    4 +-
 .../classqglviewer_1_1AxisPlaneConstraint.html     |    4 +-
 .../classqglviewer_1_1Camera-members.html          |   84 +-
 doc/refManual/classqglviewer_1_1Camera.html        |  570 ++--
 ...classqglviewer_1_1CameraConstraint-members.html |    4 +-
 .../classqglviewer_1_1CameraConstraint.html        |    4 +-
 .../classqglviewer_1_1Constraint-members.html      |    4 +-
 doc/refManual/classqglviewer_1_1Constraint.html    |    4 +-
 doc/refManual/classqglviewer_1_1Frame-members.html |   54 +-
 doc/refManual/classqglviewer_1_1Frame.html         |  340 +-
 ...sqglviewer_1_1KeyFrameInterpolator-members.html |   28 +-
 .../classqglviewer_1_1KeyFrameInterpolator.html    |  182 +-
 .../classqglviewer_1_1LocalConstraint-members.html |    4 +-
 .../classqglviewer_1_1LocalConstraint.html         |    4 +-
 ...glviewer_1_1ManipulatedCameraFrame-members.html |   78 +-
 .../classqglviewer_1_1ManipulatedCameraFrame.html  |  172 +-
 ...classqglviewer_1_1ManipulatedFrame-members.html |   74 +-
 .../classqglviewer_1_1ManipulatedFrame.html        |  220 +-
 .../classqglviewer_1_1MouseGrabber-members.html    |    4 +-
 doc/refManual/classqglviewer_1_1MouseGrabber.html  |    4 +-
 .../classqglviewer_1_1Quaternion-members.html      |   34 +-
 doc/refManual/classqglviewer_1_1Quaternion.html    |  168 +-
 doc/refManual/classqglviewer_1_1Vec-members.html   |   36 +-
 doc/refManual/classqglviewer_1_1Vec.html           |  158 +-
 .../classqglviewer_1_1WorldConstraint-members.html |    4 +-
 .../classqglviewer_1_1WorldConstraint.html         |    4 +-
 doc/refManual/config_8h.html                       |    8 +-
 doc/refManual/constraint_8cpp.html                 |    4 +-
 doc/refManual/constraint_8h.html                   |    4 +-
 .../dir_0d5ec90603fafeb6b6840b6051802ddc.html      |    4 +-
 doc/refManual/domUtils_8h.html                     |    4 +-
 doc/refManual/files.html                           |    4 +-
 doc/refManual/frame_8cpp.html                      |    4 +-
 doc/refManual/frame_8h.html                        |    4 +-
 doc/refManual/functions.html                       |   16 +-
 doc/refManual/functions_b.html                     |    8 +-
 doc/refManual/functions_c.html                     |    6 +-
 doc/refManual/functions_d.html                     |   24 +-
 doc/refManual/functions_e.html                     |    4 +-
 doc/refManual/functions_enum.html                  |    4 +-
 doc/refManual/functions_eval.html                  |    4 +-
 doc/refManual/functions_f.html                     |   16 +-
 doc/refManual/functions_func.html                  |   16 +-
 doc/refManual/functions_func_b.html                |    8 +-
 doc/refManual/functions_func_c.html                |    6 +-
 doc/refManual/functions_func_d.html                |   24 +-
 doc/refManual/functions_func_e.html                |    4 +-
 doc/refManual/functions_func_f.html                |   16 +-
 doc/refManual/functions_func_g.html                |   50 +-
 doc/refManual/functions_func_h.html                |    6 +-
 doc/refManual/functions_func_i.html                |   14 +-
 doc/refManual/functions_func_k.html                |    8 +-
 doc/refManual/functions_func_l.html                |    6 +-
 doc/refManual/functions_func_m.html                |    4 +-
 doc/refManual/functions_func_n.html                |   10 +-
 doc/refManual/functions_func_o.html                |   12 +-
 doc/refManual/functions_func_p.html                |   14 +-
 doc/refManual/functions_func_q.html                |    6 +-
 doc/refManual/functions_func_r.html                |    8 +-
 doc/refManual/functions_func_s.html                |   70 +-
 doc/refManual/functions_func_t.html                |    8 +-
 doc/refManual/functions_func_u.html                |    4 +-
 doc/refManual/functions_func_v.html                |    4 +-
 doc/refManual/functions_func_w.html                |    6 +-
 doc/refManual/functions_func_z.html                |   14 +-
 doc/refManual/functions_func_~.html                |    4 +-
 doc/refManual/functions_g.html                     |   50 +-
 doc/refManual/functions_h.html                     |    6 +-
 doc/refManual/functions_i.html                     |   14 +-
 doc/refManual/functions_k.html                     |    8 +-
 doc/refManual/functions_l.html                     |    6 +-
 doc/refManual/functions_m.html                     |    4 +-
 doc/refManual/functions_n.html                     |   10 +-
 doc/refManual/functions_o.html                     |   16 +-
 doc/refManual/functions_p.html                     |   14 +-
 doc/refManual/functions_q.html                     |    6 +-
 doc/refManual/functions_r.html                     |   10 +-
 doc/refManual/functions_rela.html                  |    8 +-
 doc/refManual/functions_s.html                     |   70 +-
 doc/refManual/functions_t.html                     |    6 +-
 doc/refManual/functions_u.html                     |    4 +-
 doc/refManual/functions_v.html                     |    4 +-
 doc/refManual/functions_vars.html                  |   10 +-
 doc/refManual/functions_w.html                     |    6 +-
 doc/refManual/functions_x.html                     |    6 +-
 doc/refManual/functions_y.html                     |    6 +-
 doc/refManual/functions_z.html                     |   16 +-
 doc/refManual/functions_~.html                     |    4 +-
 doc/refManual/globals.html                         |    4 +-
 doc/refManual/globals_defs.html                    |    4 +-
 doc/refManual/globals_func.html                    |    4 +-
 doc/refManual/hierarchy.html                       |    4 +-
 doc/refManual/index.filtered.qhp                   |  646 ++--
 doc/refManual/index.html                           |    4 +-
 doc/refManual/index.qhp                            |  646 ++--
 doc/refManual/keyFrameInterpolator_8cpp.html       |    4 +-
 doc/refManual/keyFrameInterpolator_8h.html         |    4 +-
 doc/refManual/manipulatedCameraFrame_8cpp.html     |    4 +-
 doc/refManual/manipulatedCameraFrame_8h.html       |    4 +-
 doc/refManual/manipulatedFrame_8cpp.html           |    4 +-
 doc/refManual/manipulatedFrame_8h.html             |    4 +-
 doc/refManual/mouseGrabber_8cpp.html               |    4 +-
 doc/refManual/mouseGrabber_8h.html                 |    4 +-
 doc/refManual/namespaceqglviewer.html              |    4 +-
 doc/refManual/namespaces.html                      |    4 +-
 doc/refManual/qglviewer_8cpp.html                  |    4 +-
 doc/refManual/qglviewer_8h.html                    |    4 +-
 doc/refManual/quaternion_8cpp.html                 |    4 +-
 doc/refManual/quaternion_8h.html                   |    4 +-
 doc/refManual/saveSnapshot_8cpp.html               |    4 +-
 doc/refManual/search/all_0.js                      |   10 +-
 doc/refManual/search/all_1.js                      |    4 +-
 doc/refManual/search/all_10.js                     |    6 +-
 doc/refManual/search/all_11.js                     |   66 +-
 doc/refManual/search/all_12.js                     |    4 +-
 doc/refManual/search/all_14.js                     |    2 +-
 doc/refManual/search/all_15.js                     |    2 +-
 doc/refManual/search/all_16.js                     |    2 +-
 doc/refManual/search/all_17.js                     |    2 +-
 doc/refManual/search/all_18.js                     |   12 +-
 doc/refManual/search/all_2.js                      |    2 +-
 doc/refManual/search/all_3.js                      |   20 +-
 doc/refManual/search/all_5.js                      |   10 +-
 doc/refManual/search/all_6.js                      |   46 +-
 doc/refManual/search/all_7.js                      |    2 +-
 doc/refManual/search/all_8.js                      |   10 +-
 doc/refManual/search/all_9.js                      |    4 +-
 doc/refManual/search/all_a.js                      |    2 +-
 doc/refManual/search/all_c.js                      |    4 +-
 doc/refManual/search/all_d.js                      |   10 +-
 doc/refManual/search/all_e.js                      |   10 +-
 doc/refManual/search/all_f.js                      |    2 +-
 doc/refManual/search/functions_0.js                |   10 +-
 doc/refManual/search/functions_1.js                |    4 +-
 doc/refManual/search/functions_10.js               |    6 +-
 doc/refManual/search/functions_11.js               |   66 +-
 doc/refManual/search/functions_12.js               |    4 +-
 doc/refManual/search/functions_14.js               |    2 +-
 doc/refManual/search/functions_15.js               |    2 +-
 doc/refManual/search/functions_16.js               |   10 +-
 doc/refManual/search/functions_2.js                |    2 +-
 doc/refManual/search/functions_3.js                |   20 +-
 doc/refManual/search/functions_5.js                |   10 +-
 doc/refManual/search/functions_6.js                |   46 +-
 doc/refManual/search/functions_7.js                |    2 +-
 doc/refManual/search/functions_8.js                |   10 +-
 doc/refManual/search/functions_9.js                |    4 +-
 doc/refManual/search/functions_a.js                |    2 +-
 doc/refManual/search/functions_c.js                |    4 +-
 doc/refManual/search/functions_d.js                |    6 +-
 doc/refManual/search/functions_e.js                |   10 +-
 doc/refManual/search/functions_f.js                |    2 +-
 doc/refManual/search/related_1.js                  |    4 +-
 doc/refManual/search/variables_0.js                |    2 +-
 doc/refManual/search/variables_1.js                |    2 +-
 doc/refManual/search/variables_2.js                |    2 +-
 doc/refManual/vec_8cpp.html                        |    4 +-
 doc/refManual/vec_8h.html                          |    4 +-
 doc/techFaq.html                                   |    2 +-
 examples/animation/animation.cpp                   |    2 +-
 examples/animation/animation.h                     |    2 +-
 examples/animation/animation.pro                   |   14 +-
 examples/animation/main.cpp                        |    2 +-
 examples/callback/callback.cpp                     |    2 +-
 examples/callback/callback.h                       |    2 +-
 examples/callback/callback.pro                     |   14 +-
 examples/callback/main.cpp                         |    2 +-
 examples/cameraLight/cameraLight.cpp               |    2 +-
 examples/cameraLight/cameraLight.h                 |    2 +-
 examples/cameraLight/cameraLight.pro               |   14 +-
 examples/cameraLight/main.cpp                      |    2 +-
 examples/clippingPlane/clippingPlane.cpp           |    2 +-
 examples/clippingPlane/clippingPlane.h             |    2 +-
 examples/clippingPlane/clippingPlane.pro           |   14 +-
 examples/clippingPlane/main.cpp                    |    2 +-
 examples/constrainedCamera/constrainedCamera.cpp   |    2 +-
 examples/constrainedCamera/constrainedCamera.h     |    2 +-
 examples/constrainedCamera/constrainedCamera.pro   |   14 +-
 examples/constrainedCamera/main.cpp                |    2 +-
 examples/constrainedFrame/constrainedFrame.cpp     |    2 +-
 examples/constrainedFrame/constrainedFrame.h       |    2 +-
 examples/constrainedFrame/constrainedFrame.pro     |   14 +-
 examples/constrainedFrame/main.cpp                 |    2 +-
 examples/contribs/3dsViewer/3dsViewer.cpp          |    2 +-
 examples/contribs/3dsViewer/3dsViewer.h            |    2 +-
 examples/contribs/3dsViewer/3dsViewer.pro          |   14 +-
 examples/contribs/3dsViewer/main.cpp               |    2 +-
 examples/contribs/agora/AI/AI.pro                  |   14 +-
 examples/contribs/agora/AI/ai.cpp                  |    2 +-
 examples/contribs/agora/Viewer/Viewer.pro          |   14 +-
 examples/contribs/agora/Viewer/agoraViewer.cpp     |    2 +-
 examples/contribs/agora/Viewer/agoraViewer.h       |    2 +-
 examples/contribs/agora/Viewer/board.cpp           |    2 +-
 examples/contribs/agora/Viewer/board.h             |    2 +-
 examples/contribs/agora/Viewer/case.cpp            |    2 +-
 examples/contribs/agora/Viewer/case.h              |    2 +-
 examples/contribs/agora/Viewer/computerPlayer.cpp  |    2 +-
 examples/contribs/agora/Viewer/computerPlayer.h    |    2 +-
 examples/contribs/agora/Viewer/main.cpp            |    2 +-
 examples/contribs/agora/Viewer/move.cpp            |    2 +-
 examples/contribs/agora/Viewer/move.h              |    2 +-
 examples/contribs/agora/Viewer/undo.cpp            |    2 +-
 examples/contribs/agora/Viewer/undo.h              |    2 +-
 examples/contribs/anaglyph/anaglyph.cpp            |    2 +-
 examples/contribs/anaglyph/anaglyph.h              |    2 +-
 examples/contribs/anaglyph/anaglyph.pro            |   14 +-
 examples/contribs/anaglyph/main.cpp                |    2 +-
 .../contribs/backgroundImage/backgroundImage.cpp   |    2 +-
 .../contribs/backgroundImage/backgroundImage.h     |    2 +-
 .../contribs/backgroundImage/backgroundImage.pro   |   14 +-
 examples/contribs/backgroundImage/main.cpp         |    2 +-
 examples/contribs/blobWar/AI/AI.pro                |   14 +-
 examples/contribs/blobWar/AI/ai.cpp                |    2 +-
 examples/contribs/blobWar/Viewer/Viewer.pro        |   14 +-
 examples/contribs/blobWar/Viewer/blobWarViewer.cpp |    2 +-
 examples/contribs/blobWar/Viewer/blobWarViewer.h   |    2 +-
 examples/contribs/blobWar/Viewer/board.cpp         |    2 +-
 examples/contribs/blobWar/Viewer/board.h           |    2 +-
 examples/contribs/blobWar/Viewer/boardDraw.cpp     |    2 +-
 .../contribs/blobWar/Viewer/computerPlayer.cpp     |    2 +-
 examples/contribs/blobWar/Viewer/computerPlayer.h  |    2 +-
 examples/contribs/blobWar/Viewer/main.cpp          |    2 +-
 examples/contribs/blobWar/Viewer/move.cpp          |    2 +-
 examples/contribs/blobWar/Viewer/move.h            |    2 +-
 examples/contribs/blobWar/Viewer/undo.cpp          |    2 +-
 examples/contribs/blobWar/Viewer/undo.h            |    2 +-
 examples/contribs/contribs.pro                     |    2 +-
 examples/contribs/cornerAxis/cornerAxis.cpp        |    2 +-
 examples/contribs/cornerAxis/cornerAxis.h          |    2 +-
 examples/contribs/cornerAxis/cornerAxis.pro        |   14 +-
 examples/contribs/cornerAxis/main.cpp              |    2 +-
 examples/contribs/dvonn/board.cpp                  |    3 +-
 examples/contribs/dvonn/board.h                    |    2 +-
 examples/contribs/dvonn/drawer.cpp                 |    2 +-
 examples/contribs/dvonn/drawer.h                   |    2 +-
 examples/contribs/dvonn/dvonn.pro                  |   14 +-
 examples/contribs/dvonn/dvonnviewer.cpp            |    2 +-
 examples/contribs/dvonn/dvonnviewer.h              |    2 +-
 examples/contribs/dvonn/dvonnwindowimpl.cpp        |    2 +-
 examples/contribs/dvonn/dvonnwindowimpl.h          |    2 +-
 examples/contribs/dvonn/game.cpp                   |    2 +-
 examples/contribs/dvonn/game.h                     |    2 +-
 examples/contribs/dvonn/main.cpp                   |    2 +-
 examples/contribs/eventRecorder/eventRecorder.cpp  |    2 +-
 examples/contribs/eventRecorder/eventRecorder.h    |    2 +-
 examples/contribs/eventRecorder/eventRecorder.pro  |   14 +-
 examples/contribs/eventRecorder/main.cpp           |    2 +-
 examples/contribs/eventRecorder/viewer.cpp         |    2 +-
 examples/contribs/eventRecorder/viewer.h           |    2 +-
 examples/contribs/quarto/glview.cpp                |    2 +-
 examples/contribs/quarto/glview.h                  |    2 +-
 examples/contribs/quarto/jeu.cpp                   |    2 +-
 examples/contribs/quarto/jeu.h                     |    2 +-
 examples/contribs/quarto/main.cpp                  |    2 +-
 examples/contribs/quarto/piece.cpp                 |    2 +-
 examples/contribs/quarto/piece.h                   |    2 +-
 examples/contribs/quarto/quarto.cpp                |    2 +-
 examples/contribs/quarto/quarto.h                  |    2 +-
 examples/contribs/quarto/quarto.pro                |   14 +-
 examples/contribs/terrain/main.cpp                 |    2 +-
 examples/contribs/terrain/quadtree.cpp             |    2 +-
 examples/contribs/terrain/quadtree.h               |    2 +-
 examples/contribs/terrain/sky.cpp                  |    2 +-
 examples/contribs/terrain/sky.h                    |    2 +-
 examples/contribs/terrain/terrain.cpp              |    2 +-
 examples/contribs/terrain/terrain.h                |    2 +-
 examples/contribs/terrain/terrain.pro              |   14 +-
 examples/contribs/terrain/tree.cpp                 |    2 +-
 examples/contribs/terrain/tree.h                   |    2 +-
 examples/contribs/terrain/viewer.cpp               |    2 +-
 examples/contribs/terrain/viewer.h                 |    2 +-
 examples/contribs/terrain/water.cpp                |    2 +-
 examples/contribs/terrain/water.h                  |    2 +-
 examples/contribs/textureViewer/main.cpp           |    2 +-
 examples/contribs/textureViewer/textureViewer.cpp  |    2 +-
 examples/contribs/textureViewer/textureViewer.h    |    2 +-
 examples/contribs/textureViewer/textureViewer.pro  |   14 +-
 examples/contribs/thumbnail/main.cpp               |    2 +-
 examples/contribs/thumbnail/thumbnail.cpp          |    2 +-
 examples/contribs/thumbnail/thumbnail.h            |    2 +-
 examples/contribs/thumbnail/thumbnail.pro          |   14 +-
 examples/drawLight/drawLight.cpp                   |   12 +-
 examples/drawLight/drawLight.h                     |    2 +-
 examples/drawLight/drawLight.pro                   |   14 +-
 examples/drawLight/main.cpp                        |    2 +-
 examples/fastDraw/fastDraw.cpp                     |    2 +-
 examples/fastDraw/fastDraw.h                       |    2 +-
 examples/fastDraw/fastDraw.pro                     |   14 +-
 examples/fastDraw/main.cpp                         |    2 +-
 examples/frameTransform/frameTransform.cpp         |    2 +-
 examples/frameTransform/frameTransform.h           |    2 +-
 examples/frameTransform/frameTransform.pro         |   14 +-
 examples/frameTransform/main.cpp                   |    2 +-
 examples/frustumCulling/box.cpp                    |    2 +-
 examples/frustumCulling/box.h                      |    2 +-
 examples/frustumCulling/cullingCamera.cpp          |    2 +-
 examples/frustumCulling/cullingCamera.h            |    2 +-
 examples/frustumCulling/frustumCulling.cpp         |    2 +-
 examples/frustumCulling/frustumCulling.h           |    2 +-
 examples/frustumCulling/frustumCulling.pro         |   14 +-
 examples/frustumCulling/main.cpp                   |    2 +-
 examples/interface/interface.cpp                   |    2 +-
 examples/interface/interface.h                     |    2 +-
 examples/interface/interface.pro                   |   14 +-
 examples/interface/main.cpp                        |    2 +-
 examples/keyFrames/keyFrames.cpp                   |    2 +-
 examples/keyFrames/keyFrames.h                     |    2 +-
 examples/keyFrames/keyFrames.pro                   |   14 +-
 examples/keyFrames/main.cpp                        |    2 +-
 examples/keyboardAndMouse/keyboardAndMouse.cpp     |    2 +-
 examples/keyboardAndMouse/keyboardAndMouse.h       |    2 +-
 examples/keyboardAndMouse/keyboardAndMouse.pro     |   14 +-
 examples/keyboardAndMouse/main.cpp                 |    2 +-
 examples/luxo/luxo.cpp                             |    2 +-
 examples/luxo/luxo.h                               |    2 +-
 examples/luxo/luxo.pro                             |   14 +-
 examples/luxo/main.cpp                             |    2 +-
 examples/manipulatedFrame/main.cpp                 |    2 +-
 examples/manipulatedFrame/manipulatedFrame.cpp     |    2 +-
 examples/manipulatedFrame/manipulatedFrame.h       |    2 +-
 examples/manipulatedFrame/manipulatedFrame.pro     |   14 +-
 examples/mouseGrabber/main.cpp                     |    2 +-
 examples/mouseGrabber/mouseGrabber.cpp             |    2 +-
 examples/mouseGrabber/mouseGrabber.h               |    2 +-
 examples/mouseGrabber/mouseGrabber.pro             |   14 +-
 examples/multiSelect/main.cpp                      |    2 +-
 .../multiSelect/manipulatedFrameSetConstraint.cpp  |    2 +-
 .../multiSelect/manipulatedFrameSetConstraint.h    |    2 +-
 examples/multiSelect/multiSelect.cpp               |    2 +-
 examples/multiSelect/multiSelect.h                 |    2 +-
 examples/multiSelect/multiSelect.pro               |   14 +-
 examples/multiSelect/object.cpp                    |    2 +-
 examples/multiSelect/object.h                      |    2 +-
 examples/multiView/main.cpp                        |    2 +-
 examples/multiView/multiView.cpp                   |    2 +-
 examples/multiView/multiView.h                     |    2 +-
 examples/multiView/multiView.pro                   |   14 +-
 examples/overpainting/main.cpp                     |    2 +-
 examples/overpainting/overpainting.pro             |   14 +-
 examples/overpainting/viewer.cpp                   |    2 +-
 examples/overpainting/viewer.h                     |    2 +-
 examples/screenCoordSystem/main.cpp                |    2 +-
 examples/screenCoordSystem/screenCoordSystem.cpp   |    2 +-
 examples/screenCoordSystem/screenCoordSystem.h     |    2 +-
 examples/screenCoordSystem/screenCoordSystem.pro   |   14 +-
 examples/select/main.cpp                           |    2 +-
 examples/select/select.cpp                         |    2 +-
 examples/select/select.h                           |    2 +-
 examples/select/select.pro                         |   14 +-
 examples/simpleViewer/main.cpp                     |    2 +-
 examples/simpleViewer/simpleViewer.cpp             |    2 +-
 examples/simpleViewer/simpleViewer.h               |    2 +-
 examples/simpleViewer/simpleViewer.pro             |   14 +-
 examples/standardCamera/cameraViewer.cpp           |    2 +-
 examples/standardCamera/cameraViewer.h             |    2 +-
 examples/standardCamera/main.cpp                   |    2 +-
 examples/standardCamera/standardCamera.cpp         |   12 +-
 examples/standardCamera/standardCamera.h           |    6 +-
 examples/standardCamera/standardCamera.pro         |   14 +-
 examples/standardCamera/viewer.cpp                 |    2 +-
 examples/standardCamera/viewer.h                   |    2 +-
 examples/stereoViewer/main.cpp                     |    2 +-
 examples/stereoViewer/stereoViewer.cpp             |    2 +-
 examples/stereoViewer/stereoViewer.h               |    2 +-
 examples/stereoViewer/stereoViewer.pro             |   14 +-
 libQGLViewer-2.5.3.pro => libQGLViewer-2.6.1.pro   |    0
 477 files changed, 5929 insertions(+), 5806 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index b1f4805..062ade7 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,4 @@
-This is libQGLViewer version 2.5.3. Packaged on September 2, 2014.
+This is libQGLViewer version 2.6.1. Packaged on January 22, 2015.
 
 The complete change log is available in doc/changeLog.html
 
diff --git a/QGLViewer/QGLViewer.pro b/QGLViewer/QGLViewer.pro
index 15ac21e..d805aa0 100644
--- a/QGLViewer/QGLViewer.pro
+++ b/QGLViewer/QGLViewer.pro
@@ -6,7 +6,7 @@
 
 TEMPLATE = lib
 TARGET = QGLViewer
-VERSION = 2.5.3
+VERSION = 2.6.1
 CONFIG *= qt opengl warn_on shared thread create_prl rtti no_keywords
 
 QGL_HEADERS = qglviewer.h \
@@ -147,7 +147,11 @@ unix {
 	QMAKE_LIBS_OPENGL *= -lglut
   }
 
-  QMAKE_LIBS_OPENGL *= -lGLU
+  macx|darwin-g++ {
+  	# GLU is part of the OpenGL framework
+  } else {
+  	QMAKE_LIBS_OPENGL *= -lGLU
+  }
 
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -268,9 +272,6 @@ macx|darwin-g++ {
 	QMAKE_LIBS_OPENGL -= -lglut
 	QMAKE_LIBS_OPENGL *= -framework GLUT -lobjc
   }
-
-  # Qt3 only
-  macx: CONFIG -= thread
 }
 
 
@@ -292,14 +293,18 @@ win32 {
 
   CONFIG *= embed_manifest_dll
 
-  # Make sure to have C++ files, PentiumPro code, few warnings, add
-  # support to RTTI and Exceptions, and generate debug info "program database".
+  # TP : C++ source code
+  # GR : Enables run-time type information (RTTI).
+  # Zi : Generates complete debugging information (removed)
+  # EHs : The exception-handling model that catches C++ exceptions only and tells the
+  #       compiler to assume that functions declared as extern "C" may throw an exception.
+  # FS : Enable parallel compilation
   # Any feedback on these flags is welcome.
   !win32-g++ {
-	QMAKE_CXXFLAGS = -TP -GR -Zi
+	QMAKE_CXXFLAGS *= -TP -GR
 	DEFINES += NOMINMAX
 	win32-msvc {
-	  QMAKE_CXXFLAGS *= -GX
+	  QMAKE_CXXFLAGS *= -EH -FS
 	} else {
 	  QMAKE_CXXFLAGS *= -EHs
 	}
diff --git a/QGLViewer/VRender/AxisAlignedBox.h b/QGLViewer/VRender/AxisAlignedBox.h
index ad5b5dc..e27187d 100644
--- a/QGLViewer/VRender/AxisAlignedBox.h
+++ b/QGLViewer/VRender/AxisAlignedBox.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/BSPSortMethod.cpp b/QGLViewer/VRender/BSPSortMethod.cpp
index 47196ee..8c56aa0 100644
--- a/QGLViewer/VRender/BSPSortMethod.cpp
+++ b/QGLViewer/VRender/BSPSortMethod.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/BackFaceCullingOptimizer.cpp b/QGLViewer/VRender/BackFaceCullingOptimizer.cpp
index 5945694..86c9ba2 100644
--- a/QGLViewer/VRender/BackFaceCullingOptimizer.cpp
+++ b/QGLViewer/VRender/BackFaceCullingOptimizer.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -58,10 +58,10 @@ void BackFaceCullingOptimizer::optimize(std::vector<PtrPrimitive>& primitives_ta
 	Polygone *P ;
 	int nb_culled = 0 ;
 
-	for(unsigned int i=0;i<primitives_tab.size();++i)
+	for(size_t i=0;i<primitives_tab.size();++i)
 		if((P = dynamic_cast<Polygone *>(primitives_tab[i])) != NULL)
 		{
-                        for(unsigned int j=0;j<P->nbVertices();++j)
+						for(unsigned int j=0;j<P->nbVertices();++j)
 				if(( (P->vertex(j+2) - P->vertex(j+1))^(P->vertex(j+1) - P->vertex(j))).z() > 0.0 )
 				{
 					delete primitives_tab[i] ;
@@ -74,7 +74,7 @@ void BackFaceCullingOptimizer::optimize(std::vector<PtrPrimitive>& primitives_ta
 	// Rule out gaps. This avoids testing for null primitives later.
 
 	int j=0 ;
-	for(unsigned int k=0;k<primitives_tab.size();++k)
+	for(size_t k=0;k<primitives_tab.size();++k)
 		if(primitives_tab[k] != NULL)
 			primitives_tab[j++] = primitives_tab[k] ;
 
diff --git a/QGLViewer/VRender/EPSExporter.cpp b/QGLViewer/VRender/EPSExporter.cpp
index 3ddad80..114b25d 100644
--- a/QGLViewer/VRender/EPSExporter.cpp
+++ b/QGLViewer/VRender/EPSExporter.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Exporter.cpp b/QGLViewer/VRender/Exporter.cpp
index 2af5cb1..61632aa 100644
--- a/QGLViewer/VRender/Exporter.cpp
+++ b/QGLViewer/VRender/Exporter.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Exporter.h b/QGLViewer/VRender/Exporter.h
index 170edf2..0543903 100644
--- a/QGLViewer/VRender/Exporter.h
+++ b/QGLViewer/VRender/Exporter.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/FIGExporter.cpp b/QGLViewer/VRender/FIGExporter.cpp
index 6d1d7f0..9847cf4 100644
--- a/QGLViewer/VRender/FIGExporter.cpp
+++ b/QGLViewer/VRender/FIGExporter.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/NVector3.cpp b/QGLViewer/VRender/NVector3.cpp
index 4880ce7..3a8df22 100644
--- a/QGLViewer/VRender/NVector3.cpp
+++ b/QGLViewer/VRender/NVector3.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/NVector3.h b/QGLViewer/VRender/NVector3.h
index 18882c6..0eb87a4 100644
--- a/QGLViewer/VRender/NVector3.h
+++ b/QGLViewer/VRender/NVector3.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Optimizer.h b/QGLViewer/VRender/Optimizer.h
index c2cdc98..fcf88e7 100644
--- a/QGLViewer/VRender/Optimizer.h
+++ b/QGLViewer/VRender/Optimizer.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/ParserGL.cpp b/QGLViewer/VRender/ParserGL.cpp
index c06268f..734b175 100644
--- a/QGLViewer/VRender/ParserGL.cpp
+++ b/QGLViewer/VRender/ParserGL.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -221,9 +221,9 @@ PtrPrimitive ParserUtils::checkPolygon(Polygone *& P)
 	{
 		// On ne traite que le cas du triangle plat, vu qu'on est sur d'avoir un triangle
 
-		int n = P->nbVertices() ;
+		size_t n = P->nbVertices() ;
 
-		for(int i=0;i<n;++i)
+		for(size_t i=0;i<n;++i)
 			if( (P->vertex(i) - P->vertex((i+1)%n)).norm() > EGALITY_EPS)
 			{
 				Segment *pp = new Segment(P->sommet3DColor((i+1)%n),P->sommet3DColor((i+2)%n)) ;
@@ -250,10 +250,8 @@ PtrPrimitive ParserUtils::checkPolygon(Polygone *& P)
 
 void ParserUtils::print3DcolorVertex(GLint size, GLint * count, GLfloat * buffer)
 {
-	int i;
-
 	printf("  ");
-	for (i = 0; i < Feedback3DColor::sizeInBuffer(); i++)
+	for (size_t i = 0; i < Feedback3DColor::sizeInBuffer(); i++)
 	{
 		printf("%4.2f ", buffer[size - (*count)]);
 		*count = *count - 1;
diff --git a/QGLViewer/VRender/ParserGL.h b/QGLViewer/VRender/ParserGL.h
index 273d094..1b4609a 100644
--- a/QGLViewer/VRender/ParserGL.h
+++ b/QGLViewer/VRender/ParserGL.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Primitive.cpp b/QGLViewer/VRender/Primitive.cpp
index ae19434..e133789 100644
--- a/QGLViewer/VRender/Primitive.cpp
+++ b/QGLViewer/VRender/Primitive.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -50,22 +50,23 @@
 using namespace vrender ;
 using namespace std ;
 
+
 Point::Point(const Feedback3DColor& f)
 	: _position_and_color(f)
 {
 }
 
-const Vector3& Point::vertex(int) const
+const Vector3& Point::vertex(size_t) const
 {
 	return _position_and_color.pos() ;
 }
 
-const Feedback3DColor& Point::sommet3DColor(int) const
+const Feedback3DColor& Point::sommet3DColor(size_t) const
 {
 	return _position_and_color ;
 }
 
-const Feedback3DColor& Segment::sommet3DColor(int i) const
+const Feedback3DColor& Segment::sommet3DColor(size_t i) const
 {
 	return ( (i&1)==0 )?P1:P2 ;
 }
@@ -75,7 +76,7 @@ AxisAlignedBox_xyz Point::bbox() const
 	return AxisAlignedBox_xyz(_position_and_color.pos(),_position_and_color.pos()) ;
 }
 
-const Vector3& Segment::vertex(int i) const
+const Vector3& Segment::vertex(size_t i) const
 {
 	return ( (i&1)==0 )?P1.pos():P2.pos() ;
 }
@@ -88,12 +89,12 @@ AxisAlignedBox_xyz Segment::bbox() const
 	return B ;
 }
 
-const Feedback3DColor& Polygone::sommet3DColor(int i) const
+const Feedback3DColor& Polygone::sommet3DColor(size_t i) const
 {
 	return _vertices[i % nbVertices()] ;
 }
 
-const Vector3& Polygone::vertex(int i) const
+const Vector3& Polygone::vertex(size_t i) const
 {
 	return _vertices[i % nbVertices()].pos() ;
 }
@@ -104,7 +105,7 @@ Polygone::Polygone(const vector<Feedback3DColor>& fc)
 {
 	initNormal() ;
 
-	for(unsigned int i=0;i<fc.size();i++)
+	for(size_t i=0;i<fc.size();i++)
 		_bbox.include(fc[i].pos()) ;
 }
 
@@ -124,7 +125,7 @@ void Polygone::initNormal()
 	Vector3 normalmax = Vector3(0.0,0.0,0.0) ;
 	FLOAT v12norm = (vertex(1)-vertex(0)).norm() ;
 
-        for(unsigned int i=0;i<nbVertices();i++)
+        for(size_t i=0;i<nbVertices();i++)
 	{
 		Vector3 v1(vertex(i)) ;
 		Vector3 v2(vertex(i+1));
diff --git a/QGLViewer/VRender/Primitive.h b/QGLViewer/VRender/Primitive.h
index 8f60fc6..a8e90f6 100644
--- a/QGLViewer/VRender/Primitive.h
+++ b/QGLViewer/VRender/Primitive.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -63,158 +63,157 @@
 
 namespace vrender
 {
-    class Feedback3DColor ;
-    class Primitive ;
-
+	class Feedback3DColor ;
+	class Primitive ;
 
 #define EPS_SMOOTH_LINE_FACTOR 0.06  /* Lower for better smooth lines. */
 
-    //  A Feedback3DColor is a structure containing informations about a vertex projected into
-    // the frame buffer.
-
-    class Feedback3DColor
-    {
-    public:
-        Feedback3DColor(GLfloat *loc)
-            : 	_pos(loc[0],loc[1],loc[2]),
-            _red(loc[3]),_green(loc[4]),_blue(loc[5]),_alpha(loc[6]) {}
-
-        inline FLOAT x() const { return _pos[0] ; }
-        inline FLOAT y() const { return _pos[1] ; }
-        inline FLOAT z() const { return _pos[2] ; }
-        inline GLfloat red() const { return _red ; }
-        inline GLfloat green() const { return _green ; }
-        inline GLfloat blue() const { return _blue ; }
-        inline GLfloat alpha() const { return _alpha ; }
-        inline const Vector3& pos() const { return _pos ; }
-
-        inline Feedback3DColor operator+(const Feedback3DColor & v) const
-        {
-            return Feedback3DColor(x()+v.x(),y()+v.y(),z()+v.z(),red()+v.red(),green()+v.green(),blue()+v.blue(),alpha()+v.alpha()) ;
-        }
-        inline Feedback3DColor operator*(const GLFLOAT & f) const
-        {
-            return Feedback3DColor(x()*f,y()*f,z()*f,red()*GLfloat(f),green()*GLfloat(f),blue()*GLfloat(f),alpha()*GLfloat(f)) ;
-        }
-        friend inline Feedback3DColor operator*(const GLFLOAT & f,const Feedback3DColor& F)
-        {
-            return F*f ;
-        }
-
-        static int sizeInBuffer() { return 7 ; }
-
-        friend std::ostream& operator<<(std::ostream&,const Feedback3DColor&) ;
+	//  A Feedback3DColor is a structure containing informations about a vertex projected into
+	// the frame buffer.
+
+	class Feedback3DColor
+	{
+	public:
+		Feedback3DColor(GLfloat *loc)
+			: 	_pos(loc[0],loc[1],loc[2]),
+			_red(loc[3]),_green(loc[4]),_blue(loc[5]),_alpha(loc[6]) {}
+
+		inline FLOAT x() const { return _pos[0] ; }
+		inline FLOAT y() const { return _pos[1] ; }
+		inline FLOAT z() const { return _pos[2] ; }
+		inline GLfloat red() const { return _red ; }
+		inline GLfloat green() const { return _green ; }
+		inline GLfloat blue() const { return _blue ; }
+		inline GLfloat alpha() const { return _alpha ; }
+		inline const Vector3& pos() const { return _pos ; }
+
+		inline Feedback3DColor operator+(const Feedback3DColor & v) const
+		{
+			return Feedback3DColor(x()+v.x(),y()+v.y(),z()+v.z(),red()+v.red(),green()+v.green(),blue()+v.blue(),alpha()+v.alpha()) ;
+		}
+		inline Feedback3DColor operator*(const GLFLOAT & f) const
+		{
+			return Feedback3DColor(x()*f,y()*f,z()*f,red()*GLfloat(f),green()*GLfloat(f),blue()*GLfloat(f),alpha()*GLfloat(f)) ;
+		}
+		friend inline Feedback3DColor operator*(const GLFLOAT & f,const Feedback3DColor& F)
+		{
+			return F*f ;
+		}
+
+		static size_t sizeInBuffer() { return 7 ; }
+
+		friend std::ostream& operator<<(std::ostream&,const Feedback3DColor&) ;
 
 		protected:
-        Feedback3DColor(FLOAT x, FLOAT y, FLOAT z, GLfloat r, GLfloat g, GLfloat b, GLfloat a)
-            :_pos(x,y,z), _red(r), _green(g), _blue(b), _alpha(a) {}
+		Feedback3DColor(FLOAT x, FLOAT y, FLOAT z, GLfloat r, GLfloat g, GLfloat b, GLfloat a)
+			:_pos(x,y,z), _red(r), _green(g), _blue(b), _alpha(a) {}
 
-        Vector3	_pos ;
-        GLfloat	_red;
-        GLfloat	_green;
-        GLfloat	_blue;
-        GLfloat	_alpha;
-    } ;
+		Vector3	_pos ;
+		GLfloat	_red;
+		GLfloat	_green;
+		GLfloat	_blue;
+		GLfloat	_alpha;
+	} ;
 
-    // A primitive is an entity
-    //
-    class Primitive
-    {
-    public:
-        virtual ~Primitive() {}
+	// A primitive is an entity
+	//
+	class Primitive
+	{
+	public:
+		virtual ~Primitive() {}
 
 
-        virtual const Feedback3DColor& sommet3DColor(int) const =0 ;
+		virtual const Feedback3DColor& sommet3DColor(size_t) const =0 ;
 
-        // Renvoie le ieme vertex modulo le nombre de vertex.
-        virtual const Vector3& vertex(int) const = 0 ;
+		// Renvoie le ieme vertex modulo le nombre de vertex.
+		virtual const Vector3& vertex(size_t) const = 0 ;
 #ifdef A_FAIRE
-        virtual FLOAT Get_I_EPS(Primitive *) const ;
-        Vect3 VerticalProjectPointOnSupportPlane(const Vector3 &) const ;
-        void IntersectPrimitiveWithSupportPlane(Primitive *,int[],FLOAT[],Vect3 *&,Vect3 *&) ;
-        inline FLOAT Equation(const Vect3& p) { return p*_normal-_C ; }
-        virtual void Split(Vect3,FLOAT,Primitive * &,Primitive * &) = 0 ;
-        void GetSigns(Primitive *,int * &,FLOAT * &,int &,int &,FLOAT) ;
-        FLOAT Const() const { return _C ; }
-
-        int depth() const { return _depth ; }
-        void setDepth(int d) const { _depth = d ; }
+		virtual FLOAT Get_I_EPS(Primitive *) const ;
+		Vect3 VerticalProjectPointOnSupportPlane(const Vector3 &) const ;
+		void IntersectPrimitiveWithSupportPlane(Primitive *,int[],FLOAT[],Vect3 *&,Vect3 *&) ;
+		inline FLOAT Equation(const Vect3& p) { return p*_normal-_C ; }
+		virtual void Split(Vect3,FLOAT,Primitive * &,Primitive * &) = 0 ;
+		void GetSigns(Primitive *,int * &,FLOAT * &,int &,int &,FLOAT) ;
+		FLOAT Const() const { return _C ; }
+
+		int depth() const { return _depth ; }
+		void setDepth(int d) const { _depth = d ; }
 #endif
-        virtual AxisAlignedBox_xyz bbox() const = 0 ;
-        virtual unsigned int nbVertices() const = 0 ;
+		virtual AxisAlignedBox_xyz bbox() const = 0 ;
+		virtual size_t nbVertices() const = 0 ;
 
 		protected:
 
-        int _vibility ;
-    } ;
+		int _vibility ;
+	} ;
 
-    class Point: public Primitive
-    {
-    public:
-        Point(const Feedback3DColor& f);
-        virtual ~Point() {}
+	class Point: public Primitive
+	{
+	public:
+		Point(const Feedback3DColor& f);
+		virtual ~Point() {}
 
-        virtual const Vector3& vertex(int) const ;
-        virtual unsigned int nbVertices() const { return 1 ; }
-        virtual const Feedback3DColor& sommet3DColor(int) const ;
-        virtual AxisAlignedBox_xyz bbox() const ;
+		virtual const Vector3& vertex(size_t) const ;
+		virtual size_t nbVertices() const { return 1 ; }
+		virtual const Feedback3DColor& sommet3DColor(size_t) const ;
+		virtual AxisAlignedBox_xyz bbox() const ;
 
 		private:
-        Feedback3DColor _position_and_color ;
-    };
-
-    class Segment: public Primitive
-    {
-    public:
-        Segment(const Feedback3DColor & p1, const Feedback3DColor & p2): P1(p1), P2(p2) {}
-        virtual ~Segment() {}
-        virtual unsigned int nbVertices() const { return 2 ; }
-        virtual const Vector3& vertex(int) const ;
-        virtual const Feedback3DColor& sommet3DColor(int i) const ;
-        virtual AxisAlignedBox_xyz bbox() const ;
+		Feedback3DColor _position_and_color ;
+	};
+
+	class Segment: public Primitive
+	{
+	public:
+		Segment(const Feedback3DColor & p1, const Feedback3DColor & p2): P1(p1), P2(p2) {}
+		virtual ~Segment() {}
+		virtual size_t nbVertices() const { return 2 ; }
+		virtual const Vector3& vertex(size_t) const ;
+		virtual const Feedback3DColor& sommet3DColor(size_t i) const ;
+		virtual AxisAlignedBox_xyz bbox() const ;
 #ifdef A_FAIRE
-        virtual void Split(const Vector3&,FLOAT,Primitive * &,Primitive * &) ;
+		virtual void Split(const Vector3&,FLOAT,Primitive * &,Primitive * &) ;
 #endif
 
 		protected:
-        Feedback3DColor P1 ;
-        Feedback3DColor P2 ;
-    } ;
+		Feedback3DColor P1 ;
+		Feedback3DColor P2 ;
+	} ;
 
 
-    class Polygone: public Primitive
-    {
-    public:
-        Polygone(const std::vector<Feedback3DColor>&) ;
-        virtual ~Polygone() {}
+	class Polygone: public Primitive
+	{
+	public:
+		Polygone(const std::vector<Feedback3DColor>&) ;
+		virtual ~Polygone() {}
 #ifdef A_FAIRE
-        virtual int IsAPolygon() { return 1 ; }
-        virtual void Split(const Vector3&,FLOAT,Primitive * &,Primitive * &) ;
-        void InitEquation(double &,double &,double &,double &) ;
+		virtual int IsAPolygon() { return 1 ; }
+		virtual void Split(const Vector3&,FLOAT,Primitive * &,Primitive * &) ;
+		void InitEquation(double &,double &,double &,double &) ;
 #endif
-        virtual const Feedback3DColor& sommet3DColor(int) const ;
-        virtual const Vector3& vertex(int) const ;
-        virtual unsigned int nbVertices() const { return _vertices.size() ; }
-        virtual AxisAlignedBox_xyz bbox() const ;
-        double equation(const Vector3& p) const ;
-        const NVector3& normal() const { return _normal ; }
-        double c() const { return _c ; }
+		virtual const Feedback3DColor& sommet3DColor(size_t) const ;
+		virtual const Vector3& vertex(size_t) const ;
+		virtual size_t nbVertices() const { return _vertices.size() ; }
+		virtual AxisAlignedBox_xyz bbox() const ;
+		double equation(const Vector3& p) const ;
+		const NVector3& normal() const { return _normal ; }
+		double c() const { return _c ; }
 
-        FLOAT FlatFactor() const { return anglefactor ; }
+		FLOAT FlatFactor() const { return anglefactor ; }
 
 		protected:
-        virtual void initNormal() ;
-        void CheckInfoForPositionOperators() ;
-
-        AxisAlignedBox_xyz _bbox ;
-        std::vector<Feedback3DColor> _vertices ;
-        // std::vector<FLOAT> _sommetsProjetes ;
-        // Vector3 N,M,L ;
-        double anglefactor ;		//  Determine a quel point un polygone est plat.
-        // Comparer a FLAT_POLYGON_EPS
-        double _c ;
-        NVector3 _normal ;
-    } ;
+		virtual void initNormal() ;
+		void CheckInfoForPositionOperators() ;
+
+		AxisAlignedBox_xyz _bbox ;
+		std::vector<Feedback3DColor> _vertices ;
+		// std::vector<FLOAT> _sommetsProjetes ;
+		// Vector3 N,M,L ;
+		double anglefactor ;		//  Determine a quel point un polygone est plat.
+		// Comparer a FLAT_POLYGON_EPS
+		double _c ;
+		NVector3 _normal ;
+	} ;
 }
 #endif
 
diff --git a/QGLViewer/VRender/PrimitivePositioning.cpp b/QGLViewer/VRender/PrimitivePositioning.cpp
index 99a33c7..d34c2ea 100644
--- a/QGLViewer/VRender/PrimitivePositioning.cpp
+++ b/QGLViewer/VRender/PrimitivePositioning.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -128,7 +128,7 @@ int PrimitivePositioning::computeRelativePosition(const Polygone *P,const Segmen
 
 	double t1,t2 ;
 
-        for(unsigned int i=0;i<P->nbVertices();++i)
+		for(size_t i=0;i<P->nbVertices();++i)
 		if(intersectSegments_XY(Vector2(S->vertex(0)),Vector2(S->vertex(1)),Vector2(P->vertex(i)),Vector2(P->vertex(i+1)),_EPS,t1,t2))
 			intersections.push_back(t1) ;
 
@@ -195,9 +195,9 @@ int PrimitivePositioning::computeRelativePosition(const Polygone *P1,const Polyg
 
 	if (gpc_int.num_contours != 1) // There is some numerical error in gpc. Let's skip.
 	  {
-	    gpc_free_polygon(&gpc_int) ;
-	    return res ;
-	    // throw runtime_error("Intersection with more than 1 contour ! Non convex polygons ?") ;
+		gpc_free_polygon(&gpc_int) ;
+		return res ;
+		// throw runtime_error("Intersection with more than 1 contour ! Non convex polygons ?") ;
 	  }
 
 	// 2 - polygons are not independent. Compute their relative position.
@@ -205,7 +205,7 @@ int PrimitivePositioning::computeRelativePosition(const Polygone *P1,const Polyg
 	//   support plane of each polygon. The epsilon-signs of each point toward
 	//   both planes give the relative position of the polygons.
 
-	for(int i=0;i<gpc_int.contour[0].num_vertices && (res < (Upper | Lower));++i)
+	for(long i=0;i<gpc_int.contour[0].num_vertices && (res < (Upper | Lower));++i)
 	{
 		if(P1->normal().z() == 0.0) throw runtime_error("could not project point. Unexpected case !") ;
 		if(P2->normal().z() == 0.0) throw runtime_error("could not project point. Unexpected case !") ;
@@ -258,13 +258,13 @@ int PrimitivePositioning::computeRelativePosition(const Segment *S1,const Segmen
 
 bool PrimitivePositioning::pointOutOfPolygon_XY(const Vector3& P,const Polygone *Q,double I_EPS)
 {
-	int nq = Q->nbVertices() ;
+	size_t nq = Q->nbVertices() ;
 	Vector2 p = Vector2(P) ;
 
 	FLOAT MaxZ = -FLT_MAX ;
 	FLOAT MinZ =  FLT_MAX ;
 
-	for(int j=0;j<nq;j++)  				//  Regarde si P.(x,y) est a l'interieur
+	for(size_t j=0;j<nq;j++)  				//  Regarde si P.(x,y) est a l'interieur
 	{                               	// ou a l'exterieur du polygone.
 		Vector2 q1 = Vector2(Q->vertex(j)) ;
 		Vector2 q2 = Vector2(Q->vertex(j+1)) ;
@@ -407,7 +407,7 @@ gpc_polygon PrimitivePositioning::createGPCPolygon_XY(const Polygone *P)
 	gpc_p_verts->num_vertices = P->nbVertices() ;
 	gpc_p_verts->vertex = new gpc_vertex[P->nbVertices()] ;
 
-        for(unsigned int i=0;i<P->nbVertices();++i)
+		for(size_t i=0;i<P->nbVertices();++i)
 	{
 		gpc_p_verts->vertex[i].x = P->vertex(i).x() ;
 		gpc_p_verts->vertex[i].y = P->vertex(i).y() ;
@@ -424,7 +424,7 @@ void PrimitivePositioning::getsigns(const Primitive *P,const NVector3& v,double
 	if(P == NULL)
 		throw runtime_error("Null primitive in getsigns !") ;
 
-	int n = P->nbVertices() ;
+	size_t n = P->nbVertices() ;
 
 	Smin =  1 ;
 	Smax = -1 ;
@@ -435,7 +435,7 @@ void PrimitivePositioning::getsigns(const Primitive *P,const NVector3& v,double
 	double zmin =  FLT_MAX ;
 	zvals.resize(n) ;
 
-	for(int i=0;i<n;i++)
+	for(size_t i=0;i<n;i++)
 	{
 		double Z = P->vertex(i) * v - C ;
 
@@ -447,7 +447,7 @@ void PrimitivePositioning::getsigns(const Primitive *P,const NVector3& v,double
 
 	signs.resize(n) ;
 
-	for(int j=0;j<n;j++)
+	for(size_t j=0;j<n;j++)
 	{
 		if(zvals[j] < -I_EPS)
 			signs[j] = -1 ;
@@ -474,7 +474,7 @@ void PrimitivePositioning::split(Polygone *P,const NVector3& v,double C,Primitiv
 
 	getsigns(P,v,C,Signs,Zvals,Smin,Smax,_EPS) ;
 
-	int n = P->nbVertices() ;
+	size_t n = P->nbVertices() ;
 
 	if((Smin == 0)&&(Smax == 0)){ P_moins = P ; P_plus = NULL ; return ; }	// Polygone inclus dans le plan
 	if(Smin == 1) 					{ P_plus = P ; P_moins = NULL ; return ; }	// Polygone tout positif
@@ -493,7 +493,7 @@ void PrimitivePositioning::split(Polygone *P,const NVector3& v,double C,Primitiv
 	int nZero = 0 ;
 	int nconsZero = 0 ;
 
-	for(int i=0;i<n;i++)
+	for(size_t i=0;i<n;i++)
 	{
 		if(Signs[i] == 0)
 		{
@@ -510,7 +510,7 @@ void PrimitivePositioning::split(Polygone *P,const NVector3& v,double C,Primitiv
 	int dep=0 ; while(Signs[dep] == 0) dep++ ;
 	int prev_sign = Signs[dep] ;
 
-	for(int j=1;j<=n;j++)
+	for(size_t j=1;j<=n;j++)
 	{
 		int sign = Signs[(j+dep)%n] ;
 
@@ -605,7 +605,7 @@ void PrimitivePositioning::split(Segment *S,const NVector3& v,double C,Primitive
 
 	getsigns(S,v,C,Signs,Zvals,Smin,Smax,_EPS) ;
 
-	int n = S->nbVertices() ;
+	size_t n = S->nbVertices() ;
 
 	if((Smin == 0)&&(Smax == 0)) 	{ P_moins = S ; P_plus = NULL ; return ; }	// Polygone inclus dans le plan
 	if(Smin == 1) 						{ P_plus = S ; P_moins = NULL ; return ; }	// Polygone tout positif
@@ -620,7 +620,7 @@ void PrimitivePositioning::split(Segment *S,const NVector3& v,double C,Primitive
 	int nZero = 0 ;
 	int nconsZero = 0 ;
 
-	for(int i=0;i<n;i++)
+	for(size_t i=0;i<n;i++)
 	{
 		if(Signs[i] == 0)
 		{
diff --git a/QGLViewer/VRender/PrimitivePositioning.h b/QGLViewer/VRender/PrimitivePositioning.h
index 236052c..71d947a 100644
--- a/QGLViewer/VRender/PrimitivePositioning.h
+++ b/QGLViewer/VRender/PrimitivePositioning.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/SortMethod.h b/QGLViewer/VRender/SortMethod.h
index b10a932..89d588d 100644
--- a/QGLViewer/VRender/SortMethod.h
+++ b/QGLViewer/VRender/SortMethod.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/TopologicalSortMethod.cpp b/QGLViewer/VRender/TopologicalSortMethod.cpp
index 3ff7b97..c9bc9d8 100644
--- a/QGLViewer/VRender/TopologicalSortMethod.cpp
+++ b/QGLViewer/VRender/TopologicalSortMethod.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -62,44 +62,44 @@ namespace vrender
 class TopologicalSortUtils
 {
 	public:
-		static void buildPrecedenceGraph(vector<PtrPrimitive>& primitive_tab, vector< vector<int> >& precedence_graph) ;
+		static void buildPrecedenceGraph(vector<PtrPrimitive>& primitive_tab, vector< vector<size_t> >& precedence_graph) ;
 
 		static void recursFindNeighbors(	const vector<PtrPrimitive>& primitive_tab,
-													const vector<int>& pindices,
-													vector< vector<int> >& precedence_graph,
+													const vector<size_t>& pindices,
+													vector< vector<size_t> >& precedence_graph,
 													const AxisAlignedBox_xy&,int) ;
 
-		static void checkAndAddEdgeToGraph(int a,int b,vector< vector<int> >& precedence_graph) ;
-		static void suppressPrecedence(int a,int b,vector< vector<int> >& precedence_graph) ;
+		static void checkAndAddEdgeToGraph(size_t a,size_t b,vector< vector<size_t> >& precedence_graph) ;
+		static void suppressPrecedence(size_t a,size_t b,vector< vector<size_t> >& precedence_graph) ;
 
-		static void recursTopologicalSort(vector< vector<int> >& precedence_graph,
+		static void recursTopologicalSort(vector< vector<size_t> >& precedence_graph,
 													 vector<PtrPrimitive>& primitive_tab,
 													 vector<bool>& alread_rendered,
 													 vector<bool>& alread_visited,
-													 vector<PtrPrimitive>&,int,int&,
+													 vector<PtrPrimitive>&,size_t,size_t&,
 													 VRenderParams& vparams,
-													 int info_cnt,int& nbrendered) ;
+													 size_t info_cnt,size_t& nbrendered) ;
 
-		static void recursTopologicalSort(vector< vector<int> >& precedence_graph,
+		static void recursTopologicalSort(vector< vector<size_t> >& precedence_graph,
 													 vector<PtrPrimitive>& primitive_tab,
 													 vector<bool>& alread_rendered,
 													 vector<bool>& alread_visited,
-													 vector<PtrPrimitive>&,int,
-													 vector<int>& ancestors,
-													 int&, int&,
+													 vector<PtrPrimitive>&,size_t,
+													 vector<size_t>& ancestors,
+													 size_t&, size_t&,
 													 VRenderParams& vparams,
-													 int info_cnt,int& nbrendered) ;
+													 size_t info_cnt,size_t& nbrendered) ;
 
-		static void topologicalSort(	vector< vector<int> >& precedence_graph,
+		static void topologicalSort(	vector< vector<size_t> >& precedence_graph,
 												vector<PtrPrimitive>& primitive_tab,
 												VRenderParams&) ;
 
-		static void topologicalSortBreakCycles(vector< vector<int> >& precedence_graph,
+		static void topologicalSortBreakCycles(vector< vector<size_t> >& precedence_graph,
 															vector<PtrPrimitive>& primitive_tab,
 															VRenderParams&) ;
 
 #ifdef DEBUG_TS
-		static void printPrecedenceGraph(const vector< vector<int> >& precedence_graph,
+		static void printPrecedenceGraph(const vector< vector<size_t> >& precedence_graph,
 													const vector<PtrPrimitive>& primitive_tab) ;
 #endif
 };
@@ -116,10 +116,10 @@ void TopologicalSortMethod::sortPrimitives(vector<PtrPrimitive>& primitive_tab,V
 #ifdef DEBUG_TS
 	cout << "Computing precedence graph." << endl ;
 	cout << "Old order: " ;
-	for(unsigned int i=0;i<primitive_tab.size();++i) cout << (void *)(primitive_tab[i]) << " " ;
+	for(size_t i=0;i<primitive_tab.size();++i) cout << (void *)(primitive_tab[i]) << " " ;
 	cout << endl ;
 #endif
-	vector< vector<int> > precedence_graph(primitive_tab.size());
+	vector< vector<size_t> > precedence_graph(primitive_tab.size());
 	TopologicalSortUtils::buildPrecedenceGraph(primitive_tab,precedence_graph) ;
 
 #ifdef DEBUG_TS
@@ -138,19 +138,19 @@ void TopologicalSortMethod::sortPrimitives(vector<PtrPrimitive>& primitive_tab,V
 
 #ifdef DEBUG_TS
 	cout << "New order: " ;
-	for(unsigned int i=0;i<primitive_tab.size();++i) cout << (void *)(primitive_tab[i]) << " " ;
+	for(size_t i=0;i<primitive_tab.size();++i) cout << (void *)(primitive_tab[i]) << " " ;
 	cout << endl ;
 #endif
 }
 
 #ifdef DEBUG_TS
-void TopologicalSortUtils::printPrecedenceGraph(const vector< vector<int> >& precedence_graph,
+void TopologicalSortUtils::printPrecedenceGraph(const vector< vector<size_t> >& precedence_graph,
 																const vector<PtrPrimitive>& primitive_tab)
 {
-	for(unsigned int i=0;i<precedence_graph.size();++i)
+	for(size_t i=0;i<precedence_graph.size();++i)
 	{
 		cout << i << " (" << primitive_tab[i]->nbVertices() << ") : " ;
-		for(unsigned int j=0;j<precedence_graph[i].size();++j)
+		for(size_t j=0;j<precedence_graph[i].size();++j)
 			cout << precedence_graph[i][j] << " " ;
 
 		cout << endl ;
@@ -159,7 +159,7 @@ void TopologicalSortUtils::printPrecedenceGraph(const vector< vector<int> >& pre
 #endif
 
 void TopologicalSortUtils::buildPrecedenceGraph(vector<PtrPrimitive>& primitive_tab,
-																vector< vector<int> >& precedence_graph)
+																vector< vector<size_t> >& precedence_graph)
 {
 	// The precedence graph is constructed by first conservatively determining which
 	// primitives can possibly intersect using a quadtree. Candidate pairs of
@@ -173,7 +173,7 @@ void TopologicalSortUtils::buildPrecedenceGraph(vector<PtrPrimitive>& primitive_
 
 	AxisAlignedBox_xy BBox ;
 
-	for(unsigned int i=0;i<primitive_tab.size();++i)
+	for(size_t i=0;i<primitive_tab.size();++i)
 	{
 		BBox.include(Vector2(primitive_tab[i]->bbox().mini().x(),primitive_tab[i]->bbox().mini().y())) ;
 		BBox.include(Vector2(primitive_tab[i]->bbox().maxi().x(),primitive_tab[i]->bbox().maxi().y())) ;
@@ -181,30 +181,30 @@ void TopologicalSortUtils::buildPrecedenceGraph(vector<PtrPrimitive>& primitive_
 
 	// 1 - recursively find pairs.
 
-	vector<int> pindices(primitive_tab.size()) ;
-	for(unsigned int j=0;j<pindices.size();++j)
+	vector<size_t> pindices(primitive_tab.size()) ;
+	for(size_t j=0;j<pindices.size();++j)
 		pindices[j] = j ;
 
 	recursFindNeighbors(primitive_tab, pindices, precedence_graph, BBox,0) ;
 }
 
 void TopologicalSortUtils::recursFindNeighbors(const vector<PtrPrimitive>& primitive_tab,
-																const vector<int>& pindices,
-																vector< vector<int> >& precedence_graph,
+																const vector<size_t>& pindices,
+																vector< vector<size_t> >& precedence_graph,
 																const AxisAlignedBox_xy& bbox,
 																int depth)
 {
-	static const unsigned int MAX_PRIMITIVES_IN_CELL = 5 ;
+	static const size_t MAX_PRIMITIVES_IN_CELL = 5 ;
 
 	// Refinment: first decide which sub-cell each primitive meets, then call
 	// algorithm recursively.
 
 	if(primitive_tab.size() > MAX_PRIMITIVES_IN_CELL)
 	{
-		vector<int> p_indices_min_min ;
-		vector<int> p_indices_min_max ;
-		vector<int> p_indices_max_min ;
-		vector<int> p_indices_max_max ;
+		vector<size_t> p_indices_min_min ;
+		vector<size_t> p_indices_min_max ;
+		vector<size_t> p_indices_max_min ;
+		vector<size_t> p_indices_max_max ;
 
 		double xmin = bbox.mini().x() ;
 		double ymin = bbox.mini().y() ;
@@ -214,7 +214,7 @@ void TopologicalSortUtils::recursFindNeighbors(const vector<PtrPrimitive>& primi
 		double xMean = 0.5*(xmin+xmax) ;
 		double yMean = 0.5*(ymin+ymax) ;
 
-		for(unsigned int i=0;i<pindices.size();++i)
+		for(size_t i=0;i<pindices.size();++i)
 		{
 			bool left  = primitive_tab[pindices[i]]->bbox().mini().x() <= xMean ;
 			bool right = primitive_tab[pindices[i]]->bbox().maxi().x() >= xMean ;
@@ -243,8 +243,8 @@ void TopologicalSortUtils::recursFindNeighbors(const vector<PtrPrimitive>& primi
 	// No refinment either because it could not be possible, or because the number of primitives is below
 	// the predefined limit.
 
-	for(unsigned int i=0;i<pindices.size();++i)
-		for(unsigned int j=i+1;j<pindices.size();++j)
+	for(size_t i=0;i<pindices.size();++i)
+		for(size_t j=i+1;j<pindices.size();++j)
 		{
 			// Compute the position of j as regard to i
 
@@ -255,14 +255,14 @@ void TopologicalSortUtils::recursFindNeighbors(const vector<PtrPrimitive>& primi
 		}
 }
 
-void TopologicalSortUtils::checkAndAddEdgeToGraph(int a,int b,vector< vector<int> >& precedence_graph)
+void TopologicalSortUtils::checkAndAddEdgeToGraph(size_t a,size_t b,vector< vector<size_t> >& precedence_graph)
 {
 #ifdef DEBUG_TS
 	cout << "Trying to add " << a << " -> " << b << " " ;
 #endif
 	bool found = false ;
 
-	for(unsigned int k=0;k<precedence_graph[a].size() && !found;++k)
+	for(size_t k=0;k<precedence_graph[a].size() && !found;++k)
 		if(precedence_graph[a][k] == b)
 			found = true ;
 
@@ -276,12 +276,12 @@ void TopologicalSortUtils::checkAndAddEdgeToGraph(int a,int b,vector< vector<int
 		precedence_graph[a].push_back(b) ;
 }
 
-void TopologicalSortUtils::suppressPrecedence(int a,int b,vector< vector<int> >& precedence_graph)
+void TopologicalSortUtils::suppressPrecedence(size_t a,size_t b,vector< vector<size_t> >& precedence_graph)
 {
-	vector<int> prec_tab = vector<int>(precedence_graph[a]) ;
+	vector<size_t> prec_tab = vector<size_t>(precedence_graph[a]) ;
 	bool trouve = false ;
 
-	for(unsigned int k=0;k<prec_tab.size();++k)
+	for(size_t k=0;k<prec_tab.size();++k)
 		if(prec_tab[k] == b)
 		{
 			prec_tab[k] = prec_tab[prec_tab.size()-1] ;
@@ -292,21 +292,21 @@ void TopologicalSortUtils::suppressPrecedence(int a,int b,vector< vector<int> >&
 		throw runtime_error("Unexpected error in suppressPrecedence") ;
 }
 
-void TopologicalSortUtils::topologicalSort(vector< vector<int> >& precedence_graph,
+void TopologicalSortUtils::topologicalSort(vector< vector<size_t> >& precedence_graph,
 														 vector<PtrPrimitive>& primitive_tab,
 														 VRenderParams& vparams)
 {
 	vector<PtrPrimitive> new_pr_tab ;
 	vector<bool> already_visited(primitive_tab.size(),false) ;
 	vector<bool> already_rendered(primitive_tab.size(),false) ;
-	int nb_skews = 0 ;
+	size_t nb_skews = 0 ;
 
-        unsigned int info_cnt = primitive_tab.size()/200 + 1 ;
-	int nbrendered = 0 ;
+        size_t info_cnt = primitive_tab.size()/200 + 1 ;
+	size_t nbrendered = 0 ;
 
 	// 1 - sorts primitives by rendering order
 
-	for(unsigned int i=0;i<primitive_tab.size();++i)
+	for(size_t i=0;i<primitive_tab.size();++i)
 		if(!already_rendered[i])
 			recursTopologicalSort(precedence_graph,primitive_tab,already_rendered,already_visited,new_pr_tab,i,nb_skews,vparams,info_cnt,nbrendered);
 
@@ -319,23 +319,23 @@ void TopologicalSortUtils::topologicalSort(vector< vector<int> >& precedence_gra
 	primitive_tab = new_pr_tab ;
 }
 
-void TopologicalSortUtils::topologicalSortBreakCycles(vector< vector<int> >& precedence_graph,
+void TopologicalSortUtils::topologicalSortBreakCycles(vector< vector<size_t> >& precedence_graph,
 																		vector<PtrPrimitive>& primitive_tab,
 																		VRenderParams& vparams)
 {
 	vector<PtrPrimitive> new_pr_tab ;
 	vector<bool> already_visited(primitive_tab.size(),false) ;
 	vector<bool> already_rendered(primitive_tab.size(),false) ;
-	vector<int> ancestors ;
-	int nb_skews = 0 ;
-	int ancestors_backward_index ;
+	vector<size_t> ancestors ;
+	size_t nb_skews = 0 ;
+	size_t ancestors_backward_index ;
 
-	int info_cnt = primitive_tab.size()/200 + 1 ;
-	int nbrendered = 0 ;
+	size_t info_cnt = primitive_tab.size()/200 + 1 ;
+	size_t nbrendered = 0 ;
 
 	// 1 - sorts primitives by rendering order
 
-	for(unsigned int i=0;i<primitive_tab.size();++i)
+	for(size_t i=0;i<primitive_tab.size();++i)
 		if(!already_rendered[i])
 			recursTopologicalSort(precedence_graph,primitive_tab,already_rendered,already_visited,
 										new_pr_tab,i,ancestors,ancestors_backward_index,nb_skews,vparams,info_cnt,nbrendered) ;
@@ -349,22 +349,22 @@ void TopologicalSortUtils::topologicalSortBreakCycles(vector< vector<int> >& pre
 	primitive_tab = new_pr_tab ;
 }
 
-void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precedence_graph,
+void TopologicalSortUtils::recursTopologicalSort(	vector< vector<size_t> >& precedence_graph,
 																	vector<PtrPrimitive>& primitive_tab,
 																	vector<bool>& already_rendered,
 																	vector<bool>& already_visited,
 																	vector<PtrPrimitive>& new_pr_tab,
-																	int indx,
-																	int& nb_cycles,
+																	size_t indx,
+																	size_t& nb_cycles,
 																	VRenderParams& vparams,
-																	int info_cnt,int& nbrendered)
+																	size_t info_cnt,size_t& nbrendered)
 {
 	// One must first render the primitives indicated by the precedence graph,
 	// then render the current primitive. Skews are detected, but and treated.
 
 	already_visited[indx] = true ;
 
-	for(unsigned int j=0;j<precedence_graph[indx].size();++j)
+	for(size_t j=0;j<precedence_graph[indx].size();++j)
 	{
 		// Both tests are important. If we ommit the second one, the recursion is
 		// always performed down to the next cycle, although this is useless if
@@ -392,17 +392,17 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 	already_visited[indx] = false ;
 }
 
-void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precedence_graph,
+void TopologicalSortUtils::recursTopologicalSort(	vector< vector<size_t> >& precedence_graph,
 																	vector<PtrPrimitive>& primitive_tab,
 																	vector<bool>& already_rendered,
 																	vector<bool>& already_visited,
 																	vector<PtrPrimitive>& new_pr_tab,
-																	int indx,
-																	vector<int>& ancestors,
-																	int& ancestors_backward_index,
-																	int& nb_cycles,
+																	size_t indx,
+																	vector<size_t>& ancestors,
+																	size_t& ancestors_backward_index,
+																	size_t& nb_cycles,
 																	VRenderParams& vparams,
-																	int info_cnt,int& nbrendered)
+																	size_t info_cnt,size_t& nbrendered)
 {
 	// One must first render the primitives indicated by the precedence graph,
 	// then render the current primitive. Skews are detected, but and treated.
@@ -410,7 +410,7 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 	already_visited[indx] = true ;
 	ancestors.push_back(indx) ;
 
-	for(unsigned int j=0;j<precedence_graph[indx].size();++j)
+	for(size_t j=0;j<precedence_graph[indx].size();++j)
 	{
 		// Both tests are important. If we ommit the second one, the recursion is
 		// always performed down to the next cycle, although this is useless if
@@ -423,7 +423,7 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 				recursTopologicalSort(	precedence_graph,primitive_tab,already_rendered,already_visited,
 												new_pr_tab,precedence_graph[indx][j],ancestors,ancestors_backward_index,nb_cycles,vparams,info_cnt,nbrendered) ;
 
-				if(ancestors_backward_index != INT_MAX && ancestors.size() > (unsigned int)(ancestors_backward_index+1))
+				if(ancestors_backward_index != INT_MAX && ancestors.size() > (size_t)(ancestors_backward_index+1))
 				{
 #ifdef DEBUG_TS
 					cout << "Returning early" << endl ;
@@ -449,13 +449,13 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 
 			// 0.5 - determine cycle beginning
 
-			int cycle_beginning_index = -1 ;
-                        for(int i=(int)(ancestors.size())-1; i >= 0 && cycle_beginning_index < 0;--i)
+			long cycle_beginning_index = -1 ;
+            for(size_t i=ancestors.size()-1; long(i) >= 0 && cycle_beginning_index < 0;--i)
 				if(ancestors[i] == precedence_graph[indx][j])
-					cycle_beginning_index = i ;
+					cycle_beginning_index = (long)i ;
 #ifdef DEBUG_TS
 			cout << "Unbreaking cycle : " ;
-			for(unsigned int i=0;i<ancestors.size();++i)
+			for(size_t i=0;i<ancestors.size();++i)
 				cout << ancestors[i] << " " ;
 			cout << precedence_graph[indx][j] << endl ;
 #endif
@@ -464,16 +464,16 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 #endif
 			// 1 - determine splitting plane
 
-			int split_prim_ancestor_indx = -1 ;
-			int split_prim_indx = -1 ;
+			long split_prim_ancestor_indx = -1 ;
+			long split_prim_indx = -1 ;
 
 			// Go down ancestors tab, starting from the skewing primitive, and stopping at it.
 
-			for(unsigned int i2=cycle_beginning_index;i2<ancestors.size() && split_prim_ancestor_indx < 0;++i2)
+			for(size_t i2=(size_t)cycle_beginning_index;i2<ancestors.size() && split_prim_ancestor_indx < 0;++i2)
 				if(primitive_tab[ancestors[i2]]->nbVertices() > 2)
 				{
-					split_prim_ancestor_indx = i2 ;
-					split_prim_indx = ancestors[i2] ;
+					split_prim_ancestor_indx = (long)i2 ;
+					split_prim_indx = (long)ancestors[i2] ;
 				}
 
 #ifdef DEBUG_TS
@@ -484,15 +484,15 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 
 			// 2 - split all necessary primitives
 
-			const Polygone *P = dynamic_cast<const Polygone *>(primitive_tab[split_prim_indx]) ;
+			const Polygone *P = dynamic_cast<const Polygone *>(primitive_tab[(size_t)split_prim_indx]) ;
 			const NVector3& normal = NVector3(P->normal()) ;
 			double c(P->c()) ;
 			ancestors.push_back(precedence_graph[indx][j]) ;				// sentinel
-			ancestors.push_back(ancestors[cycle_beginning_index+1]) ;	// sentinel
+			ancestors.push_back(ancestors[(size_t)cycle_beginning_index+1]) ;	// sentinel
 			bool cycle_broken = false ;
 
-			for(unsigned int i3=cycle_beginning_index+1;i3<ancestors.size()-1 && !cycle_broken;++i3)
-				if(ancestors[i3] != split_prim_indx)
+			for(size_t i3=(size_t)cycle_beginning_index+1;i3<ancestors.size()-1 && !cycle_broken;++i3)
+				if(ancestors[i3] != (size_t)split_prim_indx)
 				{
 					bool prim_lower_ante_contains_im1 = false ;
 					bool prim_upper_ante_contains_im1 = false ;
@@ -510,17 +510,17 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 					cout << "Splitted primitive " << ancestors[i3] << endl ;
 #endif
 
-					vector<int> prim_upper_prec ;
-					vector<int> prim_lower_prec ;
+					vector<size_t> prim_upper_prec ;
+					vector<size_t> prim_lower_prec ;
 
-					vector<int> old_prec = vector<int>(precedence_graph[ancestors[i3]]) ;
+					vector<size_t> old_prec = vector<size_t>(precedence_graph[ancestors[i3]]) ;
 
-                                        unsigned int upper_indx = precedence_graph.size() ;
-					int lower_indx = ancestors[i3] ;
+                                        size_t upper_indx = precedence_graph.size() ;
+					size_t lower_indx = ancestors[i3] ;
 
 					//  Updates the precedence graph downwards.
 
-					for(unsigned int k=0;k<old_prec.size();++k)
+					for(size_t k=0;k<old_prec.size();++k)
 					{
 						int prp1 = PrimitivePositioning::computeRelativePosition(prim_upper,primitive_tab[old_prec[k]]) ;
 #ifdef DEBUG_TS
@@ -570,9 +570,9 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 					// dual precedence graph. For now it's O(n^2). This test can not
 					// be skipped because upper can still be lower to ancestors[i-1].
 
-					for(unsigned int l=0;l<precedence_graph.size();++l)
-						if(l != (unsigned int)lower_indx)
-							for(int k=0;k<(int)precedence_graph[l].size();++k)
+					for(size_t l=0;l<precedence_graph.size();++l)
+						if(l != (size_t)lower_indx)
+							for(size_t k=0;k<precedence_graph[l].size();++k)
 								if(precedence_graph[l][k] == ancestors[i3])
 								{
 									int prp1 = PrimitivePositioning::computeRelativePosition(prim_upper,primitive_tab[l]) ;
@@ -586,7 +586,7 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 
 										precedence_graph[l].push_back(upper_indx) ;
 
-										if(l == (unsigned int)ancestors[i3-1])
+										if(l == (size_t)ancestors[i3-1])
 											prim_upper_ante_contains_im1 = true ;
 									}
 									// If the primitive is not upper anymore there is
@@ -601,7 +601,7 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 #ifdef DEBUG_TS
 										cout << " > " << endl ;
 #endif
-										if(l == (unsigned int)ancestors[i3-1])						 // The index is the same => nothing to change.
+										if(l == (size_t)ancestors[i3-1])						 // The index is the same => nothing to change.
 											prim_lower_ante_contains_im1 = true ;
 									}
 									else
@@ -654,7 +654,7 @@ void TopologicalSortUtils::recursTopologicalSort(	vector< vector<int> >& precede
 
 			if(cycle_broken)
 			{
-				ancestors_backward_index = cycle_beginning_index ;
+				ancestors_backward_index = (size_t)cycle_beginning_index ;
 #ifdef DEBUG_TS
 				cout << "Cycle broken. Jumping back to rank " << ancestors_backward_index << endl ;
 #endif
diff --git a/QGLViewer/VRender/Types.h b/QGLViewer/VRender/Types.h
index 285f435..6294508 100644
--- a/QGLViewer/VRender/Types.h
+++ b/QGLViewer/VRender/Types.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/VRender.cpp b/QGLViewer/VRender/VRender.cpp
index 33f26cd..6d7d6cb 100644
--- a/QGLViewer/VRender/VRender.cpp
+++ b/QGLViewer/VRender/VRender.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/VRender.h b/QGLViewer/VRender/VRender.h
index d2633e0..93a4819 100644
--- a/QGLViewer/VRender/VRender.h
+++ b/QGLViewer/VRender/VRender.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Vector2.cpp b/QGLViewer/VRender/Vector2.cpp
index 30a4241..7aa8e31 100644
--- a/QGLViewer/VRender/Vector2.cpp
+++ b/QGLViewer/VRender/Vector2.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Vector2.h b/QGLViewer/VRender/Vector2.h
index d546557..234b5f0 100644
--- a/QGLViewer/VRender/Vector2.h
+++ b/QGLViewer/VRender/Vector2.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Vector3.cpp b/QGLViewer/VRender/Vector3.cpp
index f024310..eab723e 100644
--- a/QGLViewer/VRender/Vector3.cpp
+++ b/QGLViewer/VRender/Vector3.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/Vector3.h b/QGLViewer/VRender/Vector3.h
index c300221..df9c976 100644
--- a/QGLViewer/VRender/Vector3.h
+++ b/QGLViewer/VRender/Vector3.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/VRender/VisibilityOptimizer.cpp b/QGLViewer/VRender/VisibilityOptimizer.cpp
index 66cf875..e2b9ba9 100644
--- a/QGLViewer/VRender/VisibilityOptimizer.cpp
+++ b/QGLViewer/VRender/VisibilityOptimizer.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -61,7 +61,7 @@ void VisibilityOptimizer::optimize(vector<PtrPrimitive>& primitives,VRenderParam
 #ifdef DEBUG_VO
         cout << "Optimizing visibility." << endl ;
 #endif
-        unsigned int N = primitives.size()/200 + 1 ;
+        unsigned long N = primitives.size()/200 + 1 ;
 
 #ifdef DEBUG_EPSRENDER__SHOW1
 //	cout << "Showing viewer." << endl ;
@@ -99,9 +99,9 @@ void VisibilityOptimizer::optimize(vector<PtrPrimitive>& primitives,VRenderParam
         cumulated_union.num_contours = 0 ;
         cumulated_union.hole = NULL ;
         cumulated_union.contour = NULL ;
-        int nboptimised = 0 ;
+        size_t nboptimised = 0 ;
 
-        for(int pindex = (int)(primitives.size()) - 1; pindex >= 0;--pindex,++nboptimised)
+        for(size_t pindex = primitives.size() - 1; long(pindex) >= 0;--pindex,++nboptimised)
                 if(primitives[pindex] != NULL)
                 {
 #ifdef A_FAIRE
@@ -114,7 +114,7 @@ void VisibilityOptimizer::optimize(vector<PtrPrimitive>& primitives,VRenderParam
                                 if(pindex%50==0)
                                 {
                                         char buff[500] ;
-                                        sprintf(buff,"Left: % 6ld - Culled: % 6ld", (long)pindex,(long)nb_culled) ;
+                                        sprintf(buff,"Left: % 6ld - Culled: % 6ld", pindex,(long)nb_culled) ;
                                         fprintf(stdout,buff);
 
                                         for(unsigned int j=0;j<strlen(buff);++j)
@@ -181,7 +181,7 @@ void VisibilityOptimizer::optimize(vector<PtrPrimitive>& primitives,VRenderParam
                                                 new_poly_verts->num_vertices = p->nbVertices() ;
                                                 new_poly_verts->vertex = new gpc_vertex[p->nbVertices()] ;
 
-                                                for(unsigned int i=0;i<p->nbVertices();++i)
+                                                for(size_t i=0;i<p->nbVertices();++i)
                                                 {
                                                         new_poly_verts->vertex[i].x = p->vertex(i).x() ;
                                                         new_poly_verts->vertex[i].y = p->vertex(i).y() ;
@@ -194,7 +194,7 @@ void VisibilityOptimizer::optimize(vector<PtrPrimitive>& primitives,VRenderParam
                                                 new_poly_reduced_verts->num_vertices = p->nbVertices() ;
                                                 new_poly_reduced_verts->vertex = new gpc_vertex[p->nbVertices()] ;
 
-                                                for(unsigned int j=0;j<p->nbVertices();++j)
+                                                for(size_t j=0;j<p->nbVertices();++j)
                                                 {
                                                         new_poly_reduced_verts->vertex[j].x = mx + (p->vertex(j).x() - mx)*0.999 ;
                                                         new_poly_reduced_verts->vertex[j].y = my + (p->vertex(j).y() - my)*0.999 ;
@@ -243,10 +243,10 @@ void VisibilityOptimizer::optimize(vector<PtrPrimitive>& primitives,VRenderParam
 
                                         glColor3f(1.0,0.0,0.0) ;
 
-                                        for(int i=0;i<cumulated_union.num_contours;++i)
+                                        for(unsigned long i=0;i<cumulated_union.num_contours;++i)
                                         {
                                                 glBegin(GL_LINE_LOOP) ;
-                                                for(int j=0;j<cumulated_union.contour[i].num_vertices;++j)
+                                                for(unsigned long j=0;j<cumulated_union.contour[i].num_vertices;++j)
                                                         glVertex2f(cumulated_union.contour[i].vertex[j].x,cumulated_union.contour[i].vertex[j].y) ;
                                                 glEnd() ;
                                         }
diff --git a/QGLViewer/VRender/gpc.cpp b/QGLViewer/VRender/gpc.cpp
index 68b38a6..f65bc0b 100644
--- a/QGLViewer/VRender/gpc.cpp
+++ b/QGLViewer/VRender/gpc.cpp
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -47,8 +47,8 @@
 
 Project:   Generic Polygon Clipper
 
-           A new algorithm for calculating the difference, intersection,
-           exclusive-or or union of arbitrary polygon sets.
+		   A new algorithm for calculating the difference, intersection,
+		   exclusive-or or union of arbitrary polygon sets.
 
 File:      gpc.c
 Author:    Alan Murta (email: gpc at cs.man.ac.uk)
@@ -56,20 +56,20 @@ Version:   2.32
 Date:      17th December 2004
 
 Copyright: (C) 1997-2004, Advanced Interfaces Group,
-           University of Manchester.
+		   University of Manchester.
 
-           This software is free for non-commercial use. It may be copied,
-           modified, and redistributed provided that this copyright notice
-           is preserved on all copies. The intellectual property rights of
-           the algorithms used reside with the University of Manchester
-           Advanced Interfaces Group.
+		   This software is free for non-commercial use. It may be copied,
+		   modified, and redistributed provided that this copyright notice
+		   is preserved on all copies. The intellectual property rights of
+		   the algorithms used reside with the University of Manchester
+		   Advanced Interfaces Group.
 
-           You may not use this software, in whole or in part, in support
-           of any commercial product without the express consent of the
-           author.
+		   You may not use this software, in whole or in part, in support
+		   of any commercial product without the express consent of the
+		   author.
 
-           There is no warranty or other guarantee of fitness of this
-           software for any purpose. It is provided solely "as is".
+		   There is no warranty or other guarantee of fitness of this
+		   software for any purpose. It is provided solely "as is".
 
 ===========================================================================
 */
@@ -77,7 +77,7 @@ Copyright: (C) 1997-2004, Advanced Interfaces Group,
 
 /*
 ===========================================================================
-                                Includes
+								Includes
 ===========================================================================
 */
 
@@ -91,7 +91,7 @@ using namespace std ;
 
 /*
 ===========================================================================
-                                Constants
+								Constants
 ===========================================================================
 */
 
@@ -114,7 +114,7 @@ using namespace std ;
 
 /*
 ===========================================================================
-                                 Macros
+								 Macros
 ===========================================================================
 */
 
@@ -124,40 +124,40 @@ using namespace std ;
 #define NEXT_INDEX(i, n)   ((i + 1    ) % n)
 
 #define OPTIMAL(v, i, n)   ((v[PREV_INDEX(i, n)].y != v[i].y) || \
-                            (v[NEXT_INDEX(i, n)].y != v[i].y))
+							(v[NEXT_INDEX(i, n)].y != v[i].y))
 
 #define FWD_MIN(v, i, n)   ((v[PREV_INDEX(i, n)].vertex.y >= v[i].vertex.y) \
-                         && (v[NEXT_INDEX(i, n)].vertex.y > v[i].vertex.y))
+						 && (v[NEXT_INDEX(i, n)].vertex.y > v[i].vertex.y))
 
 #define NOT_FMAX(v, i, n)   (v[NEXT_INDEX(i, n)].vertex.y > v[i].vertex.y)
 
 #define REV_MIN(v, i, n)   ((v[PREV_INDEX(i, n)].vertex.y > v[i].vertex.y) \
-                         && (v[NEXT_INDEX(i, n)].vertex.y >= v[i].vertex.y))
+						 && (v[NEXT_INDEX(i, n)].vertex.y >= v[i].vertex.y))
 
 #define NOT_RMAX(v, i, n)   (v[PREV_INDEX(i, n)].vertex.y > v[i].vertex.y)
 
 #define VERTEX(e,p,s,x,y)  {add_vertex(&((e)->outp[(p)]->v[(s)]), x, y); \
-                            (e)->outp[(p)]->active++;}
+							(e)->outp[(p)]->active++;}
 
 #define P_EDGE(d,e,p,i,j)  {(d)= (e); \
-                            do {(d)= (d)->prev;} while (!(d)->outp[(p)]); \
-                            (i)= (d)->bot.x + (d)->dx * ((j)-(d)->bot.y);}
+							do {(d)= (d)->prev;} while (!(d)->outp[(p)]); \
+							(i)= (d)->bot.x + (d)->dx * ((j)-(d)->bot.y);}
 
 #define N_EDGE(d,e,p,i,j)  {(d)= (e); \
-                            do {(d)= (d)->next;} while (!(d)->outp[(p)]); \
-                            (i)= (d)->bot.x + (d)->dx * ((j)-(d)->bot.y);}
+							do {(d)= (d)->next;} while (!(d)->outp[(p)]); \
+							(i)= (d)->bot.x + (d)->dx * ((j)-(d)->bot.y);}
 
 #define MALLOC(p, b, s, t) {if ((b) > 0) { \
-                            p= (t*)malloc(b); if (!(p)) { \
-                            fprintf(stderr, "gpc malloc failure: %s\n", s); \
-                            exit(0);}} else p= NULL;}
+							p= (t*)malloc(b); if (!(p)) { \
+							fprintf(stderr, "gpc malloc failure: %s\n", s); \
+							exit(0);}} else p= NULL;}
 
 #define FREE(p)            {if (p) {free(p); (p)= NULL;}}
 
 
 /*
 ===========================================================================
-                            Private Data Types
+							Private Data Types
 ===========================================================================
 */
 
@@ -284,7 +284,7 @@ typedef struct bbox_shape           /* Contour axis-aligned bounding box */
 
 /*
 ===========================================================================
-                               Global Data
+							   Global Data
 ===========================================================================
 */
 
@@ -301,7 +301,7 @@ const h_state next_h_state[3][6]=
 
 /*
 ===========================================================================
-                             Private Functions
+							 Private Functions
 ===========================================================================
 */
 
@@ -311,9 +311,9 @@ static void reset_it(it_node **it)
 
   while (*it)
   {
-    itn= (*it)->next;
-    FREE(*it);
-    *it= itn;
+	itn= (*it)->next;
+	FREE(*it);
+	*it= itn;
   }
 }
 
@@ -324,9 +324,9 @@ static void reset_lmt(lmt_node **lmt)
 
   while (*lmt)
   {
-    lmtn= (*lmt)->next;
-    FREE(*lmt);
-    *lmt= lmtn;
+	lmtn= (*lmt)->next;
+	FREE(*lmt);
+	*lmt= lmtn;
   }
 }
 
@@ -337,43 +337,43 @@ static void insert_bound(edge_node **b, edge_node *e)
 
   if (!*b)
   {
-    /* Link node e to the tail of the list */
-    *b= e;
+	/* Link node e to the tail of the list */
+	*b= e;
   }
   else
   {
-    /* Do primary sort on the x field */
-    if (e[0].bot.x < (*b)[0].bot.x)
-    {
-      /* Insert a new node mid-list */
-      existing_bound= *b;
-      *b= e;
-      (*b)->next_bound= existing_bound;
-    }
-    else
-    {
-      if (e[0].bot.x == (*b)[0].bot.x)
-      {
-        /* Do secondary sort on the dx field */
-        if (e[0].dx < (*b)[0].dx)
-        {
-          /* Insert a new node mid-list */
-          existing_bound= *b;
-          *b= e;
-          (*b)->next_bound= existing_bound;
-        }
-        else
-        {
-          /* Head further down the list */
-          insert_bound(&((*b)->next_bound), e);
-        }
-      }
-      else
-      {
-        /* Head further down the list */
-        insert_bound(&((*b)->next_bound), e);
-      }
-    }
+	/* Do primary sort on the x field */
+	if (e[0].bot.x < (*b)[0].bot.x)
+	{
+	  /* Insert a new node mid-list */
+	  existing_bound= *b;
+	  *b= e;
+	  (*b)->next_bound= existing_bound;
+	}
+	else
+	{
+	  if (e[0].bot.x == (*b)[0].bot.x)
+	  {
+		/* Do secondary sort on the dx field */
+		if (e[0].dx < (*b)[0].dx)
+		{
+		  /* Insert a new node mid-list */
+		  existing_bound= *b;
+		  *b= e;
+		  (*b)->next_bound= existing_bound;
+		}
+		else
+		{
+		  /* Head further down the list */
+		  insert_bound(&((*b)->next_bound), e);
+		}
+	  }
+	  else
+	  {
+		/* Head further down the list */
+		insert_bound(&((*b)->next_bound), e);
+	  }
+	}
   }
 }
 
@@ -384,31 +384,31 @@ static edge_node **bound_list(lmt_node **lmt, double y)
 
   if (!*lmt)
   {
-    /* Add node onto the tail end of the LMT */
-    MALLOC(*lmt, sizeof(lmt_node), "LMT insertion", lmt_node);
-    (*lmt)->y= y;
-    (*lmt)->first_bound= NULL;
-    (*lmt)->next= NULL;
-    return &((*lmt)->first_bound);
+	/* Add node onto the tail end of the LMT */
+	MALLOC(*lmt, sizeof(lmt_node), "LMT insertion", lmt_node);
+	(*lmt)->y= y;
+	(*lmt)->first_bound= NULL;
+	(*lmt)->next= NULL;
+	return &((*lmt)->first_bound);
   }
   else
-    if (y < (*lmt)->y)
-    {
-      /* Insert a new LMT node before the current node */
-      existing_node= *lmt;
-      MALLOC(*lmt, sizeof(lmt_node), "LMT insertion", lmt_node);
-      (*lmt)->y= y;
-      (*lmt)->first_bound= NULL;
-      (*lmt)->next= existing_node;
-      return &((*lmt)->first_bound);
-    }
-    else
-      if (y > (*lmt)->y)
-        /* Head further up the LMT */
-        return bound_list(&((*lmt)->next), y);
-      else
-        /* Use this existing LMT node */
-        return &((*lmt)->first_bound);
+	if (y < (*lmt)->y)
+	{
+	  /* Insert a new LMT node before the current node */
+	  existing_node= *lmt;
+	  MALLOC(*lmt, sizeof(lmt_node), "LMT insertion", lmt_node);
+	  (*lmt)->y= y;
+	  (*lmt)->first_bound= NULL;
+	  (*lmt)->next= existing_node;
+	  return &((*lmt)->first_bound);
+	}
+	else
+	  if (y > (*lmt)->y)
+		/* Head further up the LMT */
+		return bound_list(&((*lmt)->next), y);
+	  else
+		/* Use this existing LMT node */
+		return &((*lmt)->first_bound);
 }
 
 
@@ -416,28 +416,28 @@ static void add_to_sbtree(int *entries, sb_tree **sbtree, double y)
 {
   if (!*sbtree)
   {
-    /* Add a new tree node here */
-    MALLOC(*sbtree, sizeof(sb_tree), "scanbeam tree insertion", sb_tree);
-    (*sbtree)->y= y;
-    (*sbtree)->less= NULL;
-    (*sbtree)->more= NULL;
-    (*entries)++;
+	/* Add a new tree node here */
+	MALLOC(*sbtree, sizeof(sb_tree), "scanbeam tree insertion", sb_tree);
+	(*sbtree)->y= y;
+	(*sbtree)->less= NULL;
+	(*sbtree)->more= NULL;
+	(*entries)++;
   }
   else
   {
-    if ((*sbtree)->y > y)
-    {
-    /* Head into the 'less' sub-tree */
-      add_to_sbtree(entries, &((*sbtree)->less), y);
-    }
-    else
-    {
-      if ((*sbtree)->y < y)
-      {
-        /* Head into the 'more' sub-tree */
-        add_to_sbtree(entries, &((*sbtree)->more), y);
-      }
-    }
+	if ((*sbtree)->y > y)
+	{
+	/* Head into the 'less' sub-tree */
+	  add_to_sbtree(entries, &((*sbtree)->less), y);
+	}
+	else
+	{
+	  if ((*sbtree)->y < y)
+	  {
+		/* Head into the 'more' sub-tree */
+		add_to_sbtree(entries, &((*sbtree)->more), y);
+	  }
+	}
   }
 }
 
@@ -445,11 +445,11 @@ static void add_to_sbtree(int *entries, sb_tree **sbtree, double y)
 static void build_sbt(int *entries, double *sbt, sb_tree *sbtree)
 {
   if (sbtree->less)
-    build_sbt(entries, sbt, sbtree->less);
+	build_sbt(entries, sbt, sbtree->less);
   sbt[*entries]= sbtree->y;
   (*entries)++;
   if (sbtree->more)
-    build_sbt(entries, sbt, sbtree->more);
+	build_sbt(entries, sbt, sbtree->more);
 }
 
 
@@ -457,169 +457,169 @@ static void free_sbtree(sb_tree **sbtree)
 {
   if (*sbtree)
   {
-    free_sbtree(&((*sbtree)->less));
-    free_sbtree(&((*sbtree)->more));
-    FREE(*sbtree);
+	free_sbtree(&((*sbtree)->less));
+	free_sbtree(&((*sbtree)->more));
+	FREE(*sbtree);
   }
 }
 
 
 static int count_optimal_vertices(gpc_vertex_list c)
 {
-  int result= 0, i;
+  int result= 0;
 
   /* Ignore non-contributing contours */
   if (c.num_vertices > 0)
   {
-    for (i= 0; i < c.num_vertices; i++)
-      /* Ignore superfluous vertices embedded in horizontal edges */
-      if (OPTIMAL(c.vertex, i, c.num_vertices))
-        result++;
+	for (long i= 0; i < c.num_vertices; i++)
+	  /* Ignore superfluous vertices embedded in horizontal edges */
+	  if (OPTIMAL(c.vertex, i, c.num_vertices))
+		result++;
   }
   return result;
 }
 
 
 static edge_node *build_lmt(lmt_node **lmt, sb_tree **sbtree,
-                            int *sbt_entries, gpc_polygon *p, int type,
-                            gpc_op op)
+							int *sbt_entries, gpc_polygon *p, int type,
+							gpc_op op)
 {
-  int          c, i, min, max, num_edges, v, num_vertices;
+  int          i, min, max, num_edges, v, num_vertices;
   int          total_vertices= 0, e_index=0;
   edge_node   *e, *edge_table;
 
-  for (c= 0; c < p->num_contours; c++)
-    total_vertices+= count_optimal_vertices(p->contour[c]);
+  for (size_t c= 0; c < p->num_contours; c++)
+	total_vertices+= count_optimal_vertices(p->contour[c]);
 
   /* Create the entire input polygon edge table in one go */
   MALLOC(edge_table, total_vertices * sizeof(edge_node), "edge table creation", edge_node);
   for(int k=0;k<total_vertices;++k)
 	  edge_table[k] = edge_node() ;
 
-  for (c= 0; c < p->num_contours; c++)
+  for (size_t c= 0; c < p->num_contours; c++)
   {
-    if (p->contour[c].num_vertices < 0)
-    {
-      /* Ignore the non-contributing contour and repair the vertex count */
-      p->contour[c].num_vertices= -p->contour[c].num_vertices;
-    }
-    else
-    {
-      /* Perform contour optimisation */
-      num_vertices= 0;
-      for (i= 0; i < p->contour[c].num_vertices; i++)
-        if (OPTIMAL(p->contour[c].vertex, i, p->contour[c].num_vertices))
-        {
-          edge_table[num_vertices].vertex.x= p->contour[c].vertex[i].x;
-          edge_table[num_vertices].vertex.y= p->contour[c].vertex[i].y;
-
-          /* Record vertex in the scanbeam table */
-          add_to_sbtree(sbt_entries, sbtree,
-                        edge_table[num_vertices].vertex.y);
-
-          num_vertices++;
-        }
-
-      /* Do the contour forward pass */
-      for (min= 0; min < num_vertices; min++)
-      {
-        /* If a forward local minimum... */
-        if (FWD_MIN(edge_table, min, num_vertices))
-        {
-          /* Search for the next local maximum... */
-          num_edges= 1;
-          max= NEXT_INDEX(min, num_vertices);
-          while (NOT_FMAX(edge_table, max, num_vertices))
-          {
-            num_edges++;
-            max= NEXT_INDEX(max, num_vertices);
-          }
-
-          /* Build the next edge list */
-          e= &edge_table[e_index];
-          e_index+= num_edges;
-          v= min;
-          e[0].bstate[BELOW]= UNBUNDLED;
-          e[0].bundle[BELOW][CLIP]= FALSE;
-          e[0].bundle[BELOW][SUBJ]= FALSE;
-          for (i= 0; i < num_edges; i++)
-          {
-            e[i].xb= edge_table[v].vertex.x;
-            e[i].bot.x= edge_table[v].vertex.x;
-            e[i].bot.y= edge_table[v].vertex.y;
-
-            v= NEXT_INDEX(v, num_vertices);
-
-            e[i].top.x= edge_table[v].vertex.x;
-            e[i].top.y= edge_table[v].vertex.y;
-            e[i].dx= (edge_table[v].vertex.x - e[i].bot.x) /
-                       (e[i].top.y - e[i].bot.y);
-            e[i].type= type;
-            e[i].outp[ABOVE]= NULL;
-            e[i].outp[BELOW]= NULL;
-            e[i].next= NULL;
-            e[i].prev= NULL;
-            e[i].succ= ((num_edges > 1) && (i < (num_edges - 1))) ?
-                       &(e[i + 1]) : NULL;
-            e[i].pred= ((num_edges > 1) && (i > 0)) ? &(e[i - 1]) : NULL;
-            e[i].next_bound= NULL;
-            e[i].bside[CLIP]= (op == GPC_DIFF) ? RIGHT : LEFT;
-            e[i].bside[SUBJ]= LEFT;
-          }
-          insert_bound(bound_list(lmt, edge_table[min].vertex.y), e);
-        }
-      }
-
-      /* Do the contour reverse pass */
-      for (min= 0; min < num_vertices; min++)
-      {
-      /* If a reverse local minimum... */
-        if (REV_MIN(edge_table, min, num_vertices))
-        {
-          /* Search for the previous local maximum... */
-          num_edges= 1;
-          max= PREV_INDEX(min, num_vertices);
-          while (NOT_RMAX(edge_table, max, num_vertices))
-          {
-            num_edges++;
-            max= PREV_INDEX(max, num_vertices);
-          }
-
-          /* Build the previous edge list */
-          e= &edge_table[e_index];
-          e_index+= num_edges;
-          v= min;
-          e[0].bstate[BELOW]= UNBUNDLED;
-          e[0].bundle[BELOW][CLIP]= FALSE;
-          e[0].bundle[BELOW][SUBJ]= FALSE;
-          for (i= 0; i < num_edges; i++)
-          {
-            e[i].xb= edge_table[v].vertex.x;
-            e[i].bot.x= edge_table[v].vertex.x;
-            e[i].bot.y= edge_table[v].vertex.y;
-
-            v= PREV_INDEX(v, num_vertices);
-
-            e[i].top.x= edge_table[v].vertex.x;
-            e[i].top.y= edge_table[v].vertex.y;
-            e[i].dx= (edge_table[v].vertex.x - e[i].bot.x) /
-                       (e[i].top.y - e[i].bot.y);
-            e[i].type= type;
-            e[i].outp[ABOVE]= NULL;
-            e[i].outp[BELOW]= NULL;
-            e[i].next= NULL;
-            e[i].prev= NULL;
-            e[i].succ= ((num_edges > 1) && (i < (num_edges - 1))) ?
-                       &(e[i + 1]) : NULL;
-            e[i].pred= ((num_edges > 1) && (i > 0)) ? &(e[i - 1]) : NULL;
-            e[i].next_bound= NULL;
-            e[i].bside[CLIP]= (op == GPC_DIFF) ? RIGHT : LEFT;
-            e[i].bside[SUBJ]= LEFT;
-          }
-          insert_bound(bound_list(lmt, edge_table[min].vertex.y), e);
-        }
-      }
-    }
+	if (p->contour[c].num_vertices < 0)
+	{
+	  /* Ignore the non-contributing contour and repair the vertex count */
+	  p->contour[c].num_vertices= -p->contour[c].num_vertices;
+	}
+	else
+	{
+	  /* Perform contour optimisation */
+	  num_vertices= 0;
+	  for (i= 0; i < p->contour[c].num_vertices; i++)
+		if (OPTIMAL(p->contour[c].vertex, i, p->contour[c].num_vertices))
+		{
+		  edge_table[num_vertices].vertex.x= p->contour[c].vertex[i].x;
+		  edge_table[num_vertices].vertex.y= p->contour[c].vertex[i].y;
+
+		  /* Record vertex in the scanbeam table */
+		  add_to_sbtree(sbt_entries, sbtree,
+						edge_table[num_vertices].vertex.y);
+
+		  num_vertices++;
+		}
+
+	  /* Do the contour forward pass */
+	  for (min= 0; min < num_vertices; min++)
+	  {
+		/* If a forward local minimum... */
+		if (FWD_MIN(edge_table, min, num_vertices))
+		{
+		  /* Search for the next local maximum... */
+		  num_edges= 1;
+		  max= NEXT_INDEX(min, num_vertices);
+		  while (NOT_FMAX(edge_table, max, num_vertices))
+		  {
+			num_edges++;
+			max= NEXT_INDEX(max, num_vertices);
+		  }
+
+		  /* Build the next edge list */
+		  e= &edge_table[e_index];
+		  e_index+= num_edges;
+		  v= min;
+		  e[0].bstate[BELOW]= UNBUNDLED;
+		  e[0].bundle[BELOW][CLIP]= FALSE;
+		  e[0].bundle[BELOW][SUBJ]= FALSE;
+		  for (i= 0; i < num_edges; i++)
+		  {
+			e[i].xb= edge_table[v].vertex.x;
+			e[i].bot.x= edge_table[v].vertex.x;
+			e[i].bot.y= edge_table[v].vertex.y;
+
+			v= NEXT_INDEX(v, num_vertices);
+
+			e[i].top.x= edge_table[v].vertex.x;
+			e[i].top.y= edge_table[v].vertex.y;
+			e[i].dx= (edge_table[v].vertex.x - e[i].bot.x) /
+					   (e[i].top.y - e[i].bot.y);
+			e[i].type= type;
+			e[i].outp[ABOVE]= NULL;
+			e[i].outp[BELOW]= NULL;
+			e[i].next= NULL;
+			e[i].prev= NULL;
+			e[i].succ= ((num_edges > 1) && (i < (num_edges - 1))) ?
+					   &(e[i + 1]) : NULL;
+			e[i].pred= ((num_edges > 1) && (i > 0)) ? &(e[i - 1]) : NULL;
+			e[i].next_bound= NULL;
+			e[i].bside[CLIP]= (op == GPC_DIFF) ? RIGHT : LEFT;
+			e[i].bside[SUBJ]= LEFT;
+		  }
+		  insert_bound(bound_list(lmt, edge_table[min].vertex.y), e);
+		}
+	  }
+
+	  /* Do the contour reverse pass */
+	  for (min= 0; min < num_vertices; min++)
+	  {
+	  /* If a reverse local minimum... */
+		if (REV_MIN(edge_table, min, num_vertices))
+		{
+		  /* Search for the previous local maximum... */
+		  num_edges= 1;
+		  max= PREV_INDEX(min, num_vertices);
+		  while (NOT_RMAX(edge_table, max, num_vertices))
+		  {
+			num_edges++;
+			max= PREV_INDEX(max, num_vertices);
+		  }
+
+		  /* Build the previous edge list */
+		  e= &edge_table[e_index];
+		  e_index+= num_edges;
+		  v= min;
+		  e[0].bstate[BELOW]= UNBUNDLED;
+		  e[0].bundle[BELOW][CLIP]= FALSE;
+		  e[0].bundle[BELOW][SUBJ]= FALSE;
+		  for (i= 0; i < num_edges; i++)
+		  {
+			e[i].xb= edge_table[v].vertex.x;
+			e[i].bot.x= edge_table[v].vertex.x;
+			e[i].bot.y= edge_table[v].vertex.y;
+
+			v= PREV_INDEX(v, num_vertices);
+
+			e[i].top.x= edge_table[v].vertex.x;
+			e[i].top.y= edge_table[v].vertex.y;
+			e[i].dx= (edge_table[v].vertex.x - e[i].bot.x) /
+					   (e[i].top.y - e[i].bot.y);
+			e[i].type= type;
+			e[i].outp[ABOVE]= NULL;
+			e[i].outp[BELOW]= NULL;
+			e[i].next= NULL;
+			e[i].prev= NULL;
+			e[i].succ= ((num_edges > 1) && (i < (num_edges - 1))) ?
+					   &(e[i + 1]) : NULL;
+			e[i].pred= ((num_edges > 1) && (i > 0)) ? &(e[i - 1]) : NULL;
+			e[i].next_bound= NULL;
+			e[i].bside[CLIP]= (op == GPC_DIFF) ? RIGHT : LEFT;
+			e[i].bside[SUBJ]= LEFT;
+		  }
+		  insert_bound(bound_list(lmt, edge_table[min].vertex.y), e);
+		}
+	  }
+	}
   }
   return edge_table;
 }
@@ -629,132 +629,132 @@ static void add_edge_to_aet(edge_node **aet, edge_node *edge, edge_node *prev)
 {
   if (!*aet)
   {
-    /* Append edge onto the tail end of the AET */
-    *aet= edge;
-    edge->prev= prev;
-    edge->next= NULL;
+	/* Append edge onto the tail end of the AET */
+	*aet= edge;
+	edge->prev= prev;
+	edge->next= NULL;
   }
   else
   {
-    /* Do primary sort on the xb field */
-    if (edge->xb < (*aet)->xb)
-    {
-      /* Insert edge here (before the AET edge) */
-      edge->prev= prev;
-      edge->next= *aet;
-      (*aet)->prev= edge;
-      *aet= edge;
-    }
-    else
-    {
-      if (edge->xb == (*aet)->xb)
-      {
-        /* Do secondary sort on the dx field */
-        if (edge->dx < (*aet)->dx)
-        {
-          /* Insert edge here (before the AET edge) */
-          edge->prev= prev;
-          edge->next= *aet;
-          (*aet)->prev= edge;
-          *aet= edge;
-        }
-        else
-        {
-          /* Head further into the AET */
-          add_edge_to_aet(&((*aet)->next), edge, *aet);
-        }
-      }
-      else
-      {
-        /* Head further into the AET */
-        add_edge_to_aet(&((*aet)->next), edge, *aet);
-      }
-    }
+	/* Do primary sort on the xb field */
+	if (edge->xb < (*aet)->xb)
+	{
+	  /* Insert edge here (before the AET edge) */
+	  edge->prev= prev;
+	  edge->next= *aet;
+	  (*aet)->prev= edge;
+	  *aet= edge;
+	}
+	else
+	{
+	  if (edge->xb == (*aet)->xb)
+	  {
+		/* Do secondary sort on the dx field */
+		if (edge->dx < (*aet)->dx)
+		{
+		  /* Insert edge here (before the AET edge) */
+		  edge->prev= prev;
+		  edge->next= *aet;
+		  (*aet)->prev= edge;
+		  *aet= edge;
+		}
+		else
+		{
+		  /* Head further into the AET */
+		  add_edge_to_aet(&((*aet)->next), edge, *aet);
+		}
+	  }
+	  else
+	  {
+		/* Head further into the AET */
+		add_edge_to_aet(&((*aet)->next), edge, *aet);
+	  }
+	}
   }
 }
 
 
 static void add_intersection(it_node **it, edge_node *edge0, edge_node *edge1,
-                             double x, double y)
+							 double x, double y)
 {
   it_node *existing_node;
 
   if (!*it)
   {
-    /* Append a new node to the tail of the list */
-    MALLOC(*it, sizeof(it_node), "IT insertion", it_node);
-    (*it)->ie[0]= edge0;
-    (*it)->ie[1]= edge1;
-    (*it)->point.x= x;
-    (*it)->point.y= y;
-    (*it)->next= NULL;
+	/* Append a new node to the tail of the list */
+	MALLOC(*it, sizeof(it_node), "IT insertion", it_node);
+	(*it)->ie[0]= edge0;
+	(*it)->ie[1]= edge1;
+	(*it)->point.x= x;
+	(*it)->point.y= y;
+	(*it)->next= NULL;
   }
   else
   {
-    if ((*it)->point.y > y)
-    {
-      /* Insert a new node mid-list */
-      existing_node= *it;
-      MALLOC(*it, sizeof(it_node), "IT insertion", it_node);
-      (*it)->ie[0]= edge0;
-      (*it)->ie[1]= edge1;
-      (*it)->point.x= x;
-      (*it)->point.y= y;
-      (*it)->next= existing_node;
-    }
-    else
-      /* Head further down the list */
-      add_intersection(&((*it)->next), edge0, edge1, x, y);
+	if ((*it)->point.y > y)
+	{
+	  /* Insert a new node mid-list */
+	  existing_node= *it;
+	  MALLOC(*it, sizeof(it_node), "IT insertion", it_node);
+	  (*it)->ie[0]= edge0;
+	  (*it)->ie[1]= edge1;
+	  (*it)->point.x= x;
+	  (*it)->point.y= y;
+	  (*it)->next= existing_node;
+	}
+	else
+	  /* Head further down the list */
+	  add_intersection(&((*it)->next), edge0, edge1, x, y);
   }
 }
 
 
 static void add_st_edge(st_node **st, it_node **it, edge_node *edge,
-                        double dy)
+						double dy)
 {
   st_node *existing_node;
   double   den, r, x, y;
 
   if (!*st)
   {
-    /* Append edge onto the tail end of the ST */
-    MALLOC(*st, sizeof(st_node), "ST insertion", st_node);
-    (*st)->edge= edge;
-    (*st)->xb= edge->xb;
-    (*st)->xt= edge->xt;
-    (*st)->dx= edge->dx;
-    (*st)->prev= NULL;
+	/* Append edge onto the tail end of the ST */
+	MALLOC(*st, sizeof(st_node), "ST insertion", st_node);
+	(*st)->edge= edge;
+	(*st)->xb= edge->xb;
+	(*st)->xt= edge->xt;
+	(*st)->dx= edge->dx;
+	(*st)->prev= NULL;
   }
   else
   {
-    den= ((*st)->xt - (*st)->xb) - (edge->xt - edge->xb);
-
-    /* If new edge and ST edge don't cross */
-    if ((edge->xt >= (*st)->xt) || (edge->dx == (*st)->dx) ||
-        (fabs(den) <= DBL_EPSILON))
-    {
-      /* No intersection - insert edge here (before the ST edge) */
-      existing_node= *st;
-      MALLOC(*st, sizeof(st_node), "ST insertion", st_node);
-      (*st)->edge= edge;
-      (*st)->xb= edge->xb;
-      (*st)->xt= edge->xt;
-      (*st)->dx= edge->dx;
-      (*st)->prev= existing_node;
-    }
-    else
-    {
-      /* Compute intersection between new edge and ST edge */
-      r= (edge->xb - (*st)->xb) / den;
-      x= (*st)->xb + r * ((*st)->xt - (*st)->xb);
-      y= r * dy;
-
-      /* Insert the edge pointers and the intersection point in the IT */
-      add_intersection(it, (*st)->edge, edge, x, y);
-
-      /* Head further into the ST */
-      add_st_edge(&((*st)->prev), it, edge, dy);
-    }
+	den= ((*st)->xt - (*st)->xb) - (edge->xt - edge->xb);
+
+	/* If new edge and ST edge don't cross */
+	if ((edge->xt >= (*st)->xt) || (edge->dx == (*st)->dx) ||
+		(fabs(den) <= DBL_EPSILON))
+	{
+	  /* No intersection - insert edge here (before the ST edge) */
+	  existing_node= *st;
+	  MALLOC(*st, sizeof(st_node), "ST insertion", st_node);
+	  (*st)->edge= edge;
+	  (*st)->xb= edge->xb;
+	  (*st)->xt= edge->xt;
+	  (*st)->dx= edge->dx;
+	  (*st)->prev= existing_node;
+	}
+	else
+	{
+	  /* Compute intersection between new edge and ST edge */
+	  r= (edge->xb - (*st)->xb) / den;
+	  x= (*st)->xb + r * ((*st)->xt - (*st)->xb);
+	  y= r * dy;
+
+	  /* Insert the edge pointers and the intersection point in the IT */
+	  add_intersection(it, (*st)->edge, edge, x, y);
+
+	  /* Head further into the ST */
+	  add_st_edge(&((*st)->prev), it, edge, dy);
+	}
   }
 }
 
@@ -771,17 +771,17 @@ static void build_intersection_table(it_node **it, edge_node *aet, double dy)
   /* Process each AET edge */
   for (edge= aet; edge; edge= edge->next)
   {
-    if ((edge->bstate[ABOVE] == BUNDLE_HEAD) ||
-         edge->bundle[ABOVE][CLIP] || edge->bundle[ABOVE][SUBJ])
-      add_st_edge(&st, it, edge, dy);
+	if ((edge->bstate[ABOVE] == BUNDLE_HEAD) ||
+		 edge->bundle[ABOVE][CLIP] || edge->bundle[ABOVE][SUBJ])
+	  add_st_edge(&st, it, edge, dy);
   }
 
   /* Free the sorted edge table */
   while (st)
   {
-    stp= st->prev;
-    FREE(st);
-    st= stp;
+	stp= st->prev;
+	FREE(st);
+	st= stp;
   }
 }
 
@@ -791,30 +791,30 @@ static int count_contours(polygon_node *polygon)
   vertex_node *v, *nextv;
 
   for (nc= 0; polygon; polygon= polygon->next)
-    if (polygon->active)
-    {
-      /* Count the vertices in the current contour */
-      nv= 0;
-      for (v= polygon->proxy->v[LEFT]; v; v= v->next)
-        nv++;
-
-      /* Record valid vertex counts in the active field */
-      if (nv > 2)
-      {
-        polygon->active= nv;
-        nc++;
-      }
-      else
-      {
-        /* Invalid contour: just free the heap */
-        for (v= polygon->proxy->v[LEFT]; v; v= nextv)
-        {
-          nextv= v->next;
-          FREE(v);
-        }
-        polygon->active= 0;
-      }
-    }
+	if (polygon->active)
+	{
+	  /* Count the vertices in the current contour */
+	  nv= 0;
+	  for (v= polygon->proxy->v[LEFT]; v; v= v->next)
+		nv++;
+
+	  /* Record valid vertex counts in the active field */
+	  if (nv > 2)
+	  {
+		polygon->active= nv;
+		nc++;
+	  }
+	  else
+	  {
+		/* Invalid contour: just free the heap */
+		for (v= polygon->proxy->v[LEFT]; v; v= nextv)
+		{
+		  nextv= v->next;
+		  FREE(v);
+		}
+		polygon->active= 0;
+	  }
+	}
   return nc;
 }
 
@@ -850,20 +850,20 @@ static void merge_left(polygon_node *p, polygon_node *q, polygon_node *list)
 
   if (p->proxy != q->proxy)
   {
-    /* Assign p's vertex list to the left end of q's list */
-    p->proxy->v[RIGHT]->next= q->proxy->v[LEFT];
-    q->proxy->v[LEFT]= p->proxy->v[LEFT];
-
-    /* Redirect any p->proxy references to q->proxy */
-
-    for (target= p->proxy; list; list= list->next)
-    {
-      if (list->proxy == target)
-      {
-        list->active= FALSE;
-        list->proxy= q->proxy;
-      }
-    }
+	/* Assign p's vertex list to the left end of q's list */
+	p->proxy->v[RIGHT]->next= q->proxy->v[LEFT];
+	q->proxy->v[LEFT]= p->proxy->v[LEFT];
+
+	/* Redirect any p->proxy references to q->proxy */
+
+	for (target= p->proxy; list; list= list->next)
+	{
+	  if (list->proxy == target)
+	  {
+		list->active= FALSE;
+		list->proxy= q->proxy;
+	  }
+	}
   }
 }
 
@@ -901,25 +901,25 @@ static void merge_right(polygon_node *p, polygon_node *q, polygon_node *list)
 
   if (p->proxy != q->proxy)
   {
-    /* Assign p's vertex list to the right end of q's list */
-    q->proxy->v[RIGHT]->next= p->proxy->v[LEFT];
-    q->proxy->v[RIGHT]= p->proxy->v[RIGHT];
-
-    /* Redirect any p->proxy references to q->proxy */
-    for (target= p->proxy; list; list= list->next)
-    {
-      if (list->proxy == target)
-      {
-        list->active= FALSE;
-        list->proxy= q->proxy;
-      }
-    }
+	/* Assign p's vertex list to the right end of q's list */
+	q->proxy->v[RIGHT]->next= p->proxy->v[LEFT];
+	q->proxy->v[RIGHT]= p->proxy->v[RIGHT];
+
+	/* Redirect any p->proxy references to q->proxy */
+	for (target= p->proxy; list; list= list->next)
+	{
+	  if (list->proxy == target)
+	  {
+		list->active= FALSE;
+		list->proxy= q->proxy;
+	  }
+	}
   }
 }
 
 
 static void add_local_min(polygon_node **p, edge_node *edge,
-                          double x, double y)
+						  double x, double y)
 {
   polygon_node *existing_min = 0;
   vertex_node  *nv;
@@ -956,8 +956,8 @@ static int count_tristrips(polygon_node *tn)
   int total;
 
   for (total= 0; tn; tn= tn->next)
-    if (tn->active > 2)
-      total++;
+	if (tn->active > 2)
+	  total++;
   return total;
 }
 
@@ -966,66 +966,66 @@ static void add_vertex(vertex_node **t, double x, double y)
 {
   if (!(*t))
   {
-    MALLOC(*t, sizeof(vertex_node), "tristrip vertex creation", vertex_node);
-    (*t)->x= x;
-    (*t)->y= y;
-    (*t)->next= NULL;
+	MALLOC(*t, sizeof(vertex_node), "tristrip vertex creation", vertex_node);
+	(*t)->x= x;
+	(*t)->y= y;
+	(*t)->next= NULL;
   }
   else
-    /* Head further down the list */
-    add_vertex(&((*t)->next), x, y);
+	/* Head further down the list */
+	add_vertex(&((*t)->next), x, y);
 }
 
 
 static void new_tristrip(polygon_node **tn, edge_node *edge,
-                         double x, double y)
+						 double x, double y)
 {
   if (!(*tn))
   {
-    MALLOC(*tn, sizeof(polygon_node), "tristrip node creation", polygon_node);
+	MALLOC(*tn, sizeof(polygon_node), "tristrip node creation", polygon_node);
 	 **tn = polygon_node() ;
 
-    (*tn)->next= NULL;
-    (*tn)->v[LEFT]= NULL;
-    (*tn)->v[RIGHT]= NULL;
-    (*tn)->active= 1;
-    add_vertex(&((*tn)->v[LEFT]), x, y);
-    edge->outp[ABOVE]= *tn;
+	(*tn)->next= NULL;
+	(*tn)->v[LEFT]= NULL;
+	(*tn)->v[RIGHT]= NULL;
+	(*tn)->active= 1;
+	add_vertex(&((*tn)->v[LEFT]), x, y);
+	edge->outp[ABOVE]= *tn;
   }
   else
-    /* Head further down the list */
-    new_tristrip(&((*tn)->next), edge, x, y);
+	/* Head further down the list */
+	new_tristrip(&((*tn)->next), edge, x, y);
 }
 
 
 static bbox *create_contour_bboxes(gpc_polygon *p)
 {
   bbox *box;
-  int   c, v;
+  int   v;
 
   MALLOC(box, p->num_contours * sizeof(bbox), "Bounding box creation", bbox);
 
   /* Construct contour bounding boxes */
-  for (c= 0; c < p->num_contours; c++)
+  for (size_t c= 0; c < p->num_contours; c++)
   {
-    /* Initialise bounding box extent */
-    box[c].xmin= DBL_MAX;
-    box[c].ymin= DBL_MAX;
-    box[c].xmax= -DBL_MAX;
-    box[c].ymax= -DBL_MAX;
-
-    for (v= 0; v < p->contour[c].num_vertices; v++)
-    {
-      /* Adjust bounding box */
-      if (p->contour[c].vertex[v].x < box[c].xmin)
-        box[c].xmin= p->contour[c].vertex[v].x;
-      if (p->contour[c].vertex[v].y < box[c].ymin)
-        box[c].ymin= p->contour[c].vertex[v].y;
-      if (p->contour[c].vertex[v].x > box[c].xmax)
-        box[c].xmax= p->contour[c].vertex[v].x;
-      if (p->contour[c].vertex[v].y > box[c].ymax)
-          box[c].ymax= p->contour[c].vertex[v].y;
-    }
+	/* Initialise bounding box extent */
+	box[c].xmin= DBL_MAX;
+	box[c].ymin= DBL_MAX;
+	box[c].xmax= -DBL_MAX;
+	box[c].ymax= -DBL_MAX;
+
+	for (v= 0; v < p->contour[c].num_vertices; v++)
+	{
+	  /* Adjust bounding box */
+	  if (p->contour[c].vertex[v].x < box[c].xmin)
+		box[c].xmin= p->contour[c].vertex[v].x;
+	  if (p->contour[c].vertex[v].y < box[c].ymin)
+		box[c].ymin= p->contour[c].vertex[v].y;
+	  if (p->contour[c].vertex[v].x > box[c].xmax)
+		box[c].xmax= p->contour[c].vertex[v].x;
+	  if (p->contour[c].vertex[v].y > box[c].ymax)
+		  box[c].ymax= p->contour[c].vertex[v].y;
+	}
   }
   return box;
 }
@@ -1034,48 +1034,48 @@ static bbox *create_contour_bboxes(gpc_polygon *p)
 static void minimax_test(gpc_polygon *subj, gpc_polygon *clip, gpc_op op)
 {
   bbox *s_bbox, *c_bbox;
-  int   s, c, *o_table, overlap;
+  int   *o_table, overlap;
 
   s_bbox= create_contour_bboxes(subj);
   c_bbox= create_contour_bboxes(clip);
 
   MALLOC(o_table, subj->num_contours * clip->num_contours * sizeof(int),
-         "overlap table creation", int);
+		 "overlap table creation", int);
 
   /* Check all subject contour bounding boxes against clip boxes */
-  for (s= 0; s < subj->num_contours; s++)
-    for (c= 0; c < clip->num_contours; c++)
-      o_table[c * subj->num_contours + s]=
-             (!((s_bbox[s].xmax < c_bbox[c].xmin) ||
-                (s_bbox[s].xmin > c_bbox[c].xmax))) &&
-             (!((s_bbox[s].ymax < c_bbox[c].ymin) ||
-                (s_bbox[s].ymin > c_bbox[c].ymax)));
+  for (size_t s= 0; s < subj->num_contours; s++)
+	for (size_t c= 0; c < clip->num_contours; c++)
+	  o_table[c * subj->num_contours + s]=
+			 (!((s_bbox[s].xmax < c_bbox[c].xmin) ||
+				(s_bbox[s].xmin > c_bbox[c].xmax))) &&
+			 (!((s_bbox[s].ymax < c_bbox[c].ymin) ||
+				(s_bbox[s].ymin > c_bbox[c].ymax)));
 
   /* For each clip contour, search for any subject contour overlaps */
-  for (c= 0; c < clip->num_contours; c++)
+  for (size_t c= 0; c < clip->num_contours; c++)
   {
-    overlap= 0;
-    for (s= 0; (!overlap) && (s < subj->num_contours); s++)
-      overlap= o_table[c * subj->num_contours + s];
+	overlap= 0;
+	for (size_t s= 0; (!overlap) && (s < subj->num_contours); s++)
+	  overlap= o_table[c * subj->num_contours + s];
 
-    if (!overlap)
-      /* Flag non contributing status by negating vertex count */
-      clip->contour[c].num_vertices = -clip->contour[c].num_vertices;
+	if (!overlap)
+	  /* Flag non contributing status by negating vertex count */
+	  clip->contour[c].num_vertices = -clip->contour[c].num_vertices;
   }
 
   if (op == GPC_INT)
   {
-    /* For each subject contour, search for any clip contour overlaps */
-    for (s= 0; s < subj->num_contours; s++)
-    {
-      overlap= 0;
-      for (c= 0; (!overlap) && (c < clip->num_contours); c++)
-        overlap= o_table[c * subj->num_contours + s];
-
-      if (!overlap)
-        /* Flag non contributing status by negating vertex count */
-        subj->contour[s].num_vertices = -subj->contour[s].num_vertices;
-    }
+	/* For each subject contour, search for any clip contour overlaps */
+	for (size_t s= 0; s < subj->num_contours; s++)
+	{
+	  overlap= 0;
+	  for (size_t c= 0; (!overlap) && (c < clip->num_contours); c++)
+		overlap= o_table[c * subj->num_contours + s];
+
+	  if (!overlap)
+		/* Flag non contributing status by negating vertex count */
+		subj->contour[s].num_vertices = -subj->contour[s].num_vertices;
+	}
   }
 
   FREE(s_bbox);
@@ -1086,16 +1086,14 @@ static void minimax_test(gpc_polygon *subj, gpc_polygon *clip, gpc_op op)
 
 /*
 ===========================================================================
-                             Public Functions
+							 Public Functions
 ===========================================================================
 */
 
 void gpc_free_polygon(gpc_polygon *p)
 {
-  int c;
-
-  for (c= 0; c < p->num_contours; c++)
-    FREE(p->contour[c].vertex);
+  for (size_t c= 0; c < p->num_contours; c++)
+	FREE(p->contour[c].vertex);
   FREE(p->hole);
   FREE(p->contour);
   p->num_contours= 0;
@@ -1108,65 +1106,64 @@ void gpc_read_polygon(FILE *fp, int read_hole_flags, gpc_polygon *p)
 
   fscanf(fp, "%d", &(p->num_contours));
   MALLOC(p->hole, p->num_contours * sizeof(int),
-         "hole flag array creation", int);
+		 "hole flag array creation", int);
   MALLOC(p->contour, p->num_contours
-         * sizeof(gpc_vertex_list), "contour creation", gpc_vertex_list);
+		 * sizeof(gpc_vertex_list), "contour creation", gpc_vertex_list);
   for (c= 0; c < p->num_contours; c++)
   {
-    fscanf(fp, "%d", &(p->contour[c].num_vertices));
-
-    if (read_hole_flags)
-      fscanf(fp, "%d", &(p->hole[c]));
-    else
-      p->hole[c]= FALSE; // Assume all contours to be external
-
-    MALLOC(p->contour[c].vertex, p->contour[c].num_vertices
-           * sizeof(gpc_vertex), "vertex creation", gpc_vertex);
-    for (v= 0; v < p->contour[c].num_vertices; v++)
-      fscanf(fp, "%lf %lf", &(p->contour[c].vertex[v].x),
-                            &(p->contour[c].vertex[v].y));
+	fscanf(fp, "%d", &(p->contour[c].num_vertices));
+
+	if (read_hole_flags)
+	  fscanf(fp, "%d", &(p->hole[c]));
+	else
+	  p->hole[c]= FALSE; // Assume all contours to be external
+
+	MALLOC(p->contour[c].vertex, p->contour[c].num_vertices
+		   * sizeof(gpc_vertex), "vertex creation", gpc_vertex);
+	for (v= 0; v < p->contour[c].num_vertices; v++)
+	  fscanf(fp, "%lf %lf", &(p->contour[c].vertex[v].x),
+							&(p->contour[c].vertex[v].y));
   }
 }
 */
 
 void gpc_write_polygon(FILE *fp, int write_hole_flags, gpc_polygon *p)
 {
-  int c, v;
-
-  fprintf(fp, "%d\n", p->num_contours);
-  for (c= 0; c < p->num_contours; c++)
+  fprintf(fp, "%lu\n", p->num_contours);
+  for (size_t c= 0; c < p->num_contours; c++)
   {
-    fprintf(fp, "%d\n", p->contour[c].num_vertices);
+	fprintf(fp, "%lu\n", p->contour[c].num_vertices);
 
-    if (write_hole_flags)
-      fprintf(fp, "%d\n", p->hole[c]);
+	if (write_hole_flags)
+	  fprintf(fp, "%d\n", p->hole[c]);
 
-    for (v= 0; v < p->contour[c].num_vertices; v++)
-      fprintf(fp, "% .*lf % .*lf\n",
-              DBL_DIG, p->contour[c].vertex[v].x,
-              DBL_DIG, p->contour[c].vertex[v].y);
+	for (long v= 0; v < p->contour[c].num_vertices; v++)
+	  fprintf(fp, "% .*lf % .*lf\n",
+			  DBL_DIG, p->contour[c].vertex[v].x,
+			  DBL_DIG, p->contour[c].vertex[v].y);
   }
 }
 
 
 void gpc_add_contour(gpc_polygon *p, gpc_vertex_list *new_contour, int hole)
 {
-  int             *extended_hole, c, v;
+  int             *extended_hole;
+  size_t c;
   gpc_vertex_list *extended_contour;
 
   /* Create an extended hole array */
   MALLOC(extended_hole, (p->num_contours + 1)
-         * sizeof(int), "contour hole addition", int);
+		 * sizeof(int), "contour hole addition", int);
 
   /* Create an extended contour array */
   MALLOC(extended_contour, (p->num_contours + 1)
-         * sizeof(gpc_vertex_list), "contour addition", gpc_vertex_list);
+		 * sizeof(gpc_vertex_list), "contour addition", gpc_vertex_list);
 
   /* Copy the old contour and hole data into the extended arrays */
   for (c= 0; c < p->num_contours; c++)
   {
-    extended_hole[c]= p->hole[c];
-    extended_contour[c]= p->contour[c];
+	extended_hole[c]= p->hole[c];
+	extended_contour[c]= p->contour[c];
   }
 
   /* Copy the new contour and hole onto the end of the extended arrays */
@@ -1174,9 +1171,9 @@ void gpc_add_contour(gpc_polygon *p, gpc_vertex_list *new_contour, int hole)
   extended_hole[c]= hole;
   extended_contour[c].num_vertices= new_contour->num_vertices;
   MALLOC(extended_contour[c].vertex, new_contour->num_vertices
-         * sizeof(gpc_vertex), "contour addition", gpc_vertex);
-  for (v= 0; v < new_contour->num_vertices; v++)
-    extended_contour[c].vertex[v]= new_contour->vertex[v];
+		 * sizeof(gpc_vertex), "contour addition", gpc_vertex);
+  for (long v= 0; v < new_contour->num_vertices; v++)
+	extended_contour[c].vertex[v]= new_contour->vertex[v];
 
   /* Dispose of the old contour */
   FREE(p->contour);
@@ -1190,7 +1187,7 @@ void gpc_add_contour(gpc_polygon *p, gpc_vertex_list *new_contour, int hole)
 
 
 void gpc_polygon_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
-                      gpc_polygon *result)
+					  gpc_polygon *result)
 {
   sb_tree       *sbtree= NULL;
   it_node       *it= NULL, *intersect=0;
@@ -1210,33 +1207,33 @@ void gpc_polygon_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
    || ((subj->num_contours == 0) && ((op == GPC_INT) || (op == GPC_DIFF)))
    || ((clip->num_contours == 0) &&  (op == GPC_INT)))
   {
-    result->num_contours= 0;
-    result->hole= NULL;
-    result->contour= NULL;
-    return;
+	result->num_contours= 0;
+	result->hole= NULL;
+	result->contour= NULL;
+	return;
   }
 
   /* Identify potentialy contributing contours */
   if (((op == GPC_INT) || (op == GPC_DIFF))
    && (subj->num_contours > 0) && (clip->num_contours > 0))
-    minimax_test(subj, clip, op);
+	minimax_test(subj, clip, op);
 
   /* Build LMT */
   if (subj->num_contours > 0)
-    s_heap= build_lmt(&lmt, &sbtree, &sbt_entries, subj, SUBJ, op);
+	s_heap= build_lmt(&lmt, &sbtree, &sbt_entries, subj, SUBJ, op);
   if (clip->num_contours > 0)
-    c_heap= build_lmt(&lmt, &sbtree, &sbt_entries, clip, CLIP, op);
+	c_heap= build_lmt(&lmt, &sbtree, &sbt_entries, clip, CLIP, op);
 
   /* Return a NULL result if no contours contribute */
   if (lmt == NULL)
   {
-    result->num_contours= 0;
-    result->hole= NULL;
-    result->contour= NULL;
-    reset_lmt(&lmt);
-    FREE(s_heap);
-    FREE(c_heap);
-    return;
+	result->num_contours= 0;
+	result->hole= NULL;
+	result->contour= NULL;
+	reset_lmt(&lmt);
+	FREE(s_heap);
+	FREE(c_heap);
+	return;
   }
 
   /* Build scanbeam table from scanbeam tree */
@@ -1247,531 +1244,531 @@ void gpc_polygon_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
 
   /* Allow pointer re-use without causing memory leak */
   if (subj == result)
-    gpc_free_polygon(subj);
+	gpc_free_polygon(subj);
   if (clip == result)
-    gpc_free_polygon(clip);
+	gpc_free_polygon(clip);
 
   /* Invert clip polygon for difference operation */
   if (op == GPC_DIFF)
-    parity[CLIP]= RIGHT;
+	parity[CLIP]= RIGHT;
 
   local_min= lmt;
 
   /* Process each scanbeam */
   while (scanbeam < sbt_entries)
   {
-    /* Set yb and yt to the bottom and top of the scanbeam */
-    yb= sbt[scanbeam++];
-    if (scanbeam < sbt_entries)
-    {
-      yt= sbt[scanbeam];
-      dy= yt - yb;
-    }
-
-    /* === SCANBEAM BOUNDARY PROCESSING ================================ */
-
-    /* If LMT node corresponding to yb exists */
-    if (local_min)
-    {
-      if (local_min->y == yb)
-      {
-        /* Add edges starting at this local minimum to the AET */
-        for (edge= local_min->first_bound; edge; edge= edge->next_bound)
-          add_edge_to_aet(&aet, edge, NULL);
-
-        local_min= local_min->next;
-      }
-    }
-
-    /* Set dummy previous x value */
-    px= -DBL_MAX;
-
-    /* Create bundles within AET */
-    e0= aet;
-    e1= aet;
-
-    /* Set up bundle fields of first edge */
-    aet->bundle[ABOVE][ aet->type]= (aet->top.y != yb);
-    aet->bundle[ABOVE][!aet->type]= FALSE;
-    aet->bstate[ABOVE]= UNBUNDLED;
-
-    for (next_edge= aet->next; next_edge; next_edge= next_edge->next)
-    {
-      /* Set up bundle fields of next edge */
-      next_edge->bundle[ABOVE][ next_edge->type]= (next_edge->top.y != yb);
-      next_edge->bundle[ABOVE][!next_edge->type]= FALSE;
-      next_edge->bstate[ABOVE]= UNBUNDLED;
-
-      /* Bundle edges above the scanbeam boundary if they coincide */
-      if (next_edge->bundle[ABOVE][next_edge->type])
-      {
-        if (EQ(e0->xb, next_edge->xb) && EQ(e0->dx, next_edge->dx)
+	/* Set yb and yt to the bottom and top of the scanbeam */
+	yb= sbt[scanbeam++];
+	if (scanbeam < sbt_entries)
+	{
+	  yt= sbt[scanbeam];
+	  dy= yt - yb;
+	}
+
+	/* === SCANBEAM BOUNDARY PROCESSING ================================ */
+
+	/* If LMT node corresponding to yb exists */
+	if (local_min)
+	{
+	  if (local_min->y == yb)
+	  {
+		/* Add edges starting at this local minimum to the AET */
+		for (edge= local_min->first_bound; edge; edge= edge->next_bound)
+		  add_edge_to_aet(&aet, edge, NULL);
+
+		local_min= local_min->next;
+	  }
+	}
+
+	/* Set dummy previous x value */
+	px= -DBL_MAX;
+
+	/* Create bundles within AET */
+	e0= aet;
+	e1= aet;
+
+	/* Set up bundle fields of first edge */
+	aet->bundle[ABOVE][ aet->type]= (aet->top.y != yb);
+	aet->bundle[ABOVE][!aet->type]= FALSE;
+	aet->bstate[ABOVE]= UNBUNDLED;
+
+	for (next_edge= aet->next; next_edge; next_edge= next_edge->next)
+	{
+	  /* Set up bundle fields of next edge */
+	  next_edge->bundle[ABOVE][ next_edge->type]= (next_edge->top.y != yb);
+	  next_edge->bundle[ABOVE][!next_edge->type]= FALSE;
+	  next_edge->bstate[ABOVE]= UNBUNDLED;
+
+	  /* Bundle edges above the scanbeam boundary if they coincide */
+	  if (next_edge->bundle[ABOVE][next_edge->type])
+	  {
+		if (EQ(e0->xb, next_edge->xb) && EQ(e0->dx, next_edge->dx)
 	 && (e0->top.y != yb))
-        {
-          next_edge->bundle[ABOVE][ next_edge->type]^=
-            e0->bundle[ABOVE][ next_edge->type];
-          next_edge->bundle[ABOVE][!next_edge->type]=
-            e0->bundle[ABOVE][!next_edge->type];
-          next_edge->bstate[ABOVE]= BUNDLE_HEAD;
-          e0->bundle[ABOVE][CLIP]= FALSE;
-          e0->bundle[ABOVE][SUBJ]= FALSE;
-          e0->bstate[ABOVE]= BUNDLE_TAIL;
-        }
-        e0= next_edge;
-      }
-    }
-
-    horiz[CLIP]= NH;
-    horiz[SUBJ]= NH;
-
-    /* Process each edge at this scanbeam boundary */
-    for (edge= aet; edge; edge= edge->next)
-    {
-      exists[CLIP]= edge->bundle[ABOVE][CLIP] +
-                   (edge->bundle[BELOW][CLIP] << 1);
-      exists[SUBJ]= edge->bundle[ABOVE][SUBJ] +
-                   (edge->bundle[BELOW][SUBJ] << 1);
-
-      if (exists[CLIP] || exists[SUBJ])
-      {
-        /* Set bundle side */
-        edge->bside[CLIP]= parity[CLIP];
-        edge->bside[SUBJ]= parity[SUBJ];
-
-        /* Determine contributing status and quadrant occupancies */
-        switch (op)
-        {
-        case GPC_DIFF:
-        case GPC_INT:
-          contributing= (exists[CLIP] && (parity[SUBJ] || horiz[SUBJ]))
-                     || (exists[SUBJ] && (parity[CLIP] || horiz[CLIP]))
-                     || (exists[CLIP] && exists[SUBJ]
-                     && (parity[CLIP] == parity[SUBJ]));
-          br= (parity[CLIP])
-           && (parity[SUBJ]);
-          bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
-           && (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
-          tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
-           && (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
-          tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
-           && (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
-          break;
-        case GPC_XOR:
-          contributing= exists[CLIP] || exists[SUBJ];
-          br= (parity[CLIP])
-            ^ (parity[SUBJ]);
-          bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
-            ^ (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
-          tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
-            ^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
-          tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
-            ^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
-          break;
-        case GPC_UNION:
-          contributing= (exists[CLIP] && (!parity[SUBJ] || horiz[SUBJ]))
-                     || (exists[SUBJ] && (!parity[CLIP] || horiz[CLIP]))
-                     || (exists[CLIP] && exists[SUBJ]
-                     && (parity[CLIP] == parity[SUBJ]));
-          br= (parity[CLIP])
-           || (parity[SUBJ]);
-          bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
-           || (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
-          tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
-           || (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
-          tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
-           || (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
-          break;
-        }
-
-        /* Update parity */
-        parity[CLIP]^= edge->bundle[ABOVE][CLIP];
-        parity[SUBJ]^= edge->bundle[ABOVE][SUBJ];
-
-        /* Update horizontal state */
-        if (exists[CLIP])
-          horiz[CLIP]=
-            next_h_state[horiz[CLIP]]
-                        [((exists[CLIP] - 1) << 1) + parity[CLIP]];
-        if (exists[SUBJ])
-          horiz[SUBJ]=
-            next_h_state[horiz[SUBJ]]
-                        [((exists[SUBJ] - 1) << 1) + parity[SUBJ]];
-
-        vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
-
-        if (contributing)
-        {
-          xb= edge->xb;
-
-          switch (vclass)
-          {
-          case EMN:
-          case IMN:
-            add_local_min(&out_poly, edge, xb, yb);
-            px= xb;
-            cf= edge->outp[ABOVE];
-            break;
-          case ERI:
-            if (xb != px)
-            {
-              add_right(cf, xb, yb);
-              px= xb;
-            }
-            edge->outp[ABOVE]= cf;
-            cf= NULL;
-            break;
-          case ELI:
-            add_left(edge->outp[BELOW], xb, yb);
-            px= xb;
-            cf= edge->outp[BELOW];
-            break;
-          case EMX:
-            if (xb != px)
-            {
-              add_left(cf, xb, yb);
-              px= xb;
-            }
-            merge_right(cf, edge->outp[BELOW], out_poly);
-            cf= NULL;
-            break;
-          case ILI:
-            if (xb != px)
-            {
-              add_left(cf, xb, yb);
-              px= xb;
-            }
-            edge->outp[ABOVE]= cf;
-            cf= NULL;
-            break;
-          case IRI:
-            add_right(edge->outp[BELOW], xb, yb);
-            px= xb;
-            cf= edge->outp[BELOW];
-            edge->outp[BELOW]= NULL;
-            break;
-          case IMX:
-            if (xb != px)
-            {
-              add_right(cf, xb, yb);
-              px= xb;
-            }
-            merge_left(cf, edge->outp[BELOW], out_poly);
-            cf= NULL;
-            edge->outp[BELOW]= NULL;
-            break;
-          case IMM:
-            if (xb != px)
-	    {
-              add_right(cf, xb, yb);
-              px= xb;
-	    }
-            merge_left(cf, edge->outp[BELOW], out_poly);
-            edge->outp[BELOW]= NULL;
-            add_local_min(&out_poly, edge, xb, yb);
-            cf= edge->outp[ABOVE];
-            break;
-          case EMM:
-            if (xb != px)
-	    {
-              add_left(cf, xb, yb);
-              px= xb;
-	    }
-            merge_right(cf, edge->outp[BELOW], out_poly);
-            edge->outp[BELOW]= NULL;
-            add_local_min(&out_poly, edge, xb, yb);
-            cf= edge->outp[ABOVE];
-            break;
-          case LED:
-            if (edge->bot.y == yb)
-              add_left(edge->outp[BELOW], xb, yb);
-            edge->outp[ABOVE]= edge->outp[BELOW];
-            px= xb;
-            break;
-          case RED:
-            if (edge->bot.y == yb)
-              add_right(edge->outp[BELOW], xb, yb);
-            edge->outp[ABOVE]= edge->outp[BELOW];
-            px= xb;
-            break;
-          default:
-            break;
-          } /* End of switch */
-        } /* End of contributing conditional */
-      } /* End of edge exists conditional */
-    } /* End of AET loop */
-
-    /* Delete terminating edges from the AET, otherwise compute xt */
-    for (edge= aet; edge; edge= edge->next)
-    {
-      if (edge->top.y == yb)
-      {
-        prev_edge= edge->prev;
-        next_edge= edge->next;
-        if (prev_edge)
-          prev_edge->next= next_edge;
-        else
-          aet= next_edge;
-        if (next_edge)
-          next_edge->prev= prev_edge;
-
-        /* Copy bundle head state to the adjacent tail edge if required */
-        if ((edge->bstate[BELOW] == BUNDLE_HEAD) && prev_edge)
+		{
+		  next_edge->bundle[ABOVE][ next_edge->type]^=
+			e0->bundle[ABOVE][ next_edge->type];
+		  next_edge->bundle[ABOVE][!next_edge->type]=
+			e0->bundle[ABOVE][!next_edge->type];
+		  next_edge->bstate[ABOVE]= BUNDLE_HEAD;
+		  e0->bundle[ABOVE][CLIP]= FALSE;
+		  e0->bundle[ABOVE][SUBJ]= FALSE;
+		  e0->bstate[ABOVE]= BUNDLE_TAIL;
+		}
+		e0= next_edge;
+	  }
+	}
+
+	horiz[CLIP]= NH;
+	horiz[SUBJ]= NH;
+
+	/* Process each edge at this scanbeam boundary */
+	for (edge= aet; edge; edge= edge->next)
+	{
+	  exists[CLIP]= edge->bundle[ABOVE][CLIP] +
+				   (edge->bundle[BELOW][CLIP] << 1);
+	  exists[SUBJ]= edge->bundle[ABOVE][SUBJ] +
+				   (edge->bundle[BELOW][SUBJ] << 1);
+
+	  if (exists[CLIP] || exists[SUBJ])
+	  {
+		/* Set bundle side */
+		edge->bside[CLIP]= parity[CLIP];
+		edge->bside[SUBJ]= parity[SUBJ];
+
+		/* Determine contributing status and quadrant occupancies */
+		switch (op)
+		{
+		case GPC_DIFF:
+		case GPC_INT:
+		  contributing= (exists[CLIP] && (parity[SUBJ] || horiz[SUBJ]))
+					 || (exists[SUBJ] && (parity[CLIP] || horiz[CLIP]))
+					 || (exists[CLIP] && exists[SUBJ]
+					 && (parity[CLIP] == parity[SUBJ]));
+		  br= (parity[CLIP])
+		   && (parity[SUBJ]);
+		  bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
+		   && (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
+		  tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
+		   && (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
+		  tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
+		   && (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
+		  break;
+		case GPC_XOR:
+		  contributing= exists[CLIP] || exists[SUBJ];
+		  br= (parity[CLIP])
+			^ (parity[SUBJ]);
+		  bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
+			^ (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
+		  tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
+			^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
+		  tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
+			^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
+		  break;
+		case GPC_UNION:
+		  contributing= (exists[CLIP] && (!parity[SUBJ] || horiz[SUBJ]))
+					 || (exists[SUBJ] && (!parity[CLIP] || horiz[CLIP]))
+					 || (exists[CLIP] && exists[SUBJ]
+					 && (parity[CLIP] == parity[SUBJ]));
+		  br= (parity[CLIP])
+		   || (parity[SUBJ]);
+		  bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
+		   || (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
+		  tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
+		   || (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
+		  tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
+		   || (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
+		  break;
+		}
+
+		/* Update parity */
+		parity[CLIP]^= edge->bundle[ABOVE][CLIP];
+		parity[SUBJ]^= edge->bundle[ABOVE][SUBJ];
+
+		/* Update horizontal state */
+		if (exists[CLIP])
+		  horiz[CLIP]=
+			next_h_state[horiz[CLIP]]
+						[((exists[CLIP] - 1) << 1) + parity[CLIP]];
+		if (exists[SUBJ])
+		  horiz[SUBJ]=
+			next_h_state[horiz[SUBJ]]
+						[((exists[SUBJ] - 1) << 1) + parity[SUBJ]];
+
+		vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
+
+		if (contributing)
+		{
+		  xb= edge->xb;
+
+		  switch (vclass)
+		  {
+		  case EMN:
+		  case IMN:
+			add_local_min(&out_poly, edge, xb, yb);
+			px= xb;
+			cf= edge->outp[ABOVE];
+			break;
+		  case ERI:
+			if (xb != px)
+			{
+			  add_right(cf, xb, yb);
+			  px= xb;
+			}
+			edge->outp[ABOVE]= cf;
+			cf= NULL;
+			break;
+		  case ELI:
+			add_left(edge->outp[BELOW], xb, yb);
+			px= xb;
+			cf= edge->outp[BELOW];
+			break;
+		  case EMX:
+			if (xb != px)
+			{
+			  add_left(cf, xb, yb);
+			  px= xb;
+			}
+			merge_right(cf, edge->outp[BELOW], out_poly);
+			cf= NULL;
+			break;
+		  case ILI:
+			if (xb != px)
+			{
+			  add_left(cf, xb, yb);
+			  px= xb;
+			}
+			edge->outp[ABOVE]= cf;
+			cf= NULL;
+			break;
+		  case IRI:
+			add_right(edge->outp[BELOW], xb, yb);
+			px= xb;
+			cf= edge->outp[BELOW];
+			edge->outp[BELOW]= NULL;
+			break;
+		  case IMX:
+			if (xb != px)
+			{
+			  add_right(cf, xb, yb);
+			  px= xb;
+			}
+			merge_left(cf, edge->outp[BELOW], out_poly);
+			cf= NULL;
+			edge->outp[BELOW]= NULL;
+			break;
+		  case IMM:
+			if (xb != px)
+		{
+			  add_right(cf, xb, yb);
+			  px= xb;
+		}
+			merge_left(cf, edge->outp[BELOW], out_poly);
+			edge->outp[BELOW]= NULL;
+			add_local_min(&out_poly, edge, xb, yb);
+			cf= edge->outp[ABOVE];
+			break;
+		  case EMM:
+			if (xb != px)
+		{
+			  add_left(cf, xb, yb);
+			  px= xb;
+		}
+			merge_right(cf, edge->outp[BELOW], out_poly);
+			edge->outp[BELOW]= NULL;
+			add_local_min(&out_poly, edge, xb, yb);
+			cf= edge->outp[ABOVE];
+			break;
+		  case LED:
+			if (edge->bot.y == yb)
+			  add_left(edge->outp[BELOW], xb, yb);
+			edge->outp[ABOVE]= edge->outp[BELOW];
+			px= xb;
+			break;
+		  case RED:
+			if (edge->bot.y == yb)
+			  add_right(edge->outp[BELOW], xb, yb);
+			edge->outp[ABOVE]= edge->outp[BELOW];
+			px= xb;
+			break;
+		  default:
+			break;
+		  } /* End of switch */
+		} /* End of contributing conditional */
+	  } /* End of edge exists conditional */
+	} /* End of AET loop */
+
+	/* Delete terminating edges from the AET, otherwise compute xt */
+	for (edge= aet; edge; edge= edge->next)
+	{
+	  if (edge->top.y == yb)
+	  {
+		prev_edge= edge->prev;
+		next_edge= edge->next;
+		if (prev_edge)
+		  prev_edge->next= next_edge;
+		else
+		  aet= next_edge;
+		if (next_edge)
+		  next_edge->prev= prev_edge;
+
+		/* Copy bundle head state to the adjacent tail edge if required */
+		if ((edge->bstate[BELOW] == BUNDLE_HEAD) && prev_edge)
 	{
-          if (prev_edge->bstate[BELOW] == BUNDLE_TAIL)
-          {
-            prev_edge->outp[BELOW]= edge->outp[BELOW];
-            prev_edge->bstate[BELOW]= UNBUNDLED;
-            if (prev_edge->prev)
-              if (prev_edge->prev->bstate[BELOW] == BUNDLE_TAIL)
-                prev_edge->bstate[BELOW]= BUNDLE_HEAD;
+		  if (prev_edge->bstate[BELOW] == BUNDLE_TAIL)
+		  {
+			prev_edge->outp[BELOW]= edge->outp[BELOW];
+			prev_edge->bstate[BELOW]= UNBUNDLED;
+			if (prev_edge->prev)
+			  if (prev_edge->prev->bstate[BELOW] == BUNDLE_TAIL)
+				prev_edge->bstate[BELOW]= BUNDLE_HEAD;
 	  }
 	}
-      }
-      else
-      {
-        if (edge->top.y == yt)
-          edge->xt= edge->top.x;
-        else
-          edge->xt= edge->bot.x + edge->dx * (yt - edge->bot.y);
-      }
-    }
-
-    if (scanbeam < sbt_entries)
-    {
-      /* === SCANBEAM INTERIOR PROCESSING ============================== */
-
-      build_intersection_table(&it, aet, dy);
-
-      /* Process each node in the intersection table */
-      for (intersect= it; intersect; intersect= intersect->next)
-      {
-        e0= intersect->ie[0];
-        e1= intersect->ie[1];
-
-        /* Only generate output for contributing intersections */
-        if ((e0->bundle[ABOVE][CLIP] || e0->bundle[ABOVE][SUBJ])
-         && (e1->bundle[ABOVE][CLIP] || e1->bundle[ABOVE][SUBJ]))
+	  }
+	  else
+	  {
+		if (edge->top.y == yt)
+		  edge->xt= edge->top.x;
+		else
+		  edge->xt= edge->bot.x + edge->dx * (yt - edge->bot.y);
+	  }
+	}
+
+	if (scanbeam < sbt_entries)
+	{
+	  /* === SCANBEAM INTERIOR PROCESSING ============================== */
+
+	  build_intersection_table(&it, aet, dy);
+
+	  /* Process each node in the intersection table */
+	  for (intersect= it; intersect; intersect= intersect->next)
+	  {
+		e0= intersect->ie[0];
+		e1= intersect->ie[1];
+
+		/* Only generate output for contributing intersections */
+		if ((e0->bundle[ABOVE][CLIP] || e0->bundle[ABOVE][SUBJ])
+		 && (e1->bundle[ABOVE][CLIP] || e1->bundle[ABOVE][SUBJ]))
 	{
-          p= e0->outp[ABOVE];
-          q= e1->outp[ABOVE];
-          ix= intersect->point.x;
-          iy= intersect->point.y + yb;
-
-          in[CLIP]= ( e0->bundle[ABOVE][CLIP] && !e0->bside[CLIP])
-                 || ( e1->bundle[ABOVE][CLIP] &&  e1->bside[CLIP])
-                 || (!e0->bundle[ABOVE][CLIP] && !e1->bundle[ABOVE][CLIP]
-                     && e0->bside[CLIP] && e1->bside[CLIP]);
-          in[SUBJ]= ( e0->bundle[ABOVE][SUBJ] && !e0->bside[SUBJ])
-                 || ( e1->bundle[ABOVE][SUBJ] &&  e1->bside[SUBJ])
-                 || (!e0->bundle[ABOVE][SUBJ] && !e1->bundle[ABOVE][SUBJ]
-                     && e0->bside[SUBJ] && e1->bside[SUBJ]);
-
-          /* Determine quadrant occupancies */
-          switch (op)
-          {
-          case GPC_DIFF:
-          case GPC_INT:
-            tr= (in[CLIP])
-             && (in[SUBJ]);
-            tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
-             && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
-            br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
-             && (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
-             && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            break;
-          case GPC_XOR:
-            tr= (in[CLIP])
-              ^ (in[SUBJ]);
-            tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
-              ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
-            br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
-              ^ (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
-              ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            break;
-          case GPC_UNION:
-            tr= (in[CLIP])
-             || (in[SUBJ]);
-            tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
-             || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
-            br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
-             || (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
-             || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            break;
-          }
-
-          vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
-
-          switch (vclass)
-          {
-          case EMN:
-            add_local_min(&out_poly, e0, ix, iy);
-            e1->outp[ABOVE]= e0->outp[ABOVE];
-            break;
-          case ERI:
-            if (p)
-            {
-              add_right(p, ix, iy);
-              e1->outp[ABOVE]= p;
-              e0->outp[ABOVE]= NULL;
-            }
-            break;
-          case ELI:
-            if (q)
-            {
-              add_left(q, ix, iy);
-              e0->outp[ABOVE]= q;
-              e1->outp[ABOVE]= NULL;
-            }
-            break;
-          case EMX:
-            if (p && q)
-            {
-              add_left(p, ix, iy);
-              merge_right(p, q, out_poly);
-              e0->outp[ABOVE]= NULL;
-              e1->outp[ABOVE]= NULL;
-            }
-            break;
-          case IMN:
-            add_local_min(&out_poly, e0, ix, iy);
-            e1->outp[ABOVE]= e0->outp[ABOVE];
-            break;
-          case ILI:
-            if (p)
-            {
-              add_left(p, ix, iy);
-              e1->outp[ABOVE]= p;
-              e0->outp[ABOVE]= NULL;
-            }
-            break;
-          case IRI:
-            if (q)
-            {
-              add_right(q, ix, iy);
-              e0->outp[ABOVE]= q;
-              e1->outp[ABOVE]= NULL;
-            }
-            break;
-          case IMX:
-            if (p && q)
-            {
-              add_right(p, ix, iy);
-              merge_left(p, q, out_poly);
-              e0->outp[ABOVE]= NULL;
-              e1->outp[ABOVE]= NULL;
-            }
-            break;
-          case IMM:
-            if (p && q)
-            {
-              add_right(p, ix, iy);
-              merge_left(p, q, out_poly);
-              add_local_min(&out_poly, e0, ix, iy);
-              e1->outp[ABOVE]= e0->outp[ABOVE];
-            }
-            break;
-          case EMM:
-            if (p && q)
-            {
-              add_left(p, ix, iy);
-              merge_right(p, q, out_poly);
-              add_local_min(&out_poly, e0, ix, iy);
-              e1->outp[ABOVE]= e0->outp[ABOVE];
-            }
-            break;
-          default:
-            break;
-          } /* End of switch */
+		  p= e0->outp[ABOVE];
+		  q= e1->outp[ABOVE];
+		  ix= intersect->point.x;
+		  iy= intersect->point.y + yb;
+
+		  in[CLIP]= ( e0->bundle[ABOVE][CLIP] && !e0->bside[CLIP])
+				 || ( e1->bundle[ABOVE][CLIP] &&  e1->bside[CLIP])
+				 || (!e0->bundle[ABOVE][CLIP] && !e1->bundle[ABOVE][CLIP]
+					 && e0->bside[CLIP] && e1->bside[CLIP]);
+		  in[SUBJ]= ( e0->bundle[ABOVE][SUBJ] && !e0->bside[SUBJ])
+				 || ( e1->bundle[ABOVE][SUBJ] &&  e1->bside[SUBJ])
+				 || (!e0->bundle[ABOVE][SUBJ] && !e1->bundle[ABOVE][SUBJ]
+					 && e0->bside[SUBJ] && e1->bside[SUBJ]);
+
+		  /* Determine quadrant occupancies */
+		  switch (op)
+		  {
+		  case GPC_DIFF:
+		  case GPC_INT:
+			tr= (in[CLIP])
+			 && (in[SUBJ]);
+			tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
+			 && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
+			br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 && (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			break;
+		  case GPC_XOR:
+			tr= (in[CLIP])
+			  ^ (in[SUBJ]);
+			tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
+			  ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
+			br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
+			  ^ (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
+			  ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			break;
+		  case GPC_UNION:
+			tr= (in[CLIP])
+			 || (in[SUBJ]);
+			tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
+			 || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
+			br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 || (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			break;
+		  }
+
+		  vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
+
+		  switch (vclass)
+		  {
+		  case EMN:
+			add_local_min(&out_poly, e0, ix, iy);
+			e1->outp[ABOVE]= e0->outp[ABOVE];
+			break;
+		  case ERI:
+			if (p)
+			{
+			  add_right(p, ix, iy);
+			  e1->outp[ABOVE]= p;
+			  e0->outp[ABOVE]= NULL;
+			}
+			break;
+		  case ELI:
+			if (q)
+			{
+			  add_left(q, ix, iy);
+			  e0->outp[ABOVE]= q;
+			  e1->outp[ABOVE]= NULL;
+			}
+			break;
+		  case EMX:
+			if (p && q)
+			{
+			  add_left(p, ix, iy);
+			  merge_right(p, q, out_poly);
+			  e0->outp[ABOVE]= NULL;
+			  e1->outp[ABOVE]= NULL;
+			}
+			break;
+		  case IMN:
+			add_local_min(&out_poly, e0, ix, iy);
+			e1->outp[ABOVE]= e0->outp[ABOVE];
+			break;
+		  case ILI:
+			if (p)
+			{
+			  add_left(p, ix, iy);
+			  e1->outp[ABOVE]= p;
+			  e0->outp[ABOVE]= NULL;
+			}
+			break;
+		  case IRI:
+			if (q)
+			{
+			  add_right(q, ix, iy);
+			  e0->outp[ABOVE]= q;
+			  e1->outp[ABOVE]= NULL;
+			}
+			break;
+		  case IMX:
+			if (p && q)
+			{
+			  add_right(p, ix, iy);
+			  merge_left(p, q, out_poly);
+			  e0->outp[ABOVE]= NULL;
+			  e1->outp[ABOVE]= NULL;
+			}
+			break;
+		  case IMM:
+			if (p && q)
+			{
+			  add_right(p, ix, iy);
+			  merge_left(p, q, out_poly);
+			  add_local_min(&out_poly, e0, ix, iy);
+			  e1->outp[ABOVE]= e0->outp[ABOVE];
+			}
+			break;
+		  case EMM:
+			if (p && q)
+			{
+			  add_left(p, ix, iy);
+			  merge_right(p, q, out_poly);
+			  add_local_min(&out_poly, e0, ix, iy);
+			  e1->outp[ABOVE]= e0->outp[ABOVE];
+			}
+			break;
+		  default:
+			break;
+		  } /* End of switch */
 	} /* End of contributing intersection conditional */
 
-        /* Swap bundle sides in response to edge crossing */
-        if (e0->bundle[ABOVE][CLIP])
+		/* Swap bundle sides in response to edge crossing */
+		if (e0->bundle[ABOVE][CLIP])
 	  e1->bside[CLIP]= !e1->bside[CLIP];
-        if (e1->bundle[ABOVE][CLIP])
+		if (e1->bundle[ABOVE][CLIP])
 	  e0->bside[CLIP]= !e0->bside[CLIP];
-        if (e0->bundle[ABOVE][SUBJ])
+		if (e0->bundle[ABOVE][SUBJ])
 	  e1->bside[SUBJ]= !e1->bside[SUBJ];
-        if (e1->bundle[ABOVE][SUBJ])
+		if (e1->bundle[ABOVE][SUBJ])
 	  e0->bside[SUBJ]= !e0->bside[SUBJ];
 
-        /* Swap e0 and e1 bundles in the AET */
-        prev_edge= e0->prev;
-        next_edge= e1->next;
-        if (next_edge)
-          next_edge->prev= e0;
-
-        if (e0->bstate[ABOVE] == BUNDLE_HEAD)
-        {
-          search= TRUE;
-          while (search)
-          {
-            prev_edge= prev_edge->prev;
-            if (prev_edge)
-            {
-              if (prev_edge->bstate[ABOVE] != BUNDLE_TAIL)
-                search= FALSE;
-            }
-            else
-              search= FALSE;
-          }
-        }
-        if (!prev_edge)
-        {
-          aet->prev= e1;
-          e1->next= aet;
-          aet= e0->next;
-        }
-        else
-        {
-          prev_edge->next->prev= e1;
-          e1->next= prev_edge->next;
-          prev_edge->next= e0->next;
-        }
+		/* Swap e0 and e1 bundles in the AET */
+		prev_edge= e0->prev;
+		next_edge= e1->next;
+		if (next_edge)
+		  next_edge->prev= e0;
+
+		if (e0->bstate[ABOVE] == BUNDLE_HEAD)
+		{
+		  search= TRUE;
+		  while (search)
+		  {
+			prev_edge= prev_edge->prev;
+			if (prev_edge)
+			{
+			  if (prev_edge->bstate[ABOVE] != BUNDLE_TAIL)
+				search= FALSE;
+			}
+			else
+			  search= FALSE;
+		  }
+		}
+		if (!prev_edge)
+		{
+		  aet->prev= e1;
+		  e1->next= aet;
+		  aet= e0->next;
+		}
+		else
+		{
+		  prev_edge->next->prev= e1;
+		  e1->next= prev_edge->next;
+		  prev_edge->next= e0->next;
+		}
 		  if(e0->next == NULL) throw runtime_error("GPC internal error.") ;
 		  if(e1->next == NULL) throw runtime_error("GPC internal error.") ;
-        e0->next->prev= prev_edge;
-        e1->next->prev= e1;
-        e0->next= next_edge;
-      } /* End of IT loop*/
-
-      /* Prepare for next scanbeam */
-      for (edge= aet; edge; edge= next_edge)
-      {
-        next_edge= edge->next;
-        succ_edge= edge->succ;
-
-        if ((edge->top.y == yt) && succ_edge)
-        {
-          /* Replace AET edge by its successor */
-          succ_edge->outp[BELOW]= edge->outp[ABOVE];
-          succ_edge->bstate[BELOW]= edge->bstate[ABOVE];
-          succ_edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
-          succ_edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
-          prev_edge= edge->prev;
-          if (prev_edge)
-            prev_edge->next= succ_edge;
-          else
-            aet= succ_edge;
-          if (next_edge)
-            next_edge->prev= succ_edge;
-          succ_edge->prev= prev_edge;
-          succ_edge->next= next_edge;
-        }
-        else
-        {
-          /* Update this edge */
-          edge->outp[BELOW]= edge->outp[ABOVE];
-          edge->bstate[BELOW]= edge->bstate[ABOVE];
-          edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
-          edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
-          edge->xb= edge->xt;
-	      }
-        edge->outp[ABOVE]= NULL;
-      }
-    }
+		e0->next->prev= prev_edge;
+		e1->next->prev= e1;
+		e0->next= next_edge;
+	  } /* End of IT loop*/
+
+	  /* Prepare for next scanbeam */
+	  for (edge= aet; edge; edge= next_edge)
+	  {
+		next_edge= edge->next;
+		succ_edge= edge->succ;
+
+		if ((edge->top.y == yt) && succ_edge)
+		{
+		  /* Replace AET edge by its successor */
+		  succ_edge->outp[BELOW]= edge->outp[ABOVE];
+		  succ_edge->bstate[BELOW]= edge->bstate[ABOVE];
+		  succ_edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
+		  succ_edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
+		  prev_edge= edge->prev;
+		  if (prev_edge)
+			prev_edge->next= succ_edge;
+		  else
+			aet= succ_edge;
+		  if (next_edge)
+			next_edge->prev= succ_edge;
+		  succ_edge->prev= prev_edge;
+		  succ_edge->next= next_edge;
+		}
+		else
+		{
+		  /* Update this edge */
+		  edge->outp[BELOW]= edge->outp[ABOVE];
+		  edge->bstate[BELOW]= edge->bstate[ABOVE];
+		  edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
+		  edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
+		  edge->xb= edge->xt;
+		  }
+		edge->outp[ABOVE]= NULL;
+	  }
+	}
   } /* === END OF SCANBEAM PROCESSING ================================== */
 
   /* Generate result polygon from out_poly */
@@ -1780,44 +1777,44 @@ void gpc_polygon_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
   result->num_contours= count_contours(out_poly);
   if (result->num_contours > 0)
   {
-    MALLOC(result->hole, result->num_contours
-           * sizeof(int), "hole flag table creation", int);
-    MALLOC(result->contour, result->num_contours
-           * sizeof(gpc_vertex_list), "contour creation", gpc_vertex_list);
-
-    c= 0;
-    for (poly= out_poly; poly; poly= npoly)
-    {
-      npoly= poly->next;
-      if (poly->active)
-      {
-        result->hole[c]= poly->proxy->hole;
-        result->contour[c].num_vertices= poly->active;
-        MALLOC(result->contour[c].vertex,
-          result->contour[c].num_vertices * sizeof(gpc_vertex),
-          "vertex creation", gpc_vertex);
-
-        v= result->contour[c].num_vertices - 1;
-        for (vtx= poly->proxy->v[LEFT]; vtx; vtx= nv)
-        {
-          nv= vtx->next;
-          result->contour[c].vertex[v].x= vtx->x;
-          result->contour[c].vertex[v].y= vtx->y;
-          FREE(vtx);
-          v--;
-        }
-        c++;
-      }
-      FREE(poly);
-    }
+	MALLOC(result->hole, result->num_contours
+		   * sizeof(int), "hole flag table creation", int);
+	MALLOC(result->contour, result->num_contours
+		   * sizeof(gpc_vertex_list), "contour creation", gpc_vertex_list);
+
+	c= 0;
+	for (poly= out_poly; poly; poly= npoly)
+	{
+	  npoly= poly->next;
+	  if (poly->active)
+	  {
+		result->hole[c]= poly->proxy->hole;
+		result->contour[c].num_vertices= poly->active;
+		MALLOC(result->contour[c].vertex,
+		  result->contour[c].num_vertices * sizeof(gpc_vertex),
+		  "vertex creation", gpc_vertex);
+
+		v= result->contour[c].num_vertices - 1;
+		for (vtx= poly->proxy->v[LEFT]; vtx; vtx= nv)
+		{
+		  nv= vtx->next;
+		  result->contour[c].vertex[v].x= vtx->x;
+		  result->contour[c].vertex[v].y= vtx->y;
+		  FREE(vtx);
+		  v--;
+		}
+		c++;
+	  }
+	  FREE(poly);
+	}
   }
   else
   {
-    for (poly= out_poly; poly; poly= npoly)
-    {
-      npoly= poly->next;
-      FREE(poly);
-    }
+	for (poly= out_poly; poly; poly= npoly)
+	{
+	  npoly= poly->next;
+	  FREE(poly);
+	}
   }
 
   /* Tidy up */
@@ -1831,10 +1828,8 @@ void gpc_polygon_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
 
 void gpc_free_tristrip(gpc_tristrip *t)
 {
-  int s;
-
-  for (s= 0; s < t->num_strips; s++)
-    FREE(t->strip[s].vertex);
+  for (size_t s= 0; s < t->num_strips; s++)
+	FREE(t->strip[s].vertex);
   FREE(t->strip);
   t->num_strips= 0;
 }
@@ -1852,7 +1847,7 @@ void gpc_polygon_to_tristrip(gpc_polygon *s, gpc_tristrip *t)
 
 
 void gpc_tristrip_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
-                       gpc_tristrip *result)
+					   gpc_tristrip *result)
 {
   sb_tree       *sbtree= NULL;
   it_node       *it= NULL, *intersect;
@@ -1873,31 +1868,31 @@ void gpc_tristrip_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
    || ((subj->num_contours == 0) && ((op == GPC_INT) || (op == GPC_DIFF)))
    || ((clip->num_contours == 0) &&  (op == GPC_INT)))
   {
-    result->num_strips= 0;
-    result->strip= NULL;
-    return;
+	result->num_strips= 0;
+	result->strip= NULL;
+	return;
   }
 
   /* Identify potentialy contributing contours */
   if (((op == GPC_INT) || (op == GPC_DIFF))
    && (subj->num_contours > 0) && (clip->num_contours > 0))
-    minimax_test(subj, clip, op);
+	minimax_test(subj, clip, op);
 
   /* Build LMT */
   if (subj->num_contours > 0)
-    s_heap= build_lmt(&lmt, &sbtree, &sbt_entries, subj, SUBJ, op);
+	s_heap= build_lmt(&lmt, &sbtree, &sbt_entries, subj, SUBJ, op);
   if (clip->num_contours > 0)
-    c_heap= build_lmt(&lmt, &sbtree, &sbt_entries, clip, CLIP, op);
+	c_heap= build_lmt(&lmt, &sbtree, &sbt_entries, clip, CLIP, op);
 
   /* Return a NULL result if no contours contribute */
   if (lmt == NULL)
   {
-    result->num_strips= 0;
-    result->strip= NULL;
-    reset_lmt(&lmt);
-    FREE(s_heap);
-    FREE(c_heap);
-    return;
+	result->num_strips= 0;
+	result->strip= NULL;
+	reset_lmt(&lmt);
+	FREE(s_heap);
+	FREE(c_heap);
+	return;
   }
 
   /* Build scanbeam table from scanbeam tree */
@@ -1908,559 +1903,559 @@ void gpc_tristrip_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
 
   /* Invert clip polygon for difference operation */
   if (op == GPC_DIFF)
-    parity[CLIP]= RIGHT;
+	parity[CLIP]= RIGHT;
 
   local_min= lmt;
 
   /* Process each scanbeam */
   while (scanbeam < sbt_entries)
   {
-    /* Set yb and yt to the bottom and top of the scanbeam */
-    yb= sbt[scanbeam++];
-    if (scanbeam < sbt_entries)
-    {
-      yt= sbt[scanbeam];
-      dy= yt - yb;
-    }
-
-    /* === SCANBEAM BOUNDARY PROCESSING ================================ */
-
-    /* If LMT node corresponding to yb exists */
-    if (local_min)
-    {
-      if (local_min->y == yb)
-      {
-        /* Add edges starting at this local minimum to the AET */
-        for (edge= local_min->first_bound; edge; edge= edge->next_bound)
-          add_edge_to_aet(&aet, edge, NULL);
-
-        local_min= local_min->next;
-      }
-    }
-
-    /* Set dummy previous x value */
-    px= -DBL_MAX;
-
-    /* Create bundles within AET */
-    e0= aet;
-    e1= aet;
-
-    /* Set up bundle fields of first edge */
-    aet->bundle[ABOVE][ aet->type]= (aet->top.y != yb);
-    aet->bundle[ABOVE][!aet->type]= FALSE;
-    aet->bstate[ABOVE]= UNBUNDLED;
-
-    for (next_edge= aet->next; next_edge; next_edge= next_edge->next)
-    {
-      /* Set up bundle fields of next edge */
-      next_edge->bundle[ABOVE][ next_edge->type]= (next_edge->top.y != yb);
-      next_edge->bundle[ABOVE][!next_edge->type]= FALSE;
-      next_edge->bstate[ABOVE]= UNBUNDLED;
-
-      /* Bundle edges above the scanbeam boundary if they coincide */
-      if (next_edge->bundle[ABOVE][next_edge->type])
-      {
-        if (EQ(e0->xb, next_edge->xb) && EQ(e0->dx, next_edge->dx)
+	/* Set yb and yt to the bottom and top of the scanbeam */
+	yb= sbt[scanbeam++];
+	if (scanbeam < sbt_entries)
+	{
+	  yt= sbt[scanbeam];
+	  dy= yt - yb;
+	}
+
+	/* === SCANBEAM BOUNDARY PROCESSING ================================ */
+
+	/* If LMT node corresponding to yb exists */
+	if (local_min)
+	{
+	  if (local_min->y == yb)
+	  {
+		/* Add edges starting at this local minimum to the AET */
+		for (edge= local_min->first_bound; edge; edge= edge->next_bound)
+		  add_edge_to_aet(&aet, edge, NULL);
+
+		local_min= local_min->next;
+	  }
+	}
+
+	/* Set dummy previous x value */
+	px= -DBL_MAX;
+
+	/* Create bundles within AET */
+	e0= aet;
+	e1= aet;
+
+	/* Set up bundle fields of first edge */
+	aet->bundle[ABOVE][ aet->type]= (aet->top.y != yb);
+	aet->bundle[ABOVE][!aet->type]= FALSE;
+	aet->bstate[ABOVE]= UNBUNDLED;
+
+	for (next_edge= aet->next; next_edge; next_edge= next_edge->next)
+	{
+	  /* Set up bundle fields of next edge */
+	  next_edge->bundle[ABOVE][ next_edge->type]= (next_edge->top.y != yb);
+	  next_edge->bundle[ABOVE][!next_edge->type]= FALSE;
+	  next_edge->bstate[ABOVE]= UNBUNDLED;
+
+	  /* Bundle edges above the scanbeam boundary if they coincide */
+	  if (next_edge->bundle[ABOVE][next_edge->type])
+	  {
+		if (EQ(e0->xb, next_edge->xb) && EQ(e0->dx, next_edge->dx)
 	 && (e0->top.y != yb))
-        {
-          next_edge->bundle[ABOVE][ next_edge->type]^=
-            e0->bundle[ABOVE][ next_edge->type];
-          next_edge->bundle[ABOVE][!next_edge->type]=
-            e0->bundle[ABOVE][!next_edge->type];
-          next_edge->bstate[ABOVE]= BUNDLE_HEAD;
-          e0->bundle[ABOVE][CLIP]= FALSE;
-          e0->bundle[ABOVE][SUBJ]= FALSE;
-          e0->bstate[ABOVE]= BUNDLE_TAIL;
-        }
-        e0= next_edge;
-      }
-    }
-
-    horiz[CLIP]= NH;
-    horiz[SUBJ]= NH;
-
-    /* Process each edge at this scanbeam boundary */
-    for (edge= aet; edge; edge= edge->next)
-    {
-      exists[CLIP]= edge->bundle[ABOVE][CLIP] +
-                   (edge->bundle[BELOW][CLIP] << 1);
-      exists[SUBJ]= edge->bundle[ABOVE][SUBJ] +
-                   (edge->bundle[BELOW][SUBJ] << 1);
-
-      if (exists[CLIP] || exists[SUBJ])
-      {
-        /* Set bundle side */
-        edge->bside[CLIP]= parity[CLIP];
-        edge->bside[SUBJ]= parity[SUBJ];
-
-        /* Determine contributing status and quadrant occupancies */
-        switch (op)
-        {
-        case GPC_DIFF:
-        case GPC_INT:
-          contributing= (exists[CLIP] && (parity[SUBJ] || horiz[SUBJ]))
-                     || (exists[SUBJ] && (parity[CLIP] || horiz[CLIP]))
-                     || (exists[CLIP] && exists[SUBJ]
-                     && (parity[CLIP] == parity[SUBJ]));
-          br= (parity[CLIP])
-           && (parity[SUBJ]);
-          bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
-           && (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
-          tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
-           && (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
-          tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
-           && (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
-          break;
-        case GPC_XOR:
-          contributing= exists[CLIP] || exists[SUBJ];
-          br= (parity[CLIP])
-            ^ (parity[SUBJ]);
-          bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
-            ^ (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
-          tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
-            ^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
-          tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
-            ^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
-          break;
-        case GPC_UNION:
-          contributing= (exists[CLIP] && (!parity[SUBJ] || horiz[SUBJ]))
-                     || (exists[SUBJ] && (!parity[CLIP] || horiz[CLIP]))
-                     || (exists[CLIP] && exists[SUBJ]
-                     && (parity[CLIP] == parity[SUBJ]));
-          br= (parity[CLIP])
-           || (parity[SUBJ]);
-          bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
-           || (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
-          tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
-           || (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
-          tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
-           || (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
-          break;
-        }
-
-        /* Update parity */
-        parity[CLIP]^= edge->bundle[ABOVE][CLIP];
-        parity[SUBJ]^= edge->bundle[ABOVE][SUBJ];
-
-        /* Update horizontal state */
-        if (exists[CLIP])
-          horiz[CLIP]=
-            next_h_state[horiz[CLIP]]
-                        [((exists[CLIP] - 1) << 1) + parity[CLIP]];
-        if (exists[SUBJ])
-          horiz[SUBJ]=
-            next_h_state[horiz[SUBJ]]
-                        [((exists[SUBJ] - 1) << 1) + parity[SUBJ]];
-
-        vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
-
-        if (contributing)
-        {
-          xb= edge->xb;
-
-          switch (vclass)
-          {
-          case EMN:
-            new_tristrip(&tlist, edge, xb, yb);
-            cf= edge;
-            break;
-          case ERI:
-            edge->outp[ABOVE]= cf->outp[ABOVE];
-            if (xb != cf->xb)
-              VERTEX(edge, ABOVE, RIGHT, xb, yb);
-            cf= NULL;
-            break;
-          case ELI:
-            VERTEX(edge, BELOW, LEFT, xb, yb);
-            edge->outp[ABOVE]= NULL;
-            cf= edge;
-            break;
-          case EMX:
-            if (xb != cf->xb)
-              VERTEX(edge, BELOW, RIGHT, xb, yb);
-            edge->outp[ABOVE]= NULL;
-            cf= NULL;
-            break;
-          case IMN:
-            if (cft == LED)
-	    {
-              if (cf->bot.y != yb)
-                VERTEX(cf, BELOW, LEFT, cf->xb, yb);
-              new_tristrip(&tlist, cf, cf->xb, yb);
-	    }
-            edge->outp[ABOVE]= cf->outp[ABOVE];
-            VERTEX(edge, ABOVE, RIGHT, xb, yb);
-            break;
-          case ILI:
-            new_tristrip(&tlist, edge, xb, yb);
-            cf= edge;
-            cft= ILI;
-            break;
-          case IRI:
-            if (cft == LED)
-	    {
-              if (cf->bot.y != yb)
-                VERTEX(cf, BELOW, LEFT, cf->xb, yb);
-              new_tristrip(&tlist, cf, cf->xb, yb);
-	    }
-            VERTEX(edge, BELOW, RIGHT, xb, yb);
-            edge->outp[ABOVE]= NULL;
-            break;
-          case IMX:
-            VERTEX(edge, BELOW, LEFT, xb, yb);
-            edge->outp[ABOVE]= NULL;
-            cft= IMX;
-            break;
+		{
+		  next_edge->bundle[ABOVE][ next_edge->type]^=
+			e0->bundle[ABOVE][ next_edge->type];
+		  next_edge->bundle[ABOVE][!next_edge->type]=
+			e0->bundle[ABOVE][!next_edge->type];
+		  next_edge->bstate[ABOVE]= BUNDLE_HEAD;
+		  e0->bundle[ABOVE][CLIP]= FALSE;
+		  e0->bundle[ABOVE][SUBJ]= FALSE;
+		  e0->bstate[ABOVE]= BUNDLE_TAIL;
+		}
+		e0= next_edge;
+	  }
+	}
+
+	horiz[CLIP]= NH;
+	horiz[SUBJ]= NH;
+
+	/* Process each edge at this scanbeam boundary */
+	for (edge= aet; edge; edge= edge->next)
+	{
+	  exists[CLIP]= edge->bundle[ABOVE][CLIP] +
+				   (edge->bundle[BELOW][CLIP] << 1);
+	  exists[SUBJ]= edge->bundle[ABOVE][SUBJ] +
+				   (edge->bundle[BELOW][SUBJ] << 1);
+
+	  if (exists[CLIP] || exists[SUBJ])
+	  {
+		/* Set bundle side */
+		edge->bside[CLIP]= parity[CLIP];
+		edge->bside[SUBJ]= parity[SUBJ];
+
+		/* Determine contributing status and quadrant occupancies */
+		switch (op)
+		{
+		case GPC_DIFF:
+		case GPC_INT:
+		  contributing= (exists[CLIP] && (parity[SUBJ] || horiz[SUBJ]))
+					 || (exists[SUBJ] && (parity[CLIP] || horiz[CLIP]))
+					 || (exists[CLIP] && exists[SUBJ]
+					 && (parity[CLIP] == parity[SUBJ]));
+		  br= (parity[CLIP])
+		   && (parity[SUBJ]);
+		  bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
+		   && (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
+		  tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
+		   && (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
+		  tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
+		   && (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
+		  break;
+		case GPC_XOR:
+		  contributing= exists[CLIP] || exists[SUBJ];
+		  br= (parity[CLIP])
+			^ (parity[SUBJ]);
+		  bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
+			^ (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
+		  tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
+			^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
+		  tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
+			^ (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
+		  break;
+		case GPC_UNION:
+		  contributing= (exists[CLIP] && (!parity[SUBJ] || horiz[SUBJ]))
+					 || (exists[SUBJ] && (!parity[CLIP] || horiz[CLIP]))
+					 || (exists[CLIP] && exists[SUBJ]
+					 && (parity[CLIP] == parity[SUBJ]));
+		  br= (parity[CLIP])
+		   || (parity[SUBJ]);
+		  bl= (parity[CLIP] ^ edge->bundle[ABOVE][CLIP])
+		   || (parity[SUBJ] ^ edge->bundle[ABOVE][SUBJ]);
+		  tr= (parity[CLIP] ^ (horiz[CLIP]!=NH))
+		   || (parity[SUBJ] ^ (horiz[SUBJ]!=NH));
+		  tl= (parity[CLIP] ^ (horiz[CLIP]!=NH) ^ edge->bundle[BELOW][CLIP])
+		   || (parity[SUBJ] ^ (horiz[SUBJ]!=NH) ^ edge->bundle[BELOW][SUBJ]);
+		  break;
+		}
+
+		/* Update parity */
+		parity[CLIP]^= edge->bundle[ABOVE][CLIP];
+		parity[SUBJ]^= edge->bundle[ABOVE][SUBJ];
+
+		/* Update horizontal state */
+		if (exists[CLIP])
+		  horiz[CLIP]=
+			next_h_state[horiz[CLIP]]
+						[((exists[CLIP] - 1) << 1) + parity[CLIP]];
+		if (exists[SUBJ])
+		  horiz[SUBJ]=
+			next_h_state[horiz[SUBJ]]
+						[((exists[SUBJ] - 1) << 1) + parity[SUBJ]];
+
+		vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
+
+		if (contributing)
+		{
+		  xb= edge->xb;
+
+		  switch (vclass)
+		  {
+		  case EMN:
+			new_tristrip(&tlist, edge, xb, yb);
+			cf= edge;
+			break;
+		  case ERI:
+			edge->outp[ABOVE]= cf->outp[ABOVE];
+			if (xb != cf->xb)
+			  VERTEX(edge, ABOVE, RIGHT, xb, yb);
+			cf= NULL;
+			break;
+		  case ELI:
+			VERTEX(edge, BELOW, LEFT, xb, yb);
+			edge->outp[ABOVE]= NULL;
+			cf= edge;
+			break;
+		  case EMX:
+			if (xb != cf->xb)
+			  VERTEX(edge, BELOW, RIGHT, xb, yb);
+			edge->outp[ABOVE]= NULL;
+			cf= NULL;
+			break;
+		  case IMN:
+			if (cft == LED)
+		{
+			  if (cf->bot.y != yb)
+				VERTEX(cf, BELOW, LEFT, cf->xb, yb);
+			  new_tristrip(&tlist, cf, cf->xb, yb);
+		}
+			edge->outp[ABOVE]= cf->outp[ABOVE];
+			VERTEX(edge, ABOVE, RIGHT, xb, yb);
+			break;
+		  case ILI:
+			new_tristrip(&tlist, edge, xb, yb);
+			cf= edge;
+			cft= ILI;
+			break;
+		  case IRI:
+			if (cft == LED)
+		{
+			  if (cf->bot.y != yb)
+				VERTEX(cf, BELOW, LEFT, cf->xb, yb);
+			  new_tristrip(&tlist, cf, cf->xb, yb);
+		}
+			VERTEX(edge, BELOW, RIGHT, xb, yb);
+			edge->outp[ABOVE]= NULL;
+			break;
+		  case IMX:
+			VERTEX(edge, BELOW, LEFT, xb, yb);
+			edge->outp[ABOVE]= NULL;
+			cft= IMX;
+			break;
 	  case IMM:
-            VERTEX(edge, BELOW, LEFT, xb, yb);
-            edge->outp[ABOVE]= cf->outp[ABOVE];
-            if (xb != cf->xb)
-              VERTEX(cf, ABOVE, RIGHT, xb, yb);
-            cf= edge;
-            break;
-          case EMM:
-            VERTEX(edge, BELOW, RIGHT, xb, yb);
-            edge->outp[ABOVE]= NULL;
-            new_tristrip(&tlist, edge, xb, yb);
-            cf= edge;
-            break;
-          case LED:
-            if (edge->bot.y == yb)
-              VERTEX(edge, BELOW, LEFT, xb, yb);
-            edge->outp[ABOVE]= edge->outp[BELOW];
-            cf= edge;
-            cft= LED;
-            break;
-          case RED:
-            edge->outp[ABOVE]= cf->outp[ABOVE];
-            if (cft == LED)
-	    {
-              if (cf->bot.y == yb)
-	      {
-                VERTEX(edge, BELOW, RIGHT, xb, yb);
-	      }
-              else
-	      {
-                if (edge->bot.y == yb)
+			VERTEX(edge, BELOW, LEFT, xb, yb);
+			edge->outp[ABOVE]= cf->outp[ABOVE];
+			if (xb != cf->xb)
+			  VERTEX(cf, ABOVE, RIGHT, xb, yb);
+			cf= edge;
+			break;
+		  case EMM:
+			VERTEX(edge, BELOW, RIGHT, xb, yb);
+			edge->outp[ABOVE]= NULL;
+			new_tristrip(&tlist, edge, xb, yb);
+			cf= edge;
+			break;
+		  case LED:
+			if (edge->bot.y == yb)
+			  VERTEX(edge, BELOW, LEFT, xb, yb);
+			edge->outp[ABOVE]= edge->outp[BELOW];
+			cf= edge;
+			cft= LED;
+			break;
+		  case RED:
+			edge->outp[ABOVE]= cf->outp[ABOVE];
+			if (cft == LED)
+		{
+			  if (cf->bot.y == yb)
+		  {
+				VERTEX(edge, BELOW, RIGHT, xb, yb);
+		  }
+			  else
+		  {
+				if (edge->bot.y == yb)
+		{
+				  VERTEX(cf, BELOW, LEFT, cf->xb, yb);
+				  VERTEX(edge, BELOW, RIGHT, xb, yb);
+		}
+		  }
+		}
+			else
 		{
-                  VERTEX(cf, BELOW, LEFT, cf->xb, yb);
-                  VERTEX(edge, BELOW, RIGHT, xb, yb);
+			  VERTEX(edge, BELOW, RIGHT, xb, yb);
+			  VERTEX(edge, ABOVE, RIGHT, xb, yb);
 		}
-	      }
-	    }
-            else
-	    {
-              VERTEX(edge, BELOW, RIGHT, xb, yb);
-              VERTEX(edge, ABOVE, RIGHT, xb, yb);
-	    }
-            cf= NULL;
-            break;
-          default:
-            break;
-          } /* End of switch */
-        } /* End of contributing conditional */
-      } /* End of edge exists conditional */
-    } /* End of AET loop */
-
-    /* Delete terminating edges from the AET, otherwise compute xt */
-    for (edge= aet; edge; edge= edge->next)
-    {
-      if (edge->top.y == yb)
-      {
-        prev_edge= edge->prev;
-        next_edge= edge->next;
-        if (prev_edge)
-          prev_edge->next= next_edge;
-        else
-          aet= next_edge;
-        if (next_edge)
-          next_edge->prev= prev_edge;
-
-        /* Copy bundle head state to the adjacent tail edge if required */
-        if ((edge->bstate[BELOW] == BUNDLE_HEAD) && prev_edge)
+			cf= NULL;
+			break;
+		  default:
+			break;
+		  } /* End of switch */
+		} /* End of contributing conditional */
+	  } /* End of edge exists conditional */
+	} /* End of AET loop */
+
+	/* Delete terminating edges from the AET, otherwise compute xt */
+	for (edge= aet; edge; edge= edge->next)
+	{
+	  if (edge->top.y == yb)
+	  {
+		prev_edge= edge->prev;
+		next_edge= edge->next;
+		if (prev_edge)
+		  prev_edge->next= next_edge;
+		else
+		  aet= next_edge;
+		if (next_edge)
+		  next_edge->prev= prev_edge;
+
+		/* Copy bundle head state to the adjacent tail edge if required */
+		if ((edge->bstate[BELOW] == BUNDLE_HEAD) && prev_edge)
 	{
-          if (prev_edge->bstate[BELOW] == BUNDLE_TAIL)
-          {
-            prev_edge->outp[BELOW]= edge->outp[BELOW];
-            prev_edge->bstate[BELOW]= UNBUNDLED;
-            if (prev_edge->prev)
-              if (prev_edge->prev->bstate[BELOW] == BUNDLE_TAIL)
-                prev_edge->bstate[BELOW]= BUNDLE_HEAD;
+		  if (prev_edge->bstate[BELOW] == BUNDLE_TAIL)
+		  {
+			prev_edge->outp[BELOW]= edge->outp[BELOW];
+			prev_edge->bstate[BELOW]= UNBUNDLED;
+			if (prev_edge->prev)
+			  if (prev_edge->prev->bstate[BELOW] == BUNDLE_TAIL)
+				prev_edge->bstate[BELOW]= BUNDLE_HEAD;
+	  }
+	}
+	  }
+	  else
+	  {
+		if (edge->top.y == yt)
+		  edge->xt= edge->top.x;
+		else
+		  edge->xt= edge->bot.x + edge->dx * (yt - edge->bot.y);
 	  }
 	}
-      }
-      else
-      {
-        if (edge->top.y == yt)
-          edge->xt= edge->top.x;
-        else
-          edge->xt= edge->bot.x + edge->dx * (yt - edge->bot.y);
-      }
-    }
-
-    if (scanbeam < sbt_entries)
-    {
-      /* === SCANBEAM INTERIOR PROCESSING ============================== */
-
-      build_intersection_table(&it, aet, dy);
-
-      /* Process each node in the intersection table */
-      for (intersect= it; intersect; intersect= intersect->next)
-      {
-        e0= intersect->ie[0];
-        e1= intersect->ie[1];
-
-        /* Only generate output for contributing intersections */
-        if ((e0->bundle[ABOVE][CLIP] || e0->bundle[ABOVE][SUBJ])
-         && (e1->bundle[ABOVE][CLIP] || e1->bundle[ABOVE][SUBJ]))
+
+	if (scanbeam < sbt_entries)
+	{
+	  /* === SCANBEAM INTERIOR PROCESSING ============================== */
+
+	  build_intersection_table(&it, aet, dy);
+
+	  /* Process each node in the intersection table */
+	  for (intersect= it; intersect; intersect= intersect->next)
+	  {
+		e0= intersect->ie[0];
+		e1= intersect->ie[1];
+
+		/* Only generate output for contributing intersections */
+		if ((e0->bundle[ABOVE][CLIP] || e0->bundle[ABOVE][SUBJ])
+		 && (e1->bundle[ABOVE][CLIP] || e1->bundle[ABOVE][SUBJ]))
 	{
-          p= e0->outp[ABOVE];
-          q= e1->outp[ABOVE];
-          ix= intersect->point.x;
-          iy= intersect->point.y + yb;
-
-          in[CLIP]= ( e0->bundle[ABOVE][CLIP] && !e0->bside[CLIP])
-                 || ( e1->bundle[ABOVE][CLIP] &&  e1->bside[CLIP])
-                 || (!e0->bundle[ABOVE][CLIP] && !e1->bundle[ABOVE][CLIP]
-                     && e0->bside[CLIP] && e1->bside[CLIP]);
-          in[SUBJ]= ( e0->bundle[ABOVE][SUBJ] && !e0->bside[SUBJ])
-                 || ( e1->bundle[ABOVE][SUBJ] &&  e1->bside[SUBJ])
-                 || (!e0->bundle[ABOVE][SUBJ] && !e1->bundle[ABOVE][SUBJ]
-                     && e0->bside[SUBJ] && e1->bside[SUBJ]);
-
-          /* Determine quadrant occupancies */
-          switch (op)
-          {
-          case GPC_DIFF:
-          case GPC_INT:
-            tr= (in[CLIP])
-             && (in[SUBJ]);
-            tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
-             && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
-            br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
-             && (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
-             && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            break;
-          case GPC_XOR:
-            tr= (in[CLIP])
-              ^ (in[SUBJ]);
-            tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
-              ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
-            br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
-              ^ (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
-              ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            break;
-          case GPC_UNION:
-            tr= (in[CLIP])
-             || (in[SUBJ]);
-            tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
-             || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
-            br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
-             || (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
-             || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
-            break;
-          }
-
-          vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
-
-          switch (vclass)
-          {
-          case EMN:
-            new_tristrip(&tlist, e1, ix, iy);
-            e0->outp[ABOVE]= e1->outp[ABOVE];
-            break;
-          case ERI:
-            if (p)
-            {
-              P_EDGE(prev_edge, e0, ABOVE, px, iy);
-              VERTEX(prev_edge, ABOVE, LEFT, px, iy);
-              VERTEX(e0, ABOVE, RIGHT, ix, iy);
-              e1->outp[ABOVE]= e0->outp[ABOVE];
-              e0->outp[ABOVE]= NULL;
-            }
-            break;
-          case ELI:
-            if (q)
-            {
-              N_EDGE(next_edge, e1, ABOVE, nx, iy);
-              VERTEX(e1, ABOVE, LEFT, ix, iy);
-              VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-              e0->outp[ABOVE]= e1->outp[ABOVE];
-              e1->outp[ABOVE]= NULL;
-            }
-            break;
-          case EMX:
-            if (p && q)
-            {
-              VERTEX(e0, ABOVE, LEFT, ix, iy);
-              e0->outp[ABOVE]= NULL;
-              e1->outp[ABOVE]= NULL;
-            }
-            break;
-          case IMN:
-            P_EDGE(prev_edge, e0, ABOVE, px, iy);
-            VERTEX(prev_edge, ABOVE, LEFT, px, iy);
-            N_EDGE(next_edge, e1, ABOVE, nx, iy);
-            VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-            new_tristrip(&tlist, prev_edge, px, iy);
-            e1->outp[ABOVE]= prev_edge->outp[ABOVE];
-            VERTEX(e1, ABOVE, RIGHT, ix, iy);
-            new_tristrip(&tlist, e0, ix, iy);
-            next_edge->outp[ABOVE]= e0->outp[ABOVE];
-            VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-            break;
-          case ILI:
-            if (p)
-            {
-              VERTEX(e0, ABOVE, LEFT, ix, iy);
-              N_EDGE(next_edge, e1, ABOVE, nx, iy);
-              VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-              e1->outp[ABOVE]= e0->outp[ABOVE];
-              e0->outp[ABOVE]= NULL;
-            }
-            break;
-          case IRI:
-            if (q)
-            {
-              VERTEX(e1, ABOVE, RIGHT, ix, iy);
-              P_EDGE(prev_edge, e0, ABOVE, px, iy);
-              VERTEX(prev_edge, ABOVE, LEFT, px, iy);
-              e0->outp[ABOVE]= e1->outp[ABOVE];
-              e1->outp[ABOVE]= NULL;
-            }
-            break;
-          case IMX:
-            if (p && q)
-            {
-              VERTEX(e0, ABOVE, RIGHT, ix, iy);
-              VERTEX(e1, ABOVE, LEFT, ix, iy);
-              e0->outp[ABOVE]= NULL;
-              e1->outp[ABOVE]= NULL;
-              P_EDGE(prev_edge, e0, ABOVE, px, iy);
-              VERTEX(prev_edge, ABOVE, LEFT, px, iy);
-              new_tristrip(&tlist, prev_edge, px, iy);
-              N_EDGE(next_edge, e1, ABOVE, nx, iy);
-              VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-              next_edge->outp[ABOVE]= prev_edge->outp[ABOVE];
-              VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-            }
-            break;
-          case IMM:
-            if (p && q)
-            {
-              VERTEX(e0, ABOVE, RIGHT, ix, iy);
-              VERTEX(e1, ABOVE, LEFT, ix, iy);
-              P_EDGE(prev_edge, e0, ABOVE, px, iy);
-              VERTEX(prev_edge, ABOVE, LEFT, px, iy);
-              new_tristrip(&tlist, prev_edge, px, iy);
-              N_EDGE(next_edge, e1, ABOVE, nx, iy);
-              VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-              e1->outp[ABOVE]= prev_edge->outp[ABOVE];
-              VERTEX(e1, ABOVE, RIGHT, ix, iy);
-              new_tristrip(&tlist, e0, ix, iy);
-              next_edge->outp[ABOVE]= e0->outp[ABOVE];
-              VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
-            }
-            break;
-          case EMM:
-            if (p && q)
-            {
-              VERTEX(e0, ABOVE, LEFT, ix, iy);
-              new_tristrip(&tlist, e1, ix, iy);
-              e0->outp[ABOVE]= e1->outp[ABOVE];
-            }
-            break;
-          default:
-            break;
-          } /* End of switch */
+		  p= e0->outp[ABOVE];
+		  q= e1->outp[ABOVE];
+		  ix= intersect->point.x;
+		  iy= intersect->point.y + yb;
+
+		  in[CLIP]= ( e0->bundle[ABOVE][CLIP] && !e0->bside[CLIP])
+				 || ( e1->bundle[ABOVE][CLIP] &&  e1->bside[CLIP])
+				 || (!e0->bundle[ABOVE][CLIP] && !e1->bundle[ABOVE][CLIP]
+					 && e0->bside[CLIP] && e1->bside[CLIP]);
+		  in[SUBJ]= ( e0->bundle[ABOVE][SUBJ] && !e0->bside[SUBJ])
+				 || ( e1->bundle[ABOVE][SUBJ] &&  e1->bside[SUBJ])
+				 || (!e0->bundle[ABOVE][SUBJ] && !e1->bundle[ABOVE][SUBJ]
+					 && e0->bside[SUBJ] && e1->bside[SUBJ]);
+
+		  /* Determine quadrant occupancies */
+		  switch (op)
+		  {
+		  case GPC_DIFF:
+		  case GPC_INT:
+			tr= (in[CLIP])
+			 && (in[SUBJ]);
+			tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
+			 && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
+			br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 && (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 && (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			break;
+		  case GPC_XOR:
+			tr= (in[CLIP])
+			  ^ (in[SUBJ]);
+			tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
+			  ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
+			br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
+			  ^ (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
+			  ^ (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			break;
+		  case GPC_UNION:
+			tr= (in[CLIP])
+			 || (in[SUBJ]);
+			tl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP])
+			 || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ]);
+			br= (in[CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 || (in[SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			bl= (in[CLIP] ^ e1->bundle[ABOVE][CLIP] ^ e0->bundle[ABOVE][CLIP])
+			 || (in[SUBJ] ^ e1->bundle[ABOVE][SUBJ] ^ e0->bundle[ABOVE][SUBJ]);
+			break;
+		  }
+
+		  vclass= tr + (tl << 1) + (br << 2) + (bl << 3);
+
+		  switch (vclass)
+		  {
+		  case EMN:
+			new_tristrip(&tlist, e1, ix, iy);
+			e0->outp[ABOVE]= e1->outp[ABOVE];
+			break;
+		  case ERI:
+			if (p)
+			{
+			  P_EDGE(prev_edge, e0, ABOVE, px, iy);
+			  VERTEX(prev_edge, ABOVE, LEFT, px, iy);
+			  VERTEX(e0, ABOVE, RIGHT, ix, iy);
+			  e1->outp[ABOVE]= e0->outp[ABOVE];
+			  e0->outp[ABOVE]= NULL;
+			}
+			break;
+		  case ELI:
+			if (q)
+			{
+			  N_EDGE(next_edge, e1, ABOVE, nx, iy);
+			  VERTEX(e1, ABOVE, LEFT, ix, iy);
+			  VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			  e0->outp[ABOVE]= e1->outp[ABOVE];
+			  e1->outp[ABOVE]= NULL;
+			}
+			break;
+		  case EMX:
+			if (p && q)
+			{
+			  VERTEX(e0, ABOVE, LEFT, ix, iy);
+			  e0->outp[ABOVE]= NULL;
+			  e1->outp[ABOVE]= NULL;
+			}
+			break;
+		  case IMN:
+			P_EDGE(prev_edge, e0, ABOVE, px, iy);
+			VERTEX(prev_edge, ABOVE, LEFT, px, iy);
+			N_EDGE(next_edge, e1, ABOVE, nx, iy);
+			VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			new_tristrip(&tlist, prev_edge, px, iy);
+			e1->outp[ABOVE]= prev_edge->outp[ABOVE];
+			VERTEX(e1, ABOVE, RIGHT, ix, iy);
+			new_tristrip(&tlist, e0, ix, iy);
+			next_edge->outp[ABOVE]= e0->outp[ABOVE];
+			VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			break;
+		  case ILI:
+			if (p)
+			{
+			  VERTEX(e0, ABOVE, LEFT, ix, iy);
+			  N_EDGE(next_edge, e1, ABOVE, nx, iy);
+			  VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			  e1->outp[ABOVE]= e0->outp[ABOVE];
+			  e0->outp[ABOVE]= NULL;
+			}
+			break;
+		  case IRI:
+			if (q)
+			{
+			  VERTEX(e1, ABOVE, RIGHT, ix, iy);
+			  P_EDGE(prev_edge, e0, ABOVE, px, iy);
+			  VERTEX(prev_edge, ABOVE, LEFT, px, iy);
+			  e0->outp[ABOVE]= e1->outp[ABOVE];
+			  e1->outp[ABOVE]= NULL;
+			}
+			break;
+		  case IMX:
+			if (p && q)
+			{
+			  VERTEX(e0, ABOVE, RIGHT, ix, iy);
+			  VERTEX(e1, ABOVE, LEFT, ix, iy);
+			  e0->outp[ABOVE]= NULL;
+			  e1->outp[ABOVE]= NULL;
+			  P_EDGE(prev_edge, e0, ABOVE, px, iy);
+			  VERTEX(prev_edge, ABOVE, LEFT, px, iy);
+			  new_tristrip(&tlist, prev_edge, px, iy);
+			  N_EDGE(next_edge, e1, ABOVE, nx, iy);
+			  VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			  next_edge->outp[ABOVE]= prev_edge->outp[ABOVE];
+			  VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			}
+			break;
+		  case IMM:
+			if (p && q)
+			{
+			  VERTEX(e0, ABOVE, RIGHT, ix, iy);
+			  VERTEX(e1, ABOVE, LEFT, ix, iy);
+			  P_EDGE(prev_edge, e0, ABOVE, px, iy);
+			  VERTEX(prev_edge, ABOVE, LEFT, px, iy);
+			  new_tristrip(&tlist, prev_edge, px, iy);
+			  N_EDGE(next_edge, e1, ABOVE, nx, iy);
+			  VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			  e1->outp[ABOVE]= prev_edge->outp[ABOVE];
+			  VERTEX(e1, ABOVE, RIGHT, ix, iy);
+			  new_tristrip(&tlist, e0, ix, iy);
+			  next_edge->outp[ABOVE]= e0->outp[ABOVE];
+			  VERTEX(next_edge, ABOVE, RIGHT, nx, iy);
+			}
+			break;
+		  case EMM:
+			if (p && q)
+			{
+			  VERTEX(e0, ABOVE, LEFT, ix, iy);
+			  new_tristrip(&tlist, e1, ix, iy);
+			  e0->outp[ABOVE]= e1->outp[ABOVE];
+			}
+			break;
+		  default:
+			break;
+		  } /* End of switch */
 	} /* End of contributing intersection conditional */
 
-        /* Swap bundle sides in response to edge crossing */
-        if (e0->bundle[ABOVE][CLIP])
+		/* Swap bundle sides in response to edge crossing */
+		if (e0->bundle[ABOVE][CLIP])
 	  e1->bside[CLIP]= !e1->bside[CLIP];
-        if (e1->bundle[ABOVE][CLIP])
+		if (e1->bundle[ABOVE][CLIP])
 	  e0->bside[CLIP]= !e0->bside[CLIP];
-        if (e0->bundle[ABOVE][SUBJ])
+		if (e0->bundle[ABOVE][SUBJ])
 	  e1->bside[SUBJ]= !e1->bside[SUBJ];
-        if (e1->bundle[ABOVE][SUBJ])
+		if (e1->bundle[ABOVE][SUBJ])
 	  e0->bside[SUBJ]= !e0->bside[SUBJ];
 
-        /* Swap e0 and e1 bundles in the AET */
-        prev_edge= e0->prev;
-        next_edge= e1->next;
-        if (e1->next)
-          e1->next->prev= e0;
-
-        if (e0->bstate[ABOVE] == BUNDLE_HEAD)
-        {
-          search= TRUE;
-          while (search)
-          {
-            prev_edge= prev_edge->prev;
-            if (prev_edge)
-            {
-              if (prev_edge->bundle[ABOVE][CLIP]
-               || prev_edge->bundle[ABOVE][SUBJ]
-               || (prev_edge->bstate[ABOVE] == BUNDLE_HEAD))
-                search= FALSE;
-            }
-            else
-              search= FALSE;
-          }
-        }
-        if (!prev_edge)
-        {
-           e1->next= aet;
-           aet= e0->next;
-        }
-        else
-        {
-          e1->next= prev_edge->next;
-          prev_edge->next= e0->next;
-        }
-        e0->next->prev= prev_edge;
-        e1->next->prev= e1;
-        e0->next= next_edge;
-      } /* End of IT loop*/
-
-      /* Prepare for next scanbeam */
-      for (edge= aet; edge; edge= next_edge)
-      {
-        next_edge= edge->next;
-        succ_edge= edge->succ;
-
-        if ((edge->top.y == yt) && succ_edge)
-        {
-          /* Replace AET edge by its successor */
-          succ_edge->outp[BELOW]= edge->outp[ABOVE];
-          succ_edge->bstate[BELOW]= edge->bstate[ABOVE];
-          succ_edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
-          succ_edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
-          prev_edge= edge->prev;
-          if (prev_edge)
-            prev_edge->next= succ_edge;
-          else
-            aet= succ_edge;
-          if (next_edge)
-            next_edge->prev= succ_edge;
-          succ_edge->prev= prev_edge;
-          succ_edge->next= next_edge;
-        }
-        else
-        {
-          /* Update this edge */
-          edge->outp[BELOW]= edge->outp[ABOVE];
-          edge->bstate[BELOW]= edge->bstate[ABOVE];
-          edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
-          edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
-          edge->xb= edge->xt;
-        }
-        edge->outp[ABOVE]= NULL;
-      }
-    }
+		/* Swap e0 and e1 bundles in the AET */
+		prev_edge= e0->prev;
+		next_edge= e1->next;
+		if (e1->next)
+		  e1->next->prev= e0;
+
+		if (e0->bstate[ABOVE] == BUNDLE_HEAD)
+		{
+		  search= TRUE;
+		  while (search)
+		  {
+			prev_edge= prev_edge->prev;
+			if (prev_edge)
+			{
+			  if (prev_edge->bundle[ABOVE][CLIP]
+			   || prev_edge->bundle[ABOVE][SUBJ]
+			   || (prev_edge->bstate[ABOVE] == BUNDLE_HEAD))
+				search= FALSE;
+			}
+			else
+			  search= FALSE;
+		  }
+		}
+		if (!prev_edge)
+		{
+		   e1->next= aet;
+		   aet= e0->next;
+		}
+		else
+		{
+		  e1->next= prev_edge->next;
+		  prev_edge->next= e0->next;
+		}
+		e0->next->prev= prev_edge;
+		e1->next->prev= e1;
+		e0->next= next_edge;
+	  } /* End of IT loop*/
+
+	  /* Prepare for next scanbeam */
+	  for (edge= aet; edge; edge= next_edge)
+	  {
+		next_edge= edge->next;
+		succ_edge= edge->succ;
+
+		if ((edge->top.y == yt) && succ_edge)
+		{
+		  /* Replace AET edge by its successor */
+		  succ_edge->outp[BELOW]= edge->outp[ABOVE];
+		  succ_edge->bstate[BELOW]= edge->bstate[ABOVE];
+		  succ_edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
+		  succ_edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
+		  prev_edge= edge->prev;
+		  if (prev_edge)
+			prev_edge->next= succ_edge;
+		  else
+			aet= succ_edge;
+		  if (next_edge)
+			next_edge->prev= succ_edge;
+		  succ_edge->prev= prev_edge;
+		  succ_edge->next= next_edge;
+		}
+		else
+		{
+		  /* Update this edge */
+		  edge->outp[BELOW]= edge->outp[ABOVE];
+		  edge->bstate[BELOW]= edge->bstate[ABOVE];
+		  edge->bundle[BELOW][CLIP]= edge->bundle[ABOVE][CLIP];
+		  edge->bundle[BELOW][SUBJ]= edge->bundle[ABOVE][SUBJ];
+		  edge->xb= edge->xt;
+		}
+		edge->outp[ABOVE]= NULL;
+	  }
+	}
   } /* === END OF SCANBEAM PROCESSING ================================== */
 
   /* Generate result tristrip from tlist */
@@ -2468,70 +2463,70 @@ void gpc_tristrip_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
   result->num_strips= count_tristrips(tlist);
   if (result->num_strips > 0)
   {
-    MALLOC(result->strip, result->num_strips * sizeof(gpc_vertex_list),
-           "tristrip list creation", gpc_vertex_list);
-
-    s= 0;
-    for (tn= tlist; tn; tn= tnn)
-    {
-      tnn= tn->next;
-
-      if (tn->active > 2)
-      {
-        /* Valid tristrip: copy the vertices and free the heap */
-        result->strip[s].num_vertices= tn->active;
-        MALLOC(result->strip[s].vertex, tn->active * sizeof(gpc_vertex),
-               "tristrip creation", gpc_vertex);
-        v= 0;
-        if (INVERT_TRISTRIPS)
-        {
-          lt= tn->v[RIGHT];
-          rt= tn->v[LEFT];
-        }
-        else
-        {
-          lt= tn->v[LEFT];
-          rt= tn->v[RIGHT];
-        }
-        while (lt || rt)
-        {
-          if (lt)
-          {
-            ltn= lt->next;
-            result->strip[s].vertex[v].x= lt->x;
-            result->strip[s].vertex[v].y= lt->y;
-            v++;
-            FREE(lt);
-            lt= ltn;
-          }
-          if (rt)
-          {
-            rtn= rt->next;
-            result->strip[s].vertex[v].x= rt->x;
-            result->strip[s].vertex[v].y= rt->y;
-            v++;
-            FREE(rt);
-            rt= rtn;
-          }
-        }
-        s++;
-      }
-      else
-      {
-        /* Invalid tristrip: just free the heap */
-        for (lt= tn->v[LEFT]; lt; lt= ltn)
-        {
-          ltn= lt->next;
-          FREE(lt);
-        }
-        for (rt= tn->v[RIGHT]; rt; rt=rtn)
-        {
-          rtn= rt->next;
-          FREE(rt);
-        }
-      }
-      FREE(tn);
-    }
+	MALLOC(result->strip, result->num_strips * sizeof(gpc_vertex_list),
+		   "tristrip list creation", gpc_vertex_list);
+
+	s= 0;
+	for (tn= tlist; tn; tn= tnn)
+	{
+	  tnn= tn->next;
+
+	  if (tn->active > 2)
+	  {
+		/* Valid tristrip: copy the vertices and free the heap */
+		result->strip[s].num_vertices= tn->active;
+		MALLOC(result->strip[s].vertex, tn->active * sizeof(gpc_vertex),
+			   "tristrip creation", gpc_vertex);
+		v= 0;
+		if (INVERT_TRISTRIPS)
+		{
+		  lt= tn->v[RIGHT];
+		  rt= tn->v[LEFT];
+		}
+		else
+		{
+		  lt= tn->v[LEFT];
+		  rt= tn->v[RIGHT];
+		}
+		while (lt || rt)
+		{
+		  if (lt)
+		  {
+			ltn= lt->next;
+			result->strip[s].vertex[v].x= lt->x;
+			result->strip[s].vertex[v].y= lt->y;
+			v++;
+			FREE(lt);
+			lt= ltn;
+		  }
+		  if (rt)
+		  {
+			rtn= rt->next;
+			result->strip[s].vertex[v].x= rt->x;
+			result->strip[s].vertex[v].y= rt->y;
+			v++;
+			FREE(rt);
+			rt= rtn;
+		  }
+		}
+		s++;
+	  }
+	  else
+	  {
+		/* Invalid tristrip: just free the heap */
+		for (lt= tn->v[LEFT]; lt; lt= ltn)
+		{
+		  ltn= lt->next;
+		  FREE(lt);
+		}
+		for (rt= tn->v[RIGHT]; rt; rt=rtn)
+		{
+		  rtn= rt->next;
+		  FREE(rt);
+		}
+	  }
+	  FREE(tn);
+	}
   }
 
   /* Tidy up */
@@ -2544,6 +2539,6 @@ void gpc_tristrip_clip(gpc_op op, gpc_polygon *subj, gpc_polygon *clip,
 
 /*
 ===========================================================================
-                           End of file: gpc.c
+						   End of file: gpc.c
 ===========================================================================
 */
diff --git a/QGLViewer/VRender/gpc.h b/QGLViewer/VRender/gpc.h
index 88da037..b7e926d 100644
--- a/QGLViewer/VRender/gpc.h
+++ b/QGLViewer/VRender/gpc.h
@@ -24,7 +24,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -47,8 +47,8 @@
 
 Project:   Generic Polygon Clipper
 
-           A new algorithm for calculating the difference, intersection,
-           exclusive-or or union of arbitrary polygon sets.
+		   A new algorithm for calculating the difference, intersection,
+		   exclusive-or or union of arbitrary polygon sets.
 
 File:      gpc.h
 Author:    Alan Murta (email: gpc at cs.man.ac.uk)
@@ -56,20 +56,20 @@ Version:   2.32
 Date:      17th December 2004
 
 Copyright: (C) 1997-2004, Advanced Interfaces Group,
-           University of Manchester.
+		   University of Manchester.
 
-           This software is free for non-commercial use. It may be copied,
-           modified, and redistributed provided that this copyright notice
-           is preserved on all copies. The intellectual property rights of
-           the algorithms used reside with the University of Manchester
-           Advanced Interfaces Group.
+		   This software is free for non-commercial use. It may be copied,
+		   modified, and redistributed provided that this copyright notice
+		   is preserved on all copies. The intellectual property rights of
+		   the algorithms used reside with the University of Manchester
+		   Advanced Interfaces Group.
 
-           You may not use this software, in whole or in part, in support
-           of any commercial product without the express consent of the
-           author.
+		   You may not use this software, in whole or in part, in support
+		   of any commercial product without the express consent of the
+		   author.
 
-           There is no warranty or other guarantee of fitness of this
-           software for any purpose. It is provided solely "as is".
+		   There is no warranty or other guarantee of fitness of this
+		   software for any purpose. It is provided solely "as is".
 
 ===========================================================================
 */
@@ -82,7 +82,7 @@ Copyright: (C) 1997-2004, Advanced Interfaces Group,
 
 /*
 ===========================================================================
-                               Constants
+							   Constants
 ===========================================================================
 */
 
@@ -96,7 +96,7 @@ Copyright: (C) 1997-2004, Advanced Interfaces Group,
 
 /*
 ===========================================================================
-                           Public Data Types
+						   Public Data Types
 ===========================================================================
 */
 
@@ -116,54 +116,54 @@ typedef struct                      /* Polygon vertex structure          */
 
 typedef struct                      /* Vertex list structure             */
 {
-  int                 num_vertices; /* Number of vertices in list        */
+  long                num_vertices; /* Number of vertices in list        */
   gpc_vertex         *vertex;       /* Vertex array pointer              */
 } gpc_vertex_list;
 
 typedef struct                      /* Polygon set structure             */
 {
-  int                 num_contours; /* Number of contours in polygon     */
+  unsigned long       num_contours; /* Number of contours in polygon     */
   int                *hole;         /* Hole / external contour flags     */
   gpc_vertex_list    *contour;      /* Contour array pointer             */
 } gpc_polygon;
 
 typedef struct                      /* Tristrip set structure            */
 {
-  int                 num_strips;   /* Number of tristrips               */
+  unsigned long       num_strips;   /* Number of tristrips               */
   gpc_vertex_list    *strip;        /* Tristrip array pointer            */
 } gpc_tristrip;
 
 
 /*
 ===========================================================================
-                       Public Function Prototypes
+					   Public Function Prototypes
 ===========================================================================
 */
 
 void gpc_read_polygon        (FILE            *infile_ptr,
-                              int              read_hole_flags,
-                              gpc_polygon     *polygon);
+							  int              read_hole_flags,
+							  gpc_polygon     *polygon);
 
 void gpc_write_polygon       (FILE            *outfile_ptr,
-                              int              write_hole_flags,
-                              gpc_polygon     *polygon);
+							  int              write_hole_flags,
+							  gpc_polygon     *polygon);
 
 void gpc_add_contour         (gpc_polygon     *polygon,
-                              gpc_vertex_list *contour,
-                              int              hole);
+							  gpc_vertex_list *contour,
+							  int              hole);
 
 void gpc_polygon_clip        (gpc_op           set_operation,
-                              gpc_polygon     *subject_polygon,
-                              gpc_polygon     *clip_polygon,
-                              gpc_polygon     *result_polygon);
+							  gpc_polygon     *subject_polygon,
+							  gpc_polygon     *clip_polygon,
+							  gpc_polygon     *result_polygon);
 
 void gpc_tristrip_clip       (gpc_op           set_operation,
-                              gpc_polygon     *subject_polygon,
-                              gpc_polygon     *clip_polygon,
-                              gpc_tristrip    *result_tristrip);
+							  gpc_polygon     *subject_polygon,
+							  gpc_polygon     *clip_polygon,
+							  gpc_tristrip    *result_tristrip);
 
 void gpc_polygon_to_tristrip (gpc_polygon     *polygon,
-                              gpc_tristrip    *tristrip);
+							  gpc_tristrip    *tristrip);
 
 void gpc_free_polygon        (gpc_polygon     *polygon);
 
@@ -174,6 +174,6 @@ void gpc_free_tristrip       (gpc_tristrip    *tristrip);
 
 /*
 ===========================================================================
-                           End of file: gpc.h
+						   End of file: gpc.h
 ===========================================================================
 */
diff --git a/QGLViewer/camera.cpp b/QGLViewer/camera.cpp
index 8131213..e4d047c 100644
--- a/QGLViewer/camera.cpp
+++ b/QGLViewer/camera.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -36,7 +36,7 @@ using namespace qglviewer;
  See IODistance(), physicalDistanceToScreen(), physicalScreenWidth() and focusDistance()
  documentations for default stereo parameter values. */
 Camera::Camera()
-	: frame_(NULL), fieldOfView_(M_PI/4.0f), modelViewMatrixIsUpToDate_(false), projectionMatrixIsUpToDate_(false)
+	: frame_(NULL), fieldOfView_(M_PI/4.0), modelViewMatrixIsUpToDate_(false), projectionMatrixIsUpToDate_(false)
 {
 	// #CONNECTION# Camera copy constructor
 	interpolationKfi_ = new KeyFrameInterpolator;
@@ -58,15 +58,15 @@ Camera::Camera()
 	setType(PERSPECTIVE);
 
 	// #CONNECTION# initFromDOMElement default values
-	setZNearCoefficient(0.005f);
+	setZNearCoefficient(0.005);
 	setZClippingCoefficient(sqrt(3.0));
 
 	// Dummy values
 	setScreenWidthAndHeight(600, 400);
 
 	// Stereo parameters
-	setIODistance(0.062f);
-	setPhysicalScreenWidth(0.5f);
+	setIODistance(0.062);
+	setPhysicalScreenWidth(0.5);
 	// focusDistance is set from setFieldOfView()
 
 	// #CONNECTION# Camera copy constructor
@@ -186,7 +186,7 @@ void Camera::setScreenWidthAndHeight(int width, int height)
  In order to prevent negative or too small zNear() values (which would degrade the z precision),
  zNearCoefficient() is used when the Camera is inside the sceneRadius() sphere:
  \code
- const float zMin = zNearCoefficient() * zClippingCoefficient() * sceneRadius();
+ const qreal zMin = zNearCoefficient() * zClippingCoefficient() * sceneRadius();
  if (zNear < zMin)
    zNear = zMin;
  // With an ORTHOGRAPHIC type, the value is simply clamped to 0.0
@@ -199,8 +199,8 @@ void Camera::setScreenWidthAndHeight(int width, int height)
  \code
  class myCamera :: public qglviewer::Camera
  {
-   virtual float Camera::zNear() const { return 0.001; };
-   virtual float Camera::zFar() const { return 100.0; };
+   virtual qreal Camera::zNear() const { return 0.001; };
+   virtual qreal Camera::zFar() const { return 100.0; };
  }
  \endcode
 
@@ -208,13 +208,13 @@ void Camera::setScreenWidthAndHeight(int width, int height)
 
  \attention The value is always positive although the clipping plane is positioned at a negative z
  value in the Camera coordinate system. This follows the \c gluPerspective standard. */
-float Camera::zNear() const
+qreal Camera::zNear() const
 {
-	const float zNearScene = zClippingCoefficient() * sceneRadius();
-	float z = distanceToSceneCenter() - zNearScene;
+	const qreal zNearScene = zClippingCoefficient() * sceneRadius();
+	qreal z = distanceToSceneCenter() - zNearScene;
 
 	// Prevents negative or null zNear values.
-	const float zMin = zNearCoefficient() * zNearScene;
+	const qreal zMin = zNearCoefficient() * zNearScene;
 	if (z < zMin)
 		switch (type())
 		{
@@ -233,7 +233,7 @@ zFar = distanceToSceneCenter() + zClippingCoefficient()*sceneRadius();
 \endcode
 
 See the zNear() documentation for details. */
-float Camera::zFar() const
+qreal Camera::zFar() const
 {
 	return distanceToSceneCenter() + zClippingCoefficient() * sceneRadius();
 }
@@ -242,7 +242,7 @@ float Camera::zFar() const
 /*! Sets the vertical fieldOfView() of the Camera (in radians).
 
 Note that focusDistance() is set to sceneRadius() / tan(fieldOfView()/2) by this method. */
-void Camera::setFieldOfView(float fov) {
+void Camera::setFieldOfView(qreal fov) {
 	fieldOfView_ = fov;
 	setFocusDistance(sceneRadius() / tan(fov/2.0));
 	projectionMatrixIsUpToDate_ = false;
@@ -300,7 +300,7 @@ void Camera::setFrame(ManipulatedCameraFrame* const mcf)
 
 /*! Returns the distance from the Camera center to sceneCenter(), projected along the Camera Z axis.
   Used by zNear() and zFar() to optimize the Z range. */
-float Camera::distanceToSceneCenter() const
+qreal Camera::distanceToSceneCenter() const
 {
 	return fabs((frame()->coordinatesOf(sceneCenter())).z);
 }
@@ -323,7 +323,7 @@ float Camera::distanceToSceneCenter() const
  <a href="../examples/standardCamera.html">standardCamera example</a>. */
 void Camera::getOrthoWidthHeight(GLdouble& halfWidth, GLdouble& halfHeight) const
 {
-	const float dist = orthoCoef_ * fabs(cameraCoordinatesOf(pivotPoint()).z);
+	const qreal dist = orthoCoef_ * fabs(cameraCoordinatesOf(pivotPoint()).z);
 	//#CONNECTION# fitScreenRegion
 	halfWidth  = dist * ((aspectRatio() < 1.0) ? 1.0 : aspectRatio());
 	halfHeight = dist * ((aspectRatio() < 1.0) ? 1.0/aspectRatio() : 1.0);
@@ -351,15 +351,15 @@ void Camera::computeProjectionMatrix() const
 {
 	if (projectionMatrixIsUpToDate_) return;
 
-	const float ZNear = zNear();
-	const float ZFar  = zFar();
+	const qreal ZNear = zNear();
+	const qreal ZFar  = zFar();
 
 	switch (type())
 	{
 		case Camera::PERSPECTIVE:
 		{
 			// #CONNECTION# all non null coefficients were set to 0.0 in constructor.
-			const float f = 1.0/tan(fieldOfView()/2.0);
+			const qreal f = 1.0/tan(fieldOfView()/2.0);
 			projectionMatrix_[0]  = f/aspectRatio();
 			projectionMatrix_[5]  = f;
 			projectionMatrix_[10] = (ZNear + ZFar) / (ZNear - ZFar);
@@ -403,40 +403,40 @@ void Camera::computeModelViewMatrix() const
 
 	const Quaternion q = frame()->orientation();
 
-	const double q00 = 2.0l * q[0] * q[0];
-	const double q11 = 2.0l * q[1] * q[1];
-	const double q22 = 2.0l * q[2] * q[2];
+	const qreal q00 = 2.0 * q[0] * q[0];
+	const qreal q11 = 2.0 * q[1] * q[1];
+	const qreal q22 = 2.0 * q[2] * q[2];
 
-	const double q01 = 2.0l * q[0] * q[1];
-	const double q02 = 2.0l * q[0] * q[2];
-	const double q03 = 2.0l * q[0] * q[3];
+	const qreal q01 = 2.0 * q[0] * q[1];
+	const qreal q02 = 2.0 * q[0] * q[2];
+	const qreal q03 = 2.0 * q[0] * q[3];
 
-	const double q12 = 2.0l * q[1] * q[2];
-	const double q13 = 2.0l * q[1] * q[3];
+	const qreal q12 = 2.0 * q[1] * q[2];
+	const qreal q13 = 2.0 * q[1] * q[3];
 
-	const double q23 = 2.0l * q[2] * q[3];
+	const qreal q23 = 2.0 * q[2] * q[3];
 
-	modelViewMatrix_[0] = 1.0l - q11 - q22;
-	modelViewMatrix_[1] =        q01 - q23;
-	modelViewMatrix_[2] =        q02 + q13;
-	modelViewMatrix_[3] = 0.0l;
+	modelViewMatrix_[0] = 1.0 - q11 - q22;
+	modelViewMatrix_[1] =       q01 - q23;
+	modelViewMatrix_[2] =       q02 + q13;
+	modelViewMatrix_[3] = 0.0;
 
-	modelViewMatrix_[4] =        q01 + q23;
-	modelViewMatrix_[5] = 1.0l - q22 - q00;
-	modelViewMatrix_[6] =        q12 - q03;
-	modelViewMatrix_[7] = 0.0l;
+	modelViewMatrix_[4] =       q01 + q23;
+	modelViewMatrix_[5] = 1.0 - q22 - q00;
+	modelViewMatrix_[6] =       q12 - q03;
+	modelViewMatrix_[7] = 0.0;
 
 	modelViewMatrix_[8] =        q02 - q13;
 	modelViewMatrix_[9] =        q12 + q03;
-	modelViewMatrix_[10] = 1.0l - q11 - q00;
-	modelViewMatrix_[11] = 0.0l;
+	modelViewMatrix_[10] = 1.0 - q11 - q00;
+	modelViewMatrix_[11] = 0.0;
 
 	const Vec t = q.inverseRotate(frame()->position());
 
 	modelViewMatrix_[12] = -t.x;
 	modelViewMatrix_[13] = -t.y;
 	modelViewMatrix_[14] = -t.z;
-	modelViewMatrix_[15] = 1.0l;
+	modelViewMatrix_[15] = 1.0;
 
 	modelViewMatrixIsUpToDate_ = true;
 }
@@ -527,7 +527,7 @@ void Camera::loadModelViewMatrix(bool reset) const
  glMatrixMode(GL_PROJECTION);
  glPushMatrix();
  loadProjectionMatrixStereo(left_or_right);
- glGetFloatv(GL_PROJECTION_MATRIX, m);
+ glGetDoublev(GL_PROJECTION_MATRIX, m);
  glPopMatrix();
  \endcode
  Note that getProjectionMatrix() always returns the mono-vision matrix.
@@ -535,8 +535,8 @@ void Camera::loadModelViewMatrix(bool reset) const
  \attention glMatrixMode is set to \c GL_PROJECTION. */
 void Camera::loadProjectionMatrixStereo(bool leftBuffer) const
 {
-	float left, right, bottom, top;
-	float screenHalfWidth, halfWidth, side, shift, delta;
+	qreal left, right, bottom, top;
+	qreal screenHalfWidth, halfWidth, side, shift, delta;
 
 	glMatrixMode(GL_PROJECTION);
 	glLoadIdentity();
@@ -593,8 +593,8 @@ void Camera::loadModelViewMatrixStereo(bool leftBuffer) const
 	// WARNING: makeCurrent must be called by every calling method
 	glMatrixMode(GL_MODELVIEW);
 
-	float halfWidth = focusDistance() * tan(horizontalFieldOfView() / 2.0);
-	float shift     = halfWidth * IODistance() / physicalScreenWidth(); // * current window width / full screen width
+	qreal halfWidth = focusDistance() * tan(horizontalFieldOfView() / 2.0);
+	qreal shift     = halfWidth * IODistance() / physicalScreenWidth(); // * current window width / full screen width
 
 	computeModelViewMatrix();
 	if (leftBuffer)
@@ -625,7 +625,7 @@ void Camera::getProjectionMatrix(GLdouble m[16]) const
 		m[i] = projectionMatrix_[i];
 }
 
-/*! Overloaded getProjectionMatrix(GLdouble m[16]) method using a \c float array instead. */
+/*! Overloaded getProjectionMatrix(GLdouble m[16]) method using a \c qreal array instead. */
 void Camera::getProjectionMatrix(GLfloat m[16]) const
 {
 	static GLdouble mat[16];
@@ -658,7 +658,7 @@ void Camera::getModelViewMatrix(GLdouble m[16]) const
 }
 
 
-/*! Overloaded getModelViewMatrix(GLdouble m[16]) method using a \c float array instead. */
+/*! Overloaded getModelViewMatrix(GLdouble m[16]) method using a \c qreal array instead. */
 void Camera::getModelViewMatrix(GLfloat m[16]) const
 {
 	static GLdouble mat[16];
@@ -681,7 +681,7 @@ void Camera::getModelViewProjectionMatrix(GLdouble m[16]) const
 	{
 		for (unsigned short j=0; j<4; ++j)
 		{
-			double sum = 0.0;
+			qreal sum = 0.0;
 			for (unsigned short k=0; k<4; ++k)
 				sum += proj[i+4*k]*mv[k+4*j];
 			m[i+4*j] = sum;
@@ -689,7 +689,7 @@ void Camera::getModelViewProjectionMatrix(GLdouble m[16]) const
 	}
 }
 
-/*! Overloaded getModelViewProjectionMatrix(GLdouble m[16]) method using a \c float array instead. */
+/*! Overloaded getModelViewProjectionMatrix(GLdouble m[16]) method using a \c qreal array instead. */
 void Camera::getModelViewProjectionMatrix(GLfloat m[16]) const
 {
 	static GLdouble mat[16];
@@ -702,7 +702,7 @@ void Camera::getModelViewProjectionMatrix(GLfloat m[16]) const
 
 \attention This methods also sets focusDistance() to sceneRadius() / tan(fieldOfView()/2) and
 flySpeed() to 1% of sceneRadius(). */
-void Camera::setSceneRadius(float radius)
+void Camera::setSceneRadius(qreal radius)
 {
 	if (radius <= 0.0)
 	{
@@ -769,7 +769,7 @@ Vec Camera::revolveAroundPoint() const {
 /*! Changes the pivotPoint() to \p point (defined in the world coordinate system). */
 void Camera::setPivotPoint(const Vec& point)
 {
-	const float prevDist = fabs(cameraCoordinatesOf(pivotPoint()).z);
+	const qreal prevDist = fabs(cameraCoordinatesOf(pivotPoint()).z);
 
 	// If frame's RAP is set directly, projectionMatrixIsUpToDate_ should also be
 	// set to false to ensure proper recomputation of the ORTHO projection matrix.
@@ -777,7 +777,7 @@ void Camera::setPivotPoint(const Vec& point)
 
 	// orthoCoef_ is used to compensate for changes of the pivotPoint, so that the image does
 	// not change when the pivotPoint is changed in ORTHOGRAPHIC mode.
-	const float newDist = fabs(cameraCoordinatesOf(pivotPoint()).z);
+	const qreal newDist = fabs(cameraCoordinatesOf(pivotPoint()).z);
 	// Prevents division by zero when rap is set to camera position
 	if ((prevDist > 1E-9) && (newDist > 1E-9))
 		orthoCoef_ *= prevDist / newDist;
@@ -816,7 +816,7 @@ bool Camera::setPivotPointFromPixel(const QPoint& pixel)
  glVertex3fv(sceneCenter() + 20 * pixelGLRatio(sceneCenter()) * camera()->upVector());
  glEnd();
  \endcode */
-float Camera::pixelGLRatio(const Vec& position) const
+qreal Camera::pixelGLRatio(const Vec& position) const
 {
 	switch (type())
 	{
@@ -863,7 +863,7 @@ void Camera::setFOVToFitScene()
 	if (distanceToSceneCenter() > sqrt(2.0)*sceneRadius())
 		setFieldOfView(2.0 * asin(sceneRadius() / distanceToSceneCenter()));
 	else
-		setFieldOfView(M_PI / 2.0f);
+		setFieldOfView(M_PI / 2.0);
 }
 
 /*! Makes the Camera smoothly zoom on the pointUnderPixel() \p pixel.
@@ -874,7 +874,7 @@ void Camera::setFOVToFitScene()
  See also interpolateToFitScene(). */
 void Camera::interpolateToZoomOnPixel(const QPoint& pixel)
 {
-	const float coef = 0.1f;
+	const qreal coef = 0.1;
 
 	bool found;
 	Vec target = pointUnderPixel(pixel, found);
@@ -888,7 +888,7 @@ void Camera::interpolateToZoomOnPixel(const QPoint& pixel)
 	interpolationKfi_->deletePath();
 	interpolationKfi_->addKeyFrame(*(frame()));
 
-	interpolationKfi_->addKeyFrame(Frame(0.3f*frame()->position() + 0.7f*target, frame()->orientation()), 0.4f);
+	interpolationKfi_->addKeyFrame(Frame(0.3*frame()->position() + 0.7*target, frame()->orientation()), 0.4);
 
 	// Small hack: attach a temporary frame to take advantage of lookAt without modifying frame
 	static ManipulatedCameraFrame* tempFrame = new ManipulatedCameraFrame();
@@ -939,7 +939,7 @@ void Camera::interpolateToFitScene()
   1 second).
 
   See also interpolateToFitScene() and interpolateToZoomOnPixel(). */
-void Camera::interpolateTo(const Frame& fr, float duration)
+void Camera::interpolateTo(const Frame& fr, qreal duration)
 {
 	if (interpolationKfi_->interpolationIsStarted())
 		interpolationKfi_->stopInterpolation();
@@ -1017,15 +1017,15 @@ void Camera::lookAt(const Vec& target)
 
  You should therefore orientate the Camera before you call this method. See lookAt(),
  setOrientation() and setUpVector(). */
-void Camera::fitSphere(const Vec& center, float radius)
+void Camera::fitSphere(const Vec& center, qreal radius)
 {
-	float distance = 0.0f;
+	qreal distance = 0.0;
 	switch (type())
 	{
 		case Camera::PERSPECTIVE :
 		{
-			const float yview = radius / sin(fieldOfView() / 2.0);
-			const float xview = radius / sin(horizontalFieldOfView() / 2.0);
+			const qreal yview = radius / sin(fieldOfView() / 2.0);
+			const qreal xview = radius / sin(horizontalFieldOfView() / 2.0);
 			distance = qMax(xview, yview);
 			break;
 		}
@@ -1043,8 +1043,8 @@ void Camera::fitSphere(const Vec& center, float radius)
   visible, using fitSphere(). */
 void Camera::fitBoundingBox(const Vec& min, const Vec& max)
 {
-	float diameter = qMax(fabs(max[1]-min[1]), fabs(max[0]-min[0]));
-	diameter = qMax(fabsf(max[2]-min[2]), diameter);
+	qreal diameter = qMax(fabs(max[1]-min[1]), fabs(max[0]-min[0]));
+	diameter = qMax(fabs(max[2]-min[2]), diameter);
 	fitSphere(0.5*(min+max), 0.5*diameter);
 }
 
@@ -1058,7 +1058,7 @@ void Camera::fitBoundingBox(const Vec& min, const Vec& max)
 void Camera::fitScreenRegion(const QRect& rectangle)
 {
 	const Vec vd = viewDirection();
-	const float distToPlane = distanceToSceneCenter();
+	const qreal distToPlane = distanceToSceneCenter();
 	const QPoint center = rectangle.center();
 
 	Vec orig, dir;
@@ -1071,22 +1071,22 @@ void Camera::fitScreenRegion(const QRect& rectangle)
 	convertClickToLine( QPoint(center.x(), rectangle.y()), orig, dir );
 	const Vec pointY = orig + distToPlane / (dir*vd) * dir;
 
-	float distance = 0.0f;
+	qreal distance = 0.0;
 	switch (type())
 	{
 		case Camera::PERSPECTIVE :
 		{
-			const float distX = (pointX-newCenter).norm() / sin(horizontalFieldOfView()/2.0);
-			const float distY = (pointY-newCenter).norm() / sin(fieldOfView()/2.0);
+			const qreal distX = (pointX-newCenter).norm() / sin(horizontalFieldOfView()/2.0);
+			const qreal distY = (pointY-newCenter).norm() / sin(fieldOfView()/2.0);
 			distance = qMax(distX, distY);
 			break;
 		}
 		case Camera::ORTHOGRAPHIC :
 		{
-			const float dist = ((newCenter-pivotPoint()) * vd);
+			const qreal dist = ((newCenter-pivotPoint()) * vd);
 			//#CONNECTION# getOrthoWidthHeight
-			const float distX = (pointX-newCenter).norm() / orthoCoef_ / ((aspectRatio() < 1.0) ? 1.0 : aspectRatio());
-			const float distY = (pointY-newCenter).norm() / orthoCoef_ / ((aspectRatio() < 1.0) ? 1.0/aspectRatio() : 1.0);
+			const qreal distX = (pointX-newCenter).norm() / orthoCoef_ / ((aspectRatio() < 1.0) ? 1.0 : aspectRatio());
+			const qreal distY = (pointY-newCenter).norm() / orthoCoef_ / ((aspectRatio() < 1.0) ? 1.0/aspectRatio() : 1.0);
 			distance = dist + qMax(distX, distY);
 			break;
 		}
@@ -1137,11 +1137,11 @@ void Camera::setUpVector(const Vec& up, bool noMove)
 
  This method can be useful to create Quicktime VR panoramic sequences, see the
  QGLViewer::saveSnapshot() documentation for details. */
-void Camera::setOrientation(float theta, float phi)
+void Camera::setOrientation(qreal theta, qreal phi)
 {
 	Vec axis(0.0, 1.0, 0.0);
 	const Quaternion rot1(axis, theta);
-	axis = Vec(-cos(theta), 0., sin(theta));
+	axis = Vec(-cos(theta), 0.0, sin(theta));
 	const Quaternion rot2(axis, phi);
 	setOrientation(rot1 * rot2);
 }
@@ -1177,14 +1177,14 @@ void Camera::setViewDirection(const Vec& direction)
 }
 
 // Compute a 3 by 3 determinant.
-static float det(float m00,float m01,float m02,
-				 float m10,float m11,float m12,
-				 float m20,float m21,float m22)
+static qreal det(qreal m00,qreal m01,qreal m02,
+				 qreal m10,qreal m11,qreal m12,
+				 qreal m20,qreal m21,qreal m22)
 {
 	return m00*m11*m22 + m01*m12*m20 + m02*m10*m21 - m20*m11*m02 - m10*m01*m22 - m00*m21*m12;
 }
 
-// Computes the index of element [i][j] in a \c float matrix[3][4].
+// Computes the index of element [i][j] in a \c qreal matrix[3][4].
 static inline unsigned int ind(unsigned int i, unsigned int j)
 {
 	return (i*4+j);
@@ -1260,12 +1260,12 @@ This value is only meaningful when the MouseAction bindings is QGLViewer::MOVE_F
 QGLViewer::MOVE_BACKWARD.
 
 Set to 1% of the sceneRadius() by setSceneRadius(). See also setFlySpeed(). */
-float Camera::flySpeed() const { return frame()->flySpeed(); }
+qreal Camera::flySpeed() const { return frame()->flySpeed(); }
 
 /*! Sets the Camera flySpeed().
 
 \attention This value is modified by setSceneRadius(). */
-void Camera::setFlySpeed(float speed) { frame()->setFlySpeed(speed); }
+void Camera::setFlySpeed(qreal speed) { frame()->setFlySpeed(speed); }
 
 /*! The point the Camera pivots around with the QGLViewer::ROTATE mouse binding. Defined in world coordinate system.
 
@@ -1294,7 +1294,7 @@ parameter. */
 void Camera::setFromModelViewMatrix(const GLdouble* const modelViewMatrix)
 {
 	// Get upper left (rotation) matrix
-	double upperLeft[3][3];
+	qreal upperLeft[3][3];
 	for (int i=0; i<3; ++i)
 		for (int j=0; j<3; ++j)
 			upperLeft[i][j] = modelViewMatrix[i*4+j];
@@ -1318,7 +1318,7 @@ void Camera::setFromModelViewMatrix(const GLdouble* const modelViewMatrix)
  z=0, defined in the Camera coordinate system.
 
  The elements of the matrix are ordered in line major order: you can call \c
- setFromProjectionMatrix(&(matrix[0][0])) if you defined your matrix as a \c float \c matrix[3][4].
+ setFromProjectionMatrix(&(matrix[0][0])) if you defined your matrix as a \c qreal \c matrix[3][4].
 
  \attention Passing the result of getProjectionMatrix() or getModelViewMatrix() to this method is
  not possible (purposefully incompatible matrix dimensions). \p matrix is more likely to be the
@@ -1329,7 +1329,7 @@ void Camera::setFromModelViewMatrix(const GLdouble* const modelViewMatrix)
  atan(1.0/projectionMatrix[5]).
 
  This code was written by Sylvain Paris. */
-void Camera::setFromProjectionMatrix(const float matrix[12])
+void Camera::setFromProjectionMatrix(const qreal matrix[12])
 {
 	// The 3 lines of the matrix are the normals to the planes x=0, y=0, z=0
 	// in the camera CS. As we normalize them, we do not need the 4th coordinate.
@@ -1380,7 +1380,7 @@ void Camera::setFromProjectionMatrix(const float matrix[12])
 	Vec column_1 = -((column_2^line_1)^column_2);
 	column_1.normalize();
 
-	double rot[3][3];
+	qreal rot[3][3];
 	rot[0][0] = column_0[0];
 	rot[1][0] = column_0[1];
 	rot[2][0] = column_0[2];
@@ -1403,7 +1403,7 @@ void Camera::setFromProjectionMatrix(const float matrix[12])
 	// We need some intermediate values.
 	Vec dummy = line_1^column_0;
 	dummy.normalize();
-	float fov = acos(column_2*dummy) * 2.0;
+	qreal fov = acos(column_2*dummy) * 2.0;
 
 	// We set the camera.
 	Quaternion q;
@@ -1453,8 +1453,8 @@ void Camera::setFromProjectionMatrix(const GLdouble* projectionMatrix)
 	case Camera::PERSPECTIVE:
 	  {
 	setFieldOfView(2.0 * atan(1.0/projectionMatrix[5]));
-	const float far = projectionMatrix[14] / (2.0 * (1.0 + projectionMatrix[10]));
-	const float near = (projectionMatrix[10]+1.0) / (projectionMatrix[10]-1.0) * far;
+	const qreal far = projectionMatrix[14] / (2.0 * (1.0 + projectionMatrix[10]));
+	const qreal near = (projectionMatrix[10]+1.0) / (projectionMatrix[10]-1.0) * far;
 	setSceneRadius((far-near)/2.0);
 	setSceneCenter(position() + (near + sceneRadius())*viewDirection());
 	break;
@@ -1478,16 +1478,16 @@ void Camera::setFromProjectionMatrix(const GLdouble* projectionMatrix)
 
 ///////////////////////// Camera to world transform ///////////////////////
 
-/*! Same as cameraCoordinatesOf(), but with \c float[3] parameters (\p src and \p res may be identical pointers). */
-void Camera::getCameraCoordinatesOf(const float src[3], float res[3]) const
+/*! Same as cameraCoordinatesOf(), but with \c qreal[3] parameters (\p src and \p res may be identical pointers). */
+void Camera::getCameraCoordinatesOf(const qreal src[3], qreal res[3]) const
 {
 	Vec r = cameraCoordinatesOf(Vec(src));
 	for (int i=0; i<3; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as worldCoordinatesOf(), but with \c float[3] parameters (\p src and \p res may be identical pointers). */
-void Camera::getWorldCoordinatesOf(const float src[3], float res[3]) const
+/*! Same as worldCoordinatesOf(), but with \c qreal[3] parameters (\p src and \p res may be identical pointers). */
+void Camera::getWorldCoordinatesOf(const qreal src[3], qreal res[3]) const
 {
 	Vec r = worldCoordinatesOf(Vec(src));
 	for (int i=0; i<3; ++i)
@@ -1550,7 +1550,7 @@ void Camera::getViewport(GLint viewport[4]) const
 	{
 		for (unsigned short l=0; l<4; ++l)
 		{
-			double sum = 0.0;
+			qreal sum = 0.0;
 			for (unsigned short k=0; k<4; ++k)
 				sum += Projection[l+4*k]*Modelview[k+4*m];
 			matrix[l+4*m] = sum;
@@ -1605,7 +1605,7 @@ Vec Camera::projectedCoordinatesOf(const Vec& src, const Frame* frame) const
  of the window. \p src.z is a depth value ranging in [0..1[ (respectively corresponding to the near
  and far planes). Note that src.z is \e not a linear interpolation between zNear and zFar.
  /code
- src.z = zFar() / (zFar() - zNear()) * (1.0f - zNear() / z);
+ src.z = zFar() / (zFar() - zNear()) * (1.0 - zNear() / z);
  /endcode
  Where z is the distance from the point you project to the camera, along the viewDirection().
  See the \c gluUnProject man page for details.
@@ -1640,16 +1640,16 @@ Vec Camera::unprojectedCoordinatesOf(const Vec& src, const Frame* frame) const
 		return Vec(x,y,z);
 }
 
-/*! Same as projectedCoordinatesOf(), but with \c float parameters (\p src and \p res can be identical pointers). */
-void Camera::getProjectedCoordinatesOf(const float src[3], float res[3], const Frame* frame) const
+/*! Same as projectedCoordinatesOf(), but with \c qreal parameters (\p src and \p res can be identical pointers). */
+void Camera::getProjectedCoordinatesOf(const qreal src[3], qreal res[3], const Frame* frame) const
 {
 	Vec r = projectedCoordinatesOf(Vec(src), frame);
 	for (int i=0; i<3; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as unprojectedCoordinatesOf(), but with \c float parameters (\p src and \p res can be identical pointers). */
-void Camera::getUnprojectedCoordinatesOf(const float src[3], float res[3], const Frame* frame) const
+/*! Same as unprojectedCoordinatesOf(), but with \c qreal parameters (\p src and \p res can be identical pointers). */
+void Camera::getUnprojectedCoordinatesOf(const qreal src[3], qreal res[3], const Frame* frame) const
 {
 	Vec r = unprojectedCoordinatesOf(Vec(src), frame);
 	for (int i=0; i<3; ++i)
@@ -1661,7 +1661,7 @@ void Camera::getUnprojectedCoordinatesOf(const float src[3], float res[3], const
 /*! Returns the KeyFrameInterpolator that defines the Camera path number \p i.
 
 If path \p i is not defined for this index, the method returns a \c NULL pointer. */
-KeyFrameInterpolator* Camera::keyFrameInterpolator(int i) const
+KeyFrameInterpolator* Camera::keyFrameInterpolator(unsigned int i) const
 {
 	if (kfi_.contains(i))
 		return kfi_[i];
@@ -1687,7 +1687,7 @@ KeyFrameInterpolator* Camera::keyFrameInterpolator(int i) const
  new KeyFrameInterpolator is defined using the QGLViewer::addKeyFrameKeyboardModifiers() and
  QGLViewer::pathKey() (default is Alt+F[1-12]). See the <a href="../keyboard.html">keyboard page</a>
  for details. */
-void Camera::setKeyFrameInterpolator(int i, KeyFrameInterpolator* const kfi)
+void Camera::setKeyFrameInterpolator(unsigned int i, KeyFrameInterpolator* const kfi)
 {
 	if (kfi)
 		kfi_[i] = kfi;
@@ -1707,7 +1707,7 @@ QGLViewer::addKeyFrameKeyboardModifiers().
 If you use directly this method and the keyFrameInterpolator(i) does not exist, a new one is
 created. Its KeyFrameInterpolator::interpolated() signal should then be connected to the
 QGLViewer::update() slot (see setKeyFrameInterpolator()). */
-void Camera::addKeyFrameToPath(int i)
+void Camera::addKeyFrameToPath(unsigned int i)
 {
 	if (!kfi_.contains(i))
 		setKeyFrameInterpolator(i, new KeyFrameInterpolator(frame()));
@@ -1723,7 +1723,7 @@ void Camera::addKeyFrameToPath(int i)
 
  The default keyboard shortcut for this method is F[1-12]. Set QGLViewer::pathKey() and
  QGLViewer::playPathKeyboardModifiers(). */
-void Camera::playPath(int i)
+void Camera::playPath(unsigned int i)
 {
 	if (kfi_.contains(i)) {
 		if (kfi_[i]->interpolationIsStarted())
@@ -1738,7 +1738,7 @@ void Camera::playPath(int i)
 If this path is \e not being played (see playPath() and
 KeyFrameInterpolator::interpolationIsStarted()), resets it to its starting position (see
 KeyFrameInterpolator::resetInterpolation()). If the path is played, simply stops interpolation. */
-void Camera::resetPath(int i)
+void Camera::resetPath(unsigned int i)
 {
 	if (kfi_.contains(i)) {
 		if ((kfi_[i]->interpolationIsStarted()))
@@ -1759,7 +1759,7 @@ keyFrameInterpolator() if needed:
 disconnect(camera()->keyFrameInterpolator(i), SIGNAL(interpolated()), this, SLOT(update()));
 camera()->deletePath(i);
 \endcode */
-void Camera::deletePath(int i)
+void Camera::deletePath(unsigned int i)
 {
 	if (kfi_.contains(i))
 	{
@@ -1777,7 +1777,7 @@ void Camera::deletePath(int i)
  \attention The OpenGL state is modified by this method: see KeyFrameInterpolator::drawPath(). */
 void Camera::drawAllPaths()
 {
-	for (QMap<int, KeyFrameInterpolator*>::ConstIterator it = kfi_.begin(), end=kfi_.end(); it != end; ++it)
+	for (QMap<unsigned int, KeyFrameInterpolator*>::ConstIterator it = kfi_.begin(), end=kfi_.end(); it != end; ++it)
 		(it.value())->drawPath(3, 5, sceneRadius());
 }
 
@@ -1835,7 +1835,7 @@ QDomElement Camera::domElement(const QString& name, QDomDocument& document) cons
 	de.appendChild(frame()->domElement("ManipulatedCameraFrame", document));
 
 	// KeyFrame paths
-	for (QMap<int, KeyFrameInterpolator*>::ConstIterator it = kfi_.begin(), end=kfi_.end(); it != end; ++it)
+	for (QMap<unsigned int, KeyFrameInterpolator*>::ConstIterator it = kfi_.begin(), end=kfi_.end(); it != end; ++it)
 	{
 		QDomElement kfNode = (it.value())->domElement("KeyFrameInterpolator", document);
 		kfNode.setAttribute("index", QString::number(it.key()));
@@ -1870,7 +1870,7 @@ void Camera::initFromDOMElement(const QDomElement& element)
 {
 	QDomElement child=element.firstChild().toElement();
 
-	QMutableMapIterator<int, KeyFrameInterpolator*> it(kfi_);
+	QMutableMapIterator<unsigned int, KeyFrameInterpolator*> it(kfi_);
 	while (it.hasNext()) {
 		it.next();
 		deletePath(it.key());
@@ -1881,11 +1881,11 @@ void Camera::initFromDOMElement(const QDomElement& element)
 		if (child.tagName() == "Parameters")
 		{
 			// #CONNECTION# Default values set in constructor
-			setFieldOfView(DomUtils::floatFromDom(child, "fieldOfView", M_PI/4.0f));
-			setZNearCoefficient(DomUtils::floatFromDom(child, "zNearCoefficient", 0.005f));
-			setZClippingCoefficient(DomUtils::floatFromDom(child, "zClippingCoefficient", sqrt(3.0)));
-			orthoCoef_ = DomUtils::floatFromDom(child, "orthoCoef", tan(fieldOfView()/2.0));
-			setSceneRadius(DomUtils::floatFromDom(child, "sceneRadius", sceneRadius()));
+			setFieldOfView(DomUtils::qrealFromDom(child, "fieldOfView", M_PI/4.0));
+			setZNearCoefficient(DomUtils::qrealFromDom(child, "zNearCoefficient", 0.005));
+			setZClippingCoefficient(DomUtils::qrealFromDom(child, "zClippingCoefficient", sqrt(3.0)));
+			orthoCoef_ = DomUtils::qrealFromDom(child, "orthoCoef", tan(fieldOfView()/2.0));
+			setSceneRadius(DomUtils::qrealFromDom(child, "sceneRadius", sceneRadius()));
 
 			setType(PERSPECTIVE);
 			QString type = child.attribute("Type", "PERSPECTIVE");
@@ -1909,14 +1909,14 @@ void Camera::initFromDOMElement(const QDomElement& element)
 
 		if (child.tagName() == "Stereo")
 		{
-			setIODistance(DomUtils::floatFromDom(child, "IODist", 0.062f));
-			setFocusDistance(DomUtils::floatFromDom(child, "focusDistance", focusDistance()));
-			setPhysicalScreenWidth(DomUtils::floatFromDom(child, "physScreenWidth", 0.5f));
+			setIODistance(DomUtils::qrealFromDom(child, "IODist", 0.062));
+			setFocusDistance(DomUtils::qrealFromDom(child, "focusDistance", focusDistance()));
+			setPhysicalScreenWidth(DomUtils::qrealFromDom(child, "physScreenWidth", 0.5));
 		}
 
 		if (child.tagName() == "KeyFrameInterpolator")
 		{
-			int index = DomUtils::intFromDom(child, "index", 0);
+			unsigned int index = DomUtils::uintFromDom(child, "index", 0);
 			setKeyFrameInterpolator(index, new KeyFrameInterpolator(frame()));
 			if (keyFrameInterpolator(index))
 				keyFrameInterpolator(index)->initFromDOMElement(child);
@@ -1964,7 +1964,7 @@ void Camera::convertClickToLine(const QPoint& pixel, Vec& orig, Vec& dir) const
 
 #ifndef DOXYGEN
 /*! This method has been deprecated in libQGLViewer version 2.2.0 */
-void Camera::drawCamera(float, float, float)
+void Camera::drawCamera(qreal, qreal, qreal)
 {
 	qWarning("drawCamera is deprecated. Use Camera::draw() instead.");
 }
@@ -1990,7 +1990,7 @@ The Camera is then correctly positioned and orientated.
 
 \note The drawing of a QGLViewer's own QGLViewer::camera() should not be visible, but may create
 artefacts due to numerical imprecisions. */
-void Camera::draw(bool drawFarPlane, float scale) const
+void Camera::draw(bool drawFarPlane, qreal scale) const
 {
 	glPushMatrix();
 	glMultMatrixd(frame()->worldMatrix());
@@ -2008,7 +2008,7 @@ void Camera::draw(bool drawFarPlane, float scale) const
 			points[0].y = points[0].z * tan(fieldOfView()/2.0);
 			points[0].x = points[0].y * aspectRatio();
 
-			const float ratio = points[1].z / points[0].z;
+			const qreal ratio = points[1].z / points[0].z;
 
 			points[1].y = ratio * points[0].y;
 			points[1].x = ratio * points[0].x;
@@ -2018,8 +2018,8 @@ void Camera::draw(bool drawFarPlane, float scale) const
 		{
 			GLdouble hw, hh;
 			getOrthoWidthHeight(hw, hh);
-			points[0].x = points[1].x = scale * float(hw);
-			points[0].y = points[1].y = scale * float(hh);
+			points[0].x = points[1].x = scale * qreal(hw);
+			points[0].y = points[1].y = scale * qreal(hh);
 			break;
 		}
 	}
@@ -2030,34 +2030,34 @@ void Camera::draw(bool drawFarPlane, float scale) const
 	glBegin(GL_QUADS);
 	for (int i=farIndex; i>=0; --i)
 	{
-		glNormal3f(0.0, 0.0, (i==0)?1.0:-1.0);
-		glVertex3f( points[i].x,  points[i].y, -points[i].z);
-		glVertex3f(-points[i].x,  points[i].y, -points[i].z);
-		glVertex3f(-points[i].x, -points[i].y, -points[i].z);
-		glVertex3f( points[i].x, -points[i].y, -points[i].z);
+		glNormal3d(0.0f, 0.0f, (i==0)?1.0f:-1.0f);
+		glVertex3d( points[i].x,  points[i].y, -points[i].z);
+		glVertex3d(-points[i].x,  points[i].y, -points[i].z);
+		glVertex3d(-points[i].x, -points[i].y, -points[i].z);
+		glVertex3d( points[i].x, -points[i].y, -points[i].z);
 	}
 	glEnd();
 
 	// Up arrow
-	const float arrowHeight    = 1.5f * points[0].y;
-	const float baseHeight     = 1.2f * points[0].y;
-	const float arrowHalfWidth = 0.5f * points[0].x;
-	const float baseHalfWidth  = 0.3f * points[0].x;
+	const qreal arrowHeight    = 1.5 * points[0].y;
+	const qreal baseHeight     = 1.2 * points[0].y;
+	const qreal arrowHalfWidth = 0.5 * points[0].x;
+	const qreal baseHalfWidth  = 0.3 * points[0].x;
 
 	glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
 	// Base
 	glBegin(GL_QUADS);
-	glVertex3f(-baseHalfWidth, points[0].y, -points[0].z);
-	glVertex3f( baseHalfWidth, points[0].y, -points[0].z);
-	glVertex3f( baseHalfWidth, baseHeight,  -points[0].z);
-	glVertex3f(-baseHalfWidth, baseHeight,  -points[0].z);
+	glVertex3d(-baseHalfWidth, points[0].y, -points[0].z);
+	glVertex3d( baseHalfWidth, points[0].y, -points[0].z);
+	glVertex3d( baseHalfWidth, baseHeight,  -points[0].z);
+	glVertex3d(-baseHalfWidth, baseHeight,  -points[0].z);
 	glEnd();
 
 	// Arrow
 	glBegin(GL_TRIANGLES);
-	glVertex3f( 0.0f,           arrowHeight, -points[0].z);
-	glVertex3f(-arrowHalfWidth, baseHeight,  -points[0].z);
-	glVertex3f( arrowHalfWidth, baseHeight,  -points[0].z);
+	glVertex3d( 0.0,           arrowHeight, -points[0].z);
+	glVertex3d(-arrowHalfWidth, baseHeight,  -points[0].z);
+	glVertex3d( arrowHalfWidth, baseHeight,  -points[0].z);
 	glEnd();
 
 	// Frustum lines
@@ -2065,28 +2065,28 @@ void Camera::draw(bool drawFarPlane, float scale) const
 	{
 		case Camera::PERSPECTIVE :
 			glBegin(GL_LINES);
-			glVertex3f(0.0f, 0.0f, 0.0f);
-			glVertex3f( points[farIndex].x,  points[farIndex].y, -points[farIndex].z);
-			glVertex3f(0.0f, 0.0f, 0.0f);
-			glVertex3f(-points[farIndex].x,  points[farIndex].y, -points[farIndex].z);
-			glVertex3f(0.0f, 0.0f, 0.0f);
-			glVertex3f(-points[farIndex].x, -points[farIndex].y, -points[farIndex].z);
-			glVertex3f(0.0f, 0.0f, 0.0f);
-			glVertex3f( points[farIndex].x, -points[farIndex].y, -points[farIndex].z);
+			glVertex3d(0.0, 0.0, 0.0);
+			glVertex3d( points[farIndex].x,  points[farIndex].y, -points[farIndex].z);
+			glVertex3d(0.0, 0.0, 0.0);
+			glVertex3d(-points[farIndex].x,  points[farIndex].y, -points[farIndex].z);
+			glVertex3d(0.0, 0.0, 0.0);
+			glVertex3d(-points[farIndex].x, -points[farIndex].y, -points[farIndex].z);
+			glVertex3d(0.0, 0.0, 0.0);
+			glVertex3d( points[farIndex].x, -points[farIndex].y, -points[farIndex].z);
 			glEnd();
 			break;
 		case Camera::ORTHOGRAPHIC :
 			if (drawFarPlane)
 			{
 				glBegin(GL_LINES);
-				glVertex3f( points[0].x,  points[0].y, -points[0].z);
-				glVertex3f( points[1].x,  points[1].y, -points[1].z);
-				glVertex3f(-points[0].x,  points[0].y, -points[0].z);
-				glVertex3f(-points[1].x,  points[1].y, -points[1].z);
-				glVertex3f(-points[0].x, -points[0].y, -points[0].z);
-				glVertex3f(-points[1].x, -points[1].y, -points[1].z);
-				glVertex3f( points[0].x, -points[0].y, -points[0].z);
-				glVertex3f( points[1].x, -points[1].y, -points[1].z);
+				glVertex3d( points[0].x,  points[0].y, -points[0].z);
+				glVertex3d( points[1].x,  points[1].y, -points[1].z);
+				glVertex3d(-points[0].x,  points[0].y, -points[0].z);
+				glVertex3d(-points[1].x,  points[1].y, -points[1].z);
+				glVertex3d(-points[0].x, -points[0].y, -points[0].z);
+				glVertex3d(-points[1].x, -points[1].y, -points[1].z);
+				glVertex3d( points[0].x, -points[0].y, -points[0].z);
+				glVertex3d( points[1].x, -points[1].y, -points[1].z);
 				glEnd();
 			}
 	}
@@ -2125,7 +2125,7 @@ void Camera::getFrustumPlanesCoefficients(GLdouble coef[6][4]) const
 	const Vec viewDir      = viewDirection();
 	const Vec up           = upVector();
 	const Vec right        = rightVector();
-	const float posViewDir = pos * viewDir;
+	const qreal posViewDir = pos * viewDir;
 
 	static Vec normal[6];
 	static GLdouble dist[6];
@@ -2134,9 +2134,9 @@ void Camera::getFrustumPlanesCoefficients(GLdouble coef[6][4]) const
 	{
 		case Camera::PERSPECTIVE :
 		{
-			const float hhfov = horizontalFieldOfView() / 2.0;
-			const float chhfov = cos(hhfov);
-			const float shhfov = sin(hhfov);
+			const qreal hhfov = horizontalFieldOfView() / 2.0;
+			const qreal chhfov = cos(hhfov);
+			const qreal shhfov = sin(hhfov);
 			normal[0] = - shhfov * viewDir;
 			normal[1] = normal[0] + chhfov * right;
 			normal[0] = normal[0] - chhfov * right;
@@ -2144,9 +2144,9 @@ void Camera::getFrustumPlanesCoefficients(GLdouble coef[6][4]) const
 			normal[2] = -viewDir;
 			normal[3] =  viewDir;
 
-			const float hfov = fieldOfView() / 2.0;
-			const float chfov = cos(hfov);
-			const float shfov = sin(hfov);
+			const qreal hfov = fieldOfView() / 2.0;
+			const qreal chfov = cos(hfov);
+			const qreal shfov = sin(hfov);
 			normal[4] = - shfov * viewDir;
 			normal[5] = normal[4] - chfov * up;
 			normal[4] = normal[4] + chfov * up;
@@ -2162,11 +2162,11 @@ void Camera::getFrustumPlanesCoefficients(GLdouble coef[6][4]) const
 			// dist[3] = (pos + zFar()  * viewDir) * normal[3];
 
 			// 2 times less computations using expanded/merged equations. Dir vectors are normalized.
-			const float posRightCosHH = chhfov * pos * right;
+			const qreal posRightCosHH = chhfov * pos * right;
 			dist[0] = -shhfov * posViewDir;
 			dist[1] = dist[0] + posRightCosHH;
 			dist[0] = dist[0] - posRightCosHH;
-			const float posUpCosH = chfov * pos * up;
+			const qreal posUpCosH = chfov * pos * up;
 			dist[4] = - shfov * posViewDir;
 			dist[5] = dist[4] - posUpCosH;
 			dist[4] = dist[4] + posUpCosH;
diff --git a/QGLViewer/camera.h b/QGLViewer/camera.h
index 14e0e81..579e4ca 100644
--- a/QGLViewer/camera.h
+++ b/QGLViewer/camera.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -114,12 +114,12 @@ public:
 	Quaternion orientation() const;
 
 	void setFromModelViewMatrix(const GLdouble* const modelViewMatrix);
-	void setFromProjectionMatrix(const float matrix[12]);
+	void setFromProjectionMatrix(const qreal matrix[12]);
 
 public Q_SLOTS:
 	void setPosition(const Vec& pos);
 	void setOrientation(const Quaternion& q);
-	void setOrientation(float theta, float phi);
+	void setOrientation(qreal theta, qreal phi);
 	void setUpVector(const Vec& up, bool noMove=true);
 	void setViewDirection(const Vec& direction);
 	//@}
@@ -130,13 +130,13 @@ public Q_SLOTS:
 public Q_SLOTS:
 	void lookAt(const Vec& target);
 	void showEntireScene();
-	void fitSphere(const Vec& center, float radius);
+	void fitSphere(const Vec& center, qreal radius);
 	void fitBoundingBox(const Vec& min, const Vec& max);
 	void fitScreenRegion(const QRect& rectangle);
 	void centerScene();
 	void interpolateToZoomOnPixel(const QPoint& pixel);
 	void interpolateToFitScene();
-	void interpolateTo(const Frame& fr, float duration);
+	void interpolateTo(const Frame& fr, qreal duration);
 	//@}
 
 
@@ -167,7 +167,7 @@ public:
 	ratio (see aspectRatio() and horizontalFieldOfView()).
 
 	Use setFOVToFitScene() to adapt the fieldOfView() to a given scene. */
-	float fieldOfView() const { return fieldOfView_; }
+	qreal fieldOfView() const { return fieldOfView_; }
 
 	/*! Returns the horizontal field of view of the Camera (in radians).
 
@@ -176,13 +176,13 @@ public:
 	\code
 	horizontalFieldOfView() = 2.0 * atan ( tan(fieldOfView()/2.0) * aspectRatio() ).
 	\endcode */
-	float horizontalFieldOfView() const { return 2.0 * atan ( tan(fieldOfView()/2.0) * aspectRatio() ); }
+	qreal horizontalFieldOfView() const { return 2.0 * atan ( tan(fieldOfView()/2.0) * aspectRatio() ); }
 
 	/*! Returns the Camera aspect ratio defined by screenWidth() / screenHeight().
 
 	When the Camera is attached to a QGLViewer, these values and hence the aspectRatio() are
 	automatically fitted to the viewer's window aspect ratio using setScreenWidthAndHeight(). */
-	float aspectRatio() const { return static_cast<float>(screenWidth_)/static_cast<float>(screenHeight_); }
+	qreal aspectRatio() const { return screenWidth_ / static_cast<qreal>(screenHeight_); }
 	/*! Returns the width (in pixels) of the Camera screen.
 
 	Set using setScreenWidthAndHeight(). This value is automatically fitted to the QGLViewer's
@@ -194,7 +194,7 @@ public:
 	window dimensions when the Camera is attached to a QGLViewer. See also QGLWidget::height() */
 	int screenHeight() const { return screenHeight_; }
 	void getViewport(GLint viewport[4]) const;
-	float pixelGLRatio(const Vec& position) const;
+	qreal pixelGLRatio(const Vec& position) const;
 
 	/*! Returns the coefficient which is used to set zNear() when the Camera is inside the sphere
 	defined by sceneCenter() and zClippingCoefficient() * sceneRadius().
@@ -207,7 +207,7 @@ public:
 	clipping of very close objects at the expense of a worst Z precision.
 
 	Only meaningful when Camera type is Camera::PERSPECTIVE. */
-	float zNearCoefficient() const { return zNearCoef_; }
+	qreal zNearCoefficient() const { return zNearCoef_; }
 	/*! Returns the coefficient used to position the near and far clipping planes.
 
 	The near (resp. far) clipping plane is positioned at a distance equal to zClippingCoefficient() *
@@ -226,24 +226,24 @@ public:
 	\attention When QGLViewer::cameraPathAreEdited(), this value is set to 5.0 so that the Camera
 	paths are not clipped. The previous zClippingCoefficient() value is restored back when you leave
 	this mode. */
-	float zClippingCoefficient() const { return zClippingCoef_; }
+	qreal zClippingCoefficient() const { return zClippingCoef_; }
 
-	virtual float zNear() const;
-	virtual float zFar()  const;
+	virtual qreal zNear() const;
+	virtual qreal zFar()  const;
 	virtual void getOrthoWidthHeight(GLdouble& halfWidth, GLdouble& halfHeight) const;
 	void getFrustumPlanesCoefficients(GLdouble coef[6][4]) const;
 
 public Q_SLOTS:
 	void setType(Type type);
 
-	void setFieldOfView(float fov);
+	void setFieldOfView(qreal fov);
 
 	/*! Sets the horizontalFieldOfView() of the Camera (in radians).
 
 	horizontalFieldOfView() and fieldOfView() are linked by the aspectRatio(). This method actually
 	calls setFieldOfView(( 2.0 * atan (tan(hfov / 2.0) / aspectRatio()) )) so that a call to
 	horizontalFieldOfView() returns the expected value. */
-	void setHorizontalFieldOfView(float hfov) { setFieldOfView( 2.0 * atan (tan(hfov / 2.0) / aspectRatio()) ); }
+	void setHorizontalFieldOfView(qreal hfov) { setFieldOfView( 2.0 * atan (tan(hfov / 2.0) / aspectRatio()) ); }
 
 	void setFOVToFitScene();
 
@@ -259,13 +259,13 @@ public Q_SLOTS:
 	\note If you absolutely need an aspectRatio() that does not correspond to your viewer's window
 	dimensions, overload loadProjectionMatrix() or multiply the created GL_PROJECTION matrix by a
 	scaled diagonal matrix in your QGLViewer::draw() method. */
-	void setAspectRatio(float aspect) { setScreenWidthAndHeight(int(100.0*aspect), 100); }
+	void setAspectRatio(qreal aspect) { setScreenWidthAndHeight(int(100.0*aspect), 100); }
 
 	void setScreenWidthAndHeight(int width, int height);
 	/*! Sets the zNearCoefficient() value. */
-	void setZNearCoefficient(float coef) { zNearCoef_ = coef; projectionMatrixIsUpToDate_ = false; }
+	void setZNearCoefficient(qreal coef) { zNearCoef_ = coef; projectionMatrixIsUpToDate_ = false; }
 	/*! Sets the zClippingCoefficient() value. */
-	void setZClippingCoefficient(float coef) { zClippingCoef_ = coef; projectionMatrixIsUpToDate_ = false; }
+	void setZClippingCoefficient(qreal coef) { zClippingCoef_ = coef; projectionMatrixIsUpToDate_ = false; }
 	//@}
 
 
@@ -281,7 +281,7 @@ public:
 
 	Note that QGLViewer::sceneRadius() (resp. QGLViewer::setSceneRadius()) simply call this method
 	(resp. setSceneRadius()) on its associated QGLViewer::camera(). */
-	float sceneRadius() const { return sceneRadius_; }
+	qreal sceneRadius() const { return sceneRadius_; }
 
 	/*! Returns the position of the scene center, defined in the world coordinate system.
 
@@ -295,10 +295,10 @@ public:
 	Note that QGLViewer::sceneCenter() (resp. QGLViewer::setSceneCenter()) simply calls this method
 	(resp. setSceneCenter()) on its associated QGLViewer::camera(). */
 	Vec sceneCenter() const { return sceneCenter_; }
-	float distanceToSceneCenter() const;
+	qreal distanceToSceneCenter() const;
 
 public Q_SLOTS:
-	void setSceneRadius(float radius);
+	void setSceneRadius(qreal radius);
 	void setSceneCenter(const Vec& center);
 	bool setSceneCenterFromPixel(const QPoint& pixel);
 	void setSceneBoundingBox(const Vec& min, const Vec& max);
@@ -340,15 +340,15 @@ public Q_SLOTS:
 	/*! @name KeyFramed paths */
 	//@{
 public:
-	KeyFrameInterpolator* keyFrameInterpolator(int i) const;
+	KeyFrameInterpolator* keyFrameInterpolator(unsigned int i) const;
 
 public Q_SLOTS:
-	void setKeyFrameInterpolator(int i, KeyFrameInterpolator* const kfi);
+	void setKeyFrameInterpolator(unsigned int i, KeyFrameInterpolator* const kfi);
 
-	virtual void addKeyFrameToPath(int i);
-	virtual void playPath(int i);
-	virtual void deletePath(int i);
-	virtual void resetPath(int i);
+	virtual void addKeyFrameToPath(unsigned int i);
+	virtual void playPath(unsigned int i);
+	virtual void deletePath(unsigned int i);
+	virtual void resetPath(unsigned int i);
 	virtual void drawAllPaths();
 	//@}
 
@@ -366,10 +366,10 @@ public:
 
 	void getProjectionMatrix(GLfloat m[16]) const;
 	void getProjectionMatrix(GLdouble m[16]) const;
-	
+
 	void getModelViewMatrix(GLfloat m[16]) const;
 	void getModelViewMatrix(GLdouble m[16]) const;
-	
+
 	void getModelViewProjectionMatrix(GLfloat m[16]) const;
 	void getModelViewProjectionMatrix(GLdouble m[16]) const;
 	//@}
@@ -378,9 +378,9 @@ public:
 	/*! @name Drawing */
 	//@{
 #ifndef DOXYGEN
-	static void drawCamera(float scale=1.0, float aspectRatio=1.33, float fieldOfView=M_PI/4.0);
+	static void drawCamera(qreal scale=1.0, qreal aspectRatio=1.33, qreal fieldOfView=qreal(M_PI)/4.0);
 #endif
-	virtual void draw(bool drawFarPlane=true, float scale=1.0) const;
+	virtual void draw(bool drawFarPlane=true, qreal scale=1.0) const;
 	//@}
 
 
@@ -389,8 +389,8 @@ public:
 public:
 	Vec cameraCoordinatesOf(const Vec& src) const;
 	Vec worldCoordinatesOf(const Vec& src) const;
-	void getCameraCoordinatesOf(const float src[3], float res[3]) const;
-	void getWorldCoordinatesOf(const float src[3], float res[3]) const;
+	void getCameraCoordinatesOf(const qreal src[3], qreal res[3]) const;
+	void getWorldCoordinatesOf(const qreal src[3], qreal res[3]) const;
 	//@}
 
 
@@ -399,8 +399,8 @@ public:
 public:
 	Vec projectedCoordinatesOf(const Vec& src, const Frame* frame=NULL) const;
 	Vec unprojectedCoordinatesOf(const Vec& src, const Frame* frame=NULL) const;
-	void getProjectedCoordinatesOf(const float src[3], float res[3], const Frame* frame=NULL) const;
-	void getUnprojectedCoordinatesOf(const float src[3], float res[3], const Frame* frame=NULL) const;
+	void getProjectedCoordinatesOf(const qreal src[3], qreal res[3], const Frame* frame=NULL) const;
+	void getUnprojectedCoordinatesOf(const qreal src[3], qreal res[3], const Frame* frame=NULL) const;
 	void convertClickToLine(const QPoint& pixel, Vec& orig, Vec& dir) const;
 	Vec pointUnderPixel(const QPoint& pixel, bool& found) const;
 	//@}
@@ -409,9 +409,9 @@ public:
 	/*! @name Fly speed */
 	//@{
 public:
-	float flySpeed() const;
+	qreal flySpeed() const;
 public Q_SLOTS:
-	void setFlySpeed(float speed);
+	void setFlySpeed(qreal speed);
 	//@}
 
 
@@ -422,7 +422,7 @@ public:
 
 	loadProjectionMatrixStereo() uses this value to define the Camera offset and frustum. See
 	setIODistance(). */
-	float IODistance() const { return IODistance_; }
+	qreal IODistance() const { return IODistance_; }
 
 	/*! Returns the physical distance between the user's eyes and the screen (in meters).
 
@@ -431,13 +431,13 @@ public:
 	units.
 
 	This is a helper function. It simply returns physicalScreenWidth() / 2.0 / tan(horizontalFieldOfView() / 2.0); */
-	float physicalDistanceToScreen() const { return physicalScreenWidth() / 2.0f / tan(horizontalFieldOfView() / 2.0); }
+	qreal physicalDistanceToScreen() const { return physicalScreenWidth() / 2.0 / tan(horizontalFieldOfView() / 2.0); }
 
 	/*! Returns the physical screen width, in meters. Default value is 0.5m (average monitor width).
 
 	Used for stereo display only (see loadModelViewMatrixStereo() and loadProjectionMatrixStereo()).
 	Set using setPhysicalScreenWidth(). */
-	float physicalScreenWidth() const { return physicalScreenWidth_; }
+	qreal physicalScreenWidth() const { return physicalScreenWidth_; }
 
 	/*! Returns the focus distance used by stereo display, expressed in OpenGL units.
 
@@ -449,21 +449,21 @@ public:
 	\attention This value is modified by QGLViewer::setSceneRadius(), setSceneRadius() and
 	setFieldOfView(). When one of these values is modified, focusDistance() is set to sceneRadius()
 	/ tan(fieldOfView()/2), which provides good results. */
-	float focusDistance() const { return focusDistance_; }
+	qreal focusDistance() const { return focusDistance_; }
 public Q_SLOTS:
 	/*! Sets the IODistance(). */
-	void setIODistance(float distance) { IODistance_ = distance; }
+	void setIODistance(qreal distance) { IODistance_ = distance; }
 
 #ifndef DOXYGEN
 	/*! This method is deprecated. Use setPhysicalScreenWidth() instead. */
-	void setPhysicalDistanceToScreen(float distance) { Q_UNUSED(distance); qWarning("setPhysicalDistanceToScreen is deprecated, use setPhysicalScreenWidth instead"); }
+	void setPhysicalDistanceToScreen(qreal distance) { Q_UNUSED(distance); qWarning("setPhysicalDistanceToScreen is deprecated, use setPhysicalScreenWidth instead"); }
 #endif
 
 	/*! Sets the physical screen (monitor or projected wall) width (in meters). */
-	void setPhysicalScreenWidth(float width) { physicalScreenWidth_ = width; }
+	void setPhysicalScreenWidth(qreal width) { physicalScreenWidth_ = width; }
 
 	/*! Sets the focusDistance(), in OpenGL scene units. */
-	void setFocusDistance(float distance) { focusDistance_ = distance; }
+	void setFocusDistance(qreal distance) { focusDistance_ = distance; }
 	//@}
 
 
@@ -485,12 +485,12 @@ private:
 
 	// C a m e r a   p a r a m e t e r s
 	int screenWidth_, screenHeight_;  // size of the window, in pixels
-	float fieldOfView_; // in radians
+	qreal fieldOfView_; // in radians
 	Vec sceneCenter_;
-	float sceneRadius_; // OpenGL units
-	float zNearCoef_;
-	float zClippingCoef_;
-	float orthoCoef_;
+	qreal sceneRadius_; // OpenGL units
+	qreal zNearCoef_;
+	qreal zClippingCoef_;
+	qreal orthoCoef_;
 	Type type_; // PERSPECTIVE or ORTHOGRAPHIC
 	mutable GLdouble modelViewMatrix_[16]; // Buffered model view matrix.
 	mutable bool modelViewMatrixIsUpToDate_;
@@ -498,12 +498,12 @@ private:
 	mutable bool projectionMatrixIsUpToDate_;
 
 	// S t e r e o   p a r a m e t e r s
-	float IODistance_;		     // inter-ocular distance, in meters
-	float focusDistance_;	     // in scene units
-	float physicalScreenWidth_;	     // in meters
+	qreal IODistance_;		     // inter-ocular distance, in meters
+	qreal focusDistance_;	     // in scene units
+	qreal physicalScreenWidth_;	     // in meters
 
 	// P o i n t s   o f   V i e w s   a n d   K e y F r a m e s
-	QMap<int, KeyFrameInterpolator*> kfi_;
+	QMap<unsigned int, KeyFrameInterpolator*> kfi_;
 	KeyFrameInterpolator* interpolationKfi_;
 };
 
diff --git a/QGLViewer/config.h b/QGLViewer/config.h
index fcbf444..a570aba 100644
--- a/QGLViewer/config.h
+++ b/QGLViewer/config.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -28,7 +28,7 @@
 #ifndef QGLVIEWER_CONFIG_H
 #define QGLVIEWER_CONFIG_H
 
-#define QGLVIEWER_VERSION 0x020503
+#define QGLVIEWER_VERSION 0x020601
 
 // Needed for Qt < 4 (?)
 #ifndef QT_CLEAN_NAMESPACE
@@ -45,7 +45,7 @@ Error : libQGLViewer requires a minimum Qt version of 4.0
 // Win 32 DLL export macros
 #ifdef Q_OS_WIN32
 # ifndef M_PI
-#  define M_PI 3.14159265358979323846f
+#  define M_PI 3.14159265358979323846
 # endif
 # ifndef QGLVIEWER_STATIC
 #   ifdef CREATE_QGLVIEWER_DLL
diff --git a/QGLViewer/constraint.cpp b/QGLViewer/constraint.cpp
index 0117ec9..ca646ba 100644
--- a/QGLViewer/constraint.cpp
+++ b/QGLViewer/constraint.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -54,7 +54,7 @@ void AxisPlaneConstraint::setTranslationConstraintDirection(const Vec& direction
 {
 	if ((translationConstraintType()!=AxisPlaneConstraint::FREE) && (translationConstraintType()!=AxisPlaneConstraint::FORBIDDEN))
 	{
-		const float norm = direction.norm();
+		const qreal norm = direction.norm();
 		if (norm < 1E-8)
 		{
 			qWarning("AxisPlaneConstraint::setTranslationConstraintDir: null vector for translation constraint");
@@ -77,7 +77,7 @@ void AxisPlaneConstraint::setRotationConstraintDirection(const Vec& direction)
 {
 	if ((rotationConstraintType()!=AxisPlaneConstraint::FREE) && (rotationConstraintType()!=AxisPlaneConstraint::FORBIDDEN))
 	{
-		float norm = direction.norm();
+		const qreal norm = direction.norm();
 		if (norm < 1E-8)
 		{
 			qWarning("AxisPlaneConstraint::setRotationConstraintDir: null vector for rotation constraint");
diff --git a/QGLViewer/constraint.h b/QGLViewer/constraint.h
index bd418ab..e6651d1 100644
--- a/QGLViewer/constraint.h
+++ b/QGLViewer/constraint.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/domUtils.h b/QGLViewer/domUtils.h
index 43842fb..0429e46 100644
--- a/QGLViewer/domUtils.h
+++ b/QGLViewer/domUtils.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -41,15 +41,15 @@ private:
 	}
 
 public:
-	static float floatFromDom(const QDomElement& e, const QString& attribute, float defValue)
+	static qreal qrealFromDom(const QDomElement& e, const QString& attribute, qreal defValue)
 	{
-		float value = defValue;
+		qreal value = defValue;
 		if (e.hasAttribute(attribute)) {
 			const QString s = e.attribute(attribute);
 			bool ok;
-			value = s.toFloat(&ok);
+			value = s.toDouble(&ok);
 			if (!ok) {
-				warning(QString("'%1' is not a valid float syntax for attribute \"%2\" in initialization of \"%3\". Setting value to %4.")
+				warning(QString("'%1' is not a valid qreal syntax for attribute \"%2\" in initialization of \"%3\". Setting value to %4.")
 						.arg(s).arg(attribute).arg(e.tagName()).arg(QString::number(defValue)));
 				value = defValue;
 			}
@@ -69,15 +69,16 @@ public:
 		return value;
 	}
 
-	static double doubleFromDom(const QDomElement& e, const QString& attribute, double defValue)
+	static int intFromDom(const QDomElement& e, const QString& attribute, int defValue)
 	{
-		double value = defValue;
-		if (e.hasAttribute(attribute)) {
+		int value = defValue;
+		if (e.hasAttribute(attribute))
+		{
 			const QString s = e.attribute(attribute);
 			bool ok;
-			value = s.toDouble(&ok);
+			value = s.toInt(&ok);
 			if (!ok) {
-				warning(QString("'%1' is not a valid double syntax for attribute \"%2\" in initialization of \"%3\". Setting value to %4.")
+				warning(QString("'%1' is not a valid integer syntax for attribute \"%2\" in initialization of \"%3\". Setting value to %4.")
 						.arg(s).arg(attribute).arg(e.tagName()).arg(QString::number(defValue)));
 				value = defValue;
 			}
@@ -86,27 +87,19 @@ public:
 					.arg(attribute).arg(e.tagName()).arg(QString::number(value)));
 		}
 
-#if defined(isnan)
-		// The "isnan" method may not be available on all platforms.
-		// Find its equivalent or simply remove these two lines
-		if (isnan(value))
-			warning(QString("Warning, attribute \"%1\" initialized to Not a Number in \"%2\"")
-					.arg(attribute).arg(e.tagName()));
-#endif
-
 		return value;
 	}
 
-	static int intFromDom(const QDomElement& e, const QString& attribute, int defValue)
+	static unsigned int uintFromDom(const QDomElement& e, const QString& attribute, unsigned int defValue)
 	{
-		int value = defValue;
+		unsigned int value = defValue;
 		if (e.hasAttribute(attribute))
 		{
 			const QString s = e.attribute(attribute);
 			bool ok;
-			value = s.toInt(&ok);
+			value = s.toUInt(&ok);
 			if (!ok) {
-				warning(QString("'%1' is not a valid integer syntax for attribute \"%2\" in initialization of \"%3\". Setting value to %4.")
+				warning(QString("'%1' is not a valid unsigned integer syntax for attribute \"%2\" in initialization of \"%3\". Setting value to %4.")
 						.arg(s).arg(attribute).arg(e.tagName()).arg(QString::number(defValue)));
 				value = defValue;
 			}
diff --git a/QGLViewer/frame.cpp b/QGLViewer/frame.cpp
index c54d6de..71f3ad4 100644
--- a/QGLViewer/frame.cpp
+++ b/QGLViewer/frame.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -207,7 +207,7 @@ const GLdouble* Frame::worldMatrix() const
 		return matrix();
 }
 
-/*! float[4][4] parameter version of worldMatrix(). See also getMatrix() and matrix(). */
+/*! qreal[4][4] parameter version of worldMatrix(). See also getMatrix() and matrix(). */
 void Frame::getWorldMatrix(GLdouble m[4][4]) const
 {
 	const GLdouble* mat = worldMatrix();
@@ -216,7 +216,7 @@ void Frame::getWorldMatrix(GLdouble m[4][4]) const
 			m[i][j] = mat[i*4+j];
 }
 
-/*! float[16] parameter version of worldMatrix(). See also getMatrix() and matrix(). */
+/*! qreal[16] parameter version of worldMatrix(). See also getMatrix() and matrix(). */
 void Frame::getWorldMatrix(GLdouble m[16]) const
 {
 	const GLdouble* mat = worldMatrix();
@@ -233,7 +233,7 @@ void Frame::setFromMatrix(const GLdouble m[4][4])
 		return;
 	}
 
-	double rot[3][3];
+	qreal rot[3][3];
 	for (int i=0; i<3; ++i)
 	{
 		t_[i] = m[3][i] / m[3][3];
@@ -281,14 +281,14 @@ void Frame::setFromMatrix(const GLdouble m[16])
 //////////////////// SET AND GET LOCAL TRANSLATION AND ROTATION ///////////////////////////////
 
 
-/*! Same as setTranslation(), but with \p float parameters. */
-void Frame::setTranslation(float x, float y, float z)
+/*! Same as setTranslation(), but with \p qreal parameters. */
+void Frame::setTranslation(qreal x, qreal y, qreal z)
 {
 	setTranslation(Vec(x, y, z));
 }
 
 /*! Fill \c x, \c y and \c z with the translation() of the Frame. */
-void Frame::getTranslation(float& x, float& y, float& z) const
+void Frame::getTranslation(qreal& x, qreal& y, qreal& z) const
 {
 	const Vec t = translation();
 	x = t[0];
@@ -296,16 +296,16 @@ void Frame::getTranslation(float& x, float& y, float& z) const
 	z = t[2];
 }
 
-/*! Same as setRotation() but with \c float Quaternion parameters. */
-void Frame::setRotation(double q0, double q1, double q2, double q3)
+/*! Same as setRotation() but with \c qreal Quaternion parameters. */
+void Frame::setRotation(qreal q0, qreal q1, qreal q2, qreal q3)
 {
 	setRotation(Quaternion(q0, q1, q2, q3));
 }
 
 /*! The \p q are set to the rotation() of the Frame.
 
-See Quaternion::Quaternion(double, double, double, double) for details on \c q. */
-void Frame::getRotation(double& q0, double& q1, double& q2, double& q3) const
+See Quaternion::Quaternion(qreal, qreal, qreal, qreal) for details on \c q. */
+void Frame::getRotation(qreal& q0, qreal& q1, qreal& q2, qreal& q3) const
 {
 	const Quaternion q = rotation();
 	q0 = q[0];
@@ -340,15 +340,15 @@ void Frame::translate(Vec& t)
 	Q_EMIT modified();
 }
 
-/*! Same as translate(const Vec&) but with \c float parameters. */
-void Frame::translate(float x, float y, float z)
+/*! Same as translate(const Vec&) but with \c qreal parameters. */
+void Frame::translate(qreal x, qreal y, qreal z)
 {
 	Vec t(x,y,z);
 	translate(t);
 }
 
-/*! Same as translate(Vec&) but with \c float parameters. */
-void Frame::translate(float& x, float& y, float& z)
+/*! Same as translate(Vec&) but with \c qreal parameters. */
+void Frame::translate(qreal& x, qreal& y, qreal& z)
 {
 	Vec t(x,y,z);
 	translate(t);
@@ -382,8 +382,8 @@ void Frame::rotate(Quaternion& q)
 	Q_EMIT modified();
 }
 
-/*! Same as rotate(Quaternion&) but with \c float Quaternion parameters. */
-void Frame::rotate(double& q0, double& q1, double& q2, double& q3)
+/*! Same as rotate(Quaternion&) but with \c qreal Quaternion parameters. */
+void Frame::rotate(qreal& q0, qreal& q1, qreal& q2, qreal& q3)
 {
 	Quaternion q(q0,q1,q2,q3);
 	rotate(q);
@@ -393,8 +393,8 @@ void Frame::rotate(double& q0, double& q1, double& q2, double& q3)
 	q3 = q[3];
 }
 
-/*! Same as rotate(const Quaternion&) but with \c float Quaternion parameters. */
-void Frame::rotate(double q0, double q1, double q2, double q3)
+/*! Same as rotate(const Quaternion&) but with \c qreal Quaternion parameters. */
+void Frame::rotate(qreal q0, qreal q1, qreal q2, qreal q3)
 {
 	Quaternion q(q0,q1,q2,q3);
 	rotate(q);
@@ -448,8 +448,8 @@ void Frame::setPosition(const Vec& position)
 		setTranslation(position);
 }
 
-/*! Same as setPosition(), but with \c float parameters. */
-void Frame::setPosition(float x, float y, float z)
+/*! Same as setPosition(), but with \c qreal parameters. */
+void Frame::setPosition(qreal x, qreal y, qreal z)
 {
 	setPosition(Vec(x, y, z));
 }
@@ -489,7 +489,7 @@ void Frame::setTranslationAndRotation(const Vec& translation, const Quaternion&
 
 
 /*! \p x, \p y and \p z are set to the position() of the Frame. */
-void Frame::getPosition(float& x, float& y, float& z) const
+void Frame::getPosition(qreal& x, qreal& y, qreal& z) const
 {
 	Vec p = position();
 	x = p.x;
@@ -510,8 +510,8 @@ void Frame::setOrientation(const Quaternion& orientation)
 		setRotation(orientation);
 }
 
-/*! Same as setOrientation(), but with \c float parameters. */
-void Frame::setOrientation(double q0, double q1, double q2, double q3)
+/*! Same as setOrientation(), but with \c qreal parameters. */
+void Frame::setOrientation(qreal q0, qreal q1, qreal q2, qreal q3)
 {
 	setOrientation(Quaternion(q0, q1, q2, q3));
 }
@@ -522,8 +522,8 @@ void Frame::setOrientation(double q0, double q1, double q2, double q3)
 
 /*! The \p q are set to the orientation() of the Frame.
 
-See Quaternion::Quaternion(double, double, double, double) for details on \c q. */
-void Frame::getOrientation(double& q0, double& q1, double& q2, double& q3) const
+See Quaternion::Quaternion(qreal, qreal, qreal, qreal) for details on \c q. */
+void Frame::getOrientation(qreal& q0, qreal& q1, qreal& q2, qreal& q3) const
 {
 	Quaternion o = orientation();
 	q0 = o[0];
@@ -779,50 +779,50 @@ Vec Frame::coordinatesOfIn(const Vec& src, const Frame* const in) const
 	return res;
 }
 
-////// float[3] versions
+////// qreal[3] versions
 
-/*! Same as coordinatesOf(), but with \c float parameters. */
-void Frame::getCoordinatesOf(const float src[3], float res[3]) const
+/*! Same as coordinatesOf(), but with \c qreal parameters. */
+void Frame::getCoordinatesOf(const qreal src[3], qreal res[3]) const
 {
 	const Vec r = coordinatesOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as inverseCoordinatesOf(), but with \c float parameters. */
-void Frame::getInverseCoordinatesOf(const float src[3], float res[3]) const
+/*! Same as inverseCoordinatesOf(), but with \c qreal parameters. */
+void Frame::getInverseCoordinatesOf(const qreal src[3], qreal res[3]) const
 {
 	const Vec r = inverseCoordinatesOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as localCoordinatesOf(), but with \c float parameters. */
-void Frame::getLocalCoordinatesOf(const float src[3], float res[3]) const
+/*! Same as localCoordinatesOf(), but with \c qreal parameters. */
+void Frame::getLocalCoordinatesOf(const qreal src[3], qreal res[3]) const
 {
 	const Vec r = localCoordinatesOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as localInverseCoordinatesOf(), but with \c float parameters. */
-void Frame::getLocalInverseCoordinatesOf(const float src[3], float res[3]) const
+/*! Same as localInverseCoordinatesOf(), but with \c qreal parameters. */
+void Frame::getLocalInverseCoordinatesOf(const qreal src[3], qreal res[3]) const
 {
 	const Vec r = localInverseCoordinatesOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as coordinatesOfIn(), but with \c float parameters. */
-void Frame::getCoordinatesOfIn(const float src[3], float res[3], const Frame* const in) const
+/*! Same as coordinatesOfIn(), but with \c qreal parameters. */
+void Frame::getCoordinatesOfIn(const qreal src[3], qreal res[3], const Frame* const in) const
 {
 	const Vec r = coordinatesOfIn(Vec(src), in);
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as coordinatesOfFrom(), but with \c float parameters. */
-void Frame::getCoordinatesOfFrom(const float src[3], float res[3], const Frame* const from) const
+/*! Same as coordinatesOfFrom(), but with \c qreal parameters. */
+void Frame::getCoordinatesOfFrom(const qreal src[3], qreal res[3], const Frame* const from) const
 {
 	const Vec r = coordinatesOfFrom(Vec(src), from);
 	for (int i=0; i<3 ; ++i)
@@ -920,50 +920,50 @@ Vec Frame::transformOfIn(const Vec& src, const Frame* const in) const
 	return res;
 }
 
-/////////////////  float[3] versions  //////////////////////
+/////////////////  qreal[3] versions  //////////////////////
 
-/*! Same as transformOf(), but with \c float parameters. */
-void Frame::getTransformOf(const float src[3], float res[3]) const
+/*! Same as transformOf(), but with \c qreal parameters. */
+void Frame::getTransformOf(const qreal src[3], qreal res[3]) const
 {
 	Vec r = transformOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as inverseTransformOf(), but with \c float parameters. */
-void Frame::getInverseTransformOf(const float src[3], float res[3]) const
+/*! Same as inverseTransformOf(), but with \c qreal parameters. */
+void Frame::getInverseTransformOf(const qreal src[3], qreal res[3]) const
 {
 	Vec r = inverseTransformOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as localTransformOf(), but with \c float parameters. */
-void Frame::getLocalTransformOf(const float src[3], float res[3]) const
+/*! Same as localTransformOf(), but with \c qreal parameters. */
+void Frame::getLocalTransformOf(const qreal src[3], qreal res[3]) const
 {
 	Vec r = localTransformOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as localInverseTransformOf(), but with \c float parameters. */
-void Frame::getLocalInverseTransformOf(const float src[3], float res[3]) const
+/*! Same as localInverseTransformOf(), but with \c qreal parameters. */
+void Frame::getLocalInverseTransformOf(const qreal src[3], qreal res[3]) const
 {
 	Vec r = localInverseTransformOf(Vec(src));
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as transformOfIn(), but with \c float parameters. */
-void Frame::getTransformOfIn(const float src[3], float res[3], const Frame* const in) const
+/*! Same as transformOfIn(), but with \c qreal parameters. */
+void Frame::getTransformOfIn(const qreal src[3], qreal res[3], const Frame* const in) const
 {
 	Vec r = transformOfIn(Vec(src), in);
 	for (int i=0; i<3 ; ++i)
 		res[i] = r[i];
 }
 
-/*! Same as transformOfFrom(), but with \c float parameters. */
-void Frame::getTransformOfFrom(const float src[3], float res[3], const Frame* const from) const
+/*! Same as transformOfFrom(), but with \c qreal parameters. */
+void Frame::getTransformOfFrom(const qreal src[3], qreal res[3], const Frame* const from) const
 {
 	Vec r = transformOfFrom(Vec(src), from);
 	for (int i=0; i<3 ; ++i)
@@ -1052,10 +1052,10 @@ the referenceFrame()).
 
 The rotation (and translation when \p move is \c true) applied to the Frame are filtered by the
 possible constraint(). */
-void Frame::alignWithFrame(const Frame* const frame, bool move, float threshold)
+void Frame::alignWithFrame(const Frame* const frame, bool move, qreal threshold)
 {
 	Vec directions[2][3];
-	for (int d=0; d<3; ++d)
+	for (unsigned short d=0; d<3; ++d)
 	{
 		Vec dir((d==0)? 1.0 : 0.0, (d==1)? 1.0 : 0.0, (d==2)? 1.0 : 0.0);
 		if (frame)
@@ -1065,12 +1065,12 @@ void Frame::alignWithFrame(const Frame* const frame, bool move, float threshold)
 		directions[1][d] = inverseTransformOf(dir);
 	}
 
-	float maxProj = 0.0f;
-	float proj;
+	qreal maxProj = 0.0;
+	qreal proj;
 	unsigned short index[2];
 	index[0] = index[1] = 0;
-	for (int i=0; i<3; ++i)
-		for (int j=0; j<3; ++j)
+	for (unsigned short i=0; i<3; ++i)
+		for (unsigned short j=0; j<3; ++j)
 			if ( (proj=fabs(directions[0][i]*directions[1][j])) >= maxProj )
 			{
 				index[0] = i;
@@ -1081,11 +1081,11 @@ void Frame::alignWithFrame(const Frame* const frame, bool move, float threshold)
 	Frame old;
 	old=*this;
 
-	float coef = directions[0][index[0]] * directions[1][index[1]];
+	qreal coef = directions[0][index[0]] * directions[1][index[1]];
 	if (fabs(coef) >= threshold)
 	{
 		const Vec axis = cross(directions[0][index[0]], directions[1][index[1]]);
-		float angle = asin(axis.norm());
+		qreal angle = asin(axis.norm());
 		if (coef >= 0.0)
 			angle = -angle;
 		rotate(rotation().inverse() * Quaternion(axis, angle) * orientation());
@@ -1095,10 +1095,10 @@ void Frame::alignWithFrame(const Frame* const frame, bool move, float threshold)
 		Vec dir((d==0)? 1.0 : 0.0, (d==1)? 1.0 : 0.0, (d==2)? 1.0 : 0.0);
 		dir = inverseTransformOf(dir);
 
-		float max = 0.0f;
-		for (int i=0; i<3; ++i)
+		qreal max = 0.0;
+		for (unsigned short i=0; i<3; ++i)
 		{
-			float proj = fabs(directions[0][i]*dir);
+			qreal proj = fabs(directions[0][i]*dir);
 			if (proj > max)
 			{
 				index[0] = i;
@@ -1109,7 +1109,7 @@ void Frame::alignWithFrame(const Frame* const frame, bool move, float threshold)
 		if (max >= threshold)
 		{
 			const Vec axis = cross(directions[0][index[0]], dir);
-			float angle = asin(axis.norm());
+			qreal angle = asin(axis.norm());
 			if (directions[0][index[0]] * dir >= 0.0)
 				angle = -angle;
 			rotate(rotation().inverse() * Quaternion(axis, angle) * orientation());
diff --git a/QGLViewer/frame.h b/QGLViewer/frame.h
index 8504454..992d44f 100644
--- a/QGLViewer/frame.h
+++ b/QGLViewer/frame.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -172,11 +172,11 @@ public:
 	Frame(const Vec& position, const Quaternion& orientation);
 
 	void setPosition(const Vec& position);
-	void setPosition(float x, float y, float z);
+	void setPosition(qreal x, qreal y, qreal z);
 	void setPositionWithConstraint(Vec& position);
 
 	void setOrientation(const Quaternion& orientation);
-	void setOrientation(double q0, double q1, double q2, double q3);
+	void setOrientation(qreal q0, qreal q1, qreal q2, qreal q3);
 	void setOrientationWithConstraint(Quaternion& orientation);
 
 	void setPositionAndOrientation(const Vec& position, const Quaternion& orientation);
@@ -185,8 +185,8 @@ public:
 	Vec position() const;
 	Quaternion orientation() const;
 
-	void getPosition(float& x, float& y, float& z) const;
-	void getOrientation(double& q0, double& q1, double& q2, double& q3) const;
+	void getPosition(qreal& x, qreal& y, qreal& z) const;
+	void getOrientation(qreal& q0, qreal& q1, qreal& q2, qreal& q3) const;
 	//@}
 
 
@@ -199,7 +199,7 @@ public:
 	Use setPosition() to define the world coordinates position(). Use
 	setTranslationWithConstraint() to take into account the potential constraint() of the Frame. */
 	void setTranslation(const Vec& translation) { t_ = translation; Q_EMIT modified(); }
-	void setTranslation(float x, float y, float z);
+	void setTranslation(qreal x, qreal y, qreal z);
 	void setTranslationWithConstraint(Vec& translation);
 
 	/*! Set the current rotation Quaternion. See rotation() and the different Quaternion
@@ -213,7 +213,7 @@ public:
 	 constraint() of the Frame is not taken into account, use setRotationWithConstraint()
 	 instead. */
 	void setRotation(const Quaternion& rotation) { q_ = rotation; Q_EMIT modified(); }
-	void setRotation(double q0, double q1, double q2, double q3);
+	void setRotation(qreal q0, qreal q1, qreal q2, qreal q3);
 	void setRotationWithConstraint(Quaternion& rotation);
 
 	void setTranslationAndRotation(const Vec& translation, const Quaternion& rotation);
@@ -236,8 +236,8 @@ public:
 	/*! Returns the current Quaternion orientation. See setRotation(). */
 	Quaternion rotation() const { return q_; }
 
-	void getTranslation(float& x, float& y, float& z) const;
-	void getRotation(double& q0, double& q1, double& q2, double& q3) const;
+	void getTranslation(qreal& x, qreal& y, qreal& z) const;
+	void getRotation(qreal& q0, qreal& q1, qreal& q2, qreal& q3) const;
 	//@}
 
 public:
@@ -271,20 +271,20 @@ public:
 	void translate(const Vec& t);
 	// Some compilers complain about "overloading cannot distinguish from previous declaration"
 	// Simply comment out the following method and its associated implementation
-	void translate(float x, float y, float z);
-	void translate(float& x, float& y, float& z);
+	void translate(qreal x, qreal y, qreal z);
+	void translate(qreal& x, qreal& y, qreal& z);
 
 	void rotate(Quaternion& q);
 	void rotate(const Quaternion& q);
 	// Some compilers complain about "overloading cannot distinguish from previous declaration"
 	// Simply comment out the following method and its associated implementation
-	void rotate(double q0, double q1, double q2, double q3);
-	void rotate(double& q0, double& q1, double& q2, double& q3);
+	void rotate(qreal q0, qreal q1, qreal q2, qreal q3);
+	void rotate(qreal& q0, qreal& q1, qreal& q2, qreal& q3);
 
 	void rotateAroundPoint(Quaternion& rotation, const Vec& point);
 	void rotateAroundPoint(const Quaternion& rotation, const Vec& point);
 
-	void alignWithFrame(const Frame* const frame, bool move=false, float threshold=0.0f);
+	void alignWithFrame(const Frame* const frame, bool move=false, qreal threshold=0.0);
 	void projectOnLine(const Vec& origin, const Vec& direction);
 	//@}
 
@@ -298,12 +298,12 @@ public:
 	Vec coordinatesOfIn(const Vec& src, const Frame* const in) const;
 	Vec coordinatesOfFrom(const Vec& src, const Frame* const from) const;
 
-	void getCoordinatesOf(const float src[3], float res[3]) const;
-	void getInverseCoordinatesOf(const float src[3], float res[3]) const;
-	void getLocalCoordinatesOf(const float src[3], float res[3]) const;
-	void getLocalInverseCoordinatesOf(const float src[3], float res[3]) const;
-	void getCoordinatesOfIn(const float src[3], float res[3], const Frame* const in) const;
-	void getCoordinatesOfFrom(const float src[3], float res[3], const Frame* const from) const;
+	void getCoordinatesOf(const qreal src[3], qreal res[3]) const;
+	void getInverseCoordinatesOf(const qreal src[3], qreal res[3]) const;
+	void getLocalCoordinatesOf(const qreal src[3], qreal res[3]) const;
+	void getLocalInverseCoordinatesOf(const qreal src[3], qreal res[3]) const;
+	void getCoordinatesOfIn(const qreal src[3], qreal res[3], const Frame* const in) const;
+	void getCoordinatesOfFrom(const qreal src[3], qreal res[3], const Frame* const from) const;
 	//@}
 
 	/*! @name Coordinate system transformation of vectors */
@@ -336,12 +336,12 @@ public:
 	Vec transformOfIn(const Vec& src, const Frame* const in) const;
 	Vec transformOfFrom(const Vec& src, const Frame* const from) const;
 
-	void getTransformOf(const float src[3], float res[3]) const;
-	void getInverseTransformOf(const float src[3], float res[3]) const;
-	void getLocalTransformOf(const float src[3], float res[3]) const;
-	void getLocalInverseTransformOf(const float src[3], float res[3]) const;
-	void getTransformOfIn(const float src[3], float res[3], const Frame* const in) const;
-	void getTransformOfFrom(const float src[3], float res[3], const Frame* const from) const;
+	void getTransformOf(const qreal src[3], qreal res[3]) const;
+	void getInverseTransformOf(const qreal src[3], qreal res[3]) const;
+	void getLocalTransformOf(const qreal src[3], qreal res[3]) const;
+	void getLocalInverseTransformOf(const qreal src[3], qreal res[3]) const;
+	void getTransformOfIn(const qreal src[3], qreal res[3], const Frame* const in) const;
+	void getTransformOfFrom(const qreal src[3], qreal res[3], const Frame* const from) const;
 	//@}
 
 
diff --git a/QGLViewer/keyFrameInterpolator.cpp b/QGLViewer/keyFrameInterpolator.cpp
index 89563dd..97236de 100644
--- a/QGLViewer/keyFrameInterpolator.cpp
+++ b/QGLViewer/keyFrameInterpolator.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -170,8 +170,8 @@ void KeyFrameInterpolator::resetInterpolation()
   \c NULL \p frame pointers are silently ignored. The keyFrameTime() has to be monotonously
   increasing over keyFrames.
 
-  Use addKeyFrame(const Frame&, float) to add keyFrame by values. */
-void KeyFrameInterpolator::addKeyFrame(const Frame* const frame, float time)
+  Use addKeyFrame(const Frame&, qreal) to add keyFrame by values. */
+void KeyFrameInterpolator::addKeyFrame(const Frame* const frame, qreal time)
 {
 	if (!frame)
 		return;
@@ -194,10 +194,10 @@ void KeyFrameInterpolator::addKeyFrame(const Frame* const frame, float time)
 
   The path will use the current \p frame state. If you want the path to change when \p frame is
   modified, you need to pass a \e pointer to the Frame instead (see addKeyFrame(const Frame*,
-  float)).
+  qreal)).
 
   The keyFrameTime() have to be monotonously increasing over keyFrames. */
-void KeyFrameInterpolator::addKeyFrame(const Frame& frame, float time)
+void KeyFrameInterpolator::addKeyFrame(const Frame& frame, qreal time)
 {
 	if (keyFrame_.isEmpty())
 		interpolationTime_ = time;
@@ -216,11 +216,11 @@ void KeyFrameInterpolator::addKeyFrame(const Frame& frame, float time)
 
 /*! Appends a new keyFrame to the path.
 
- Same as addKeyFrame(const Frame* frame, float), except that the keyFrameTime() is set to the
+ Same as addKeyFrame(const Frame* frame, qreal), except that the keyFrameTime() is set to the
  previous keyFrameTime() plus one second (or 0.0 if there is no previous keyFrame). */
 void KeyFrameInterpolator::addKeyFrame(const Frame* const frame)
 {
-	float time;
+	qreal time;
 	if (keyFrame_.isEmpty())
 		time = 0.0;
 	else
@@ -231,11 +231,11 @@ void KeyFrameInterpolator::addKeyFrame(const Frame* const frame)
 
 /*! Appends a new keyFrame to the path.
 
- Same as addKeyFrame(const Frame& frame, float), except that the keyFrameTime() is automatically set
+ Same as addKeyFrame(const Frame& frame, qreal), except that the keyFrameTime() is automatically set
  to previous keyFrameTime() plus one second (or 0.0 if there is no previous keyFrame). */
 void KeyFrameInterpolator::addKeyFrame(const Frame& frame)
 {
-	float time;
+	qreal time;
 	if (keyFrame_.isEmpty())
 		time = 0.0;
 	else
@@ -255,51 +255,51 @@ void KeyFrameInterpolator::deletePath()
 	currentFrameValid_ = false;
 }
 
-static void drawCamera(float scale)
+static void drawCamera(qreal scale)
 {
 	glDisable(GL_LIGHTING);
 
-	const float halfHeight = scale * 0.07;
-	const float halfWidth  = halfHeight * 1.3;
-	const float dist = halfHeight / tan(M_PI/8.0);
+	const qreal halfHeight = scale * 0.07;
+	const qreal halfWidth  = halfHeight * 1.3;
+	const qreal dist = halfHeight / tan(qreal(M_PI)/8.0);
 
-	const float arrowHeight    = 1.5f * halfHeight;
-	const float baseHeight     = 1.2f * halfHeight;
-	const float arrowHalfWidth = 0.5f * halfWidth;
-	const float baseHalfWidth  = 0.3f * halfWidth;
+	const qreal arrowHeight    = 1.5 * halfHeight;
+	const qreal baseHeight     = 1.2 * halfHeight;
+	const qreal arrowHalfWidth = 0.5 * halfWidth;
+	const qreal baseHalfWidth  = 0.3 * halfWidth;
 
 	// Frustum outline
 	glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
 	glBegin(GL_LINE_STRIP);
-	glVertex3f(-halfWidth, halfHeight,-dist);
-	glVertex3f(-halfWidth,-halfHeight,-dist);
-	glVertex3f( 0.0f, 0.0f, 0.0f);
-	glVertex3f( halfWidth,-halfHeight,-dist);
-	glVertex3f(-halfWidth,-halfHeight,-dist);
+	glVertex3d(-halfWidth, halfHeight,-dist);
+	glVertex3d(-halfWidth,-halfHeight,-dist);
+	glVertex3d( 0.0, 0.0, 0.0);
+	glVertex3d( halfWidth,-halfHeight,-dist);
+	glVertex3d(-halfWidth,-halfHeight,-dist);
 	glEnd();
 	glBegin(GL_LINE_STRIP);
-	glVertex3f( halfWidth,-halfHeight,-dist);
-	glVertex3f( halfWidth, halfHeight,-dist);
-	glVertex3f( 0.0f, 0.0f, 0.0f);
-	glVertex3f(-halfWidth, halfHeight,-dist);
-	glVertex3f( halfWidth, halfHeight,-dist);
+	glVertex3d( halfWidth,-halfHeight,-dist);
+	glVertex3d( halfWidth, halfHeight,-dist);
+	glVertex3d( 0.0, 0.0, 0.0);
+	glVertex3d(-halfWidth, halfHeight,-dist);
+	glVertex3d( halfWidth, halfHeight,-dist);
 	glEnd();
 
 	// Up arrow
 	glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
 	// Base
 	glBegin(GL_QUADS);
-	glVertex3f(-baseHalfWidth, halfHeight,-dist);
-	glVertex3f( baseHalfWidth, halfHeight,-dist);
-	glVertex3f( baseHalfWidth, baseHeight,-dist);
-	glVertex3f(-baseHalfWidth, baseHeight,-dist);
+	glVertex3d(-baseHalfWidth, halfHeight,-dist);
+	glVertex3d( baseHalfWidth, halfHeight,-dist);
+	glVertex3d( baseHalfWidth, baseHeight,-dist);
+	glVertex3d(-baseHalfWidth, baseHeight,-dist);
 	glEnd();
 
 	// Arrow
 	glBegin(GL_TRIANGLES);
-	glVertex3f( 0.0f,           arrowHeight,-dist);
-	glVertex3f(-arrowHalfWidth, baseHeight, -dist);
-	glVertex3f( arrowHalfWidth, baseHeight, -dist);
+	glVertex3d( 0.0,           arrowHeight,-dist);
+	glVertex3d(-arrowHalfWidth, baseHeight, -dist);
+	glVertex3d( arrowHalfWidth, baseHeight, -dist);
 	glEnd();
 }
 
@@ -334,7 +334,7 @@ static void drawCamera(float scale)
   drawPathModifyGLState(mask, nbFrames, scale);
   glPopAttrib();
   \endcode */
-void KeyFrameInterpolator::drawPath(int mask, int nbFrames, float scale)
+void KeyFrameInterpolator::drawPath(int mask, int nbFrames, qreal scale)
 {
 	const int nbSteps = 30;
 	if (!pathIsValid_)
@@ -369,7 +369,7 @@ void KeyFrameInterpolator::drawPath(int mask, int nbFrames, float scale)
 				// cout << kf_[0]->time() << " , " << kf_[1]->time() << " , " << kf_[2]->time() << " , " << kf_[3]->time() << endl;
 				for (int step=0; step<nbSteps; ++step)
 				{
-					float alpha = step / static_cast<float>(nbSteps);
+					qreal alpha = step / static_cast<qreal>(nbSteps);
 					fr.setPosition(kf_[1]->position() + alpha * (kf_[1]->tgP() + alpha * (v1+alpha*v2)));
 					fr.setOrientation(Quaternion::squad(kf_[1]->orientation(), kf_[1]->tgQ(), kf_[2]->tgQ(), kf_[2]->orientation(), alpha));
 					path_.push_back(fr);
@@ -405,11 +405,11 @@ void KeyFrameInterpolator::drawPath(int mask, int nbFrames, float scale)
 			int count = 0;
 			if (nbFrames > nbSteps)
 				nbFrames = nbSteps;
-			float goal = 0.0f;
+			qreal goal = 0.0;
 			Q_FOREACH (Frame fr, path_)
 				if ((count++) >= goal)
 				{
-					goal += nbSteps / static_cast<float>(nbFrames);
+					goal += nbSteps / static_cast<qreal>(nbFrames);
 					glPushMatrix();
 					glMultMatrixd(fr.matrix());
 					if (mask & 2) drawCamera(scale);
@@ -465,7 +465,7 @@ Frame KeyFrameInterpolator::keyFrame(int index) const
 /*! Returns the time corresponding to the \p index keyFrame.
 
  See also keyFrame(). \p index has to be in the range 0..numberOfKeyFrames()-1. */
-float KeyFrameInterpolator::keyFrameTime(int index) const
+qreal KeyFrameInterpolator::keyFrameTime(int index) const
 {
 	return keyFrame_.at(index)->time();
 }
@@ -474,7 +474,7 @@ float KeyFrameInterpolator::keyFrameTime(int index) const
 
  Simply corresponds to lastTime() - firstTime(). Returns 0.0 if the path has less than 2 keyFrames.
  See also keyFrameTime(). */
-float KeyFrameInterpolator::duration() const
+qreal KeyFrameInterpolator::duration() const
 {
 	return lastTime() - firstTime();
 }
@@ -482,7 +482,7 @@ float KeyFrameInterpolator::duration() const
 /*! Returns the time corresponding to the first keyFrame, expressed in seconds.
 
 Returns 0.0 if the path is empty. See also lastTime(), duration() and keyFrameTime(). */
-float KeyFrameInterpolator::firstTime() const
+qreal KeyFrameInterpolator::firstTime() const
 {
 	if (keyFrame_.isEmpty())
 		return 0.0;
@@ -493,7 +493,7 @@ float KeyFrameInterpolator::firstTime() const
 /*! Returns the time corresponding to the last keyFrame, expressed in seconds.
 
 Returns 0.0 if the path is empty. See also firstTime(), duration() and keyFrameTime(). */
-float KeyFrameInterpolator::lastTime() const
+qreal KeyFrameInterpolator::lastTime() const
 {
 	if (keyFrame_.isEmpty())
 		return 0.0;
@@ -501,7 +501,7 @@ float KeyFrameInterpolator::lastTime() const
 		return keyFrame_.last()->time();
 }
 
-void KeyFrameInterpolator::updateCurrentKeyFrameForTime(float time)
+void KeyFrameInterpolator::updateCurrentKeyFrameForTime(qreal time)
 {
 	// Assertion: times are sorted in monotone order.
 	// Assertion: keyFrame_ is not empty
@@ -567,7 +567,7 @@ void KeyFrameInterpolator::updateSplineCache()
   setInterpolationTime() instead.
 
   Emits the interpolated() signal and makes the frame() emit the Frame::interpolated() signal. */
-void KeyFrameInterpolator::interpolateAtTime(float time)
+void KeyFrameInterpolator::interpolateAtTime(qreal time)
 {
 	setInterpolationTime(time);
 
@@ -582,8 +582,8 @@ void KeyFrameInterpolator::interpolateAtTime(float time)
 	if (!splineCacheIsValid_)
 		updateSplineCache();
 
-	float alpha;
-	float dt = currentFrame_[2]->peekNext()->time() - currentFrame_[1]->peekNext()->time();
+	qreal alpha;
+	qreal dt = currentFrame_[2]->peekNext()->time() - currentFrame_[1]->peekNext()->time();
 	if (dt == 0.0)
 		alpha = 0.0;
 	else
@@ -655,7 +655,7 @@ void KeyFrameInterpolator::initFromDOMElement(const QDomElement& element)
 		{
 			Frame fr;
 			fr.initFromDOMElement(child);
-			float time = DomUtils::floatFromDom(child, "time", 0.0);
+			qreal time = DomUtils::qrealFromDom(child, "time", 0.0);
 			addKeyFrame(fr, time);
 		}
 
@@ -663,8 +663,8 @@ void KeyFrameInterpolator::initFromDOMElement(const QDomElement& element)
 	}
 
 	// #CONNECTION# Values cut pasted from constructor
-	setInterpolationTime(DomUtils::floatFromDom(element, "time", 0.0));
-	setInterpolationSpeed(DomUtils::floatFromDom(element, "speed", 1.0));
+	setInterpolationTime(DomUtils::qrealFromDom(element, "time", 0.0));
+	setInterpolationSpeed(DomUtils::qrealFromDom(element, "speed", 1.0));
 	setInterpolationPeriod(DomUtils::intFromDom(element, "period", 40));
 	setClosedPath(DomUtils::boolFromDom(element, "closedPath", false));
 	setLoopInterpolation(DomUtils::boolFromDom(element, "loop", false));
@@ -680,14 +680,14 @@ void KeyFrameInterpolator::initFromDOMElement(const QDomElement& element)
 #ifndef DOXYGEN
 
 //////////// KeyFrame private class implementation /////////
-KeyFrameInterpolator::KeyFrame::KeyFrame(const Frame& fr, float t)
+KeyFrameInterpolator::KeyFrame::KeyFrame(const Frame& fr, qreal t)
 	: time_(t), frame_(NULL)
 {
 	p_ = fr.position();
 	q_ = fr.orientation();
 }
 
-KeyFrameInterpolator::KeyFrame::KeyFrame(const Frame* fr, float t)
+KeyFrameInterpolator::KeyFrame::KeyFrame(const Frame* fr, qreal t)
 	: time_(t), frame_(fr)
 {
 	updateValuesFromPointer();
diff --git a/QGLViewer/keyFrameInterpolator.h b/QGLViewer/keyFrameInterpolator.h
index 3b969ac..969de33 100644
--- a/QGLViewer/keyFrameInterpolator.h
+++ b/QGLViewer/keyFrameInterpolator.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -114,8 +114,8 @@ class Frame;
   KeyFrameInterpolator kfi( new Frame() );
   // calls to kfi.addKeyFrame() to define the path.
 
-  const float deltaTime = 0.04; // output a position every deltaTime seconds
-  for (float time=kfi.firstTime(); time<=kfi.lastTime(); time += deltaTime)
+  const qreal deltaTime = 0.04; // output a position every deltaTime seconds
+  for (qreal time=kfi.firstTime(); time<=kfi.lastTime(); time += deltaTime)
   {
 	kfi.interpolateAtTime(time);
 	cout << "t=" << time << "\tpos=" << kfi.frame()->position() << endl;
@@ -160,10 +160,10 @@ Q_SIGNALS:
 	//@{
 public Q_SLOTS:
 	void addKeyFrame(const Frame& frame);
-	void addKeyFrame(const Frame& frame, float time);
+	void addKeyFrame(const Frame& frame, qreal time);
 
 	void addKeyFrame(const Frame* const frame);
-	void addKeyFrame(const Frame* const frame, float time);
+	void addKeyFrame(const Frame* const frame, qreal time);
 
 	void deletePath();
 	//@}
@@ -187,12 +187,12 @@ public Q_SLOTS:
 	//@{
 public:
 	Frame keyFrame(int index) const;
-	float keyFrameTime(int index) const;
+	qreal keyFrameTime(int index) const;
 	/*! Returns the number of keyFrames used by the interpolation. Use addKeyFrame() to add new keyFrames. */
 	int numberOfKeyFrames() const { return keyFrame_.count(); }
-	float duration() const;
-	float firstTime() const;
-	float lastTime() const;
+	qreal duration() const;
+	qreal firstTime() const;
+	qreal lastTime() const;
 	//@}
 
 	/*! @name Interpolation parameters */
@@ -202,7 +202,7 @@ public:
 
 	This time is regularly updated when interpolationIsStarted(). Can be set directly with
 	setInterpolationTime() or interpolateAtTime(). */
-	float interpolationTime() const { return interpolationTime_; }
+	qreal interpolationTime() const { return interpolationTime_; }
 	/*! Returns the current interpolation speed.
 
 	Default value is 1.0, which means keyFrameTime() will be matched during the interpolation
@@ -210,7 +210,7 @@ public:
 
 	A negative value will result in a reverse interpolation of the keyFrames. See also
 	interpolationPeriod(). */
-	float interpolationSpeed() const { return interpolationSpeed_; }
+	qreal interpolationSpeed() const { return interpolationSpeed_; }
 	/*! Returns the current interpolation period, expressed in milliseconds.
 
 	The update of the frame() state will be done by a timer at this period when
@@ -244,9 +244,9 @@ public Q_SLOTS:
 	\attention The frame() state is not affected by this method. Use this function to define the
 	starting time of a future interpolation (see startInterpolation()). Use interpolateAtTime() to
 	actually interpolate at a given time. */
-	void setInterpolationTime(float time) { interpolationTime_ = time; }
+	void setInterpolationTime(qreal time) { interpolationTime_ = time; }
 	/*! Sets the interpolationSpeed(). Negative or null values are allowed. */
-	void setInterpolationSpeed(float speed) { interpolationSpeed_ = speed; }
+	void setInterpolationSpeed(qreal speed) { interpolationSpeed_ = speed; }
 	/*! Sets the interpolationPeriod(). */
 	void setInterpolationPeriod(int period) { period_ = period; }
 	/*! Sets the loopInterpolation() value. */
@@ -270,13 +270,13 @@ public Q_SLOTS:
 	void resetInterpolation();
 	/*! Calls startInterpolation() or stopInterpolation(), depending on interpolationIsStarted(). */
 	void toggleInterpolation() { if (interpolationIsStarted()) stopInterpolation(); else startInterpolation(); }
-	virtual void interpolateAtTime(float time);
+	virtual void interpolateAtTime(qreal time);
 	//@}
 
 	/*! @name Path drawing */
 	//@{
 public:
-	virtual void drawPath(int mask=1, int nbFrames=6, float scale=1.0f);
+	virtual void drawPath(int mask=1, int nbFrames=6, qreal scale=1.0);
 	//@}
 
 	/*! @name XML representation */
@@ -296,7 +296,7 @@ private:
 	// KeyFrameInterpolator(const KeyFrameInterpolator& kfi);
 	// KeyFrameInterpolator& operator=(const KeyFrameInterpolator& kfi);
 
-	void updateCurrentKeyFrameForTime(float time);
+	void updateCurrentKeyFrameForTime(qreal time);
 	void updateModifiedFrameValues();
 	void updateSplineCache();
 
@@ -305,14 +305,14 @@ private:
 	class KeyFrame
 	{
 	public:
-		KeyFrame(const Frame& fr, float t);
-		KeyFrame(const Frame* fr, float t);
+		KeyFrame(const Frame& fr, qreal t);
+		KeyFrame(const Frame* fr, qreal t);
 
 		Vec position() const { return p_; }
 		Quaternion orientation() const { return q_; }
 		Vec tgP() const { return tgP_; }
 		Quaternion tgQ() const { return tgQ_; }
-		float time() const { return time_; }
+		qreal time() const { return time_; }
 		const Frame* frame() const { return frame_; }
 		void updateValuesFromPointer();
 		void flipOrientationIfNeeded(const Quaternion& prev);
@@ -320,7 +320,7 @@ private:
 	private:
 		Vec p_, tgP_;
 		Quaternion q_, tgQ_;
-		float time_;
+		qreal time_;
 		const Frame* const frame_;
 	};
 #endif
@@ -336,8 +336,8 @@ private:
 	// R h y t h m
 	QTimer timer_;
 	int period_;
-	float interpolationTime_;
-	float interpolationSpeed_;
+	qreal interpolationTime_;
+	qreal interpolationSpeed_;
 	bool interpolationStarted_;
 
 	// M i s c
diff --git a/QGLViewer/manipulatedCameraFrame.cpp b/QGLViewer/manipulatedCameraFrame.cpp
index 013a87a..71b4681 100644
--- a/QGLViewer/manipulatedCameraFrame.cpp
+++ b/QGLViewer/manipulatedCameraFrame.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -167,7 +167,7 @@ void ManipulatedCameraFrame::initFromDOMElement(const QDomElement& element)
 	{
 		if (child.tagName() == "ManipulatedCameraParameters")
 		{
-			setFlySpeed(DomUtils::floatFromDom(child, "flySpeed", flySpeed()));
+			setFlySpeed(DomUtils::qrealFromDom(child, "flySpeed", flySpeed()));
 			setRotatesAroundUpVector(DomUtils::boolFromDom(child, "rotatesAroundUpVector", false));
 			setZoomsOnPivotPoint(DomUtils::boolFromDom(child, "zoomsOnPivotPoint", false));
 
@@ -211,14 +211,14 @@ void ManipulatedCameraFrame::startAction(int ma, bool withConstraint)
 	}
 }
 
-void ManipulatedCameraFrame::zoom(float delta, const Camera * const camera) {
-	const float sceneRadius = camera->sceneRadius();
+void ManipulatedCameraFrame::zoom(qreal delta, const Camera * const camera) {
+	const qreal sceneRadius = camera->sceneRadius();
 	if (zoomsOnPivotPoint_) {
 		Vec direction = position() - camera->pivotPoint();
-		if (direction.norm() > 0.02f * sceneRadius || delta > 0.0f)
+		if (direction.norm() > 0.02 * sceneRadius || delta > 0.0)
 			translate(delta * direction);
 	} else {
-		const float coef = qMax(fabsf((camera->frame()->coordinatesOf(camera->pivotPoint())).z), 0.2f * sceneRadius);
+		const qreal coef = qMax(fabs((camera->frame()->coordinatesOf(camera->pivotPoint())).z), 0.2 * sceneRadius);
 		Vec trans(0.0, 0.0, -coef * delta);
 		translate(inverseTransformOf(trans));
 	}
@@ -238,7 +238,7 @@ void ManipulatedCameraFrame::mouseMoveEvent(QMouseEvent* const event, Camera* co
 		case QGLViewer::TRANSLATE:
 		{
 			const QPoint delta = prevPos_ - event->pos();
-			Vec trans(static_cast<float>(delta.x()), static_cast<float>(-delta.y()), 0.0);
+			Vec trans(delta.x(), -delta.y(), 0.0);
 			// Scale to fit the screen mouse displacement
 			switch (camera->type())
 			{
@@ -305,8 +305,8 @@ void ManipulatedCameraFrame::mouseMoveEvent(QMouseEvent* const event, Camera* co
 			Quaternion rot;
 			if (rotatesAroundUpVector_) {
 				// Multiply by 2.0 to get on average about the same speed as with the deformed ball
-				float dx = 2.0f * rotationSensitivity() * (prevPos_.x() - event->x()) / camera->screenWidth();
-				float dy = 2.0f * rotationSensitivity() * (prevPos_.y() - event->y()) / camera->screenHeight();
+				qreal dx = 2.0 * rotationSensitivity() * (prevPos_.x() - event->x()) / camera->screenWidth();
+				qreal dy = 2.0 * rotationSensitivity() * (prevPos_.y() - event->y()) / camera->screenHeight();
 				if (constrainedRotationIsReversed_) dx = -dx;
 				Vec verticalAxis = transformOf(sceneUpVector_);
 				rot = Quaternion(verticalAxis, dx) * Quaternion(Vec(1.0, 0.0, 0.0), dy);
@@ -325,7 +325,7 @@ void ManipulatedCameraFrame::mouseMoveEvent(QMouseEvent* const event, Camera* co
 		{
 			Vec trans = camera->projectedCoordinatesOf(pivotPoint());
 
-			const float angle = atan2(event->y() - trans[1], event->x() - trans[0]) - atan2(prevPos_.y()-trans[1], prevPos_.x()-trans[0]);
+			const qreal angle = atan2(event->y() - trans[1], event->x() - trans[0]) - atan2(prevPos_.y()-trans[1], prevPos_.x()-trans[0]);
 
 			Quaternion rot(Vec(0.0, 0.0, 1.0), angle);
 			//#CONNECTION# These two methods should go together (spinning detection and activation)
@@ -338,7 +338,7 @@ void ManipulatedCameraFrame::mouseMoveEvent(QMouseEvent* const event, Camera* co
 
 		case QGLViewer::ROLL:
 		{
-			const float angle = M_PI * (event->x() - prevPos_.x()) / camera->screenWidth();
+			const qreal angle = M_PI * (event->x() - prevPos_.x()) / camera->screenWidth();
 			Quaternion rot(Vec(0.0, 0.0, 1.0), angle);
 			rotate(rot);
 			setSpinningQuaternion(rot);
@@ -351,9 +351,9 @@ void ManipulatedCameraFrame::mouseMoveEvent(QMouseEvent* const event, Camera* co
 			Vec trans;
 			int dir = mouseOriginalDirection(event);
 			if (dir == 1)
-				trans.setValue(static_cast<float>(prevPos_.x() - event->x()), 0.0, 0.0);
+				trans.setValue(prevPos_.x() - event->x(), 0.0, 0.0);
 			else if (dir == -1)
-				trans.setValue(0.0, static_cast<float>(event->y() - prevPos_.y()), 0.0);
+				trans.setValue(0.0, event->y() - prevPos_.y(), 0.0);
 
 			switch (camera->type())
 			{
diff --git a/QGLViewer/manipulatedCameraFrame.h b/QGLViewer/manipulatedCameraFrame.h
index a155481..1a0863b 100644
--- a/QGLViewer/manipulatedCameraFrame.h
+++ b/QGLViewer/manipulatedCameraFrame.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -125,7 +125,7 @@ public:
 
 private:
 #ifndef DOXYGEN
-	void zoom(float delta, const Camera * const camera);
+	void zoom(qreal delta, const Camera * const camera);
 #endif
 	//@}
 
@@ -136,7 +136,7 @@ public Q_SLOTS:
 
 	Default value is 0.0, but it is modified according to the QGLViewer::sceneRadius() when the
 	ManipulatedCameraFrame is set as the Camera::frame(). */
-	void setFlySpeed(float speed) { flySpeed_ = speed; }
+	void setFlySpeed(qreal speed) { flySpeed_ = speed; }
 
 	/*! Sets the sceneUpVector(), defined in the world coordinate system.
 
@@ -153,7 +153,7 @@ public:
 
 	\attention When the ManipulatedCameraFrame is set as the Camera::frame(), this value is set
 	according to the QGLViewer::sceneRadius() by QGLViewer::setSceneRadius(). */
-	float flySpeed() const { return flySpeed_; }
+	qreal flySpeed() const { return flySpeed_; }
 
 	/*! Returns the up vector of the scene, expressed in the world coordinate system.
 
@@ -213,8 +213,8 @@ private:
 
 private:
 	// Fly mode data
-	float flySpeed_;
-	float driveSpeed_;
+	qreal flySpeed_;
+	qreal driveSpeed_;
 	Vec sceneUpVector_;
 	QTimer flyTimer_;
 
diff --git a/QGLViewer/manipulatedFrame.cpp b/QGLViewer/manipulatedFrame.cpp
index 4c90fbf..270fded 100644
--- a/QGLViewer/manipulatedFrame.cpp
+++ b/QGLViewer/manipulatedFrame.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -44,11 +44,11 @@ ManipulatedFrame::ManipulatedFrame()
 	: action_(QGLViewer::NO_MOUSE_ACTION), keepsGrabbingMouse_(false)
 {
 	// #CONNECTION# initFromDOMElement and accessor docs
-	setRotationSensitivity(1.0f);
-	setTranslationSensitivity(1.0f);
-	setSpinningSensitivity(0.3f);
-	setWheelSensitivity(1.0f);
-	setZoomSensitivity(1.0f);
+	setRotationSensitivity(1.0);
+	setTranslationSensitivity(1.0);
+	setSpinningSensitivity(0.3);
+	setWheelSensitivity(1.0);
+	setZoomSensitivity(1.0);
 
 	isSpinning_ = false;
 	previousConstraint_ = NULL;
@@ -149,11 +149,11 @@ void ManipulatedFrame::initFromDOMElement(const QDomElement& element)
 		if (child.tagName() == "ManipulatedParameters")
 		{
 			// #CONNECTION# constructor default values and accessor docs
-			setRotationSensitivity   (DomUtils::floatFromDom(child, "rotSens",   1.0f));
-			setTranslationSensitivity(DomUtils::floatFromDom(child, "transSens", 1.0f));
-			setSpinningSensitivity   (DomUtils::floatFromDom(child, "spinSens",  0.3f));
-			setWheelSensitivity      (DomUtils::floatFromDom(child, "wheelSens", 1.0f));
-			setZoomSensitivity       (DomUtils::floatFromDom(child, "zoomSens", 1.0f));
+			setRotationSensitivity   (DomUtils::qrealFromDom(child, "rotSens",   1.0));
+			setTranslationSensitivity(DomUtils::qrealFromDom(child, "transSens", 1.0));
+			setSpinningSensitivity   (DomUtils::qrealFromDom(child, "spinSens",  0.3));
+			setWheelSensitivity      (DomUtils::qrealFromDom(child, "wheelSens", 1.0));
+			setZoomSensitivity       (DomUtils::qrealFromDom(child, "zoomSens", 1.0));
 		}
 		child = child.nextSibling().toElement();
 	}
@@ -241,7 +241,7 @@ use mouse speed. Currently used to trigger spinning in mouseReleaseEvent(). */
 void ManipulatedFrame::computeMouseSpeed(const QMouseEvent* const e)
 {
 	const QPoint delta = (e->pos() - prevPos_);
-	const float dist = sqrt(static_cast<float>(delta.x()*delta.x() + delta.y()*delta.y()));
+	const qreal dist = sqrt(delta.x()*delta.x() + delta.y()*delta.y());
 	delay_ = last_move_time.restart();
 	if (delay_ == 0)
 		// Less than a millisecond: assume delay = 1ms
@@ -272,20 +272,20 @@ int ManipulatedFrame::mouseOriginalDirection(const QMouseEvent* const e)
 		return 0;
 }
 
-float ManipulatedFrame::deltaWithPrevPos(QMouseEvent* const event, Camera* const camera) const {
-	float dx = float(event->x() - prevPos_.x()) / camera->screenWidth();
-	float dy = float(event->y() - prevPos_.y()) / camera->screenHeight();
+qreal ManipulatedFrame::deltaWithPrevPos(QMouseEvent* const event, Camera* const camera) const {
+	qreal dx = qreal(event->x() - prevPos_.x()) / camera->screenWidth();
+	qreal dy = qreal(event->y() - prevPos_.y()) / camera->screenHeight();
 
-	float value = fabs(dx) > fabs(dy) ? dx : dy;
+	qreal value = fabs(dx) > fabs(dy) ? dx : dy;
 	return value * zoomSensitivity();
 }
 
-float ManipulatedFrame::wheelDelta(const QWheelEvent* event) const {
-	static const float WHEEL_SENSITIVITY_COEF = 8E-4f;
+qreal ManipulatedFrame::wheelDelta(const QWheelEvent* event) const {
+	static const qreal WHEEL_SENSITIVITY_COEF = 8E-4;
 	return event->delta() * wheelSensitivity() * WHEEL_SENSITIVITY_COEF;
 }
 
-void ManipulatedFrame::zoom(float delta, const Camera * const camera) {
+void ManipulatedFrame::zoom(qreal delta, const Camera * const camera) {
 	Vec trans(0.0, 0.0, (camera->position() - position()).norm() * delta);
 
 	trans = camera->frame()->orientation().rotate(trans);
@@ -333,7 +333,7 @@ void ManipulatedFrame::mouseMoveEvent(QMouseEvent* const event, Camera* const ca
 		case QGLViewer::TRANSLATE:
 		{
 			const QPoint delta = event->pos() - prevPos_;
-			Vec trans(static_cast<float>(delta.x()), static_cast<float>(-delta.y()), 0.0);
+			Vec trans(delta.x(), -delta.y(), 0.0);
 			// Scale to fit the screen mouse displacement
 			switch (camera->type())
 			{
@@ -367,8 +367,8 @@ void ManipulatedFrame::mouseMoveEvent(QMouseEvent* const event, Camera* const ca
 		{
 			Vec trans = camera->projectedCoordinatesOf(position());
 
-			const double prev_angle = atan2(prevPos_.y()-trans[1], prevPos_.x()-trans[0]);
-			const double      angle = atan2(event->y()-trans[1], event->x()-trans[0]);
+			const qreal prev_angle = atan2(prevPos_.y()-trans[1], prevPos_.x()-trans[0]);
+			const qreal      angle = atan2(event->y()-trans[1], event->x()-trans[0]);
 
 			const Vec axis = transformOf(camera->frame()->inverseTransformOf(Vec(0.0, 0.0, -1.0)));
 			Quaternion rot(axis, angle-prev_angle);
@@ -384,9 +384,9 @@ void ManipulatedFrame::mouseMoveEvent(QMouseEvent* const event, Camera* const ca
 			Vec trans;
 			int dir = mouseOriginalDirection(event);
 			if (dir == 1)
-				trans.setValue(static_cast<float>(event->x() - prevPos_.x()), 0.0, 0.0);
+				trans.setValue(event->x() - prevPos_.x(), 0.0, 0.0);
 			else if (dir == -1)
-				trans.setValue(0.0, static_cast<float>(prevPos_.y() - event->y()), 0.0);
+				trans.setValue(0.0, prevPos_.y() - event->y(), 0.0);
 
 			switch (camera->type())
 			{
@@ -517,34 +517,34 @@ void ManipulatedFrame::wheelEvent(QWheelEvent* const event, Camera* const camera
 \arg for a point inside the ball, it is proportional to the euclidean distance to the ball
 \arg for a point outside the ball, it is proportional to the inverse of this distance (tends to
 zero) on the ball, the function is continuous. */
-static float projectOnBall(float x, float y)
+static qreal projectOnBall(qreal x, qreal y)
 {
 	// If you change the size value, change angle computation in deformedBallQuaternion().
-	const float size       = 1.0f;
-	const float size2      = size*size;
-	const float size_limit = size2*0.5;
+	const qreal size       = 1.0;
+	const qreal size2      = size*size;
+	const qreal size_limit = size2*0.5;
 
-	const float d = x*x + y*y;
+	const qreal d = x*x + y*y;
 	return d < size_limit ? sqrt(size2 - d) : size_limit/sqrt(d);
 }
 
 #ifndef DOXYGEN
 /*! Returns a quaternion computed according to the mouse motion. Mouse positions are projected on a
 deformed ball, centered on (\p cx,\p cy). */
-Quaternion ManipulatedFrame::deformedBallQuaternion(int x, int y, float cx, float cy, const Camera* const camera)
+Quaternion ManipulatedFrame::deformedBallQuaternion(int x, int y, qreal cx, qreal cy, const Camera* const camera)
 {
 	// Points on the deformed ball
-	float px = rotationSensitivity() * (prevPos_.x()  - cx) / camera->screenWidth();
-	float py = rotationSensitivity() * (cy - prevPos_.y())  / camera->screenHeight();
-	float dx = rotationSensitivity() * (x - cx)	    / camera->screenWidth();
-	float dy = rotationSensitivity() * (cy - y)	    / camera->screenHeight();
+	qreal px = rotationSensitivity() * (prevPos_.x()  - cx) / camera->screenWidth();
+	qreal py = rotationSensitivity() * (cy - prevPos_.y())  / camera->screenHeight();
+	qreal dx = rotationSensitivity() * (x - cx)	    / camera->screenWidth();
+	qreal dy = rotationSensitivity() * (cy - y)	    / camera->screenHeight();
 
 	const Vec p1(px, py, projectOnBall(px, py));
 	const Vec p2(dx, dy, projectOnBall(dx, dy));
 	// Approximation of rotation angle
 	// Should be divided by the projectOnBall size, but it is 1.0
 	const Vec axis = cross(p2,p1);
-	const float angle = 5.0 * asin(sqrt(axis.squaredNorm() / p1.squaredNorm() / p2.squaredNorm()));
+	const qreal angle = 5.0 * asin(sqrt(axis.squaredNorm() / p1.squaredNorm() / p2.squaredNorm()));
 	return Quaternion(axis, angle);
 }
 #endif // DOXYGEN
diff --git a/QGLViewer/manipulatedFrame.h b/QGLViewer/manipulatedFrame.h
index 9c2bfb8..f84b922 100644
--- a/QGLViewer/manipulatedFrame.h
+++ b/QGLViewer/manipulatedFrame.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -139,15 +139,15 @@ Q_SIGNALS:
 	//@{
 public Q_SLOTS:
 	/*! Defines the rotationSensitivity(). */
-	void setRotationSensitivity(float sensitivity) { rotationSensitivity_ = sensitivity; }
+	void setRotationSensitivity(qreal sensitivity) { rotationSensitivity_ = sensitivity; }
 	/*! Defines the translationSensitivity(). */
-	void setTranslationSensitivity(float sensitivity) { translationSensitivity_ = sensitivity; }
+	void setTranslationSensitivity(qreal sensitivity) { translationSensitivity_ = sensitivity; }
 	/*! Defines the spinningSensitivity(), in pixels per milliseconds. */
-	void setSpinningSensitivity(float sensitivity) { spinningSensitivity_ = sensitivity; }
+	void setSpinningSensitivity(qreal sensitivity) { spinningSensitivity_ = sensitivity; }
 	/*! Defines the wheelSensitivity(). */
-	void setWheelSensitivity(float sensitivity) { wheelSensitivity_ = sensitivity; }
+	void setWheelSensitivity(qreal sensitivity) { wheelSensitivity_ = sensitivity; }
 	/*! Defines the zoomSensitivity(). */
-	void setZoomSensitivity(float sensitivity) { zoomSensitivity_ = sensitivity; }
+	void setZoomSensitivity(qreal sensitivity) { zoomSensitivity_ = sensitivity; }
 
 public:
 	/*! Returns the influence of a mouse displacement on the ManipulatedFrame rotation.
@@ -158,7 +158,7 @@ public:
 
 	See also setRotationSensitivity(), translationSensitivity(), spinningSensitivity() and
 	wheelSensitivity(). */
-	float rotationSensitivity() const { return rotationSensitivity_; }
+	qreal rotationSensitivity() const { return rotationSensitivity_; }
 	/*! Returns the influence of a mouse displacement on the ManipulatedFrame translation.
 
 	Default value is 1.0. You should not have to modify this value, since with 1.0 the
@@ -177,7 +177,7 @@ public:
 
 	See also setTranslationSensitivity(), rotationSensitivity(), spinningSensitivity() and
 	wheelSensitivity(). */
-	float translationSensitivity() const { return translationSensitivity_; }
+	qreal translationSensitivity() const { return translationSensitivity_; }
 	/*! Returns the minimum mouse speed required (at button release) to make the ManipulatedFrame
 	  spin().
 
@@ -189,7 +189,7 @@ public:
 
 	See also setSpinningSensitivity(), translationSensitivity(), rotationSensitivity() and
 	wheelSensitivity(). */
-	float spinningSensitivity() const { return spinningSensitivity_; }
+	qreal spinningSensitivity() const { return spinningSensitivity_; }
 
 	/*! Returns the zoom sensitivity.
 
@@ -198,7 +198,7 @@ public:
 
 	See also setZoomSensitivity(), translationSensitivity(), rotationSensitivity() wheelSensitivity()
 	and spinningSensitivity(). */
-	float zoomSensitivity() const { return zoomSensitivity_; }
+	qreal zoomSensitivity() const { return zoomSensitivity_; }
 	/*! Returns the mouse wheel sensitivity.
 
 	Default value is 1.0. A higher value will make the wheel action more efficient (usually meaning
@@ -206,7 +206,7 @@ public:
 
 	See also setWheelSensitivity(), translationSensitivity(), rotationSensitivity() zoomSensitivity()
 	and spinningSensitivity(). */
-	float wheelSensitivity() const { return wheelSensitivity_; }
+	qreal wheelSensitivity() const { return wheelSensitivity_; }
 	//@}
 
 
@@ -284,7 +284,7 @@ public Q_SLOTS:
 
 #ifndef DOXYGEN
 protected:
-	Quaternion deformedBallQuaternion(int x, int y, float cx, float cy, const Camera* const camera);
+	Quaternion deformedBallQuaternion(int x, int y, qreal cx, qreal cy, const Camera* const camera);
 
 	QGLViewer::MouseAction action_;
 	Constraint* previousConstraint_; // When manipulation is without Contraint.
@@ -295,29 +295,29 @@ protected:
 
 	/*! Returns a screen scaled delta from event's position to prevPos_, along the
 		X or Y direction, whichever has the largest magnitude. */
-	float deltaWithPrevPos(QMouseEvent* const event, Camera* const camera) const;
+	qreal deltaWithPrevPos(QMouseEvent* const event, Camera* const camera) const;
 	/*! Returns a normalized wheel delta, proportionnal to wheelSensitivity(). */
-	float wheelDelta(const QWheelEvent* event) const;
+	qreal wheelDelta(const QWheelEvent* event) const;
 
 	// Previous mouse position (used for incremental updates) and mouse press position.
 	QPoint prevPos_, pressPos_;
 
 private:
-	void zoom(float delta, const Camera * const camera);
+	void zoom(qreal delta, const Camera * const camera);
 
 #endif // DOXYGEN
 
 private:
 	// Sensitivity
-	float rotationSensitivity_;
-	float translationSensitivity_;
-	float spinningSensitivity_;
-	float wheelSensitivity_;
-	float zoomSensitivity_;
+	qreal rotationSensitivity_;
+	qreal translationSensitivity_;
+	qreal spinningSensitivity_;
+	qreal wheelSensitivity_;
+	qreal zoomSensitivity_;
 
 	// Mouse speed and spinning
 	QTime last_move_time;
-	float mouseSpeed_;
+	qreal mouseSpeed_;
 	int delay_;
 	bool isSpinning_;
 	QTimer spinningTimer_;
diff --git a/QGLViewer/mouseGrabber.cpp b/QGLViewer/mouseGrabber.cpp
index aad123f..7d4d157 100644
--- a/QGLViewer/mouseGrabber.cpp
+++ b/QGLViewer/mouseGrabber.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/mouseGrabber.h b/QGLViewer/mouseGrabber.h
index 7e760a9..64d5fb7 100644
--- a/QGLViewer/mouseGrabber.h
+++ b/QGLViewer/mouseGrabber.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/QGLViewer/qglviewer.cpp b/QGLViewer/qglviewer.cpp
index 7703a0d..7e38de8 100644
--- a/QGLViewer/qglviewer.cpp
+++ b/QGLViewer/qglviewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -207,13 +207,13 @@ static QString QGLViewerVersionString()
 			QString::number(QGLVIEWER_VERSION & 0x0000ff);
 }
 
-static Qt::KeyboardModifiers keyboardModifiersFromState(int state) {
+static Qt::KeyboardModifiers keyboardModifiersFromState(unsigned int state) {
 	// Convertion of keyboard modifiers and mouse buttons as an int is no longer supported : emulate
-	return Qt::KeyboardModifiers(state & 0xFF000000);
+	return Qt::KeyboardModifiers(int(state & 0xFF000000));
 }
 
 
-static Qt::MouseButton mouseButtonFromState(int state) {
+static Qt::MouseButton mouseButtonFromState(unsigned int state) {
 	// Convertion of keyboard modifiers and mouse buttons as an int is no longer supported : emulate
 	return Qt::MouseButton(state & 0xFFFF);
 }
@@ -386,9 +386,9 @@ void QGLViewer::postDraw()
 
 	// Restore foregroundColor
 	float color[4];
-	color[0] = foregroundColor().red()   / 255.0;
-	color[1] = foregroundColor().green() / 255.0;
-	color[2] = foregroundColor().blue()  / 255.0;
+	color[0] = foregroundColor().red()   / 255.0f;
+	color[1] = foregroundColor().green() / 255.0f;
+	color[2] = foregroundColor().blue()  / 255.0f;
 	color[3] = 1.0;
 	glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, color);
 	glDisable(GL_LIGHTING);
@@ -567,7 +567,7 @@ void QGLViewer::setDefaultMouseBindings()
 	setMouseBinding(Qt::Key_Z, Qt::NoModifier, Qt::RightButton, ZOOM_TO_FIT);
 
 #ifdef Q_OS_MAC
-	// Specific Mac bindings for touchpads. Double finger emulates a wheelEvent which zooms.
+	// Specific Mac bindings for touchpads. Two fingers emulate a wheelEvent which zooms.
 	// There is no right button available : make Option key + left emulate the right button.
 	// A Control+Left indeed emulates a right click (OS X system configuration), but it does
 	// no seem to support dragging.
@@ -623,7 +623,7 @@ void QGLViewer::setCamera(Camera* const camera)
 
 void QGLViewer::connectAllCameraKFIInterpolatedSignals(bool connection)
 {
-	for (QMap<int, KeyFrameInterpolator*>::ConstIterator it = camera()->kfi_.begin(), end=camera()->kfi_.end(); it != end; ++it)
+	for (QMap<unsigned int, KeyFrameInterpolator*>::ConstIterator it = camera()->kfi_.begin(), end=camera()->kfi_.end(); it != end; ++it)
 	{
 		if (connection)
 			connect(camera()->keyFrameInterpolator(it.key()), SIGNAL(interpolated()), SLOT(update()));
@@ -653,11 +653,11 @@ See the <a href="../examples/drawLight.html">drawLight example</a> for an illust
 
 \attention You need to enable \c GL_COLOR_MATERIAL before calling this method. \c glColor is set to
 the light diffuse color. */
-void QGLViewer::drawLight(GLenum light, float scale) const
+void QGLViewer::drawLight(GLenum light, qreal scale) const
 {
 	static GLUquadric* quadric = gluNewQuadric();
 
-	const float length = sceneRadius() / 5.0 * scale;
+	const qreal length = sceneRadius() / 5.0 * scale;
 
 	GLboolean lightIsOn;
 	glGetBooleanv(light, &lightIsOn);
@@ -744,8 +744,8 @@ void QGLViewer::drawText(int x, int y, const QString& text, const QFont& fnt)
 		return;
 
 	if (tileRegion_ != NULL) {
-		renderText((x-tileRegion_->xMin) * width() / (tileRegion_->xMax - tileRegion_->xMin),
-				   (y-tileRegion_->yMin) * height() / (tileRegion_->yMax - tileRegion_->yMin), text, scaledFont(fnt));
+		renderText(int((x-tileRegion_->xMin) * width() / (tileRegion_->xMax - tileRegion_->xMin)),
+				   int((y-tileRegion_->yMin) * height() / (tileRegion_->yMax - tileRegion_->yMin)), text, scaledFont(fnt));
 	} else
 		renderText(x, y, text, fnt);
 }
@@ -1088,12 +1088,12 @@ void QGLViewer::endSelection(const QPoint& point)
 		// Of all the objects that were projected in the pick region, we select the closest one (zMin comparison).
 		// This code needs to be modified if you use several stack levels. See glSelectBuffer() man page.
 		GLuint zMin = (selectBuffer())[1];
-		setSelectedName((selectBuffer())[3]);
+		setSelectedName(int((selectBuffer())[3]));
 		for (int i=1; i<nbHits; ++i)
 			if ((selectBuffer())[4*i+1] < zMin)
 			{
 				zMin = (selectBuffer())[4*i+1];
-				setSelectedName((selectBuffer())[4*i+3]);
+				setSelectedName(int((selectBuffer())[4*i+3]));
 			}
 	}
 }
@@ -1588,10 +1588,10 @@ QString QGLViewer::clickActionString(QGLViewer::ClickAction ca)
 	return QString::null;
 }
 
-static QString keyString(int key)
+static QString keyString(unsigned int key)
 {
 # if QT_VERSION >= 0x040100
-	return QKeySequence(key).toString(QKeySequence::NativeText);
+	return QKeySequence(int(key)).toString(QKeySequence::NativeText);
 # else
 	return QString(QKeySequence(key));
 # endif
@@ -1630,7 +1630,7 @@ bool QGLViewer::isValidShortcutKey(int key) {
 
  Use setMouseBindingDescription(Qt::KeyboardModifiers, Qt::MouseButtons, QString, bool, Qt::MouseButtons) instead.
 */
-void QGLViewer::setMouseBindingDescription(int state, QString description, bool doubleClick, Qt::MouseButtons buttonsBefore) {
+void QGLViewer::setMouseBindingDescription(unsigned int state, QString description, bool doubleClick, Qt::MouseButtons buttonsBefore) {
 	qWarning("setMouseBindingDescription(int state,...) is deprecated. Use the modifier/button equivalent");
 	setMouseBindingDescription(keyboardModifiersFromState(state),
 							   mouseButtonFromState(state),
@@ -1820,7 +1820,7 @@ setKeyDescription(Qt::CTRL+Qt::Key_C, "");
 
 See the <a href="../examples/keyboardAndMouse.html">keyboardAndMouse example</a> for illustration
 and the <a href="../keyboard.html">keyboard page</a> for details. */
-void QGLViewer::setKeyDescription(int key, QString description)
+void QGLViewer::setKeyDescription(unsigned int key, QString description)
 {
 	if (description.isEmpty())
 		keyDescription_.remove(key);
@@ -1833,18 +1833,18 @@ QString QGLViewer::cameraPathKeysString() const
 	if (pathIndex_.isEmpty())
 		return QString::null;
 
-	QVector<int> keys;
+	QVector<Qt::Key> keys;
 	keys.reserve(pathIndex_.count());
-	for (QMap<Qt::Key, int>::ConstIterator i = pathIndex_.begin(), endi=pathIndex_.end(); i != endi; ++i)
+	for (QMap<Qt::Key, unsigned int>::ConstIterator i = pathIndex_.begin(), endi=pathIndex_.end(); i != endi; ++i)
 		keys.push_back(i.key());
 	qSort(keys);
 
-	QVector<int>::const_iterator it = keys.begin(), end = keys.end();
+	QVector<Qt::Key>::const_iterator it = keys.begin(), end = keys.end();
 	QString res = keyString(*it);
 
 	const int maxDisplayedKeys = 6;
 	int nbDisplayedKeys = 0;
-	int previousKey = (*it);
+	Qt::Key previousKey = (*it);
 	int state = 0;
 	++it;
 	while ((it != end) && (nbDisplayedKeys < maxDisplayedKeys-1))
@@ -1909,14 +1909,14 @@ QString QGLViewer::keyboardString() const
 	text += QString("<tr bgcolor=\"#aaaacc\"><th align=\"center\">%1</th><th align=\"center\">%2</th></tr>\n").
 			arg(QGLViewer::tr("Key(s)", "Keys column header in help window mouse tab")).arg(QGLViewer::tr("Description", "Description column header in help window mouse tab"));
 
-	QMap<int, QString> keyDescription;
+	QMap<unsigned int, QString> keyDescription;
 
 	// 1 - User defined key descriptions
-	for (QMap<int, QString>::ConstIterator kd=keyDescription_.begin(), kdend=keyDescription_.end(); kd!=kdend; ++kd)
+	for (QMap<unsigned int, QString>::ConstIterator kd=keyDescription_.begin(), kdend=keyDescription_.end(); kd!=kdend; ++kd)
 		keyDescription[kd.key()] = kd.value();
 
 	// Add to text in sorted order
-	for (QMap<int, QString>::ConstIterator kb=keyDescription.begin(), endb=keyDescription.end(); kb!=endb; ++kb)
+	for (QMap<unsigned int, QString>::ConstIterator kb=keyDescription.begin(), endb=keyDescription.end(); kb!=endb; ++kb)
 		text += tableLine(keyString(kb.key()), kb.value());
 
 
@@ -1934,7 +1934,7 @@ QString QGLViewer::keyboardString() const
 			keyDescription[it.value()] = keyboardActionDescription_[it.key()];
 
 	// Add to text in sorted order
-	for (QMap<int, QString>::ConstIterator kb2=keyDescription.begin(), endb2=keyDescription.end(); kb2!=endb2; ++kb2)
+	for (QMap<unsigned int, QString>::ConstIterator kb2=keyDescription.begin(), endb2=keyDescription.end(); kb2!=endb2; ++kb2)
 		text += tableLine(keyString(kb2.key()), kb2.value());
 
 
@@ -2086,7 +2086,7 @@ void QGLViewer::keyPressEvent(QKeyEvent *e)
 		if (pathIndex_.contains(Qt::Key(key)))
 		{
 			// Camera paths
-			int index = pathIndex_[Qt::Key(key)];
+			unsigned int index = pathIndex_[Qt::Key(key)];
 
 			// not safe, but try to double press on two viewers at the same time !
 			static QTime doublePress;
@@ -2253,13 +2253,13 @@ unsigned int QGLViewer::shortcut(KeyboardAction action) const
 }
 
 #ifndef DOXYGEN
-void QGLViewer::setKeyboardAccelerator(KeyboardAction action, int key)
+void QGLViewer::setKeyboardAccelerator(KeyboardAction action, unsigned int key)
 {
 	qWarning("setKeyboardAccelerator is deprecated. Use setShortcut instead.");
 	setShortcut(action, key);
 }
 
-int QGLViewer::keyboardAccelerator(KeyboardAction action) const
+unsigned int QGLViewer::keyboardAccelerator(KeyboardAction action) const
 {
 	qWarning("keyboardAccelerator is deprecated. Use shortcut instead.");
 	return shortcut(action);
@@ -2283,9 +2283,9 @@ If several keys are binded to a given \p index (see setPathKey()), one of them i
 Returns \c 0 if no key is associated with this index.
 
 See also the <a href="../keyboard.html">keyboard page</a>. */
-Qt::Key QGLViewer::pathKey(int index) const
+Qt::Key QGLViewer::pathKey(unsigned int index) const
 {
-	for (QMap<Qt::Key, int>::ConstIterator it = pathIndex_.begin(), end=pathIndex_.end(); it != end; ++it)
+	for (QMap<Qt::Key, unsigned int>::ConstIterator it = pathIndex_.begin(), end=pathIndex_.end(); it != end; ++it)
 		if (it.value() == index)
 			return it.key();
 	return Qt::Key(0);
@@ -2302,12 +2302,13 @@ setPathKey(Qt::Key_Space, 0);
 // Remove this binding
 setPathKey(-Qt::Key_Space);
 \endcode */
-void QGLViewer::setPathKey(int key, int index)
+void QGLViewer::setPathKey(int key, unsigned int index)
 {
+	Qt::Key k = Qt::Key(abs(key));
 	if (key < 0)
-		pathIndex_.remove(Qt::Key(-key));
+		pathIndex_.remove(k);
 	else
-		pathIndex_[Qt::Key(key)] = index;
+		pathIndex_[k] = index;
 }
 
 /*! Sets the playPathKeyboardModifiers() value. */
@@ -2362,19 +2363,19 @@ Qt::KeyboardModifiers QGLViewer::playPathStateKey() const
 	return playPathKeyboardModifiers();
 }
 
-void QGLViewer::setAddKeyFrameStateKey(int buttonState)
+void QGLViewer::setAddKeyFrameStateKey(unsigned int buttonState)
 {
 	qWarning("setAddKeyFrameStateKey has been renamed setAddKeyFrameKeyboardModifiers");
 	setAddKeyFrameKeyboardModifiers(keyboardModifiersFromState(buttonState));
 }
 
-void QGLViewer::setPlayPathStateKey(int buttonState)
+void QGLViewer::setPlayPathStateKey(unsigned int buttonState)
 {
 	qWarning("setPlayPathStateKey has been renamed setPlayPathKeyboardModifiers");
 	setPlayPathKeyboardModifiers(keyboardModifiersFromState(buttonState));
 }
 
-Qt::Key QGLViewer::keyFrameKey(int index) const
+Qt::Key QGLViewer::keyFrameKey(unsigned int index) const
 {
 	qWarning("keyFrameKey has been renamed pathKey.");
 	return pathKey(index);
@@ -2386,13 +2387,13 @@ Qt::KeyboardModifiers QGLViewer::playKeyFramePathStateKey() const
 	return playPathKeyboardModifiers();
 }
 
-void QGLViewer::setKeyFrameKey(int index, int key)
+void QGLViewer::setKeyFrameKey(unsigned int index, int key)
 {
 	qWarning("setKeyFrameKey is deprecated, use setPathKey instead, with swapped parameters.");
 	setPathKey(key, index);
 }
 
-void QGLViewer::setPlayKeyFramePathStateKey(int buttonState)
+void QGLViewer::setPlayKeyFramePathStateKey(unsigned int buttonState)
 {
 	qWarning("setPlayKeyFramePathStateKey has been renamed setPlayPathKeyboardModifiers.");
 	setPlayPathKeyboardModifiers(keyboardModifiersFromState(buttonState));
@@ -2492,13 +2493,13 @@ void QGLViewer::setHandlerKeyboardModifiers(MouseHandler handler, Qt::KeyboardMo
 	clickBinding_ = newClickBinding_;
 }
 
-void QGLViewer::setHandlerStateKey(MouseHandler handler, int buttonState)
+void QGLViewer::setHandlerStateKey(MouseHandler handler, unsigned int buttonState)
 {
 	qWarning("setHandlerStateKey has been renamed setHandlerKeyboardModifiers");
 	setHandlerKeyboardModifiers(handler, keyboardModifiersFromState(buttonState));
 }
 
-void QGLViewer::setMouseStateKey(MouseHandler handler, int buttonState)
+void QGLViewer::setMouseStateKey(MouseHandler handler, unsigned int buttonState)
 {
 	qWarning("setMouseStateKey has been renamed setHandlerKeyboardModifiers.");
 	setHandlerKeyboardModifiers(handler, keyboardModifiersFromState(buttonState));
@@ -2508,7 +2509,7 @@ void QGLViewer::setMouseStateKey(MouseHandler handler, int buttonState)
 
  Use setMouseBinding(Qt::KeyboardModifiers, Qt::MouseButtons, MouseHandler, MouseAction, bool) instead.
 */
-void QGLViewer::setMouseBinding(int state, MouseHandler handler, MouseAction action, bool withConstraint)
+void QGLViewer::setMouseBinding(unsigned int state, MouseHandler handler, MouseAction action, bool withConstraint)
 {
 	qWarning("setMouseBinding(int state, MouseHandler...) is deprecated. Use the modifier/button equivalent");
 	setMouseBinding(keyboardModifiersFromState(state),
@@ -2593,7 +2594,7 @@ void QGLViewer::setMouseBinding(Qt::Key key, Qt::KeyboardModifiers modifiers, Qt
 
  Use setMouseBinding(Qt::KeyboardModifiers, Qt::MouseButtons, MouseHandler, MouseAction, bool) instead.
 */
-void QGLViewer::setMouseBinding(int state, ClickAction action, bool doubleClick, Qt::MouseButtons buttonsBefore) {
+void QGLViewer::setMouseBinding(unsigned int state, ClickAction action, bool doubleClick, Qt::MouseButtons buttonsBefore) {
 	qWarning("setMouseBinding(int state, ClickAction...) is deprecated. Use the modifier/button equivalent");
 	setMouseBinding(keyboardModifiersFromState(state),
 					mouseButtonFromState(state),
@@ -2724,7 +2725,7 @@ void QGLViewer::clearShortcuts() {
 
  Use mouseAction(Qt::Key, Qt::KeyboardModifiers, Qt::MouseButtons) instead.
 */
-QGLViewer::MouseAction QGLViewer::mouseAction(int state) const {
+QGLViewer::MouseAction QGLViewer::mouseAction(unsigned int state) const {
 	qWarning("mouseAction(int state,...) is deprecated. Use the modifier/button equivalent");
 	return mouseAction(Qt::Key(0), keyboardModifiersFromState(state), mouseButtonFromState(state));
 }
@@ -2756,7 +2757,7 @@ QGLViewer::MouseAction QGLViewer::mouseAction(Qt::Key key, Qt::KeyboardModifiers
 
  Use mouseHanler(Qt::Key, Qt::KeyboardModifiers, Qt::MouseButtons) instead.
 */
-int QGLViewer::mouseHandler(int state) const {
+int QGLViewer::mouseHandler(unsigned int state) const {
 	qWarning("mouseHandler(int state,...) is deprecated. Use the modifier/button equivalent");
 	return mouseHandler(Qt::Key(0), keyboardModifiersFromState(state), mouseButtonFromState(state));
 }
@@ -2829,13 +2830,14 @@ See also setMouseBinding(), getClickActionBinding() and getWheelActionBinding().
 void QGLViewer::getMouseActionBinding(MouseHandler handler, MouseAction action, bool withConstraint,
 									  Qt::Key& key, Qt::KeyboardModifiers& modifiers, Qt::MouseButton& button) const
 {
-	for (QMap<MouseBindingPrivate, MouseActionPrivate>::ConstIterator it=mouseBinding_.begin(), end=mouseBinding_.end(); it != end; ++it)
+	for (QMap<MouseBindingPrivate, MouseActionPrivate>::ConstIterator it=mouseBinding_.begin(), end=mouseBinding_.end(); it != end; ++it) {
 		if ( (it.value().handler == handler) && (it.value().action == action) && (it.value().withConstraint == withConstraint) ) {
 			key = it.key().key;
 			modifiers = it.key().modifiers;
 			button = it.key().button;
 			return;
 		}
+	}
 
 	key = Qt::Key(0);
 	modifiers = Qt::NoModifier;
@@ -2902,7 +2904,7 @@ int QGLViewer::wheelHandler(Qt::KeyboardModifiers modifiers) const {
 /*! This method is deprecated since version 2.5.0
 
   Use wheelAction() and wheelHandler() instead. */
-int QGLViewer::wheelButtonState(MouseHandler handler, MouseAction action, bool withConstraint) const
+unsigned int QGLViewer::wheelButtonState(MouseHandler handler, MouseAction action, bool withConstraint) const
 {
 	qWarning("wheelButtonState() is deprecated. Use the wheelAction() and wheelHandler() instead");
 	for (QMap<WheelBindingPrivate, MouseActionPrivate>::ConstIterator it=wheelBinding_.begin(), end=wheelBinding_.end(); it!=end; ++it)
@@ -2916,7 +2918,7 @@ int QGLViewer::wheelButtonState(MouseHandler handler, MouseAction action, bool w
 
  Use clickAction(Qt::KeyboardModifiers, Qt::MouseButtons, bool, Qt::MouseButtons) instead.
 */
-QGLViewer::ClickAction QGLViewer::clickAction(int state, bool doubleClick, Qt::MouseButtons buttonsBefore) const {
+QGLViewer::ClickAction QGLViewer::clickAction(unsigned int state, bool doubleClick, Qt::MouseButtons buttonsBefore) const {
 	qWarning("clickAction(int state,...) is deprecated. Use the modifier/button equivalent");
 	return clickAction(Qt::Key(0),
 					   keyboardModifiersFromState(state),
@@ -2929,13 +2931,13 @@ QGLViewer::ClickAction QGLViewer::clickAction(int state, bool doubleClick, Qt::M
 
  Use getClickActionState(ClickAction, Qt::Key, Qt::KeyboardModifiers, Qt::MouseButton, bool, Qt::MouseButtons) instead.
 */
-void QGLViewer::getClickButtonState(ClickAction action, int& state, bool& doubleClick, Qt::MouseButtons& buttonsBefore) const {
+void QGLViewer::getClickButtonState(ClickAction action, unsigned int& state, bool& doubleClick, Qt::MouseButtons& buttonsBefore) const {
 	qWarning("getClickButtonState(int state,...) is deprecated. Use the modifier/button equivalent");
 	Qt::KeyboardModifiers modifiers;
 	Qt::MouseButton button;
 	Qt::Key key;
 	getClickActionBinding(action, key, modifiers, button, doubleClick, buttonsBefore);
-	state = (int) modifiers | (int) button | (int) key;
+	state = (unsigned int) modifiers | (unsigned int) button | (unsigned int) key;
 }
 #endif
 
@@ -2974,7 +2976,7 @@ bool QGLViewer::cameraIsInRotateMode() const
 	Qt::Key key;
 	Qt::KeyboardModifiers modifiers;
 	Qt::MouseButton button;
-	getMouseActionBinding(CAMERA, ROTATE, false /*constraint*/, key, modifiers, button);
+	getMouseActionBinding(CAMERA, ROTATE, true /*constraint*/, key, modifiers, button);
 	return button != Qt::NoButton;
 }
 
@@ -2995,11 +2997,11 @@ void QGLViewer::toggleCameraMode()
 	Qt::Key key;
 	Qt::KeyboardModifiers modifiers;
 	Qt::MouseButton button;
-	getMouseActionBinding(CAMERA, ROTATE, false /*constraint*/, key, modifiers, button);
+	getMouseActionBinding(CAMERA, ROTATE, true /*constraint*/, key, modifiers, button);
 	bool rotateMode = button != Qt::NoButton;
 
 	if (!rotateMode) {
-		getMouseActionBinding(CAMERA, MOVE_FORWARD, false /*constraint*/, key, modifiers, button);
+		getMouseActionBinding(CAMERA, MOVE_FORWARD, true /*constraint*/, key, modifiers, button);
 	}
 
 	//#CONNECTION# setDefaultMouseBindings()
@@ -3105,17 +3107,17 @@ void QGLViewer::drawVisualHints()
 	// Pivot point cross
 	if (visualHint_ & 1)
 	{
-		const float size = 15.0;
+		const qreal size = 15.0;
 		Vec proj = camera()->projectedCoordinatesOf(camera()->pivotPoint());
 		startScreenCoordinatesSystem();
 		glDisable(GL_LIGHTING);
 		glDisable(GL_DEPTH_TEST);
 		glLineWidth(3.0);
 		glBegin(GL_LINES);
-		glVertex2f(proj.x - size, proj.y);
-		glVertex2f(proj.x + size, proj.y);
-		glVertex2f(proj.x, proj.y - size);
-		glVertex2f(proj.x, proj.y + size);
+		glVertex2d(proj.x - size, proj.y);
+		glVertex2d(proj.x + size, proj.y);
+		glVertex2d(proj.x, proj.y - size);
+		glVertex2d(proj.x, proj.y + size);
 		glEnd();
 		glEnable(GL_DEPTH_TEST);
 		stopScreenCoordinatesSystem();
@@ -3148,8 +3150,8 @@ void QGLViewer::drawVisualHints()
 		glDisable(GL_DEPTH_TEST);
 		glLineWidth(3.0);
 		glBegin(GL_LINES);
-		glVertex2f(pnt.x, pnt.y);
-		glVertex2f(mf->prevPos_.x(), mf->prevPos_.y());
+		glVertex2d(pnt.x, pnt.y);
+		glVertex2i(mf->prevPos_.x(), mf->prevPos_.y());
 		glEnd();
 		glEnable(GL_DEPTH_TEST);
 		stopScreenCoordinatesSystem();
@@ -3198,34 +3200,34 @@ void QGLViewer::resetVisualHints()
 \p length, \p radius and \p nbSubdivisions define its geometry. If \p radius is negative
 (default), it is set to 0.05 * \p length.
 
-Use drawArrow(const Vec& from, const Vec& to, float radius, int nbSubdivisions) or change the \c
+Use drawArrow(const Vec& from, const Vec& to, qreal radius, int nbSubdivisions) or change the \c
 ModelView matrix to place the arrow in 3D.
 
 Uses current color and does not modify the OpenGL state. */
-void QGLViewer::drawArrow(float length, float radius, int nbSubdivisions)
+void QGLViewer::drawArrow(qreal length, qreal radius, int nbSubdivisions)
 {
 	static GLUquadric* quadric = gluNewQuadric();
 
 	if (radius < 0.0)
 		radius = 0.05 * length;
 
-	const float head = 2.5*(radius / length) + 0.1;
-	const float coneRadiusCoef = 4.0 - 5.0 * head;
+	const qreal head = 2.5*(radius / length) + 0.1;
+	const qreal coneRadiusCoef = 4.0 - 5.0 * head;
 
 	gluCylinder(quadric, radius, radius, length * (1.0 - head/coneRadiusCoef), nbSubdivisions, 1);
-	glTranslatef(0.0, 0.0, length * (1.0 - head));
+	glTranslatef(0.0f, 0.0f, float(length * (1.0 - head)));
 	gluCylinder(quadric, coneRadiusCoef * radius, 0.0, head * length, nbSubdivisions, 1);
-	glTranslatef(0.0, 0.0, -length * (1.0 - head));
+	glTranslatef(0.0f, 0.0f, float(-length * (1.0 - head)));
 }
 
 /*! Draws a 3D arrow between the 3D point \p from and the 3D point \p to, both defined in the
 current ModelView coordinates system.
 
-See drawArrow(float length, float radius, int nbSubdivisions) for details. */
-void QGLViewer::drawArrow(const Vec& from, const Vec& to, float radius, int nbSubdivisions)
+See drawArrow(qreal length, qreal radius, int nbSubdivisions) for details. */
+void QGLViewer::drawArrow(const Vec& from, const Vec& to, qreal radius, int nbSubdivisions)
 {
 	glPushMatrix();
-	glTranslatef(from[0],from[1],from[2]);
+	glTranslatef(float(from[0]), float(from[1]), float(from[2]));
 	const Vec dir = to-from;
 	glMultMatrixd(Quaternion(Vec(0,0,1), dir).matrix());
 	QGLViewer::drawArrow(dir.norm(), radius, nbSubdivisions);
@@ -3250,11 +3252,11 @@ the three arrows. The OpenGL state is not modified by this method.
 
 axisIsDrawn() uses this method to draw a representation of the world coordinate system. See also
 QGLViewer::drawArrow() and QGLViewer::drawGrid(). */
-void QGLViewer::drawAxis(float length)
+void QGLViewer::drawAxis(qreal length)
 {
-	const float charWidth = length / 40.0;
-	const float charHeight = length / 30.0;
-	const float charShift = 1.04 * length;
+	const qreal charWidth = length / 40.0;
+	const qreal charHeight = length / 30.0;
+	const qreal charShift = 1.04 * length;
 
 	GLboolean lighting, colorMaterial;
 	glGetBooleanv(GL_LIGHTING, &lighting);
@@ -3264,24 +3266,24 @@ void QGLViewer::drawAxis(float length)
 
 	glBegin(GL_LINES);
 	// The X
-	glVertex3f(charShift,  charWidth, -charHeight);
-	glVertex3f(charShift, -charWidth,  charHeight);
-	glVertex3f(charShift, -charWidth, -charHeight);
-	glVertex3f(charShift,  charWidth,  charHeight);
+	glVertex3d(charShift,  charWidth, -charHeight);
+	glVertex3d(charShift, -charWidth,  charHeight);
+	glVertex3d(charShift, -charWidth, -charHeight);
+	glVertex3d(charShift,  charWidth,  charHeight);
 	// The Y
-	glVertex3f( charWidth, charShift, charHeight);
-	glVertex3f(0.0,        charShift, 0.0);
-	glVertex3f(-charWidth, charShift, charHeight);
-	glVertex3f(0.0,        charShift, 0.0);
-	glVertex3f(0.0,        charShift, 0.0);
-	glVertex3f(0.0,        charShift, -charHeight);
+	glVertex3d( charWidth, charShift, charHeight);
+	glVertex3d(0.0,        charShift, 0.0);
+	glVertex3d(-charWidth, charShift, charHeight);
+	glVertex3d(0.0,        charShift, 0.0);
+	glVertex3d(0.0,        charShift, 0.0);
+	glVertex3d(0.0,        charShift, -charHeight);
 	// The Z
-	glVertex3f(-charWidth,  charHeight, charShift);
-	glVertex3f( charWidth,  charHeight, charShift);
-	glVertex3f( charWidth,  charHeight, charShift);
-	glVertex3f(-charWidth, -charHeight, charShift);
-	glVertex3f(-charWidth, -charHeight, charShift);
-	glVertex3f( charWidth, -charHeight, charShift);
+	glVertex3d(-charWidth,  charHeight, charShift);
+	glVertex3d( charWidth,  charHeight, charShift);
+	glVertex3d( charWidth,  charHeight, charShift);
+	glVertex3d(-charWidth, -charHeight, charShift);
+	glVertex3d(-charWidth, -charHeight, charShift);
+	glVertex3d( charWidth, -charHeight, charShift);
 	glEnd();
 
 	glEnable(GL_LIGHTING);
@@ -3295,14 +3297,14 @@ void QGLViewer::drawAxis(float length)
 	color[0] = 1.0f;  color[1] = 0.7f;  color[2] = 0.7f;  color[3] = 1.0f;
 	glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, color);
 	glPushMatrix();
-	glRotatef(90.0, 0.0, 1.0, 0.0);
+	glRotatef(90.0f, 0.0f, 1.0f, 0.0f);
 	QGLViewer::drawArrow(length, 0.01*length);
 	glPopMatrix();
 
 	color[0] = 0.7f;  color[1] = 1.0f;  color[2] = 0.7f;  color[3] = 1.0f;
 	glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, color);
 	glPushMatrix();
-	glRotatef(-90.0, 1.0, 0.0, 0.0);
+	glRotatef(-90.0f, 1.0f, 0.0f, 0.0f);
 	QGLViewer::drawArrow(length, 0.01*length);
 	glPopMatrix();
 
@@ -3318,7 +3320,7 @@ void QGLViewer::drawAxis(float length)
 place and orientate the grid in 3D space (see the drawAxis() documentation).
 
 The OpenGL state is not modified by this method. */
-void QGLViewer::drawGrid(float size, int nbSubdivisions)
+void QGLViewer::drawGrid(qreal size, int nbSubdivisions)
 {
 	GLboolean lighting;
 	glGetBooleanv(GL_LIGHTING, &lighting);
@@ -3328,11 +3330,11 @@ void QGLViewer::drawGrid(float size, int nbSubdivisions)
 	glBegin(GL_LINES);
 	for (int i=0; i<=nbSubdivisions; ++i)
 	{
-		const float pos = size*(2.0*i/nbSubdivisions-1.0);
-		glVertex2f(pos, -size);
-		glVertex2f(pos, +size);
-		glVertex2f(-size, pos);
-		glVertex2f( size, pos);
+		const qreal pos = size*(2.0*i/nbSubdivisions-1.0);
+		glVertex2d(pos, -size);
+		glVertex2d(pos, +size);
+		glVertex2d(-size, pos);
+		glVertex2d( size, pos);
 	}
 	glEnd();
 
@@ -3795,8 +3797,8 @@ void QGLViewer::copyBufferToTexture(GLint internalFormat, GLenum format)
 	{
 		bufferTextureWidth_ = w;
 		bufferTextureHeight_ = h;
-		bufferTextureMaxU_ = width()  / float(bufferTextureWidth_);
-		bufferTextureMaxV_ = height() / float(bufferTextureHeight_);
+		bufferTextureMaxU_ = width()  / qreal(bufferTextureWidth_);
+		bufferTextureMaxV_ = height() / qreal(bufferTextureHeight_);
 		init = true;
 	}
 
@@ -3822,7 +3824,7 @@ void QGLViewer::copyBufferToTexture(GLint internalFormat, GLenum format)
 	if (init)
 	{
 		if (format == GL_NONE)
-			format = internalFormat;
+			format = GLenum(internalFormat);
 
 		glTexImage2D(GL_TEXTURE_2D, 0, internalFormat, bufferTextureWidth_, bufferTextureHeight_, 0, format, GL_UNSIGNED_BYTE, NULL);
 	}
diff --git a/QGLViewer/qglviewer.h b/QGLViewer/qglviewer.h
index c0cedf7..113e0a8 100644
--- a/QGLViewer/qglviewer.h
+++ b/QGLViewer/qglviewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -158,7 +158,7 @@ public:
 
 	Use setBackgroundColor() to define and activate a background color.
 
-	\attention Each QColor component is an integer ranging from 0 to 255. This differs from the float
+	\attention Each QColor component is an integer ranging from 0 to 255. This differs from the qreal
 	values used by \c glClearColor() which are in the 0.0-1.0 range. Default value is (51, 51, 51)
 	(dark gray). You may have to change foregroundColor() accordingly.
 
@@ -172,7 +172,7 @@ public:
 	This color is used when FPSIsDisplayed(), gridIsDrawn(), to display the camera paths when the
 	cameraIsEdited().
 
-	\attention Each QColor component is an integer in the range 0-255. This differs from the float
+	\attention Each QColor component is an integer in the range 0-255. This differs from the qreal
 	values used by \c glColor3f() which are in the range 0-1. Default value is (180, 180, 180) (light
 	gray).
 
@@ -203,7 +203,7 @@ public:
 
 	Default value is 1.0. This method is equivalent to camera()->sceneRadius(). See
 	setSceneRadius(). */
-	float sceneRadius() const { return camera()->sceneRadius(); }
+	qreal sceneRadius() const { return camera()->sceneRadius(); }
 	/*! Returns the scene center, defined in world coordinates.
 
 	See sceneRadius() for details.
@@ -219,7 +219,7 @@ public Q_SLOTS:
 
 		The camera() qglviewer::Camera::flySpeed() is set to 1% of this value by this method. Simple
 		wrapper around camera()->setSceneRadius(). */
-	virtual void setSceneRadius(float radius) { camera()->setSceneRadius(radius); }
+	virtual void setSceneRadius(qreal radius) { camera()->setSceneRadius(radius); }
 
 	/*! Sets the sceneCenter(), defined in world coordinates.
 
@@ -308,7 +308,7 @@ public Q_SLOTS:
 	//@{
 public:
 	/*! Returns the aspect ratio of the viewer's widget (width() / height()). */
-	float aspectRatio() const { return static_cast<float>(width())/static_cast<float>(height()); }
+	qreal aspectRatio() const { return width() / static_cast<qreal>(height()); }
 	/*! Returns the current averaged viewer frame rate.
 
 	This value is computed and averaged over 20 successive frames. It only changes every 20 draw()
@@ -319,7 +319,7 @@ public:
 
 	This value is meaningful only when draw() is regularly called, either using a \c QTimer, when
 	animationIsStarted() or when the camera is manipulated with the mouse.  */
-	float currentFPS() { return f_p_s_; }
+	qreal currentFPS() { return f_p_s_; }
 	/*! Returns \c true if the viewer is in fullScreen mode.
 
 	Default value is \c false. Set by setFullScreen() or toggleFullScreen().
@@ -367,20 +367,20 @@ private:
 	/*! @name Display methods */
 	//@{
 public:
-	static void drawArrow(float length=1.0f, float radius=-1.0f, int nbSubdivisions=12);
-	static void drawArrow(const qglviewer::Vec& from, const qglviewer::Vec& to, float radius=-1.0f, int nbSubdivisions=12);
-	static void drawAxis(float length=1.0f);
-	static void drawGrid(float size=1.0f, int nbSubdivisions=10);
+	static void drawArrow(qreal length=1.0, qreal radius=-1.0, int nbSubdivisions=12);
+	static void drawArrow(const qglviewer::Vec& from, const qglviewer::Vec& to, qreal radius=-1.0, int nbSubdivisions=12);
+	static void drawAxis(qreal length=1.0);
+	static void drawGrid(qreal size=1.0, int nbSubdivisions=10);
 
 	virtual void startScreenCoordinatesSystem(bool upward=false) const;
 	virtual void stopScreenCoordinatesSystem() const;
 
 	void drawText(int x, int y, const QString& text, const QFont& fnt=QFont());
 	void displayMessage(const QString& message, int delay=2000);
-	// void draw3DText(const qglviewer::Vec& pos, const qglviewer::Vec& normal, const QString& string, GLfloat height=0.1f);
+	// void draw3DText(const qglviewer::Vec& pos, const qglviewer::Vec& normal, const QString& string, GLfloat height=0.1);
 
 protected:
-	virtual void drawLight(GLenum light, float scale = 1.0f) const;
+	virtual void drawLight(GLenum light, qreal scale = 1.0) const;
 
 private:
 	void displayFPS();
@@ -501,7 +501,7 @@ public:
 	\note This value has no impact on the images produced in vectorial format. */
 	int snapshotQuality() { return snapshotQuality_; }
 
-	// Qt 2.3 does not support double default value parameters in slots.
+	// Qt 2.3 does not support qreal default value parameters in slots.
 	// Remove "Q_SLOTS" from the following line to compile with Qt 2.3
 public Q_SLOTS:
 	void saveSnapshot(bool automatic=true, bool overwrite=false);
@@ -528,7 +528,7 @@ private:
 	It then contains the current tiled region, which is used by startScreenCoordinatesSystem
 	to adapt the coordinate system. Not using it would result in a tiled drawing of the parts
 	that use startScreenCoordinatesSystem. Also used by scaledFont for same purposes. */
-	class TileRegion { public : double xMin, yMin, xMax, yMax, textScale; };
+	class TileRegion { public : qreal xMin, yMin, xMax, yMax, textScale; };
 #endif
 
 public:
@@ -557,7 +557,7 @@ public:
 			if (f.pixelSize() == -1)
 				f.setPointSizeF(f.pointSizeF() * tileRegion_->textScale);
 			else
-				f.setPixelSize(f.pixelSize() * tileRegion_->textScale);
+				f.setPixelSize(int(f.pixelSize() * tileRegion_->textScale));
 			return f;
 		}
 	}
@@ -576,9 +576,9 @@ public:
 
 	Use (0,0) to (bufferTextureMaxU(), bufferTextureMaxV()) texture coordinates to map the entire
 	texture on a quad. */
-	float bufferTextureMaxU() const { return bufferTextureMaxU_; }
+	qreal bufferTextureMaxU() const { return bufferTextureMaxU_; }
 	/*! Same as bufferTextureMaxU(), but for the v texture coordinate. */
-	float bufferTextureMaxV() const { return bufferTextureMaxV_; }
+	qreal bufferTextureMaxV() const { return bufferTextureMaxV_; }
 public Q_SLOTS:
 	void copyBufferToTexture(GLint internalFormat, GLenum format=GL_NONE);
 	//@}
@@ -910,35 +910,35 @@ public:
 	unsigned int shortcut(KeyboardAction action) const;
 #ifndef DOXYGEN
 	// QGLViewer 1.x
-	int keyboardAccelerator(KeyboardAction action) const;
-	Qt::Key keyFrameKey(int index) const;
+	unsigned int keyboardAccelerator(KeyboardAction action) const;
+	Qt::Key keyFrameKey(unsigned int index) const;
 	Qt::KeyboardModifiers playKeyFramePathStateKey() const;
 	// QGLViewer 2.0 without Qt4 support
 	Qt::KeyboardModifiers addKeyFrameStateKey() const;
 	Qt::KeyboardModifiers playPathStateKey() const;
 #endif
-	Qt::Key pathKey(int index) const;
+	Qt::Key pathKey(unsigned int index) const;
 	Qt::KeyboardModifiers addKeyFrameKeyboardModifiers() const;
 	Qt::KeyboardModifiers playPathKeyboardModifiers() const;
 
 public Q_SLOTS:
 	void setShortcut(KeyboardAction action, unsigned int key);
 #ifndef DOXYGEN
-	void setKeyboardAccelerator(KeyboardAction action, int key);
+	void setKeyboardAccelerator(KeyboardAction action, unsigned int key);
 #endif
-	void setKeyDescription(int key, QString description);
+	void setKeyDescription(unsigned int key, QString description);
 	void clearShortcuts();
 
 	// Key Frames shortcut keys
 #ifndef DOXYGEN
 	// QGLViewer 1.x compatibility methods
-	virtual void setKeyFrameKey(int index, int key);
-	virtual void setPlayKeyFramePathStateKey(int buttonState);
+	virtual void setKeyFrameKey(unsigned int index, int key);
+	virtual void setPlayKeyFramePathStateKey(unsigned int buttonState);
 	// QGLViewer 2.0 without Qt4 support
-	virtual void setPlayPathStateKey(int buttonState);
-	virtual void setAddKeyFrameStateKey(int buttonState);
+	virtual void setPlayPathStateKey(unsigned int buttonState);
+	virtual void setAddKeyFrameStateKey(unsigned int buttonState);
 #endif
-	virtual void setPathKey(int key, int index = 0);
+	virtual void setPathKey(int key, unsigned int index = 0);
 	virtual void setPlayPathKeyboardModifiers(Qt::KeyboardModifiers modifiers);
 	virtual void setAddKeyFrameKeyboardModifiers(Qt::KeyboardModifiers modifiers);
 	//@}
@@ -973,12 +973,12 @@ public:
 					   SCREEN_TRANSLATE, ZOOM_ON_REGION };
 
 #ifndef DOXYGEN
-	MouseAction mouseAction(int state) const;
-	int mouseHandler(int state) const;
+	MouseAction mouseAction(unsigned int state) const;
+	int mouseHandler(unsigned int state) const;
 	int mouseButtonState(MouseHandler handler, MouseAction action, bool withConstraint=true) const;
-	ClickAction clickAction(int state, bool doubleClick, Qt::MouseButtons buttonsBefore) const;
-	void getClickButtonState(ClickAction action, int& state, bool& doubleClick, Qt::MouseButtons& buttonsBefore) const;
-	int wheelButtonState(MouseHandler handler, MouseAction action, bool withConstraint=true) const;
+	ClickAction clickAction(unsigned int state, bool doubleClick, Qt::MouseButtons buttonsBefore) const;
+	void getClickButtonState(ClickAction action, unsigned int & state, bool& doubleClick, Qt::MouseButtons& buttonsBefore) const;
+	unsigned int wheelButtonState(MouseHandler handler, MouseAction action, bool withConstraint=true) const;
 #endif
 
 	MouseAction mouseAction(Qt::Key key, Qt::KeyboardModifiers modifiers, Qt::MouseButton button) const;
@@ -1001,9 +1001,9 @@ public:
 
 public Q_SLOTS:
 #ifndef DOXYGEN
-	void setMouseBinding(int state, MouseHandler handler, MouseAction action, bool withConstraint=true);
-	void setMouseBinding(int state, ClickAction action, bool doubleClick=false, Qt::MouseButtons buttonsBefore=Qt::NoButton);
-	void setMouseBindingDescription(int state, QString description, bool doubleClick=false, Qt::MouseButtons buttonsBefore=Qt::NoButton);
+	void setMouseBinding(unsigned int state, MouseHandler handler, MouseAction action, bool withConstraint=true);
+	void setMouseBinding(unsigned int state, ClickAction action, bool doubleClick=false, Qt::MouseButtons buttonsBefore=Qt::NoButton);
+	void setMouseBindingDescription(unsigned int state, QString description, bool doubleClick=false, Qt::MouseButtons buttonsBefore=Qt::NoButton);
 #endif
 
 	void setMouseBinding(Qt::KeyboardModifiers modifiers, Qt::MouseButton buttons, MouseHandler handler, MouseAction action, bool withConstraint=true);
@@ -1023,8 +1023,8 @@ public Q_SLOTS:
 	int wheelHandler(Qt::KeyboardModifiers modifiers) const;
 
 	void setHandlerKeyboardModifiers(MouseHandler handler, Qt::KeyboardModifiers modifiers);
-	void setHandlerStateKey(MouseHandler handler, int buttonState);
-	void setMouseStateKey(MouseHandler handler, int buttonState);
+	void setHandlerStateKey(MouseHandler handler, unsigned int buttonState);
+	void setMouseStateKey(MouseHandler handler, unsigned int buttonState);
 #endif
 
 private:
@@ -1126,8 +1126,8 @@ private:
 	// C a m e r a
 	qglviewer::Camera* camera_;
 	bool cameraIsEdited_;
-	float previousCameraZClippingCoefficient_;
-	int previousPathId_; // Double key press recognition
+	qreal previousCameraZClippingCoefficient_;
+	unsigned int previousPathId_; // double key press recognition
 	void connectAllCameraKFIInterpolatedSignals(bool connection=true);
 
 	// C o l o r s
@@ -1151,7 +1151,7 @@ private:
 	QTime fpsTime_;
 	unsigned int fpsCounter_;
 	QString fpsString_;
-	float f_p_s_;
+	qreal f_p_s_;
 
 	// M e s s a g e s
 	QString message_;
@@ -1182,15 +1182,15 @@ private:
 	QString cameraPathKeysString() const;
 	QMap<KeyboardAction, QString> keyboardActionDescription_;
 	QMap<KeyboardAction, unsigned int> keyboardBinding_;
-	QMap<int, QString> keyDescription_;
+	QMap<unsigned int, QString> keyDescription_;
 
 	// K e y   F r a m e s   s h o r t c u t s
-	QMap<Qt::Key, int> pathIndex_;
+	QMap<Qt::Key, unsigned int> pathIndex_;
 	Qt::KeyboardModifiers addKeyFrameKeyboardModifiers_, playPathKeyboardModifiers_;
 
 	// B u f f e r   T e x t u r e
 	GLuint bufferTextureId_;
-	float bufferTextureMaxU_, bufferTextureMaxV_;
+	qreal bufferTextureMaxU_, bufferTextureMaxV_;
 	int bufferTextureWidth_, bufferTextureHeight_;
 	unsigned int previousBufferTextureFormat_;
 	int previousBufferTextureInternalFormat_;
diff --git a/QGLViewer/qglviewer_fr.qm b/QGLViewer/qglviewer_fr.qm
index 60f029d..4e9253f 100644
Binary files a/QGLViewer/qglviewer_fr.qm and b/QGLViewer/qglviewer_fr.qm differ
diff --git a/QGLViewer/qglviewer_fr.ts b/QGLViewer/qglviewer_fr.ts
index 2117b0d..72372d1 100644
--- a/QGLViewer/qglviewer_fr.ts
+++ b/QGLViewer/qglviewer_fr.ts
@@ -519,7 +519,7 @@
     <message>
         <source>&About</source>
         <comment>Help window about title</comment>
-        <translation>À propos</translation>
+        <translation>À &propos</translation>
     </message>
     <message>
         <source><h1>libQGLViewer</h1><h3>Version %1</h3><br>A versatile 3D viewer based on OpenGL and Qt<br>Copyright 2002-%2 Gilles Debunne<br><code>%3</code></source>
diff --git a/QGLViewer/quaternion.cpp b/QGLViewer/quaternion.cpp
index 48f9a6b..1f8bd5a 100644
--- a/QGLViewer/quaternion.cpp
+++ b/QGLViewer/quaternion.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -34,10 +34,10 @@ Note that this rotation is not uniquely defined. The selected axis is usually or
 and \p to, minimizing the rotation angle. This method is robust and can handle small or almost identical vectors. */
 Quaternion::Quaternion(const Vec& from, const Vec& to)
 {
-	const double epsilon = 1E-10f;
+	const qreal epsilon = 1E-10;
 
-	const double fromSqNorm = from.squaredNorm();
-	const double toSqNorm   = to.squaredNorm();
+	const qreal fromSqNorm = from.squaredNorm();
+	const qreal toSqNorm   = to.squaredNorm();
 	// Identity Quaternion when one vector is null
 	if ((fromSqNorm < epsilon) || (toSqNorm < epsilon))
 	{
@@ -47,13 +47,13 @@ Quaternion::Quaternion(const Vec& from, const Vec& to)
 	else
 	{
 		Vec axis = cross(from, to);
-		const double axisSqNorm = axis.squaredNorm();
+		const qreal axisSqNorm = axis.squaredNorm();
 
 		// Aligned vectors, pick any axis, not aligned with from or to
 		if (axisSqNorm < epsilon)
 			axis = from.orthogonalVec();
 
-		double angle = asin(sqrt(axisSqNorm / (fromSqNorm * toSqNorm)));
+		qreal angle = asin(sqrt(axisSqNorm / (fromSqNorm * toSqNorm)));
 
 		if (from*to < 0.0)
 			angle = M_PI-angle;
@@ -75,18 +75,18 @@ Vec Quaternion::inverseRotate(const Vec& v) const
 See also inverseRotate() and operator*(const Quaternion&, const Vec&). */
 Vec Quaternion::rotate(const Vec& v) const
 {
-	const double q00 = 2.0l * q[0] * q[0];
-	const double q11 = 2.0l * q[1] * q[1];
-	const double q22 = 2.0l * q[2] * q[2];
+	const qreal q00 = 2.0 * q[0] * q[0];
+	const qreal q11 = 2.0 * q[1] * q[1];
+	const qreal q22 = 2.0 * q[2] * q[2];
 
-	const double q01 = 2.0l * q[0] * q[1];
-	const double q02 = 2.0l * q[0] * q[2];
-	const double q03 = 2.0l * q[0] * q[3];
+	const qreal q01 = 2.0 * q[0] * q[1];
+	const qreal q02 = 2.0 * q[0] * q[2];
+	const qreal q03 = 2.0 * q[0] * q[3];
 
-	const double q12 = 2.0l * q[1] * q[2];
-	const double q13 = 2.0l * q[1] * q[3];
+	const qreal q12 = 2.0 * q[1] * q[2];
+	const qreal q13 = 2.0 * q[1] * q[3];
 
-	const double q23 = 2.0l * q[2] * q[3];
+	const qreal q23 = 2.0 * q[2] * q[3];
 
 	return Vec((1.0 - q11 - q22)*v[0] + (      q01 - q23)*v[1] + (      q02 + q13)*v[2],
 			(      q01 + q23)*v[0] + (1.0 - q22 - q00)*v[1] + (      q12 - q03)*v[2],
@@ -101,15 +101,15 @@ Vec Quaternion::rotate(const Vec& v) const
 
   setFromRotatedBasis() sets a Quaternion from the three axis of a rotated frame. It actually fills
   the three columns of a matrix with these rotated basis vectors and calls this method. */
-void Quaternion::setFromRotationMatrix(const double m[3][3])
+void Quaternion::setFromRotationMatrix(const qreal m[3][3])
 {
 	// Compute one plus the trace of the matrix
-	const double onePlusTrace = 1.0 + m[0][0] + m[1][1] + m[2][2];
+	const qreal onePlusTrace = 1.0 + m[0][0] + m[1][1] + m[2][2];
 
 	if (onePlusTrace > 1E-5)
 	{
 		// Direct computation
-		const double s = sqrt(onePlusTrace) * 2.0;
+		const qreal s = sqrt(onePlusTrace) * 2.0;
 		q[0] = (m[2][1] - m[1][2]) / s;
 		q[1] = (m[0][2] - m[2][0]) / s;
 		q[2] = (m[1][0] - m[0][1]) / s;
@@ -120,7 +120,7 @@ void Quaternion::setFromRotationMatrix(const double m[3][3])
 		// Computation depends on major diagonal term
 		if ((m[0][0] > m[1][1])&(m[0][0] > m[2][2]))
 		{
-			const double s = sqrt(1.0 + m[0][0] - m[1][1] - m[2][2]) * 2.0;
+			const qreal s = sqrt(1.0 + m[0][0] - m[1][1] - m[2][2]) * 2.0;
 			q[0] = 0.25 * s;
 			q[1] = (m[0][1] + m[1][0]) / s;
 			q[2] = (m[0][2] + m[2][0]) / s;
@@ -129,7 +129,7 @@ void Quaternion::setFromRotationMatrix(const double m[3][3])
 		else
 			if (m[1][1] > m[2][2])
 			{
-				const double s = sqrt(1.0 + m[1][1] - m[0][0] - m[2][2]) * 2.0;
+				const qreal s = sqrt(1.0 + m[1][1] - m[0][0] - m[2][2]) * 2.0;
 				q[0] = (m[0][1] + m[1][0]) / s;
 				q[1] = 0.25 * s;
 				q[2] = (m[1][2] + m[2][1]) / s;
@@ -137,7 +137,7 @@ void Quaternion::setFromRotationMatrix(const double m[3][3])
 			}
 			else
 			{
-				const double s = sqrt(1.0 + m[2][2] - m[0][0] - m[1][1]) * 2.0;
+				const qreal s = sqrt(1.0 + m[2][2] - m[0][0] - m[1][1]) * 2.0;
 				q[0] = (m[0][2] + m[2][0]) / s;
 				q[1] = (m[1][2] + m[2][1]) / s;
 				q[2] = 0.25 * s;
@@ -150,12 +150,12 @@ void Quaternion::setFromRotationMatrix(const double m[3][3])
 #ifndef DOXYGEN
 void Quaternion::setFromRotationMatrix(const float m[3][3])
 {
-	qWarning("setFromRotationMatrix now waits for a double[3][3] parameter");
+	qWarning("setFromRotationMatrix now expects a double[3][3] parameter");
 
-	double mat[3][3];
+	float mat[3][3];
 	for (int i=0; i<3; ++i)
 		for (int j=0; j<3; ++j)
-			mat[i][j] = double(m[i][j]);
+			mat[i][j] = float(m[i][j]);
 
 	setFromRotationMatrix(mat);
 }
@@ -181,10 +181,10 @@ void Quaternion::setFromRotatedBase(const Vec& X, const Vec& Y, const Vec& Z)
   See also setFromRotationMatrix() and Quaternion(const Vec&, const Vec&). */
 void Quaternion::setFromRotatedBasis(const Vec& X, const Vec& Y, const Vec& Z)
 {
-	double m[3][3];
-	double normX = X.norm();
-	double normY = Y.norm();
-	double normZ = Z.norm();
+	qreal m[3][3];
+	qreal normX = X.norm();
+	qreal normY = Y.norm();
+	qreal normZ = Z.norm();
 
 	for (int i=0; i<3; ++i)
 	{
@@ -198,17 +198,17 @@ void Quaternion::setFromRotatedBasis(const Vec& X, const Vec& Y, const Vec& Z)
 
 /*! Returns the axis vector and the angle (in radians) of the rotation represented by the Quaternion.
  See the axis() and angle() documentations. */
-void Quaternion::getAxisAngle(Vec& axis, float& angle) const
+void Quaternion::getAxisAngle(Vec& axis, qreal& angle) const
 {
-	angle = 2.0*acos(q[3]);
+	angle = 2.0 * acos(q[3]);
 	axis = Vec(q[0], q[1], q[2]);
-	const double sinus = axis.norm();
+	const qreal sinus = axis.norm();
 	if (sinus > 1E-8)
 		axis /= sinus;
 
 	if (angle > M_PI)
 	{
-		angle = 2.0*M_PI - angle;
+		angle = 2.0 * qreal(M_PI) - angle;
 		axis = -axis;
 	}
 }
@@ -219,7 +219,7 @@ It is null for an identity Quaternion. See also angle() and getAxisAngle(). */
 Vec Quaternion::axis() const
 {
 	Vec res = Vec(q[0], q[1], q[2]);
-	const double sinus = res.norm();
+	const qreal sinus = res.norm();
 	if (sinus > 1E-8)
 		res /= sinus;
 	return (acos(q[3]) <= M_PI/2.0) ? res : -res;
@@ -231,9 +231,9 @@ Vec Quaternion::axis() const
  axis() direction.
 
  See also axis() and getAxisAngle(). */
-double Quaternion::angle() const
+qreal Quaternion::angle() const
 {
-	const double angle = 2.0 * acos(q[3]);
+	const qreal angle = 2.0 * acos(q[3]);
 	return (angle <= M_PI) ? angle : 2.0*M_PI - angle;
 }
 
@@ -288,7 +288,7 @@ Quaternion::Quaternion(const QDomElement& element)
 	QStringList attribute;
 	attribute << "q0" << "q1" << "q2" << "q3";
 	for (int i=0; i<attribute.size(); ++i)
-		q[i] = DomUtils::doubleFromDom(element, attribute[i], ((i<3)?0.0f:1.0f));
+		q[i] = DomUtils::qrealFromDom(element, attribute[i], ((i<3)?0.0:1.0));
 }
 
 /*! Returns the Quaternion associated 4x4 OpenGL rotation matrix.
@@ -316,39 +316,39 @@ Use matrix() if you do not need to store this matrix and simply want to alter th
 matrix. See also getInverseMatrix() and Frame::getMatrix(). */
 void Quaternion::getMatrix(GLdouble m[4][4]) const
 {
-	const double q00 = 2.0l * q[0] * q[0];
-	const double q11 = 2.0l * q[1] * q[1];
-	const double q22 = 2.0l * q[2] * q[2];
+	const qreal q00 = 2.0 * q[0] * q[0];
+	const qreal q11 = 2.0 * q[1] * q[1];
+	const qreal q22 = 2.0 * q[2] * q[2];
 
-	const double q01 = 2.0l * q[0] * q[1];
-	const double q02 = 2.0l * q[0] * q[2];
-	const double q03 = 2.0l * q[0] * q[3];
+	const qreal q01 = 2.0 * q[0] * q[1];
+	const qreal q02 = 2.0 * q[0] * q[2];
+	const qreal q03 = 2.0 * q[0] * q[3];
 
-	const double q12 = 2.0l * q[1] * q[2];
-	const double q13 = 2.0l * q[1] * q[3];
+	const qreal q12 = 2.0 * q[1] * q[2];
+	const qreal q13 = 2.0 * q[1] * q[3];
 
-	const double q23 = 2.0l * q[2] * q[3];
+	const qreal q23 = 2.0 * q[2] * q[3];
 
-	m[0][0] = 1.0l - q11 - q22;
-	m[1][0] =        q01 - q23;
-	m[2][0] =        q02 + q13;
+	m[0][0] = 1.0 - q11 - q22;
+	m[1][0] =       q01 - q23;
+	m[2][0] =       q02 + q13;
 
-	m[0][1] =        q01 + q23;
-	m[1][1] = 1.0l - q22 - q00;
-	m[2][1] =        q12 - q03;
+	m[0][1] =       q01 + q23;
+	m[1][1] = 1.0 - q22 - q00;
+	m[2][1] =       q12 - q03;
 
-	m[0][2] =        q02 - q13;
-	m[1][2] =        q12 + q03;
-	m[2][2] = 1.0l - q11 - q00;
+	m[0][2] =       q02 - q13;
+	m[1][2] =       q12 + q03;
+	m[2][2] = 1.0 - q11 - q00;
 
-	m[0][3] = 0.0l;
-	m[1][3] = 0.0l;
-	m[2][3] = 0.0l;
+	m[0][3] = 0.0;
+	m[1][3] = 0.0;
+	m[2][3] = 0.0;
 
-	m[3][0] = 0.0l;
-	m[3][1] = 0.0l;
-	m[3][2] = 0.0l;
-	m[3][3] = 1.0l;
+	m[3][0] = 0.0;
+	m[3][1] = 0.0;
+	m[3][2] = 0.0;
+	m[3][3] = 1.0;
 }
 
 /*! Same as getMatrix(), but with a \c GLdouble[16] parameter. See also getInverseMatrix() and Frame::getMatrix(). */
@@ -368,14 +368,14 @@ void Quaternion::getMatrix(GLdouble m[16]) const
 
   \attention \p m uses the European mathematical representation of the rotation matrix. Use matrix()
   and getMatrix() to retrieve the OpenGL transposed version. */
-void Quaternion::getRotationMatrix(float m[3][3]) const
+void Quaternion::getRotationMatrix(qreal m[3][3]) const
 {
 	static GLdouble mat[4][4];
 	getMatrix(mat);
 	for (int i=0; i<3; ++i)
 		for (int j=0; j<3; ++j)
 			// Beware of transposition
-			m[i][j] = mat[j][i];
+			m[i][j] = qreal(mat[j][i]);
 }
 
 /*! Returns the associated 4x4 OpenGL \e inverse rotation matrix. This is simply the matrix() of the
@@ -412,14 +412,14 @@ void Quaternion::getInverseMatrix(GLdouble m[16]) const
 
  \attention This is the classical mathematical rotation matrix. The OpenGL format uses its
  transposed version. See inverseMatrix() and getInverseMatrix(). */
-void Quaternion::getInverseRotationMatrix(float m[3][3]) const
+void Quaternion::getInverseRotationMatrix(qreal m[3][3]) const
 {
 	static GLdouble mat[4][4];
 	getInverseMatrix(mat);
 	for (int i=0; i<3; ++i)
 		for (int j=0; j<3; ++j)
 			// Beware of transposition
-			m[i][j] = mat[j][i];
+			m[i][j] = qreal(mat[j][i]);
 }
 
 
@@ -430,11 +430,11 @@ void Quaternion::getInverseRotationMatrix(float m[3][3]) const
  When \p allowFlip is \c true (default) the slerp interpolation will always use the "shortest path"
  between the Quaternions' orientations, by "flipping" the source Quaternion if needed (see
  negate()). */
-Quaternion Quaternion::slerp(const Quaternion& a, const Quaternion& b, float t, bool allowFlip)
+Quaternion Quaternion::slerp(const Quaternion& a, const Quaternion& b, qreal t, bool allowFlip)
 {
-	double cosAngle = Quaternion::dot(a, b);
+	qreal cosAngle = Quaternion::dot(a, b);
 
-	double c1, c2;
+	qreal c1, c2;
 	// Linear interpolation for close orientations
 	if ((1.0 - fabs(cosAngle)) < 0.01)
 	{
@@ -444,8 +444,8 @@ Quaternion Quaternion::slerp(const Quaternion& a, const Quaternion& b, float t,
 	else
 	{
 		// Spherical interpolation
-		double angle    = acos(fabs(cosAngle));
-		double sinAngle = sin(angle);
+		qreal angle    = acos(fabs(cosAngle));
+		qreal sinAngle = sin(angle);
 		c1 = sin(angle * (1.0 - t)) / sinAngle;
 		c2 = sin(angle * t) / sinAngle;
 	}
@@ -464,7 +464,7 @@ Quaternion Quaternion::slerp(const Quaternion& a, const Quaternion& b, float t,
   t=1).
 
   Use squadTangent() to define the Quaternion tangents \p tgA and \p tgB. */
-Quaternion Quaternion::squad(const Quaternion& a, const Quaternion& tgA, const Quaternion& tgB, const Quaternion& b, float t)
+Quaternion Quaternion::squad(const Quaternion& a, const Quaternion& tgA, const Quaternion& tgB, const Quaternion& b, qreal t)
 {
 	Quaternion ab = Quaternion::slerp(a, b, t);
 	Quaternion tg = Quaternion::slerp(tgA, tgB, t, false);
@@ -474,13 +474,13 @@ Quaternion Quaternion::squad(const Quaternion& a, const Quaternion& tgA, const Q
 /*! Returns the logarithm of the Quaternion. See also exp(). */
 Quaternion Quaternion::log()
 {
-	double len = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2]);
+	qreal len = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2]);
 
 	if (len < 1E-6)
 		return Quaternion(q[0], q[1], q[2], 0.0);
 	else
 	{
-		double coef = acos(q[3]) / len;
+		qreal coef = acos(q[3]) / len;
 		return Quaternion(q[0]*coef, q[1]*coef, q[2]*coef, 0.0);
 	}
 }
@@ -488,13 +488,13 @@ Quaternion Quaternion::log()
 /*! Returns the exponential of the Quaternion. See also log(). */
 Quaternion Quaternion::exp()
 {
-	double theta = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2]);
+	qreal theta = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2]);
 
 	if (theta < 1E-6)
 		return Quaternion(q[0], q[1], q[2], cos(theta));
 	else
 	{
-		double coef = sin(theta) / theta;
+		qreal coef = sin(theta) / theta;
 		return Quaternion(q[0]*coef, q[1]*coef, q[2]*coef, cos(theta));
 	}
 }
@@ -543,10 +543,10 @@ Quaternion Quaternion::randomQuaternion()
 {
 	// The rand() function is not very portable and may not be available on your system.
 	// Add the appropriate include or replace by an other random function in case of problem.
-	double seed = rand()/(double)RAND_MAX;
-	double r1 = sqrt(1.0 - seed);
-	double r2 = sqrt(seed);
-	double t1 = 2.0 * M_PI * (rand()/(double)RAND_MAX);
-	double t2 = 2.0 * M_PI * (rand()/(double)RAND_MAX);
+	qreal seed = rand()/(qreal)RAND_MAX;
+	qreal r1 = sqrt(1.0 - seed);
+	qreal r2 = sqrt(seed);
+	qreal t1 = 2.0 * M_PI * (rand()/(qreal)RAND_MAX);
+	qreal t2 = 2.0 * M_PI * (rand()/(qreal)RAND_MAX);
 	return Quaternion(sin(t1)*r1, cos(t1)*r1, sin(t2)*r2, cos(t2)*r2);
 }
diff --git a/QGLViewer/quaternion.h b/QGLViewer/quaternion.h
index 6036491..302ecec 100644
--- a/QGLViewer/quaternion.h
+++ b/QGLViewer/quaternion.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -51,7 +51,7 @@ namespace qglviewer {
 	<h3>Internal representation</h3>
 
 	The internal representation of a Quaternion corresponding to a rotation around axis \c axis, with an angle
-	\c alpha is made of four doubles q[i]:
+	\c alpha is made of four qreals (i.e. doubles) q[i]:
 	\code
 	{q[0],q[1],q[2]} = sin(alpha/2) * {axis[0],axis[1],axis[2]}
 	q[3] = cos(alpha/2)
@@ -73,7 +73,7 @@ public:
 	{ q[0]=q[1]=q[2]=0.0;  q[3]=1.0; }
 
 	/*! Constructor from rotation axis (non null) and angle (in radians). See also setAxisAngle(). */
-	Quaternion(const Vec& axis, double angle)
+	Quaternion(const Vec& axis, qreal angle)
 	{
 		setAxisAngle(axis, angle);
 	}
@@ -85,7 +85,7 @@ public:
 
 		\attention The identity Quaternion is Quaternion(0,0,0,1) and \e not Quaternion(0,0,0,0) (which is
 		not unitary). The default Quaternion() creates such identity Quaternion. */
-	Quaternion(double q0, double q1, double q2, double q3)
+	Quaternion(qreal q0, qreal q1, qreal q2, qreal q3)
 	{ q[0]=q0;    q[1]=q1;    q[2]=q2;    q[3]=q3; }
 
 	/*! Copy constructor. */
@@ -103,9 +103,9 @@ public:
 	/*! Sets the Quaternion as a rotation of axis \p axis and angle \p angle (in radians).
 
 		\p axis does not need to be normalized. A null \p axis will result in an identity Quaternion. */
-	void setAxisAngle(const Vec& axis, double angle)
+	void setAxisAngle(const Vec& axis, qreal angle)
 	{
-		const double norm = axis.norm();
+		const qreal norm = axis.norm();
 		if (norm < 1E-8)
 		{
 			// Null rotation
@@ -113,7 +113,7 @@ public:
 		}
 		else
 		{
-			const double sin_half_angle = sin(angle / 2.0);
+			const qreal sin_half_angle = sin(angle / 2.0);
 			q[0] = sin_half_angle*axis[0]/norm;
 			q[1] = sin_half_angle*axis[1]/norm;
 			q[2] = sin_half_angle*axis[2]/norm;
@@ -121,15 +121,15 @@ public:
 		}
 	}
 
-	/*! Sets the Quaternion value. See the Quaternion(double, double, double, double) constructor documentation. */
-	void setValue(double q0, double q1, double q2, double q3)
+	/*! Sets the Quaternion value. See the Quaternion(qreal, qreal, qreal, qreal) constructor documentation. */
+	void setValue(qreal q0, qreal q1, qreal q2, qreal q3)
 	{ q[0]=q0;    q[1]=q1;    q[2]=q2;    q[3]=q3; }
 
 #ifndef DOXYGEN
 	void setFromRotationMatrix(const float m[3][3]);
 	void setFromRotatedBase(const Vec& X, const Vec& Y, const Vec& Z);
 #endif
-	void setFromRotationMatrix(const double m[3][3]);
+	void setFromRotationMatrix(const qreal m[3][3]);
 	void setFromRotatedBasis(const Vec& X, const Vec& Y, const Vec& Z);
 	//@}
 
@@ -137,14 +137,14 @@ public:
 	/*! @name Accessing values */
 	//@{
 	Vec axis() const;
-	double angle() const;
-	void getAxisAngle(Vec& axis, float& angle) const;
+	qreal angle() const;
+	void getAxisAngle(Vec& axis, qreal& angle) const;
 
-	/*! Bracket operator, with a constant return value. \p i must range in [0..3]. See the Quaternion(double, double, double, double) documentation. */
-	double operator[](int i) const { return q[i]; }
+	/*! Bracket operator, with a constant return value. \p i must range in [0..3]. See the Quaternion(qreal, qreal, qreal, qreal) documentation. */
+	qreal operator[](int i) const { return q[i]; }
 
-	/*! Bracket operator returning an l-value. \p i must range in [0..3]. See the Quaternion(double, double, double, double) documentation. */
-	double& operator[](int i) { return q[i]; }
+	/*! Bracket operator returning an l-value. \p i must range in [0..3]. See the Quaternion(qreal, qreal, qreal, qreal) documentation. */
+	qreal& operator[](int i) { return q[i]; }
 	//@}
 
 
@@ -224,9 +224,9 @@ public:
 		This method should not need to be called since we only deal with unit Quaternions. This is however
 		useful to prevent numerical drifts, especially with small rotational increments. See also
 		normalized(). */
-	double normalize()
+	qreal normalize()
 	{
-		const double norm = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2] + q[3]*q[3]);
+		const qreal norm = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2] + q[3]*q[3]);
 		for (int i=0; i<4; ++i)
 			q[i] /= norm;
 		return norm;
@@ -237,8 +237,8 @@ public:
 		See also normalize(). */
 	Quaternion normalized() const
 	{
-		double Q[4];
-		const double norm = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2] + q[3]*q[3]);
+		qreal Q[4];
+		const qreal norm = sqrt(q[0]*q[0] + q[1]*q[1] + q[2]*q[2] + q[3]*q[3]);
 		for (int i=0; i<4; ++i)
 			Q[i] = q[i] / norm;
 		return Quaternion(Q[0], Q[1], Q[2], Q[3]);
@@ -252,22 +252,22 @@ public:
 	void getMatrix(GLdouble m[4][4]) const;
 	void getMatrix(GLdouble m[16]) const;
 
-	void getRotationMatrix(float m[3][3]) const;
+	void getRotationMatrix(qreal m[3][3]) const;
 
 	const GLdouble* inverseMatrix() const;
 	void getInverseMatrix(GLdouble m[4][4]) const;
 	void getInverseMatrix(GLdouble m[16]) const;
 
-	void getInverseRotationMatrix(float m[3][3]) const;
+	void getInverseRotationMatrix(qreal m[3][3]) const;
 	//@}
 
 
 	/*! @name Slerp interpolation */
 	//@{
-	static Quaternion slerp(const Quaternion& a, const Quaternion& b, float t, bool allowFlip=true);
-	static Quaternion squad(const Quaternion& a, const Quaternion& tgA, const Quaternion& tgB, const Quaternion& b, float t);
+	static Quaternion slerp(const Quaternion& a, const Quaternion& b, qreal t, bool allowFlip=true);
+	static Quaternion squad(const Quaternion& a, const Quaternion& tgA, const Quaternion& tgB, const Quaternion& b, qreal t);
 	/*! Returns the "dot" product of \p a and \p b: a[0]*b[0] + a[1]*b[1] + a[2]*b[2] + a[3]*b[3]. */
-	static double dot(const Quaternion& a, const Quaternion& b) { return a[0]*b[0] + a[1]*b[1] + a[2]*b[2] + a[3]*b[3]; }
+	static qreal dot(const Quaternion& a, const Quaternion& b) { return a[0]*b[0] + a[1]*b[1] + a[2]*b[2] + a[3]*b[3]; }
 
 	Quaternion log();
 	Quaternion exp();
@@ -301,7 +301,7 @@ public:
 
 private:
 	/*! The internal data representation is private, use operator[] to access values. */
-	double q[4];
+	qreal q[4];
 };
 
 } // namespace
diff --git a/QGLViewer/saveSnapshot.cpp b/QGLViewer/saveSnapshot.cpp
index 77d09f1..44b4b5f 100644
--- a/QGLViewer/saveSnapshot.cpp
+++ b/QGLViewer/saveSnapshot.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -334,16 +334,16 @@ bool QGLViewer::saveImageSnapshot(const QString& fileName)
 
 	QSize finalSize(imageInterface->imgWidth->value(), imageInterface->imgHeight->value());
 
-	double oversampling = imageInterface->oversampling->value();
+	qreal oversampling = imageInterface->oversampling->value();
 	QSize subSize(int(this->width()/oversampling), int(this->height()/oversampling));
 
-	double aspectRatio = width() / static_cast<double>(height());
-	double newAspectRatio = finalSize.width() / static_cast<double>(finalSize.height());
+	qreal aspectRatio = width() / static_cast<qreal>(height());
+	qreal newAspectRatio = finalSize.width() / static_cast<qreal>(finalSize.height());
 
-	double zNear = camera()->zNear();
-	double zFar = camera()->zFar();
+	qreal zNear = camera()->zNear();
+	qreal zFar = camera()->zFar();
 
-	double xMin, yMin;
+	qreal xMin, yMin;
 	bool expand = imageInterface->expandFrustum->isChecked();
 	if (camera()->type() == qglviewer::Camera::PERSPECTIVE)
 		if ((expand && (newAspectRatio>aspectRatio)) || (!expand && (newAspectRatio<aspectRatio)))
@@ -378,11 +378,11 @@ bool QGLViewer::saveImageSnapshot(const QString& fileName)
 	// ProgressDialog disabled since it interfers with the screen grabing mecanism on some platforms. Too bad.
 	// ProgressDialog::showProgressDialog(this);
 
-	double scaleX = subSize.width() / static_cast<double>(finalSize.width());
-	double scaleY = subSize.height() / static_cast<double>(finalSize.height());
+	qreal scaleX = subSize.width() / static_cast<qreal>(finalSize.width());
+	qreal scaleY = subSize.height() / static_cast<qreal>(finalSize.height());
 
-	double deltaX = 2.0 * xMin * scaleX;
-	double deltaY = 2.0 * yMin * scaleY;
+	qreal deltaX = 2.0 * xMin * scaleX;
+	qreal deltaY = 2.0 * yMin * scaleY;
 
 	int nbX = finalSize.width() / subSize.width();
 	int nbY = finalSize.height() / subSize.height();
@@ -398,10 +398,10 @@ bool QGLViewer::saveImageSnapshot(const QString& fileName)
 	// tileRegion_ is used by startScreenCoordinatesSystem to appropriately set the local
 	// coordinate system when tiling
 	tileRegion_ = new TileRegion();
-	double tileXMin, tileWidth, tileYMin, tileHeight;
+	qreal tileXMin, tileWidth, tileYMin, tileHeight;
 	if ((expand && (newAspectRatio>aspectRatio)) || (!expand && (newAspectRatio<aspectRatio)))
 	{
-		double tileTotalWidth = newAspectRatio * height();
+		qreal tileTotalWidth = newAspectRatio * height();
 		tileXMin = (width() - tileTotalWidth) / 2.0;
 		tileWidth = tileTotalWidth * scaleX;
 		tileYMin = 0.0;
@@ -410,7 +410,7 @@ bool QGLViewer::saveImageSnapshot(const QString& fileName)
 	}
 	else
 	{
-		double tileTotalHeight = width() / newAspectRatio;
+		qreal tileTotalHeight = width() / newAspectRatio;
 		tileYMin = (height() - tileTotalHeight) / 2.0;
 		tileHeight = tileTotalHeight * scaleY;
 		tileXMin = 0.0;
@@ -447,7 +447,7 @@ bool QGLViewer::saveImageSnapshot(const QString& fileName)
 			QImage snapshot = grabFrameBuffer(true);
 
 			// ProgressDialog::showProgressDialog(this);
-			// ProgressDialog::updateProgress(count / (float)(nbX*nbY),
+			// ProgressDialog::updateProgress(count / (qreal)(nbX*nbY),
 			// "Generating image ["+QString::number(count)+"/"+QString::number(nbX*nbY)+"]");
 			// qApp->processEvents();
 
diff --git a/QGLViewer/vec.cpp b/QGLViewer/vec.cpp
index 0945012..343e606 100644
--- a/QGLViewer/vec.cpp
+++ b/QGLViewer/vec.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -81,9 +81,9 @@ Vec::Vec(const QDomElement& element)
 	attribute << "x" << "y" << "z";
 	for (int i=0; i<attribute.size(); ++i)
 #ifdef QGLVIEWER_UNION_NOT_SUPPORTED
-		this->operator[](i) = DomUtils::doubleFromDom(element, attribute[i], 0.0);
+		this->operator[](i) = DomUtils::qrealFromDom(element, attribute[i], 0.0);
 #else
-		v_[i] = DomUtils::doubleFromDom(element, attribute[i], 0.0);
+		v_[i] = DomUtils::qrealFromDom(element, attribute[i], 0.0);
 #endif
 }
 
diff --git a/QGLViewer/vec.h b/QGLViewer/vec.h
index 6051faa..b57e4e4 100644
--- a/QGLViewer/vec.h
+++ b/QGLViewer/vec.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -74,12 +74,12 @@ class QGLVIEWER_EXPORT Vec
 public:
 	/*! The internal data representation is public. One can use v.x, v.y, v.z. See also operator[](). */
 #if defined (DOXYGEN) || defined (QGLVIEWER_UNION_NOT_SUPPORTED)
-	double x, y, z;
+	qreal x, y, z;
 #else
 	union
 	{
-		struct { double x, y, z; };
-		double v_[3];
+		struct { qreal x, y, z; };
+		qreal v_[3];
 	};
 #endif
 
@@ -89,7 +89,7 @@ public:
 	Vec() : x(0.0), y(0.0), z(0.0) {}
 
 	/*! Standard constructor with the x, y and z values. */
-	Vec(double X, double Y, double Z) : x(X), y(Y), z(Z) {}
+	Vec(qreal X, qreal Y, qreal Z) : x(X), y(Y), z(Z) {}
 
 	/*! Universal explicit converter from any class to Vec. You can use your own vector class everywhere
   a \c const \c Vec& parameter is required, as long as it implements the \c operator[ ]:
@@ -98,15 +98,15 @@ public:
   class MyVec
   {
 	// ...
-	double operator[](int i) const { returns x, y or z when i=0, 1 or 2; }
+	qreal operator[](int i) const { returns x, y or z when i=0, 1 or 2; }
   }
 
   MyVec v(...);
   camera()->setPosition(v);
   \endcode
 
-  Note that standard vector types (STL, \c double[3], ...) implement this operator and can hence
-  be used in place of Vec. See also operator const double*() .*/
+  Note that standard vector types (STL, \c qreal[3], ...) implement this operator and can hence
+  be used in place of Vec. See also operator const qreal*() .*/
 	template <class C>
 	explicit Vec(const C& c) : x(c[0]), y(c[1]), z(c[2]) {}
 	// Should NOT be explicit to prevent conflicts with operator<<.
@@ -122,7 +122,7 @@ public:
 	}
 
 	/*! Set the current value. May be faster than using operator=() with a temporary Vec(x,y,z). */
-	void setValue(double X, double Y, double Z)
+	void setValue(qreal X, qreal Y, qreal Z)
 	{ x=X; y=Y; z=Z; }
 
 	// Universal equal operator which allows the use of any type in place of Vec,
@@ -138,7 +138,7 @@ public:
 	/*! @name Accessing the value */
 	//@{
 	/*! Bracket operator, with a constant return value. \p i must range in [0..2]. */
-	double operator[](int i) const {
+	qreal operator[](int i) const {
 #ifdef QGLVIEWER_UNION_NOT_SUPPORTED
 		return (&x)[i];
 #else
@@ -147,7 +147,7 @@ public:
 	}
 
 	/*! Bracket operator returning an l-value. \p i must range in [0..2]. */
-	double& operator[](int i) {
+	qreal& operator[](int i) {
 #ifdef QGLVIEWER_UNION_NOT_SUPPORTED
 		return (&x)[i];
 #else
@@ -162,7 +162,7 @@ public:
 
 	/*! Conversion operator returning the memory address of the vector.
 
-  Very convenient to pass a Vec pointer as a parameter to OpenGL functions:
+  Very convenient to pass a Vec pointer as a parameter to \c GLdouble OpenGL functions:
   \code
   Vec pos, normal;
   glNormal3dv(normal);
@@ -189,7 +189,7 @@ public:
 
 	/*! Conversion operator returning the memory address of the vector.
 
-  Very convenient to pass a Vec pointer as a parameter to OpenGL functions:
+  Very convenient to pass a Vec pointer as a \c float parameter to OpenGL functions:
   \code
   Vec pos, normal;
   glNormal3fv(normal);
@@ -226,13 +226,13 @@ public:
 	}
 
 	/*! Returns the product of the vector with a scalar. */
-	friend Vec operator*(const Vec &a, double k)
+	friend Vec operator*(const Vec &a, qreal k)
 	{
 		return Vec(a.x*k, a.y*k, a.z*k);
 	}
 
 	/*! Returns the product of a scalar with the vector. */
-	friend Vec operator*(double k, const Vec &a)
+	friend Vec operator*(qreal k, const Vec &a)
 	{
 		return a*k;
 	}
@@ -241,7 +241,7 @@ public:
 
   Too small \p k values are \e not tested (unless the library was compiled with the "debug" Qt \c
   CONFIG flag) and may result in \c NaN values. */
-	friend Vec operator/(const Vec &a, double k)
+	friend Vec operator/(const Vec &a, qreal k)
 	{
 #ifndef QT_NO_DEBUG
 		if (fabs(k) < 1.0E-10)
@@ -259,7 +259,7 @@ public:
 	/*! Returns \c true when the squaredNorm() of the difference vector is lower than 1E-10. */
 	friend bool operator==(const Vec &a, const Vec &b)
 	{
-		const double epsilon = 1.0E-10f;
+		const qreal epsilon = 1.0E-10;
 		return (a-b).squaredNorm() < epsilon;
 	}
 
@@ -278,7 +278,7 @@ public:
 	}
 
 	/*! Multiply the vector by a scalar \p k. */
-	Vec& operator*=(double k)
+	Vec& operator*=(qreal k)
 	{
 		x *= k; y *= k; z *= k;
 		return *this;
@@ -288,7 +288,7 @@ public:
 
   An absolute \p k value lower than 1E-10 will print a warning if the library was compiled with the
   "debug" Qt \c CONFIG flag. Otherwise, no test is performed for efficiency reasons. */
-	Vec& operator/=(double k)
+	Vec& operator/=(qreal k)
 	{
 #ifndef QT_NO_DEBUG
 		if (fabs(k)<1.0E-10)
@@ -299,7 +299,7 @@ public:
 	}
 
 	/*! Dot product of the two Vec. */
-	friend double operator*(const Vec &a, const Vec &b)
+	friend qreal operator*(const Vec &a, const Vec &b)
 	{
 		return a.x*b.x + a.y*b.y + a.z*b.z;
 	}
@@ -325,21 +325,21 @@ public:
 	//@{
 #ifndef DOXYGEN
 	/*! This method is deprecated since version 2.0. Use squaredNorm() instead. */
-	double sqNorm() const { return x*x + y*y + z*z; }
+	qreal sqNorm() const { return x*x + y*y + z*z; }
 #endif
 
 	/*! Returns the \e squared norm of the Vec. */
-	double squaredNorm() const { return x*x + y*y + z*z; }
+	qreal squaredNorm() const { return x*x + y*y + z*z; }
 
 	/*! Returns the norm of the vector. */
-	double norm() const { return sqrt(x*x + y*y + z*z); }
+	qreal norm() const { return sqrt(x*x + y*y + z*z); }
 
 	/*! Normalizes the Vec and returns its original norm.
 
   Normalizing a null vector will result in \c NaN values. */
-	double normalize()
+	qreal normalize()
 	{
-		const double n = norm();
+		const qreal n = norm();
 #ifndef QT_NO_DEBUG
 		if (n < 1.0E-10)
 			qWarning("Vec::normalize: normalizing a null vector (norm=%f)", n);
diff --git a/README b/README
index 683a994..c22bb9c 100644
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
 
                           l i b Q G L V i e w e r
 
-	      	 Version 2.5.3. Packaged on September 2, 2014
+	      	 Version 2.6.1. Packaged on January 22, 2015
 
 
   Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
diff --git a/designerPlugin/designerPlugin.pro b/designerPlugin/designerPlugin.pro
index 8e65735..ff2af95 100644
--- a/designerPlugin/designerPlugin.pro
+++ b/designerPlugin/designerPlugin.pro
@@ -48,8 +48,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -191,9 +191,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -332,6 +329,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/designerPlugin/qglviewerPlugin.Qt3.cpp b/designerPlugin/qglviewerPlugin.Qt3.cpp
index 27d2710..8e7e55b 100644
--- a/designerPlugin/qglviewerPlugin.Qt3.cpp
+++ b/designerPlugin/qglviewerPlugin.Qt3.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/designerPlugin/qglviewerPlugin.Qt3.h b/designerPlugin/qglviewerPlugin.Qt3.h
index 8955814..986dfdc 100644
--- a/designerPlugin/qglviewerPlugin.Qt3.h
+++ b/designerPlugin/qglviewerPlugin.Qt3.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/designerPlugin/qglviewerPlugin.cpp b/designerPlugin/qglviewerPlugin.cpp
index 73afa16..7d642b8 100644
--- a/designerPlugin/qglviewerPlugin.cpp
+++ b/designerPlugin/qglviewerPlugin.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/designerPlugin/qglviewerPlugin.h b/designerPlugin/qglviewerPlugin.h
index 0fd1066..f6aa3b5 100644
--- a/designerPlugin/qglviewerPlugin.h
+++ b/designerPlugin/qglviewerPlugin.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/doc/changeLog-1.html b/doc/changeLog-1.html
index 73dc174..4a88208 100644
--- a/doc/changeLog-1.html
+++ b/doc/changeLog-1.html
@@ -870,7 +870,7 @@ Please send any comment, suggestion or problem by <a href="mailto:contact at libqgl
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/changeLog.html b/doc/changeLog.html
index 536b4f2..bbe1da3 100644
--- a/doc/changeLog.html
+++ b/doc/changeLog.html
@@ -32,6 +32,34 @@
 
 <h1>Change Log</h1>
 
+
+<h2>Jan 22nd 2015 - 2.6.1</h2>
+<b>Bug fixes or improvements</b>
+<ul>
+  <li>Bug fix in <code>Camera::pointUnderPixel()</code> (thanks Che).</li>
+  <li><i>terrain</i> contrib example deprecated.</li>
+</ul>
+
+
+<h2>Nov 17th 2014 - 2.6.0</h2>
+<b>Changes in the API</b>
+<ul>
+  <li>The entire API now consistently uses the <code>qreal</code> (i.e <code>double</code>) type for floating point numbers.<br/>
+  This should not break code compatibility since types will mostly get automatically converted.<br/>
+  Update your code if you use one of the <code>getX(qreal & x)</code> methods, which take a reference as a parameter, which type needs to be changed to <code>qreal</code>.
+  </li>
+</ul>
+
+
+<h2>Nov 6th 2014 - 2.5.4</h2>
+<b>Bug fixes or improvements</b>
+<ul>
+  <li>Remove <code>libGLU</code> dependency on Mac since it conflicts with Yosemite (thanks Hae-Jeong, Federico).</li>
+  <li>Fix compilation flags and include warning for Windows compilation (thanks Alexandre, David).</li>
+  <li>Fix switch between camera's observer and fly modes (thanks Bj�rn).</li>
+</ul>
+
+
 <h2>Sept 1st 2014 - 2.5.3</h2>
 <b>Bug fixes or improvements</b>
 <ul>
@@ -42,7 +70,6 @@
 </ul>
 
 
->>>>>>> Add algorithm includes to remove VS warnings.
 <h2>Apr 10th 2014 - 2.5.2</h2>
 <b>Changes in the API</b>
 <ul>
@@ -613,7 +640,7 @@ Please send any comment, suggestion or problem by <a href="mailto:contact at libqgl
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/commercial.html b/doc/commercial.html
index a5ddc8b..d062b09 100644
--- a/doc/commercial.html
+++ b/doc/commercial.html
@@ -60,7 +60,7 @@ The net price of a commercial license is 500€ (~$700).
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
     
 </body>
diff --git a/doc/compilation.html b/doc/compilation.html
index 8160238..c879c1d 100644
--- a/doc/compilation.html
+++ b/doc/compilation.html
@@ -79,7 +79,7 @@ The <code>QGLViewer2.dll</code> (or <code>QGLViewer2d.dll</code> in debug mode)
 <ul>
 	<li>Copy it in a shared standard library directory such as <code>C:\Windows\System32</code>,</li>
 	<li>or copy it in each application's directory,</li>
-	<li>or add the path to the dlls using <code>set PATH=%PATH%;C:\Users\...\libQGLViewer-2.5.3\QGLViewer\release</code></li>
+	<li>or add the path to the dlls using <code>set PATH=%PATH%;C:\Users\...\libQGLViewer-2.6.1\QGLViewer\release</code></li>
 </ul>
 
 <!--
@@ -282,15 +282,15 @@ HEADERS = myViewer.h
 SOURCES = myViewer.cpp main.cpp
 
 # Windows
-INCLUDEPATH *= C:/Users/login/Documents/libQGLViewer-2.5.3
-LIBS *= -LC:/Users/login/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+INCLUDEPATH *= C:/Users/login/Documents/libQGLViewer-2.6.1
+LIBS *= -LC:/Users/login/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Linux
-INCLUDEPATH *= /home/login/Documents/libQGLViewer-2.5.3
-LIBS *= -L/home/login/libQGLViewer-2.5.3/QGLViewer -lQGLViewer
+INCLUDEPATH *= /home/login/Documents/libQGLViewer-2.6.1
+LIBS *= -L/home/login/libQGLViewer-2.6.1/QGLViewer -lQGLViewer
 
 # Mac 
-INCLUDEPATH *= /Users/login/Documents/libQGLViewer-2.5.3
+INCLUDEPATH *= /Users/login/Documents/libQGLViewer-2.6.1
 LIBS *= -F/Users/login/Library/Frameworks -framework QGLViewer
 </pre>
 
@@ -344,7 +344,7 @@ Please <a href="mailto:contact at libqglviewer.com">let me know</a> if you encounte
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
     
 </body>
diff --git a/doc/developer.html b/doc/developer.html
index 4f3372e..ca308b4 100644
--- a/doc/developer.html
+++ b/doc/developer.html
@@ -108,7 +108,7 @@ as they are, which features are in the todo list and which are not scheduled.
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/download.html b/doc/download.html
index 8d4bc0d..f351a91 100644
--- a/doc/download.html
+++ b/doc/download.html
@@ -74,7 +74,7 @@ href="http://www.libqglviewer.com/download_statistics.html">download statistics<
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
     
 </body>
diff --git a/doc/download_statistics.html b/doc/download_statistics.html
index 40b586f..eab50bf 100644
--- a/doc/download_statistics.html
+++ b/doc/download_statistics.html
@@ -56,7 +56,7 @@ These are the download statistics of the pre-compiled examples of the library:
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/dualLicensing.html b/doc/dualLicensing.html
index fad2781..425f95d 100644
--- a/doc/dualLicensing.html
+++ b/doc/dualLicensing.html
@@ -72,7 +72,7 @@ As a special exception to the terms and conditions of GPL, this open source lice
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
     
 </body>
diff --git a/doc/examples/animation.html b/doc/examples/animation.html
index 4a1f0ba..b425e21 100644
--- a/doc/examples/animation.html
+++ b/doc/examples/animation.html
@@ -199,7 +199,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/callback.html b/doc/examples/callback.html
index a6f04de..4f76190 100644
--- a/doc/examples/callback.html
+++ b/doc/examples/callback.html
@@ -156,7 +156,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/cameraLight.html b/doc/examples/cameraLight.html
index 24872f2..3669c91 100644
--- a/doc/examples/cameraLight.html
+++ b/doc/examples/cameraLight.html
@@ -178,7 +178,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/clippingPlane.html b/doc/examples/clippingPlane.html
index 4c7d45b..0088abc 100644
--- a/doc/examples/clippingPlane.html
+++ b/doc/examples/clippingPlane.html
@@ -181,7 +181,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/constrainedCamera.html b/doc/examples/constrainedCamera.html
index 63615b9..3e3b27c 100644
--- a/doc/examples/constrainedCamera.html
+++ b/doc/examples/constrainedCamera.html
@@ -293,7 +293,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/constrainedFrame.html b/doc/examples/constrainedFrame.html
index 8043f0c..19717d6 100644
--- a/doc/examples/constrainedFrame.html
+++ b/doc/examples/constrainedFrame.html
@@ -316,7 +316,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/contribs.html b/doc/examples/contribs.html
index cd2a734..081e8b7 100644
--- a/doc/examples/contribs.html
+++ b/doc/examples/contribs.html
@@ -299,7 +299,7 @@ a short description is here given, the different source code are available in th
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/drawLight.html b/doc/examples/drawLight.html
index 6634e80..75a713e 100644
--- a/doc/examples/drawLight.html
+++ b/doc/examples/drawLight.html
@@ -79,12 +79,18 @@ void Viewer::draw()
 
   pos[3] = 1.0;
   // Spot light
-  light1->getPosition(pos[0], pos[1], pos[2]);
+  Vec pos1 = light1->position();
+  pos[0] = float(pos1.x);
+  pos[1] = float(pos1.y);
+  pos[2] = float(pos1.z);
   glLightfv(GL_LIGHT1, GL_POSITION, pos);
   glLightfv(GL_LIGHT1, GL_SPOT_DIRECTION, light1->inverseTransformOf(Vec(0,0,1)));
 
   // Point light
-  light2->getPosition(pos[0], pos[1], pos[2]);
+  Vec pos2 = light2->position();
+  pos[0] = float(pos2.x);
+  pos[1] = float(pos2.y);
+  pos[2] = float(pos2.z);
   glLightfv(GL_LIGHT2, GL_POSITION, pos);
 
   // Draws the spiral
@@ -211,7 +217,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/fastDraw.html b/doc/examples/fastDraw.html
index aee0c8e..ea27804 100644
--- a/doc/examples/fastDraw.html
+++ b/doc/examples/fastDraw.html
@@ -163,7 +163,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/frameTransform.html b/doc/examples/frameTransform.html
index 7ac5a82..54d68d6 100644
--- a/doc/examples/frameTransform.html
+++ b/doc/examples/frameTransform.html
@@ -176,7 +176,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/frustumCulling.html b/doc/examples/frustumCulling.html
index e095267..f44dea9 100644
--- a/doc/examples/frustumCulling.html
+++ b/doc/examples/frustumCulling.html
@@ -361,7 +361,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/index.html b/doc/examples/index.html
index ba545b5..9af14db 100644
--- a/doc/examples/index.html
+++ b/doc/examples/index.html
@@ -251,7 +251,7 @@ the philosophy of the library. See also the <a href="../compilation.html">compil
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/interface.html b/doc/examples/interface.html
index 7a17e0a..9f14b40 100644
--- a/doc/examples/interface.html
+++ b/doc/examples/interface.html
@@ -157,7 +157,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/keyFrames.html b/doc/examples/keyFrames.html
index baee7ea..1672cf2 100644
--- a/doc/examples/keyFrames.html
+++ b/doc/examples/keyFrames.html
@@ -230,7 +230,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/keyboardAndMouse.html b/doc/examples/keyboardAndMouse.html
index 0f1b5e9..b39f18d 100644
--- a/doc/examples/keyboardAndMouse.html
+++ b/doc/examples/keyboardAndMouse.html
@@ -301,7 +301,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/luxo.html b/doc/examples/luxo.html
index 776a6f3..6cc1519 100644
--- a/doc/examples/luxo.html
+++ b/doc/examples/luxo.html
@@ -377,7 +377,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/manipulatedFrame.html b/doc/examples/manipulatedFrame.html
index 5fc82e9..2e9d1cb 100644
--- a/doc/examples/manipulatedFrame.html
+++ b/doc/examples/manipulatedFrame.html
@@ -192,7 +192,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/mouseGrabber.html b/doc/examples/mouseGrabber.html
index cff7fb6..aa04cb5 100644
--- a/doc/examples/mouseGrabber.html
+++ b/doc/examples/mouseGrabber.html
@@ -292,7 +292,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/multiSelect.html b/doc/examples/multiSelect.html
index 6a52ba9..af63364 100644
--- a/doc/examples/multiSelect.html
+++ b/doc/examples/multiSelect.html
@@ -461,7 +461,7 @@ void Object::draw() const
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/multiView.html b/doc/examples/multiView.html
index 66acb8f..5a9b701 100644
--- a/doc/examples/multiView.html
+++ b/doc/examples/multiView.html
@@ -180,7 +180,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/overpainting.html b/doc/examples/overpainting.html
index 5001bd9..1acb774 100644
--- a/doc/examples/overpainting.html
+++ b/doc/examples/overpainting.html
@@ -210,7 +210,7 @@ QString Viewer::helpString() const
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/screenCoordSystem.html b/doc/examples/screenCoordSystem.html
index d7a21e3..f60567b 100644
--- a/doc/examples/screenCoordSystem.html
+++ b/doc/examples/screenCoordSystem.html
@@ -203,7 +203,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/select.html b/doc/examples/select.html
index 30d90d5..aa97394 100644
--- a/doc/examples/select.html
+++ b/doc/examples/select.html
@@ -219,7 +219,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/simpleViewer.html b/doc/examples/simpleViewer.html
index ceafa28..83df587 100644
--- a/doc/examples/simpleViewer.html
+++ b/doc/examples/simpleViewer.html
@@ -158,7 +158,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/standardCamera.html b/doc/examples/standardCamera.html
index 263fb53..c2f4159 100644
--- a/doc/examples/standardCamera.html
+++ b/doc/examples/standardCamera.html
@@ -58,8 +58,8 @@ class StandardCamera : public qglviewer::Camera
 public :
   StandardCamera();
 
-  virtual float zNear() const;
-  virtual float zFar() const;
+  virtual qreal zNear() const;
+  virtual qreal zFar() const;
 
   void toggleMode() { standard = !standard; }
   bool isStandard() { return standard; }
@@ -88,15 +88,15 @@ StandardCamera::StandardCamera()
   orthoSize = 1.0;
 }
 
-float StandardCamera::zNear() const
+qreal StandardCamera::zNear() const
 {
   if (standard)
-	return 0.001f;
+	return 0.001;
   else
 	return Camera::zNear();
 }
 
-float StandardCamera::zFar() const
+qreal StandardCamera::zFar() const
 {
   if (standard)
 	return 1000.0;
@@ -107,9 +107,9 @@ float StandardCamera::zFar() const
 void StandardCamera::changeOrthoFrustumSize(int delta)
 {
   if (delta > 0)
-	orthoSize *= 1.1f;
+	orthoSize *= 1.1;
   else
-	orthoSize /= 1.1f;
+	orthoSize /= 1.1;
 }
 
 void StandardCamera::getOrthoWidthHeight(GLdouble &halfWidth, GLdouble &halfHeight) const
@@ -399,7 +399,7 @@ QString Viewer::helpString() const
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/examples/stereoViewer.html b/doc/examples/stereoViewer.html
index 76763c6..14fd017 100644
--- a/doc/examples/stereoViewer.html
+++ b/doc/examples/stereoViewer.html
@@ -150,7 +150,7 @@ int main(int argc, char** argv)
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="../images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.gif" width="88" height="31" alt="Valid CSS!"/></a>
-<i>Last modified on Tuesday, September 02, 2014.</i>
+<i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body>
diff --git a/doc/faq.html b/doc/faq.html
index 09983ef..f3604ee 100644
--- a/doc/faq.html
+++ b/doc/faq.html
@@ -124,7 +124,7 @@ and will be added to this page. See also the <a href="techFaq.html">Technical FA
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/features.html b/doc/features.html
index b77262c..baf4d9a 100644
--- a/doc/features.html
+++ b/doc/features.html
@@ -156,7 +156,7 @@ a new feature.
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/index.html b/doc/index.html
index a13ec7d..0a14e05 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -92,6 +92,23 @@ commercial applications can apply for a <a href="commercial.html">commercial lic
 <table style="width:90%; margin-left:50px; border:1px solid #AAF; background-color:#DDE" cellspacing="8" cellpadding="8">
 
 <tr>
+  <td><b>Jan 22nd, 2015</b><br/><a href="changeLog.html">Version 2.6.1</a></td>
+  <td>Bug fix in <code>Camera::pointUnderPixel()</code>.</td>
+</tr>
+
+
+<tr>
+  <td><b>Nov 17th, 2014</b><br/><a href="changeLog.html">Version 2.6.0</a></td>
+  <td>The entire API now consistently uses the <code>qreal</code> (i.e <code>double</code>) type for floating point numbers.</td>
+</tr>
+
+
+<tr>
+  <td><b>Nov 6th, 2014</b><br/><a href="changeLog.html">Version 2.5.4</a></td>
+  <td>More minor compilation warning and error fixes.</td>
+</tr>
+
+<tr>
   <td><b>Sep 1st, 2014</b><br/><a href="changeLog.html">Version 2.5.3</a></td>
   <td>Minor compilation warning and error fixes for recent compilers.</td>
 </tr>
@@ -106,11 +123,6 @@ commercial applications can apply for a <a href="commercial.html">commercial lic
   <td>New binding methods changes.<br/>Qt 3 no longer supported.<br/>Include dependencies cleaned-up.<br/>Revolve around point is set to point under cursor, or reset to scene center if there is no point.</td>
 </tr>
 
-<tr>
-  <td><b>Dec 19th, 2013</b><br/><a href="changeLog.html">Version 2.5.0</a></td>
-  <td>This is semi-major change, introducing new mouse binding methods.</td>
-</tr>
-
 </table>
 
 <p>
@@ -127,7 +139,7 @@ Related pages : <a href="http://pyqglviewer.gforge.inria.fr/">PyQGLViewer page</
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i> 
+  <i>Last modified on Thursday, January 22, 2015.</i> 
 </p>
 
 </body></html>
diff --git a/doc/installUnix.html b/doc/installUnix.html
index 103772b..54ac5d3 100644
--- a/doc/installUnix.html
+++ b/doc/installUnix.html
@@ -50,7 +50,7 @@ Unix systems
 <a name="mac"></a>
 <h2><img src="images/mac.png" width="55" height="54" alt="mac"/> Mac OS X</h2>
 
-<a href="http://www.libqglviewer.com/src/libQGLViewer-2.5.3.tar.gz" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.5.3.tar.gz']);">Download</a> and decompress the sources, then open the <code>libQGLViewer-2.5.3/QGLViewer</code> folder.
+<a href="http://www.libqglviewer.com/src/libQGLViewer-2.6.1.tar.gz" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.6.1.tar.gz']);">Download</a> and decompress the sources, then open the <code>libQGLViewer-2.6.1/QGLViewer</code> folder.
 
 <h3>Using Qt Creator</h3>
 Open <code>QGLViewer.pro</code> and "build all".
@@ -58,13 +58,13 @@ Open <code>QGLViewer.pro</code> and "build all".
 <h3>Using Xcode</h3>
 Create the Xcode project by running these lines in a terminal:
 <pre>
-cd path/to/libQGLViewer-2.5.3/QGLViewer
+cd path/to/libQGLViewer-2.6.1/QGLViewer
 qmake -spec macx-xcode
 </pre>
 
 <h3>Using <code>make</code></h3>
 <pre>
-cd path/to/libQGLViewer-2.5.3/QGLViewer
+cd path/to/libQGLViewer-2.6.1/QGLViewer
 qmake -spec macx-g++
 make
 </pre>
@@ -170,19 +170,19 @@ It should be available from standard debian depositories and can be installed us
 
 <p>As an alternative, you can use these debian packages generated using Alien and depending on the latest Qt version :</p>
 <pre>
-apt-get install <a href="http://www.libqglviewer.com/src/libqglviewer_2.5.3_i386.deb" onclick="javascript: _gaq.push(['_trackPageview', 'libqglviewer_2.5.3_i386.deb']);">libqglviewer_2.5.3_i386.deb</a> <a href="http://www.libqglviewer.com/src/libqglviewer-devel_2.5.3_i386.deb" onclick="javascript: _gaq.push(['_trackPageview', 'libqglviewer-devel_2.5.3_i386.deb']);">libqglviewer-devel_2.5.3_i386.deb</a>
+apt-get install <a href="http://www.libqglviewer.com/src/libqglviewer_2.6.1_i386.deb" onclick="javascript: _gaq.push(['_trackPageview', 'libqglviewer_2.6.1_i386.deb']);">libqglviewer_2.6.1_i386.deb</a> <a href="http://www.libqglviewer.com/src/libqglviewer-devel_2.6.1_i386.deb" onclick="javascript: _gaq.push(['_trackPageview', 'libqglviewer-devel_2.6.1_i386.deb']);">libqglviewer-devel_2.6.1_i386.deb</a>
 </pre>
 
 <h3>RPM packages</h3>
 Use the following command line:
 <pre>
-rpm -Uvh <a href="http://www.libqglviewer.com/src/libQGLViewer-2.5.3.i386.rpm" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.5.3.i386.rpm']);">libQGLViewer-2.5.3.i386.rpm</a> <a href="http://www.libqglviewer.com/src/libQGLViewer-devel-2.5.3.i386.rpm" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-devel-2.5.3.i386.rpm']);">libQGLViewer-devel-2.5.3.i386.rpm</a>
+rpm -Uvh <a href="http://www.libqglviewer.com/src/libQGLViewer-2.6.1.i386.rpm" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.6.1.i386.rpm']);">libQGLViewer-2.6.1.i386.rpm</a> <a href="http://www.libqglviewer.com/src/libQGLViewer-devel-2.6.1.i386.rpm" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-devel-2.6.1.i386.rpm']);">libQGLViewer-devel-2.6.1.i386.rpm</a>
 </pre>
 You can also re-compile the RPM for optimal results:
 <pre>
-rpmbuild - !!!!!!!!!!!!!!!!!!!!!! FIXME !!!!!!!!!!!!!!!!!!!!! -rebuild <a href="http://www.libqglviewer.com/src/libQGLViewer-2.5.3.src.rpm" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.5.3.src.rpm']);">libQGLViewer-2.5.3.src.rpm</a>
+rpmbuild - !!!!!!!!!!!!!!!!!!!!!! FIXME !!!!!!!!!!!!!!!!!!!!! -rebuild <a href="http://www.libqglviewer.com/src/libQGLViewer-2.6.1.src.rpm" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.6.1.src.rpm']);">libQGLViewer-2.6.1.src.rpm</a>
 cd /usr/src/RPM/RPMS/i?86/ (or /usr/src/redhat/RPMS/i?86, see the rpmbuild last log lines)
-rpm -Uvh libQGLViewer-*2.5.3.i?86.rpm
+rpm -Uvh libQGLViewer-*2.6.1.i?86.rpm
 </pre>
 
 <p>
@@ -196,11 +196,11 @@ Change the RPM installation prefix, say to <code>/usr/local</code> (default is
 Use the <a href="http://www.freshports.org/graphics/libqglviewer/">FreeBSD port</a>.
 -->
 
-<a href="http://www.libqglviewer.com/src/libQGLViewer-2.5.3.tar.gz" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.5.3.tar.gz']);">Download</a> and decompress the sources, then go to the <code>libQGLViewer-2.5.3/QGLViewer</code> folder.
+<a href="http://www.libqglviewer.com/src/libQGLViewer-2.6.1.tar.gz" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.6.1.tar.gz']);">Download</a> and decompress the sources, then go to the <code>libQGLViewer-2.6.1/QGLViewer</code> folder.
 
 <pre>
-tar -xzf <a href="http://www.libqglviewer.com/src/libQGLViewer-2.5.3.tar.gz" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.5.3.tar.gz']);">libQGLViewer-2.5.3.tar.gz</a>
-cd libQGLViewer-2.5.3/QGLViewer
+tar -xzf <a href="http://www.libqglviewer.com/src/libQGLViewer-2.6.1.tar.gz" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.6.1.tar.gz']);">libQGLViewer-2.6.1.tar.gz</a>
+cd libQGLViewer-2.6.1/QGLViewer
 </pre>
 
 <h3>Using Qt Creator</h3>
@@ -215,7 +215,7 @@ sudo make install [optional]
 
 The following files are installed (you need root privileges to <code>install</code>, since these are system directories):
 <ul>
-<li>The library (<code>libQGLViewer-2.5.3.so</code>) in <code>/usr/lib</code></li>
+<li>The library (<code>libQGLViewer-2.6.1.so</code>) in <code>/usr/lib</code></li>
 <li>The header files and designer plugin code in <code>/usr/include/QGLViewer</code></li>
 <li>The documentation and the examples in <code>/usr/share/doc/QGLViewer</code></li>
 </ul>
@@ -422,7 +422,7 @@ encounter specific installation problems.
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
     
 </body>
diff --git a/doc/installWindows.html b/doc/installWindows.html
index e8ba5d9..36e4dcd 100644
--- a/doc/installWindows.html
+++ b/doc/installWindows.html
@@ -56,7 +56,7 @@ commercial application, you need to purchase a <a href="mailto:contact at libqglvie
 Make sure your Qt installation is up to date and running. Try building one of the Qt OpenGL examples first.
 
 <p>
-Then download and unzip <a href="http://www.libqglviewer.com/src/libQGLViewer-2.5.3.zip" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.5.3.zip']);">libQGLViewer-2.5.3.zip</a>.
+Then download and unzip <a href="http://www.libqglviewer.com/src/libQGLViewer-2.6.1.zip" onclick="javascript: _gaq.push(['_trackPageview', 'libQGLViewer-2.6.1.zip']);">libQGLViewer-2.6.1.zip</a>.
 </p>
 
 Depending on your environment:
@@ -66,7 +66,7 @@ Depending on your environment:
 <li><a name="mingw"></a><b>MinGW</b> (available when you install the OpenSource Qt version): 
 launch the <i>Qt Command Prompt</i> from the <i>Start</i> menu and type:
 <pre>
-cd \path\to\libQGLViewer-2.5.3\QGLViewer
+cd \path\to\libQGLViewer-2.6.1\QGLViewer
 qmake
 mingw32-make
 </pre></li>
@@ -167,7 +167,7 @@ Please <a href="mailto:contact at libqglviewer.com">let me know</a> if you encounte
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
     
 </body>
diff --git a/doc/introduction.html b/doc/introduction.html
index 297ff7e..d94c5a3 100644
--- a/doc/introduction.html
+++ b/doc/introduction.html
@@ -143,7 +143,7 @@ color="4444FF">) )</font><font color="4444FF">;</font> <font color="#444444">//
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/keyboard.html b/doc/keyboard.html
index 96abaea..6898735 100644
--- a/doc/keyboard.html
+++ b/doc/keyboard.html
@@ -228,7 +228,7 @@ path 1..12), </li>
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/doc/libQGLViewer-2.5.3.qch b/doc/libQGLViewer-2.5.3.qch
deleted file mode 100644
index 5546ad3..0000000
Binary files a/doc/libQGLViewer-2.5.3.qch and /dev/null differ
diff --git a/doc/libQGLViewer-2.6.1.qch b/doc/libQGLViewer-2.6.1.qch
new file mode 100644
index 0000000..e73ea25
Binary files /dev/null and b/doc/libQGLViewer-2.6.1.qch differ
diff --git a/doc/mouse.html b/doc/mouse.html
index 07558dc..410145a 100644
--- a/doc/mouse.html
+++ b/doc/mouse.html
@@ -341,6 +341,6 @@ in the standard list.
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 </body></html>
diff --git a/doc/refManual/annotated.html b/doc/refManual/annotated.html
index a6d3257..5ee69e4 100644
--- a/doc/refManual/annotated.html
+++ b/doc/refManual/annotated.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/camera_8cpp.html b/doc/refManual/camera_8cpp.html
index ddb2852..fa0d0b3 100644
--- a/doc/refManual/camera_8cpp.html
+++ b/doc/refManual/camera_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/camera_8h.html b/doc/refManual/camera_8h.html
index 288dab9..dd77fc6 100644
--- a/doc/refManual/camera_8h.html
+++ b/doc/refManual/camera_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -109,7 +109,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classQGLViewer-members.html b/doc/refManual/classQGLViewer-members.html
index 12d47a9..2b21f67 100644
--- a/doc/refManual/classQGLViewer-members.html
+++ b/doc/refManual/classQGLViewer-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -100,15 +100,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1af3b49771c99e24d1407f9fc662fc7a6f">ANIMATION</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e">animationIsStarted</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a700d9398d4293d9274766efa8b17917e">animationPeriod</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a36faca915c37548a53ab04f297bb5c17">autoBufferSwap</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a7d38e6f11078e886f7978525def15797">axisIsDrawn</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a541cdbec67d0c5895cd6c77c01b0f89e">axisIsDrawnChanged</a>(bool drawn)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a7ddf68dcfb09cc5a991a06d91cb4cc5b">backgroundColor</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#af0a48cc50f194926bad38d4924162116">beginSelection</a>(const QPoint &point)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">bufferTextureId</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">bufferTextureMaxU</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">bufferTextureMaxV</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">bufferTextureMaxU</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">bufferTextureMaxV</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a5b90ab220b7700ca28db5ecf3217325dada31f516cdf218b68b790fb31e8a6956">CAMERA</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a91b759170cb0389695a3c219a9a69073">CAMERA_MODE</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
@@ -123,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a3fb8c90e5c48e6ccc09f9125aa86943e">closeEvent</a>(QCloseEvent *)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a75679575b3b071cddce2a56c77e1bd68">convertToGLFormat</a>(const QImage &image)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453">copyBufferToTexture</a>(GLint internalFormat, GLenum format=GL_NONE)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975">currentFPS</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56">currentFPS</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a595e91c7270892a31306f01e105c1dd8">DECREASE_FLYSPEED</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a7522d8401eb437769071ba3b1562ca97">DISPLAY_FPS</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a61336516f9771ac6aef90875f848add4">displayMessage</a>(const QString &message, int delay=2000)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
@@ -132,12 +132,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">draw</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1aa9c213a1cf39290bfcad5d6813d2395d">DRAW_AXIS</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a9891606ac8b160f15d3e705f7d192604">DRAW_GRID</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0">drawArrow</a>(float length=1.0f, float radius=-1.0f, int nbSubdivisions=12)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a27edb1331c7bf373d126487e9547969f">drawArrow</a>(const qglviewer::Vec &from, const qglviewer::Vec &to, float radius=-1.0f, int nbSubdivisions=12)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c">drawAxis</a>(float length=1.0f)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150">drawArrow</a>(qreal length=1.0, qreal radius=-1.0, int nbSubdivisions=12)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc">drawArrow</a>(const qglviewer::Vec &from, const qglviewer::Vec &to, qreal radius=-1.0, int nbSubdivisions=12)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc">drawAxis</a>(qreal length=1.0)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#afc74e28548768da157f2fe75bced2803">drawFinished</a>(bool automatic)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d">drawGrid</a>(float size=1.0f, int nbSubdivisions=10)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53">drawLight</a>(GLenum light, float scale=1.0f) const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a86a359ff8c78755fca0900321293da8f">drawGrid</a>(qreal size=1.0, int nbSubdivisions=10)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07">drawLight</a>(GLenum light, qreal scale=1.0) const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a7a712ca70a0b1c22af51363b786fc86e">drawNeeded</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775">drawText</a>(int x, int y, const QString &text, const QFont &fnt=QFont())</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a528b238068a87472df8ac3a5b2481c55">drawWithNames</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
@@ -200,7 +200,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3b20d5f27f63af5ea6e5b6af1112ecf8">NO_MOUSE_ACTION</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#ac9c409fd034bc5ab42aacfa4c23fe55c">openSnapshotFormatDialog</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ac5cbfafb28ef4c0474ae96437294f547">paintGL</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">pathKey</a>(int index) const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">pathKey</a>(unsigned int index) const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">playPathKeyboardModifiers</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#ab78f96913c9aede4854b0efccf53f983">pointSelected</a>(const QMouseEvent *e)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a24f5dce22199f5eea71f034cae6ae4fa">postDraw</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
@@ -227,7 +227,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa">saveStateToFile</a>()</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a7c5568ae9e5539cf410ef369dba7cec5">scaledFont</a>(const QFont &font) const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius</a>() const </td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a410b0fa7f49e7eedd6d739db37c67209">SCREEN_ROTATE</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3de224b064ad81a76d8739cf288543a3">SCREEN_TRANSLATE</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa1697a91b22c2369eb2ba427c2d193329">SELECT</a> enum value</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
@@ -249,7 +249,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#aad24c89e014de3ea16f071c3bc18f4db">setFPSIsDisplayed</a>(bool display=true)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a7e021e15180ba348e90c955bdd28b1a4">setFullScreen</a>(bool fullScreen=true)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#ae9dd114195dfdf82e23b5754b7c161de">setGridIsDrawn</a>(bool draw=true)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription</a>(int key, QString description)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription</a>(unsigned int key, QString description)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#ac6964ec1ebb2f42464313e0c43e767a3">setManipulatedFrame</a>(qglviewer::ManipulatedFrame *frame)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a98e3c0b956c3fea7dc804e7a7a7dd295">setMouseBinding</a>(Qt::KeyboardModifiers modifiers, Qt::MouseButton buttons, MouseHandler handler, MouseAction action, bool withConstraint=true)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#af60ec98df1af2309ef1d16644e9791ef">setMouseBinding</a>(Qt::KeyboardModifiers modifiers, Qt::MouseButton button, ClickAction action, bool doubleClick=false, Qt::MouseButtons buttonsBefore=Qt::NoButton)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
@@ -260,11 +260,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a993285ef8a16ccbdc5d57a1264212712">setMouseGrabber</a>(qglviewer::MouseGrabber *mouseGrabber)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#a3f0b956f948f469c095ff3c2c1b73494">setMouseGrabberIsEnabled</a>(const qglviewer::MouseGrabber *const mouseGrabber, bool enabled=true)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#acf0a4ee197fe91b8c07dd74cad1aafaa">setMouseTracking</a>(bool enable)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13">setPathKey</a>(int key, int index=0)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13">setPathKey</a>(int key, unsigned int index=0)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1">setPlayPathKeyboardModifiers</a>(Qt::KeyboardModifiers modifiers)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c">setSceneBoundingBox</a>(const qglviewer::Vec &min, const qglviewer::Vec &max)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d">setSceneCenter</a>(const qglviewer::Vec &center)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">setSceneRadius</a>(float radius)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">setSceneRadius</a>(qreal radius)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ae8af6dc4a89202211b764647caf3d1f3">setSelectBufferSize</a>(int size)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classQGLViewer.html#aeaa1327270d0bcdf991874e7d741afd5">setSelectedName</a>(int id)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classQGLViewer.html#ae830757057c41db506410fd3c332d7dd">setSelectRegionHeight</a>(int height)</td><td class="entry"><a class="el" href="classQGLViewer.html">QGLViewer</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
@@ -323,7 +323,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classQGLViewer.html b/doc/refManual/classQGLViewer.html
index 693fad6..835cf95 100644
--- a/doc/refManual/classQGLViewer.html
+++ b/doc/refManual/classQGLViewer.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -182,12 +182,12 @@ Viewer's colors</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Scene dimensions</h2></td></tr>
-<tr class="memitem:a58c17044cc4a601c6b446bf5e83513f9"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius</a> () const </td></tr>
-<tr class="separator:a58c17044cc4a601c6b446bf5e83513f9"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a32b418de3796a253b28c9635b2f4f6fb"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius</a> () const </td></tr>
+<tr class="separator:a32b418de3796a253b28c9635b2f4f6fb"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5a0503bc22a710f96bfd779eaf538bab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter</a> () const </td></tr>
 <tr class="separator:a5a0503bc22a710f96bfd779eaf538bab"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aef99f105486d457f0199fcc35181fa83"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">setSceneRadius</a> (float radius)</td></tr>
-<tr class="separator:aef99f105486d457f0199fcc35181fa83"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad5138140e12f0fdcf7370b9c6d85eedd"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">setSceneRadius</a> (qreal radius)</td></tr>
+<tr class="separator:ad5138140e12f0fdcf7370b9c6d85eedd"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a6712acd05f9d518d6babfe96e537d06d"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d">setSceneCenter</a> (const <a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> &center)</td></tr>
 <tr class="separator:a6712acd05f9d518d6babfe96e537d06d"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aa8339148d876e633c27e5df826f06c9c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c">setSceneBoundingBox</a> (const <a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> &min, const <a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> &max)</td></tr>
@@ -219,10 +219,10 @@ Mouse grabbers</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 State of the viewer</h2></td></tr>
-<tr class="memitem:a915589f4d93e15d110444ed9b3464fa1"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio</a> () const </td></tr>
-<tr class="separator:a915589f4d93e15d110444ed9b3464fa1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6fde4d85dfc5338aa237ba1eb505e975"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975">currentFPS</a> ()</td></tr>
-<tr class="separator:a6fde4d85dfc5338aa237ba1eb505e975"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a06471e2ca19ce8da106ee4b996687b01"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio</a> () const </td></tr>
+<tr class="separator:a06471e2ca19ce8da106ee4b996687b01"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6d52227793dba3e2f87f07acec26fd56"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56">currentFPS</a> ()</td></tr>
+<tr class="separator:a6d52227793dba3e2f87f07acec26fd56"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a129c439f36bb669672148192abc8ffed"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a129c439f36bb669672148192abc8ffed">isFullScreen</a> () const </td></tr>
 <tr class="separator:a129c439f36bb669672148192abc8ffed"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a2fc4c62e317a0f64c2a943ed11faa337"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337">displaysInStereo</a> () const </td></tr>
@@ -250,16 +250,16 @@ Display methods</h2></td></tr>
 <tr class="separator:ad604ec747b161c869877fcb647a3c775"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a61336516f9771ac6aef90875f848add4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a61336516f9771ac6aef90875f848add4">displayMessage</a> (const QString &message, int delay=2000)</td></tr>
 <tr class="separator:a61336516f9771ac6aef90875f848add4"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a14fc47f313bbb65c38d2a8ae754215e0"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0">drawArrow</a> (float length=1.0f, float radius=-1.0f, int nbSubdivisions=12)</td></tr>
-<tr class="separator:a14fc47f313bbb65c38d2a8ae754215e0"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a27edb1331c7bf373d126487e9547969f"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a27edb1331c7bf373d126487e9547969f">drawArrow</a> (const <a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> &from, const <a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> &to, float radius=-1.0f, int nbSubdivisions=12)</td></tr>
-<tr class="separator:a27edb1331c7bf373d126487e9547969f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af18c0661b9a86e6b07ae344e05979c4c"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c">drawAxis</a> (float length=1.0f)</td></tr>
-<tr class="separator:af18c0661b9a86e6b07ae344e05979c4c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad4a4d99fabe53083099c70439bc3564d"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d">drawGrid</a> (float size=1.0f, int nbSubdivisions=10)</td></tr>
-<tr class="separator:ad4a4d99fabe53083099c70439bc3564d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a2a3b971fe826a90efaffcb7c68fdcc53"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53">drawLight</a> (GLenum light, float scale=1.0f) const </td></tr>
-<tr class="separator:a2a3b971fe826a90efaffcb7c68fdcc53"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3ee5a2d40e4613eb6c824311e01ce150"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150">drawArrow</a> (qreal length=1.0, qreal radius=-1.0, int nbSubdivisions=12)</td></tr>
+<tr class="separator:a3ee5a2d40e4613eb6c824311e01ce150"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a4d3e50e3881dca15e1b9641afa0054dc"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc">drawArrow</a> (const <a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> &from, const <a class="el" href="classqglviewer_1_1Vec.html">qglviewer::Vec</a> &to, qreal radius=-1.0, int nbSubdivisions=12)</td></tr>
+<tr class="separator:a4d3e50e3881dca15e1b9641afa0054dc"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3072ee7495b54d48d1a11a5bd02a25cc"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc">drawAxis</a> (qreal length=1.0)</td></tr>
+<tr class="separator:a3072ee7495b54d48d1a11a5bd02a25cc"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a86a359ff8c78755fca0900321293da8f"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a86a359ff8c78755fca0900321293da8f">drawGrid</a> (qreal size=1.0, int nbSubdivisions=10)</td></tr>
+<tr class="separator:a86a359ff8c78755fca0900321293da8f"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae8f54947331c56ea1a2de82ecba70b07"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07">drawLight</a> (GLenum light, qreal scale=1.0) const </td></tr>
+<tr class="separator:ae8f54947331c56ea1a2de82ecba70b07"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Useful inherited methods</h2></td></tr>
@@ -325,10 +325,10 @@ Snapshots</h2></td></tr>
 Buffer to texture</h2></td></tr>
 <tr class="memitem:a6435e0a64e14d04dce25e524051f8d69"><td class="memItemLeft" align="right" valign="top">GLuint </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">bufferTextureId</a> () const </td></tr>
 <tr class="separator:a6435e0a64e14d04dce25e524051f8d69"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac60a0831696a80344fd04b2fba039f48"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">bufferTextureMaxU</a> () const </td></tr>
-<tr class="separator:ac60a0831696a80344fd04b2fba039f48"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8d3ecfdb46f8971e46a0ab0f52c5bbf7"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">bufferTextureMaxV</a> () const </td></tr>
-<tr class="separator:a8d3ecfdb46f8971e46a0ab0f52c5bbf7"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa7d083b81d5799f5a7ec768117b9f4a2"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">bufferTextureMaxU</a> () const </td></tr>
+<tr class="separator:aa7d083b81d5799f5a7ec768117b9f4a2"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:accce92c989155aebccfb5dc05c2b8bf9"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">bufferTextureMaxV</a> () const </td></tr>
+<tr class="separator:accce92c989155aebccfb5dc05c2b8bf9"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aeb1721bfb1c032ae68665808bb2f4453"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453">copyBufferToTexture</a> (GLint internalFormat, GLenum format=GL_NONE)</td></tr>
 <tr class="separator:aeb1721bfb1c032ae68665808bb2f4453"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -469,20 +469,20 @@ Keyboard customization</h2></td></tr>
 <tr class="separator:a7a90ec0b49f9586addb5eed9026077c1"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:af8f502daf9ffa61c8904f891c843e994"><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#af8f502daf9ffa61c8904f891c843e994">shortcut</a> (<a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1">KeyboardAction</a> action) const </td></tr>
 <tr class="separator:af8f502daf9ffa61c8904f891c843e994"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:adfe21e109b45f8c79f2c360bf35fb835"><td class="memItemLeft" align="right" valign="top">Qt::Key </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">pathKey</a> (int index) const </td></tr>
-<tr class="separator:adfe21e109b45f8c79f2c360bf35fb835"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aab5d27e632d4a2116e602bc67005b0e5"><td class="memItemLeft" align="right" valign="top">Qt::Key </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">pathKey</a> (unsigned int index) const </td></tr>
+<tr class="separator:aab5d27e632d4a2116e602bc67005b0e5"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aad35c97454fee139eb809488ca7a8cb1"><td class="memItemLeft" align="right" valign="top">Qt::KeyboardModifiers </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">addKeyFrameKeyboardModifiers</a> () const </td></tr>
 <tr class="separator:aad35c97454fee139eb809488ca7a8cb1"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a53cd07399d3ed7b88cdf69d9cd17488d"><td class="memItemLeft" align="right" valign="top">Qt::KeyboardModifiers </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">playPathKeyboardModifiers</a> () const </td></tr>
 <tr class="separator:a53cd07399d3ed7b88cdf69d9cd17488d"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a34d76d224c67a0fdae03f0d921bf3330"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a34d76d224c67a0fdae03f0d921bf3330">setShortcut</a> (<a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1">KeyboardAction</a> action, unsigned int key)</td></tr>
 <tr class="separator:a34d76d224c67a0fdae03f0d921bf3330"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a9e97204faca448653fad94a37024a488"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription</a> (int key, QString description)</td></tr>
-<tr class="separator:a9e97204faca448653fad94a37024a488"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae33368bc379da582a3d26df18a6df16c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription</a> (unsigned int key, QString description)</td></tr>
+<tr class="separator:ae33368bc379da582a3d26df18a6df16c"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac02747804176d6db01421e12e699eb7a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ac02747804176d6db01421e12e699eb7a">clearShortcuts</a> ()</td></tr>
 <tr class="separator:ac02747804176d6db01421e12e699eb7a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ada7e68536b6593f8a8bde9a746c99c13"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13">setPathKey</a> (int key, int index=0)</td></tr>
-<tr class="separator:ada7e68536b6593f8a8bde9a746c99c13"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a5542c73a9c2c62be3cde9144d950fd13"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13">setPathKey</a> (int key, unsigned int index=0)</td></tr>
+<tr class="separator:a5542c73a9c2c62be3cde9144d950fd13"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ab8e16934baadfe8db4f68dedc98075a1"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1">setPlayPathKeyboardModifiers</a> (Qt::KeyboardModifiers modifiers)</td></tr>
 <tr class="separator:ab8e16934baadfe8db4f68dedc98075a1"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:afe04d1c918e50f6b4db5f7b6c7b80219"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classQGLViewer.html#afe04d1c918e50f6b4db5f7b6c7b80219">setAddKeyFrameKeyboardModifiers</a> (Qt::KeyboardModifiers modifiers)</td></tr>
@@ -587,7 +587,7 @@ QGLViewer pool</h2></td></tr>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>A versatile 3D OpenGL viewer based on QGLWidget. </p>
 <p>It features many classical viewer functionalities, such as a camera trackball, manipulated objects, snapshot saving and much <a href="../features.html">more</a>. Its main goal is to ease the development of new 3D applications.</p>
-<p>New users should read the <a href="../introduction.html">introduction page</a> to get familiar with important notions such as <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>, <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter()</a> and the world coordinate system. Try the numerous simple <a href="../examples/index.html">examples</a> to discover the possibilities and understand how it works.</p>
+<p>New users should read the <a href="../introduction.html">introduction page</a> to get familiar with important notions such as <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>, <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter()</a> and the world coordinate system. Try the numerous simple <a href="../examples/index.html">examples</a> to discover the possibilities and understand how it works.</p>
 <h3>Usage</h3>
 <p>To use a QGLViewer, derive you viewer class from the QGLViewer and overload its <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">draw()</a> virtual method. See the <a href="../examples/simpleViewer.html">simpleViewer example</a> for an illustration.</p>
 <p>An other option is to connect your drawing methods to the signals emitted by the QGLViewer (Qt's callback mechanism). See the <a href="../examples/callback.html">callback example</a> for a complete implementation. </p>
@@ -945,7 +945,7 @@ QGLViewer pool</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Returns the keyboard modifiers that must be pressed with a <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">pathKey()</a> to add the current camera position to a KeyFrame path.</p>
+<p>Returns the keyboard modifiers that must be pressed with a <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">pathKey()</a> to add the current camera position to a KeyFrame path.</p>
 <p>It can be <code>Qt::NoModifier</code>, <code>Qt::ControlModifier</code>, <code>Qt::ShiftModifier</code>, <code>Qt::AltModifier</code>, <code>Qt::MetaModifier</code> or a combination of these (using the bitwise '|' operator).</p>
 <p>Default value is Qt::AltModifier. Defined using <a class="el" href="classQGLViewer.html#afe04d1c918e50f6b4db5f7b6c7b80219">setAddKeyFrameKeyboardModifiers()</a>.</p>
 <p>See also <a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">playPathKeyboardModifiers()</a>. </p>
@@ -1041,18 +1041,18 @@ See the <a href="../examples/animation.html">animation example</a> f
 </div><div class="memdoc">
 <p>The animation loop period, in milliseconds.</p>
 <p>When <a class="el" href="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e">animationIsStarted()</a>, this is delay waited after <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">draw()</a> to call <a class="el" href="classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2">animate()</a> and <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">draw()</a> again. Default value is 40 milliseconds (25 Hz).</p>
-<p>This value will define the <a class="el" href="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975">currentFPS()</a> when <a class="el" href="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e">animationIsStarted()</a> (provided that your <a class="el" href="classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2">animate()</a> and <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">draw()</a> methods are fast enough).</p>
+<p>This value will define the <a class="el" href="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56">currentFPS()</a> when <a class="el" href="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e">animationIsStarted()</a> (provided that your <a class="el" href="classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2">animate()</a> and <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">draw()</a> methods are fast enough).</p>
 <p>If you want to know the maximum possible frame rate of your machine on a given scene, <a class="el" href="classQGLViewer.html#aa37d4e0afe6a47e8f4f828ed41072176">setAnimationPeriod()</a> to <code>0</code>, and <a class="el" href="classQGLViewer.html#ad5344a5f702678f309fafa0c699b2cf3">startAnimation()</a> (keyboard shortcut is <code>Enter</code>). The display will then be updated as often as possible, and the frame rate will be meaningful.</p>
 <dl class="section note"><dt>Note</dt><dd>This value is taken into account only the next time you call <a class="el" href="classQGLViewer.html#ad5344a5f702678f309fafa0c699b2cf3">startAnimation()</a>. If <a class="el" href="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e">animationIsStarted()</a>, you should <a class="el" href="classQGLViewer.html#a84c1367b486680bcf22987540e217cfb">stopAnimation()</a> first. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="a915589f4d93e15d110444ed9b3464fa1"></a>
+<a class="anchor" id="a06471e2ca19ce8da106ee4b996687b01"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float aspectRatio </td>
+          <td class="memname">qreal aspectRatio </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1144,7 +1144,7 @@ See the <a href="../examples/animation.html">animation example</a> f
 <p>Returns the background color of the viewer.</p>
 <p>This method is provided for convenience since the background color is an OpenGL state variable set with <code>glClearColor()</code>. However, this internal representation has the advantage that it is saved (resp. restored) with <a class="el" href="classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa">saveStateToFile()</a> (resp. <a class="el" href="classQGLViewer.html#a212f6b7b669463c2151688f629d72a81">restoreStateFromFile()</a>).</p>
 <p>Use <a class="el" href="classQGLViewer.html#a70d4e21190fdc47edd88f078dd2037cb">setBackgroundColor()</a> to define and activate a background color.</p>
-<dl class="section attention"><dt>Attention</dt><dd>Each QColor component is an integer ranging from 0 to 255. This differs from the float values used by <code>glClearColor()</code> which are in the 0.0-1.0 range. Default value is (51, 51, 51) (dark gray). You may have to change <a class="el" href="classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d">foregroundColor()</a> accordingly.</dd>
+<dl class="section attention"><dt>Attention</dt><dd>Each QColor component is an integer ranging from 0 to 255. This differs from the qreal values used by <code>glClearColor()</code> which are in the 0.0-1.0 range. Default value is (51, 51, 51) (dark gray). You may have to change <a class="el" href="classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d">foregroundColor()</a> accordingly.</dd>
 <dd>
 This method does not return the current OpenGL clear color as <code>glGet()</code> does. Instead, it returns the QGLViewer internal variable. If you directly use <code>glClearColor()</code> or <code><a class="el" href="classQGLViewer.html#a88b363f05e720484cde551d5f798e69b">qglClearColor()</a></code> instead of <a class="el" href="classQGLViewer.html#a70d4e21190fdc47edd88f078dd2037cb">setBackgroundColor()</a>, the two results will differ. </dd></dl>
 
@@ -1195,12 +1195,12 @@ This method does not return the current OpenGL clear color as <code>glGet()</cod
 
 </div>
 </div>
-<a class="anchor" id="ac60a0831696a80344fd04b2fba039f48"></a>
+<a class="anchor" id="aa7d083b81d5799f5a7ec768117b9f4a2"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float bufferTextureMaxU </td>
+          <td class="memname">qreal bufferTextureMaxU </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1209,23 +1209,23 @@ This method does not return the current OpenGL clear color as <code>glGet()</cod
 </div><div class="memdoc">
 <p>Returns the texture coordinate corresponding to the u extremum of the bufferTexture.</p>
 <p>The bufferTexture is created by <a class="el" href="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453">copyBufferToTexture()</a>. The texture size has powers of two dimensions and the buffer image hence only fills a part of it. This value corresponds to the u coordinate of the extremum right side of the buffer image.</p>
-<p>Use (0,0) to (<a class="el" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">bufferTextureMaxU()</a>, <a class="el" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">bufferTextureMaxV()</a>) texture coordinates to map the entire texture on a quad. </p>
+<p>Use (0,0) to (<a class="el" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">bufferTextureMaxU()</a>, <a class="el" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">bufferTextureMaxV()</a>) texture coordinates to map the entire texture on a quad. </p>
 
 </div>
 </div>
-<a class="anchor" id="a8d3ecfdb46f8971e46a0ab0f52c5bbf7"></a>
+<a class="anchor" id="accce92c989155aebccfb5dc05c2b8bf9"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float bufferTextureMaxV </td>
+          <td class="memname">qreal bufferTextureMaxV </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">bufferTextureMaxU()</a>, but for the v texture coordinate. </p>
+<p>Same as <a class="el" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">bufferTextureMaxU()</a>, but for the v texture coordinate. </p>
 
 </div>
 </div>
@@ -1259,7 +1259,7 @@ This method does not return the current OpenGL clear color as <code>glGet()</cod
 </div><div class="memdoc">
 <p>Returns <code>true</code> if the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a> is being edited in the viewer.</p>
 <p>Set by <a class="el" href="classQGLViewer.html#a521c83b1d745b37331932b4d7b976d41">setCameraIsEdited()</a> or <a class="el" href="classQGLViewer.html#a3a53b30eacfccf0825b808977d634936">toggleCameraIsEdited()</a>. Default value is <code>false</code>.</p>
-<p>The current implementation is limited: the defined <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a> paths (see <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">qglviewer::Camera::keyFrameInterpolator()</a>) are simply displayed using <a class="el" href="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87">qglviewer::Camera::drawAllPaths()</a>. Actual camera and path edition will be implemented in th [...]
+<p>The current implementation is limited: the defined <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a> paths (see <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">qglviewer::Camera::keyFrameInterpolator()</a>) are simply displayed using <a class="el" href="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87">qglviewer::Camera::drawAllPaths()</a>. Actual camera and path edition will be implemented in th [...]
 
 </div>
 </div>
@@ -1470,7 +1470,7 @@ This method does not return the current OpenGL clear color as <code>glGet()</cod
 <p>Creates a texture (when needed) and uses glCopyTexSubImage2D() to directly copy the buffer in it.</p>
 <p>Use <code>internalFormat</code> and <code>format</code> to define the texture format and hence which and how components of the buffer are copied into the texture. See the glTexImage2D() documentation for details.</p>
 <p>When <code>format</code> is c GL_NONE (default), its value is set to <code>internalFormat</code>, which fits most cases. Typical <code>internalFormat</code> (and <code>format</code>) values are <code>GL_DEPTH_COMPONENT</code> and <code>GL_RGBA</code>. Use <code>GL_LUMINANCE</code> as the <code>internalFormat</code> and <code>GL_RED</code>, <code>GL_GREEN</code> or <code>GL_BLUE</code> as <code>format</code> to capture a single color component as a luminance (grey scaled) value. Note t [...]
-<p>The texture has dimensions which are powers of two. It is as small as possible while always being larger or equal to the current size of the widget. The buffer image hence does not entirely fill the texture: it is stuck to the lower left corner (corresponding to the (0,0) texture coordinates). Use <a class="el" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">bufferTextureMaxU()</a> and <a class="el" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">bufferTextur [...]
+<p>The texture has dimensions which are powers of two. It is as small as possible while always being larger or equal to the current size of the widget. The buffer image hence does not entirely fill the texture: it is stuck to the lower left corner (corresponding to the (0,0) texture coordinates). Use <a class="el" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">bufferTextureMaxU()</a> and <a class="el" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">bufferTextur [...]
 <p>Here is how to display a grey-level image of the z-buffer: </p><div class="fragment"><div class="line"><a class="code" href="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453">copyBufferToTexture</a>(GL_DEPTH_COMPONENT);</div>
 <div class="line"></div>
 <div class="line">glMatrixMode(GL_TEXTURE);</div>
@@ -1483,9 +1483,9 @@ This method does not return the current OpenGL clear color as <code>glGet()</cod
 <div class="line"></div>
 <div class="line">glBegin(GL_QUADS);</div>
 <div class="line">glTexCoord2f(0.0, 0.0);                                 glVertex2i(0, 0);</div>
-<div class="line">glTexCoord2f(<a class="code" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">bufferTextureMaxU</a>(), 0.0);                 glVertex2i(<a class="code" href="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431">width</a>(), 0);</div>
-<div class="line">glTexCoord2f(<a class="code" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">bufferTextureMaxU</a>(), <a class="code" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">bufferTextureMaxV</a>()); glVertex2i(<a class="code" href="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431">width</a>(), <a class="code" href="classQGLViewer.html#ae26bcfe2f33f5873dbdfb6948cf1f59f">height</a>());</div>
-<div class="line">glTexCoord2f(0.0, <a class="code" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">bufferTextureMaxV</a>());                 glVertex2i(0, <a class="code" href="classQGLViewer.html#ae26bcfe2f33f5873dbdfb6948cf1f59f">height</a>());</div>
+<div class="line">glTexCoord2f(<a class="code" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">bufferTextureMaxU</a>(), 0.0);                 glVertex2i(<a class="code" href="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431">width</a>(), 0);</div>
+<div class="line">glTexCoord2f(<a class="code" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">bufferTextureMaxU</a>(), <a class="code" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">bufferTextureMaxV</a>()); glVertex2i(<a class="code" href="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431">width</a>(), <a class="code" href="classQGLViewer.html#ae26bcfe2f33f5873dbdfb6948cf1f59f">height</a>());</div>
+<div class="line">glTexCoord2f(0.0, <a class="code" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">bufferTextureMaxV</a>());                 glVertex2i(0, <a class="code" href="classQGLViewer.html#ae26bcfe2f33f5873dbdfb6948cf1f59f">height</a>());</div>
 <div class="line">glEnd();</div>
 <div class="line"></div>
 <div class="line"><a class="code" href="classQGLViewer.html#a9cff22af974391604bff7f91df789138">stopScreenCoordinatesSystem</a>();</div>
@@ -1499,12 +1499,12 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 
 </div>
 </div>
-<a class="anchor" id="a6fde4d85dfc5338aa237ba1eb505e975"></a>
+<a class="anchor" id="a6d52227793dba3e2f87f07acec26fd56"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float currentFPS </td>
+          <td class="memname">qreal currentFPS </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td></td>
@@ -1567,7 +1567,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </div><!-- fragment --><p> The hardware needs to support stereo display. Try the <a href="../examples/stereoViewer.html">stereoViewer example</a> to check.</p>
 <p>Set by <a class="el" href="classQGLViewer.html#afe362ba5c3851a93f23fb833b2479f08">setStereoDisplay()</a> or <a class="el" href="classQGLViewer.html#a4e0ebf98eacbcbad3b094e26d9e35886">toggleStereoDisplay()</a>. Default value is <code>false</code>.</p>
 <p>Stereo is performed using the Parallel axis asymmetric frustum perspective projection method. See Camera::loadProjectionMatrixStereo() and Camera::loadModelViewMatrixStereo().</p>
-<p>The stereo parameters are defined by the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a>. See <a class="el" href="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234">qglviewer::Camera::setIODistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401">qglviewer::Camera::setPhysicalScreenWidth()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a">qglviewe [...]
+<p>The stereo parameters are defined by the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a>. See <a class="el" href="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7">qglviewer::Camera::setIODistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f">qglviewer::Camera::setPhysicalScreenWidth()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98">qglviewe [...]
 
 </div>
 </div>
@@ -1651,7 +1651,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 
 </div>
 </div>
-<a class="anchor" id="a14fc47f313bbb65c38d2a8ae754215e0"></a>
+<a class="anchor" id="a3ee5a2d40e4613eb6c824311e01ce150"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1661,14 +1661,14 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         <tr>
           <td class="memname">void drawArrow </td>
           <td>(</td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>length</em> = <code>1.0f</code>, </td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>length</em> = <code>1.0</code>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>radius</em> = <code>-1.0f</code>, </td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>radius</em> = <code>-1.0</code>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
@@ -1690,12 +1690,12 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </div><div class="memdoc">
 <p>Draws a 3D arrow along the positive Z axis.</p>
 <p><code>length</code>, <code>radius</code> and <code>nbSubdivisions</code> define its geometry. If <code>radius</code> is negative (default), it is set to 0.05 * <code>length</code>.</p>
-<p>Use drawArrow(const Vec& from, const Vec& to, float radius, int nbSubdivisions) or change the <code>ModelView</code> matrix to place the arrow in 3D.</p>
+<p>Use drawArrow(const Vec& from, const Vec& to, qreal radius, int nbSubdivisions) or change the <code>ModelView</code> matrix to place the arrow in 3D.</p>
 <p>Uses current color and does not modify the OpenGL state. </p>
 
 </div>
 </div>
-<a class="anchor" id="a27edb1331c7bf373d126487e9547969f"></a>
+<a class="anchor" id="a4d3e50e3881dca15e1b9641afa0054dc"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1717,8 +1717,8 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>radius</em> = <code>-1.0f</code>, </td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>radius</em> = <code>-1.0</code>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
@@ -1739,11 +1739,11 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </table>
 </div><div class="memdoc">
 <p>Draws a 3D arrow between the 3D point <code>from</code> and the 3D point <code>to</code>, both defined in the current ModelView coordinates system.</p>
-<p>See <a class="el" href="classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0">drawArrow(float length, float radius, int nbSubdivisions)</a> for details. </p>
+<p>See <a class="el" href="classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150">drawArrow(qreal length, qreal radius, int nbSubdivisions)</a> for details. </p>
 
 </div>
 </div>
-<a class="anchor" id="af18c0661b9a86e6b07ae344e05979c4c"></a>
+<a class="anchor" id="a3072ee7495b54d48d1a11a5bd02a25cc"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1753,8 +1753,8 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         <tr>
           <td class="memname">void drawAxis </td>
           <td>(</td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>length</em> = <code>1.0f</code></td><td>)</td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>length</em> = <code>1.0</code></td><td>)</td>
           <td></td>
         </tr>
       </table>
@@ -1768,10 +1768,10 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 <p>The axis position and orientation matches the current modelView matrix state: three arrows (red, green and blue) of length <code>length</code> are drawn along the positive X, Y and Z directions.</p>
 <p>Use the following code to display the current position and orientation of a <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">qglviewer::Frame</a>: </p><div class="fragment"><div class="line">glPushMatrix();</div>
 <div class="line">glMultMatrixd(frame.matrix());</div>
-<div class="line"><a class="code" href="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c">QGLViewer::drawAxis</a>(<a class="code" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius</a>() / 5.0); <span class="comment">// Or any scale</span></div>
+<div class="line"><a class="code" href="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc">QGLViewer::drawAxis</a>(<a class="code" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius</a>() / 5.0); <span class="comment">// Or any scale</span></div>
 <div class="line">glPopMatrix();</div>
 </div><!-- fragment --><p>The current color and line width are used to draw the X, Y and Z characters at the extremities of the three arrows. The OpenGL state is not modified by this method.</p>
-<p><a class="el" href="classQGLViewer.html#a7d38e6f11078e886f7978525def15797">axisIsDrawn()</a> uses this method to draw a representation of the world coordinate system. See also <a class="el" href="classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0">QGLViewer::drawArrow()</a> and <a class="el" href="classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d">QGLViewer::drawGrid()</a>. </p>
+<p><a class="el" href="classQGLViewer.html#a7d38e6f11078e886f7978525def15797">axisIsDrawn()</a> uses this method to draw a representation of the world coordinate system. See also <a class="el" href="classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150">QGLViewer::drawArrow()</a> and <a class="el" href="classQGLViewer.html#a86a359ff8c78755fca0900321293da8f">QGLViewer::drawGrid()</a>. </p>
 
 </div>
 </div>
@@ -1802,7 +1802,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 
 </div>
 </div>
-<a class="anchor" id="ad4a4d99fabe53083099c70439bc3564d"></a>
+<a class="anchor" id="a86a359ff8c78755fca0900321293da8f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1812,8 +1812,8 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         <tr>
           <td class="memname">void drawGrid </td>
           <td>(</td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>size</em> = <code>1.0f</code>, </td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>size</em> = <code>1.0</code>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
@@ -1834,12 +1834,12 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </table>
 </div><div class="memdoc">
 <p>Draws a grid in the XY plane, centered on (0,0,0) (defined in the current coordinate system).</p>
-<p><code>size</code> (OpenGL units) and <code>nbSubdivisions</code> define its geometry. Set the <code>GL_MODELVIEW</code> matrix to place and orientate the grid in 3D space (see the <a class="el" href="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c">drawAxis()</a> documentation).</p>
+<p><code>size</code> (OpenGL units) and <code>nbSubdivisions</code> define its geometry. Set the <code>GL_MODELVIEW</code> matrix to place and orientate the grid in 3D space (see the <a class="el" href="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc">drawAxis()</a> documentation).</p>
 <p>The OpenGL state is not modified by this method. </p>
 
 </div>
 </div>
-<a class="anchor" id="a2a3b971fe826a90efaffcb7c68fdcc53"></a>
+<a class="anchor" id="ae8f54947331c56ea1a2de82ecba70b07"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1855,8 +1855,8 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>scale</em> = <code>1.0f</code> </td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>scale</em> = <code>1.0</code> </td>
         </tr>
         <tr>
           <td></td>
@@ -1874,7 +1874,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 <p>Called in <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">draw()</a>, this method is useful to debug or display your light setup. Light drawing depends on the type of light (point, spot, directional).</p>
 <p>The method retrieves the light setup using <code>glGetLightfv</code>. Position and define your lights before calling this method.</p>
 <p>Light is drawn using its diffuse color. Disabled lights are not displayed.</p>
-<p>Drawing size is proportional to <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>. Use <code>scale</code> to rescale it.</p>
+<p>Drawing size is proportional to <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>. Use <code>scale</code> to rescale it.</p>
 <p>See the <a href="../examples/drawLight.html">drawLight example</a> for an illustration.</p>
 <dl class="section attention"><dt>Attention</dt><dd>You need to enable <code>GL_COLOR_MATERIAL</code> before calling this method. <code>glColor</code> is set to the light diffuse color. </dd></dl>
 
@@ -2074,7 +2074,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </div><div class="memdoc">
 <p>Returns the foreground color used by the viewer.</p>
 <p>This color is used when <a class="el" href="classQGLViewer.html#a4b8985b86aca5584d9869c8ac868984a">FPSIsDisplayed()</a>, <a class="el" href="classQGLViewer.html#aee18c56a8321a60771b085a5fe798ee7">gridIsDrawn()</a>, to display the camera paths when the <a class="el" href="classQGLViewer.html#a1bf2817fb27f0ad326e3db75aeb46af7">cameraIsEdited()</a>.</p>
-<dl class="section attention"><dt>Attention</dt><dd>Each QColor component is an integer in the range 0-255. This differs from the float values used by <code>glColor3f()</code> which are in the range 0-1. Default value is (180, 180, 180) (light gray).</dd></dl>
+<dl class="section attention"><dt>Attention</dt><dd>Each QColor component is an integer in the range 0-255. This differs from the qreal values used by <code>glColor3f()</code> which are in the range 0-1. Default value is (180, 180, 180) (light gray).</dd></dl>
 <p>Use <code>qglColor(foregroundColor())</code> to set the current OpenGL color to the <a class="el" href="classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d">foregroundColor()</a>.</p>
 <p>See also <a class="el" href="classQGLViewer.html#a7ddf68dcfb09cc5a991a06d91cb4cc5b">backgroundColor()</a>. </p>
 
@@ -2094,7 +2094,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </div><div class="memdoc">
 <p>Returns <code>true</code> if the viewer displays the current frame rate (Frames Per Second).</p>
 <p>Use QApplication::setFont() to define the display font (see <a class="el" href="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775">drawText()</a>).</p>
-<p>Set by <a class="el" href="classQGLViewer.html#aad24c89e014de3ea16f071c3bc18f4db">setFPSIsDisplayed()</a> or <a class="el" href="classQGLViewer.html#ab8a88948237894dca2b7b57a67226d66">toggleFPSIsDisplayed()</a>. Use <a class="el" href="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975">currentFPS()</a> to get the current FPS. Default value is <code>false</code>. </p>
+<p>Set by <a class="el" href="classQGLViewer.html#aad24c89e014de3ea16f071c3bc18f4db">setFPSIsDisplayed()</a> or <a class="el" href="classQGLViewer.html#ab8a88948237894dca2b7b57a67226d66">toggleFPSIsDisplayed()</a>. Use <a class="el" href="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56">currentFPS()</a> to get the current FPS. Default value is <code>false</code>. </p>
 
 </div>
 </div>
@@ -2455,7 +2455,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </table>
 </div><div class="memdoc">
 <p>Returns a pointer to the help widget.</p>
-<p>Use this only if you want to directly modify the help widget. Otherwise use <a class="el" href="classQGLViewer.html#a38ddb3cdf15e24de824a2d7a170ec915">helpString()</a>, <a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription()</a> and <a class="el" href="classQGLViewer.html#ae6952d2191d9e47e295fb53248d47702">setMouseBindingDescription()</a> to customize the text displayed in the help window tabs. </p>
+<p>Use this only if you want to directly modify the help widget. Otherwise use <a class="el" href="classQGLViewer.html#a38ddb3cdf15e24de824a2d7a170ec915">helpString()</a>, <a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription()</a> and <a class="el" href="classQGLViewer.html#ae6952d2191d9e47e295fb53248d47702">setMouseBindingDescription()</a> to customize the text displayed in the help window tabs. </p>
 
 </div>
 </div>
@@ -2639,7 +2639,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </table>
 </div><div class="memdoc">
 <p>Returns a QString that describes the application keyboard shortcut bindings, and that will be displayed in the <a class="el" href="classQGLViewer.html#a97ee70a8770dc30d06c744b24eb2fcfc">help()</a> window <code>Keyboard</code> tab.</p>
-<p>Default value is a table that describes the custom shortcuts defined using <a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription()</a> as well as the <em>standard</em> <a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1">QGLViewer::KeyboardAction</a> shortcuts (defined using <a class="el" href="classQGLViewer.html#a34d76d224c67a0fdae03f0d921bf3330">setShortcut()</a>). See the <a href="../keyboard.html">keyboard page</a> for  [...]
+<p>Default value is a table that describes the custom shortcuts defined using <a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription()</a> as well as the <em>standard</em> <a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1">QGLViewer::KeyboardAction</a> shortcuts (defined using <a class="el" href="classQGLViewer.html#a34d76d224c67a0fdae03f0d921bf3330">setShortcut()</a>). See the <a href="../keyboard.html">keyboard page</a> for  [...]
 <p>See also <a class="el" href="classQGLViewer.html#a38ddb3cdf15e24de824a2d7a170ec915">helpString()</a> and <a class="el" href="classQGLViewer.html#a6d66b99a4c5a38ef0072f350b055201b">mouseString()</a>. </p>
 
 </div>
@@ -2680,7 +2680,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 <div class="line"></div>
 <div class="line"><span class="comment">// With Qt 2 or 3, you would retrieve modifiers keys using :</span></div>
 <div class="line"><span class="comment">// const Qt::ButtonState modifiers = (Qt::ButtonState)(e->state() & Qt::KeyButtonMask);</span></div>
-</div><!-- fragment --><p> When you define a new keyboard shortcut, use <a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription()</a> to provide a short description which is displayed in the <a class="el" href="classQGLViewer.html#a97ee70a8770dc30d06c744b24eb2fcfc">help()</a> window Keyboard tab. See the <a href="../examples/keyboardAndMouse.html">keyboardAndMouse</a> example for an illustration.</p>
+</div><!-- fragment --><p> When you define a new keyboard shortcut, use <a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription()</a> to provide a short description which is displayed in the <a class="el" href="classQGLViewer.html#a97ee70a8770dc30d06c744b24eb2fcfc">help()</a> window Keyboard tab. See the <a href="../examples/keyboardAndMouse.html">keyboardAndMouse</a> example for an illustration.</p>
 <p>See also QGLWidget::keyReleaseEvent(). </p>
 
 </div>
@@ -3111,14 +3111,14 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 
 </div>
 </div>
-<a class="anchor" id="adfe21e109b45f8c79f2c360bf35fb835"></a>
+<a class="anchor" id="aab5d27e632d4a2116e602bc67005b0e5"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">Qt::Key pathKey </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>index</em></td><td>)</td>
           <td> const</td>
         </tr>
@@ -3126,9 +3126,9 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </div><div class="memdoc">
 <p>Returns the keyboard key associated to camera Key Frame path <code>index</code>.</p>
 <p>Default values are F1..F12 for indexes 1..12.</p>
-<p><a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">addKeyFrameKeyboardModifiers()</a> (resp. <a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">playPathKeyboardModifiers()</a>) define the state key(s) that must be pressed with this key to add a KeyFrame to (resp. to play) the associated Key Frame path. If you quickly press twice the <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">pathKey()</a>, the path is rese [...]
+<p><a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">addKeyFrameKeyboardModifiers()</a> (resp. <a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">playPathKeyboardModifiers()</a>) define the state key(s) that must be pressed with this key to add a KeyFrame to (resp. to play) the associated Key Frame path. If you quickly press twice the <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">pathKey()</a>, the path is rese [...]
 <p>Use <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a>->keyFrameInterpolator( <code>index</code> ) to retrieve the KeyFrameInterpolator that defines the path.</p>
-<p>If several keys are binded to a given <code>index</code> (see <a class="el" href="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13">setPathKey()</a>), one of them is returned. Returns <code>0</code> if no key is associated with this index.</p>
+<p>If several keys are binded to a given <code>index</code> (see <a class="el" href="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13">setPathKey()</a>), one of them is returned. Returns <code>0</code> if no key is associated with this index.</p>
 <p>See also the <a href="../keyboard.html">keyboard page</a>. </p>
 
 </div>
@@ -3145,7 +3145,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Returns the keyboard modifiers that must be pressed with a <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">pathKey()</a> to play a camera KeyFrame path.</p>
+<p>Returns the keyboard modifiers that must be pressed with a <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">pathKey()</a> to play a camera KeyFrame path.</p>
 <p>It can be <code>Qt::NoModifier</code>, <code>Qt::ControlModifier</code>, <code>Qt::ShiftModifier</code>, <code>Qt::AltModifier</code>, <code>Qt::MetaModifier</code> or a combination of these (using the bitwise '|' operator).</p>
 <p>Default value is Qt::NoModifier. Defined using <a class="el" href="classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1">setPlayPathKeyboardModifiers()</a>.</p>
 <p>See also <a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">addKeyFrameKeyboardModifiers()</a>. </p>
@@ -3636,18 +3636,18 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
       </table>
 </div><div class="memdoc">
 <p>Returns the scene center, defined in world coordinates.</p>
-<p>See <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> for details.</p>
+<p>See <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> for details.</p>
 <p>Default value is (0,0,0). Simply a wrapper for <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a>-><a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter()</a>. Set using <a class="el" href="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d">setSceneCenter()</a>.</p>
 <p>Do not mismatch this value (that only depends on the scene) with the <a class="el" href="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa">qglviewer::Camera::pivotPoint()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="a58c17044cc4a601c6b446bf5e83513f9"></a>
+<a class="anchor" id="a32b418de3796a253b28c9635b2f4f6fb"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float sceneRadius </td>
+          <td class="memname">qreal sceneRadius </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -3655,9 +3655,9 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
       </table>
 </div><div class="memdoc">
 <p>Returns the scene radius.</p>
-<p>The entire displayed scene should be included in a sphere of radius <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>, centered on <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter()</a>.</p>
-<p>This approximate value is used by the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a> to set <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">qglviewer::Camera::zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">qglviewer::Camera::zFar()</a>. It is also used to <a class="el" href="classQGLViewer.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a> or t [...]
-<p>Default value is 1.0. This method is equivalent to <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a>-><a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>. See <a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">setSceneRadius()</a>. </p>
+<p>The entire displayed scene should be included in a sphere of radius <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>, centered on <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter()</a>.</p>
+<p>This approximate value is used by the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a> to set <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">qglviewer::Camera::zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">qglviewer::Camera::zFar()</a>. It is also used to <a class="el" href="classQGLViewer.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a> or t [...]
+<p>Default value is 1.0. This method is equivalent to <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a>-><a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>. See <a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">setSceneRadius()</a>. </p>
 
 </div>
 </div>
@@ -3973,10 +3973,10 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </div><div class="memdoc">
 <p>Associates a new <a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">qglviewer::Camera</a> to the viewer.</p>
 <p>You should only use this method when you derive a new class from <a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">qglviewer::Camera</a> and want to use one of its instances instead of the original class.</p>
-<p>It you simply want to save and restore Camera positions, use <a class="el" href="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec">qglviewer::Camera::addKeyFrameToPath()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">qglviewer::Camera::playPath()</a> instead.</p>
+<p>It you simply want to save and restore Camera positions, use <a class="el" href="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4">qglviewer::Camera::addKeyFrameToPath()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">qglviewer::Camera::playPath()</a> instead.</p>
 <p>This method silently ignores <code>NULL</code> <code>camera</code> pointers. The calling method is responsible for deleting the previous camera pointer in order to prevent memory leaks if needed.</p>
-<p>The <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> and <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter()</a> of <code>camera</code> are set to the <em>current</em> QGLViewer values.</p>
-<p>All the <code>camera</code> <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">qglviewer::Camera::keyFrameInterpolator()</a> <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">qglviewer::KeyFrameInterpolator::interpolated()</a> signals are connected to the viewer update() slot. The connections with the previous viewer's camera are removed. </p>
+<p>The <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> and <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">sceneCenter()</a> of <code>camera</code> are set to the <em>current</em> QGLViewer values.</p>
+<p>All the <code>camera</code> <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">qglviewer::Camera::keyFrameInterpolator()</a> <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">qglviewer::KeyFrameInterpolator::interpolated()</a> signals are connected to the viewer update() slot. The connections with the previous viewer's camera are removed. </p>
 
 </div>
 </div>
@@ -4003,7 +4003,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </div><div class="memdoc">
 <p>Starts (<code>edit</code> = <code>true</code>, default) or stops (<code>edit=<code>false</code>)</code> the edition of the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">camera()</a>.</p>
 <p>Current implementation is limited to paths display. Get current state using <a class="el" href="classQGLViewer.html#a1bf2817fb27f0ad326e3db75aeb46af7">cameraIsEdited()</a>.</p>
-<dl class="section attention"><dt>Attention</dt><dd>This method sets the <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">qglviewer::Camera::zClippingCoefficient()</a> to 5.0 when <code>edit</code> is <code>true</code>, so that the Camera paths (see <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">qglviewer::Camera::keyFrameInterpolator()</a>) are not clipped. It restores the previous value when <code>edit</code> is  [...]
+<dl class="section attention"><dt>Attention</dt><dd>This method sets the <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">qglviewer::Camera::zClippingCoefficient()</a> to 5.0 when <code>edit</code> is <code>true</code>, so that the Camera paths (see <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">qglviewer::Camera::keyFrameInterpolator()</a>) are not clipped. It restores the previous value when <code>edit</code> is  [...]
 
 </div>
 </div>
@@ -4108,7 +4108,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 
 </div>
 </div>
-<a class="anchor" id="a9e97204faca448653fad94a37024a488"></a>
+<a class="anchor" id="ae33368bc379da582a3d26df18a6df16c"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -4118,7 +4118,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         <tr>
           <td class="memname">void setKeyDescription </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>key</em>, </td>
         </tr>
         <tr>
@@ -4140,10 +4140,10 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 </table>
 </div><div class="memdoc">
 <p>Defines a custom keyboard shortcut description, that will be displayed in the <a class="el" href="classQGLViewer.html#a97ee70a8770dc30d06c744b24eb2fcfc">help()</a> window <code>Keyboard</code> tab.</p>
-<p>The <code>key</code> definition is given as an <code>int</code> using Qt enumerated values. Set an empty <code>description</code> to remove a shortcut description: </p><div class="fragment"><div class="line"><a class="code" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription</a>(Qt::Key_W, <span class="stringliteral">"Toggles wireframe display"</span>);</div>
-<div class="line"><a class="code" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription</a>(Qt::CTRL+Qt::Key_L, <span class="stringliteral">"Loads a new scene"</span>);</div>
+<p>The <code>key</code> definition is given as an <code>int</code> using Qt enumerated values. Set an empty <code>description</code> to remove a shortcut description: </p><div class="fragment"><div class="line"><a class="code" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription</a>(Qt::Key_W, <span class="stringliteral">"Toggles wireframe display"</span>);</div>
+<div class="line"><a class="code" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription</a>(Qt::CTRL+Qt::Key_L, <span class="stringliteral">"Loads a new scene"</span>);</div>
 <div class="line"><span class="comment">// Removes a description</span></div>
-<div class="line"><a class="code" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription</a>(Qt::CTRL+Qt::Key_C, <span class="stringliteral">""</span>);</div>
+<div class="line"><a class="code" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription</a>(Qt::CTRL+Qt::Key_C, <span class="stringliteral">""</span>);</div>
 </div><!-- fragment --><p>See the <a href="../examples/keyboardAndMouse.html">keyboardAndMouse example</a> for illustration and the <a href="../keyboard.html">keyboard page</a> for details. </p>
 
 </div>
@@ -4626,7 +4626,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 
 </div>
 </div>
-<a class="anchor" id="ada7e68536b6593f8a8bde9a746c99c13"></a>
+<a class="anchor" id="a5542c73a9c2c62be3cde9144d950fd13"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -4642,7 +4642,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>index</em> = <code>0</code> </td>
         </tr>
         <tr>
@@ -4657,12 +4657,12 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">pathKey()</a> associated with the camera Key Frame path <code>index</code>.</p>
+<p>Sets the <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">pathKey()</a> associated with the camera Key Frame path <code>index</code>.</p>
 <p>Several keys can be binded to the same <code>index</code>. Use a negated <code>key</code> value to delete the binding (the <code>index</code> value is then ignored): </p><div class="fragment"><div class="line"><span class="comment">// Press 'space' to play/pause/add/delete camera path of index 0.</span></div>
-<div class="line"><a class="code" href="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13">setPathKey</a>(Qt::Key_Space, 0);</div>
+<div class="line"><a class="code" href="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13">setPathKey</a>(Qt::Key_Space, 0);</div>
 <div class="line"></div>
 <div class="line"><span class="comment">// Remove this binding</span></div>
-<div class="line"><a class="code" href="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13">setPathKey</a>(-Qt::Key_Space);</div>
+<div class="line"><a class="code" href="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13">setPathKey</a>(-Qt::Key_Space);</div>
 </div><!-- fragment --> 
 </div>
 </div>
@@ -4722,9 +4722,9 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Convenient way to call <a class="el" href="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d">setSceneCenter()</a> and <a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">setSceneRadius()</a> from a (world axis aligned) bounding box of the scene. </p><pre class="fragment">This is equivalent to:
+<p>Convenient way to call <a class="el" href="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d">setSceneCenter()</a> and <a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">setSceneRadius()</a> from a (world axis aligned) bounding box of the scene. </p><pre class="fragment">This is equivalent to:
 </pre> <div class="fragment"><div class="line"><a class="code" href="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d">setSceneCenter</a>((min+max) / 2.0);</div>
-<div class="line"><a class="code" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">setSceneRadius</a>((max-min).norm() / 2.0);</div>
+<div class="line"><a class="code" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">setSceneRadius</a>((max-min).norm() / 2.0);</div>
 </div><!-- fragment --> 
 </div>
 </div>
@@ -4753,7 +4753,7 @@ The <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">b
 method.  </pre> 
 </div>
 </div>
-<a class="anchor" id="aef99f105486d457f0199fcc35181fa83"></a>
+<a class="anchor" id="ad5138140e12f0fdcf7370b9c6d85eedd"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -4763,7 +4763,7 @@ method.  </pre>
         <tr>
           <td class="memname">virtual void setSceneRadius </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>radius</em></td><td>)</td>
           <td></td>
         </tr>
@@ -4774,7 +4774,7 @@ method.  </pre>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>. </p><pre class="fragment">The camera() qglviewer::Camera::flySpeed() is set to 1% of this value by this method. Simple
+<p>Sets the <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>. </p><pre class="fragment">The camera() qglviewer::Camera::flySpeed() is set to 1% of this value by this method. Simple
 wrapper around camera()->setSceneRadius().  </pre> 
 </div>
 </div>
@@ -5205,7 +5205,7 @@ directory does not exist, it will be created by saveStateToFile().
 <p>Associates a MouseAction and a MouseHandler to a mouse wheel event.</p>
 <p>This method is very similar to <a class="el" href="classQGLViewer.html#a98e3c0b956c3fea7dc804e7a7a7dd295">setMouseBinding()</a>, but specific to the wheel.</p>
 <p>In the current implementation only <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> can be associated with <a class="el" href="classQGLViewer.html#a5b90ab220b7700ca28db5ecf3217325da200c1bcf1eaa8635daa3cbb5fdd2ebb6">FRAME</a>, while <a class="el" href="classQGLViewer.html#a5b90ab220b7700ca28db5ecf3217325dada31f516cdf218b68b790fb31e8a6956">CAMERA</a> can receive <a class="el" href="classQGLViewer.html#aded669cb17515ea2b [...]
-<p>The difference between <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> and <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a99906f0ddded6cfdab57271cd33e308c">MOVE_FORWARD</a> is that <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> speed depends on the distance to the object, while <a class="el" href="classQGLViewer.html#aded [...]
+<p>The difference between <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> and <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a99906f0ddded6cfdab57271cd33e308c">MOVE_FORWARD</a> is that <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> speed depends on the distance to the object, while <a class="el" href="classQGLViewer.html#aded [...]
 
 </div>
 </div>
@@ -5224,7 +5224,7 @@ directory does not exist, it will be created by saveStateToFile().
 </div><div class="memdoc">
 <p>Returns the keyboard shortcut associated to a given <a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1">QGLViewer::KeyboardAction</a>.</p>
 <p>Result is an <code>unsigned</code> <code>int</code> defined using Qt enumerated values, as in <code>Qt::Key_Q</code> or <code>Qt::CTRL</code> + Qt::Key_X. Use Qt::MODIFIER_MASK to separate the key from the state keys. Returns <code>0</code> if the KeyboardAction is disabled (not binded). Set using <a class="el" href="classQGLViewer.html#a34d76d224c67a0fdae03f0d921bf3330">setShortcut()</a>.</p>
-<p>If you want to define keyboard shortcuts for custom actions (say, open a scene file), overload <a class="el" href="classQGLViewer.html#a2cc4c898ca007c7cc0ebb7791aa3e5b3">keyPressEvent()</a> and then <a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">setKeyDescription()</a>.</p>
+<p>If you want to define keyboard shortcuts for custom actions (say, open a scene file), overload <a class="el" href="classQGLViewer.html#a2cc4c898ca007c7cc0ebb7791aa3e5b3">keyPressEvent()</a> and then <a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">setKeyDescription()</a>.</p>
 <p>These shortcuts and their descriptions are automatically included in the <a class="el" href="classQGLViewer.html#a97ee70a8770dc30d06c744b24eb2fcfc">help()</a> window <code>Keyboard</code> tab.</p>
 <p>See the <a href="../keyboard.html">keyboard page</a> for details and default values and the <a href="../examples/keyboardAndMouse.html">keyboardAndMouse</a> example for a practical illustration. </p>
 
@@ -5972,7 +5972,7 @@ directory does not exist, it will be created by saveStateToFile().
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classes.html b/doc/refManual/classes.html
index 7420daa..8f2cb0a 100644
--- a/doc/refManual/classes.html
+++ b/doc/refManual/classes.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1AxisPlaneConstraint-members.html b/doc/refManual/classqglviewer_1_1AxisPlaneConstraint-members.html
index e9b81dc..e9c2abd 100644
--- a/doc/refManual/classqglviewer_1_1AxisPlaneConstraint-members.html
+++ b/doc/refManual/classqglviewer_1_1AxisPlaneConstraint-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1AxisPlaneConstraint.html b/doc/refManual/classqglviewer_1_1AxisPlaneConstraint.html
index fcaa745..2b2a80c 100644
--- a/doc/refManual/classqglviewer_1_1AxisPlaneConstraint.html
+++ b/doc/refManual/classqglviewer_1_1AxisPlaneConstraint.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -519,7 +519,7 @@ Rotation constraint</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Camera-members.html b/doc/refManual/classqglviewer_1_1Camera-members.html
index 1be464e..48b8d1a 100644
--- a/doc/refManual/classqglviewer_1_1Camera-members.html
+++ b/doc/refManual/classqglviewer_1_1Camera-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -95,8 +95,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <p>This is the complete list of members for <a class="el" href="classqglviewer_1_1Camera.html">Camera</a>, including all inherited members.</p>
 <table class="directory">
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec">addKeyFrameToPath</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4">addKeyFrameToPath</a>(unsigned int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#aa3f3efcb2fcc75de885df29041103cd2">Camera</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a43d24da01076c4cea5f3dbde85e8482c">Camera</a>(const Camera &camera)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a">cameraCoordinatesOf</a>(const Vec &src) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
@@ -104,38 +104,38 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a0dad4baab6008e5a94e8a2fa83ec0f05">computeModelViewMatrix</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ae51b6c486fe6448453369174bbea8055">computeProjectionMatrix</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a706d401cffa41e0e30864e59007f005f">convertClickToLine</a>(const QPoint &pixel, Vec &orig, Vec &dir) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac">deletePath</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5">distanceToSceneCenter</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f">deletePath</a>(unsigned int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639">distanceToSceneCenter</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6">domElement</a>(const QString &name, QDomDocument &document) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e">draw</a>(bool drawFarPlane=true, float scale=1.0) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b">draw</a>(bool drawFarPlane=true, qreal scale=1.0) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87">drawAllPaths</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9">fitBoundingBox</a>(const Vec &min, const Vec &max)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471">fitScreenRegion</a>(const QRect &rectangle)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">fitSphere</a>(const Vec &center, float radius)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">flySpeed</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">fitSphere</a>(const Vec &center, qreal radius)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4">getCameraCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878">getCameraCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41">getFrustumPlanesCoefficients</a>(GLdouble coef[6][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20">getModelViewMatrix</a>(GLfloat m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#aa1d631d6e368a7aa14656b7511787786">getModelViewMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a7df308e69b599f00c27107530c2a6765">getModelViewProjectionMatrix</a>(GLfloat m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#adeb5e39686b9fcb3db090dff84c13be4">getModelViewProjectionMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa">getOrthoWidthHeight</a>(GLdouble &halfWidth, GLdouble &halfHeight) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee">getProjectedCoordinatesOf</a>(const float src[3], float res[3], const Frame *frame=NULL) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c">getProjectedCoordinatesOf</a>(const qreal src[3], qreal res[3], const Frame *frame=NULL) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7">getProjectionMatrix</a>(GLfloat m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a97ff5cf330a6c24d6d49308aedd638bc">getProjectionMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f">getUnprojectedCoordinatesOf</a>(const float src[3], float res[3], const Frame *frame=NULL) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a">getUnprojectedCoordinatesOf</a>(const qreal src[3], qreal res[3], const Frame *frame=NULL) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348">getViewport</a>(GLint viewport[4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd">getWorldCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">horizontalFieldOfView</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1">getWorldCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">horizontalFieldOfView</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement</a>(const QDomElement &element)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97">interpolateTo</a>(const Frame &fr, float duration)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1">interpolateTo</a>(const Frame &fr, qreal duration)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0">interpolateToFitScene</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c">interpolateToZoomOnPixel</a>(const QPoint &pixel)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">IODistance</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator</a>(int i) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">IODistance</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator</a>(unsigned int i) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53">loadModelViewMatrix</a>(bool reset=true) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392">loadModelViewMatrixStereo</a>(bool leftBuffer=true) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix</a>(bool reset=true) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
@@ -145,47 +145,47 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">ORTHOGRAPHIC</a> enum value</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">PERSPECTIVE</a> enum value</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64">physicalDistanceToScreen</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">physicalScreenWidth</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291">physicalDistanceToScreen</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">physicalScreenWidth</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa">pivotPoint</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f">pixelGLRatio</a>(const Vec &position) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">playPath</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c">pixelGLRatio</a>(const Vec &position) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">playPath</a>(unsigned int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a">pointUnderPixel</a>(const QPoint &pixel, bool &found) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f">projectedCoordinatesOf</a>(const Vec &src, const Frame *frame=NULL) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf">resetPath</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132">resetPath</a>(unsigned int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a99f766869c7cc9faaf9a5337db6f223c">rightVector</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">screenWidth</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c">setAspectRatio</a>(float aspect)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c">setFieldOfView</a>(float fov)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09">setFlySpeed</a>(float speed)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a">setFocusDistance</a>(float distance)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0">setAspectRatio</a>(qreal aspect)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42">setFieldOfView</a>(qreal fov)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f">setFlySpeed</a>(qreal speed)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98">setFocusDistance</a>(qreal distance)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7">setFOVToFitScene</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a809bad30c861f4f6f74228fb59340f90">setFrame</a>(ManipulatedCameraFrame *const mcf)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9">setFromModelViewMatrix</a>(const GLdouble *const modelViewMatrix)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd">setFromProjectionMatrix</a>(const float matrix[12])</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014">setHorizontalFieldOfView</a>(float hfov)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234">setIODistance</a>(float distance)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5">setKeyFrameInterpolator</a>(int i, KeyFrameInterpolator *const kfi)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629">setFromProjectionMatrix</a>(const qreal matrix[12])</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d">setHorizontalFieldOfView</a>(qreal hfov)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7">setIODistance</a>(qreal distance)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a">setKeyFrameInterpolator</a>(unsigned int i, KeyFrameInterpolator *const kfi)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868">setOrientation</a>(const Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e">setOrientation</a>(float theta, float phi)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401">setPhysicalScreenWidth</a>(float width)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41">setOrientation</a>(qreal theta, qreal phi)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f">setPhysicalScreenWidth</a>(qreal width)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ad0d493c3e540ec42a480e03d249b5a56">setPivotPoint</a>(const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#abc3e131745649e6b18693c466f10382f">setPivotPointFromPixel</a>(const QPoint &pixel)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition</a>(const Vec &pos)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee">setSceneBoundingBox</a>(const Vec &min, const Vec &max)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33">setSceneCenter</a>(const Vec &center)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf">setSceneCenterFromPixel</a>(const QPoint &pixel)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">setSceneRadius</a>(float radius)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">setSceneRadius</a>(qreal radius)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812">setScreenWidthAndHeight</a>(int width, int height)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc">setType</a>(Type type)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e">setUpVector</a>(const Vec &up, bool noMove=true)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6">setViewDirection</a>(const Vec &direction)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7">setZClippingCoefficient</a>(float coef)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5">setZNearCoefficient</a>(float coef)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198">setZClippingCoefficient</a>(qreal coef)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95">setZNearCoefficient</a>(qreal coef)</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7">Type</a> enum name</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
@@ -193,15 +193,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a9cd2e746e7379b08fbaeea0ced76e1d7">upVector</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#aac10e453c166209b4e6c14c0266651c7">viewDirection</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab">worldCoordinatesOf</a>(const Vec &src) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">zNearCoefficient</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">zNearCoefficient</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html#ab921e886e6f14e117eb8099ccb0a3775">~Camera</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Camera.html">Camera</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Camera.html b/doc/refManual/classqglviewer_1_1Camera.html
index 3c8da14..b1bc4fc 100644
--- a/doc/refManual/classqglviewer_1_1Camera.html
+++ b/doc/refManual/classqglviewer_1_1Camera.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -132,14 +132,14 @@ Position and orientation</h2></td></tr>
 <tr class="separator:a691af39b54669fad8b4e73599de22094"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ab21e4c76205431bdeba645a5f258dce9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9">setFromModelViewMatrix</a> (const GLdouble *const modelViewMatrix)</td></tr>
 <tr class="separator:ab21e4c76205431bdeba645a5f258dce9"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac49280735bce44665a4eabb166f10fcd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd">setFromProjectionMatrix</a> (const float matrix[12])</td></tr>
-<tr class="separator:ac49280735bce44665a4eabb166f10fcd"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3d4528247c30731f8440d86500a78629"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629">setFromProjectionMatrix</a> (const qreal matrix[12])</td></tr>
+<tr class="separator:a3d4528247c30731f8440d86500a78629"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a212edb01759f542f356c5d62e4a3f821"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &pos)</td></tr>
 <tr class="separator:a212edb01759f542f356c5d62e4a3f821"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a3862c502f5afc626af2ff582390bc868"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868">setOrientation</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &q)</td></tr>
 <tr class="separator:a3862c502f5afc626af2ff582390bc868"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a1842836742cf1ed8a33f32a863a5a05e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e">setOrientation</a> (float theta, float phi)</td></tr>
-<tr class="separator:a1842836742cf1ed8a33f32a863a5a05e"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a9baa87dc31e9b37ed73a2fab09d64b41"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41">setOrientation</a> (qreal theta, qreal phi)</td></tr>
+<tr class="separator:a9baa87dc31e9b37ed73a2fab09d64b41"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ab442b71a46297223ae12b163653eeb7e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e">setUpVector</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &up, bool noMove=true)</td></tr>
 <tr class="separator:ab442b71a46297223ae12b163653eeb7e"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a066c4058970a008d0d0a8ff442d117f6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6">setViewDirection</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &direction)</td></tr>
@@ -151,8 +151,8 @@ Positioning tools</h2></td></tr>
 <tr class="separator:aafe147ffa75738c296c729d9b5026446"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ada8dd7d2346ebf46ed1f9822a8418df2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene</a> ()</td></tr>
 <tr class="separator:ada8dd7d2346ebf46ed1f9822a8418df2"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a424fbe98af0ca295c692d8d4ae73ceec"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">fitSphere</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &center, float radius)</td></tr>
-<tr class="separator:a424fbe98af0ca295c692d8d4ae73ceec"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a402db5615edf1375851ca817ddbb9c10"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">fitSphere</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &center, qreal radius)</td></tr>
+<tr class="separator:a402db5615edf1375851ca817ddbb9c10"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a65a284702aab36f853d59ce6c7a082b9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9">fitBoundingBox</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &min, const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &max)</td></tr>
 <tr class="separator:a65a284702aab36f853d59ce6c7a082b9"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac49a71148d1d501310026f6f6f76d471"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471">fitScreenRegion</a> (const QRect &rectangle)</td></tr>
@@ -163,66 +163,66 @@ Positioning tools</h2></td></tr>
 <tr class="separator:a9e2b0c2d37f9176629d737faf431b51c"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a8a6201a1c2deca60a917e5351e549bb0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0">interpolateToFitScene</a> ()</td></tr>
 <tr class="separator:a8a6201a1c2deca60a917e5351e549bb0"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a37dee575e0fdf56909e1779e20383e97"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97">interpolateTo</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> &fr, float duration)</td></tr>
-<tr class="separator:a37dee575e0fdf56909e1779e20383e97"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a81fbcef421a84c4b6eb588ff94882ac1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1">interpolateTo</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> &fr, qreal duration)</td></tr>
+<tr class="separator:a81fbcef421a84c4b6eb588ff94882ac1"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Frustum</h2></td></tr>
 <tr class="memitem:afbd0fa31db28593e9669c3c56711c0a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7">Type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type</a> () const </td></tr>
 <tr class="separator:afbd0fa31db28593e9669c3c56711c0a7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a89f1a2e62f7edf51de2d1c077ea5d330"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView</a> () const </td></tr>
-<tr class="separator:a89f1a2e62f7edf51de2d1c077ea5d330"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a957cf1049788f7aba3dd16f20f565960"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">horizontalFieldOfView</a> () const </td></tr>
-<tr class="separator:a957cf1049788f7aba3dd16f20f565960"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a915589f4d93e15d110444ed9b3464fa1"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio</a> () const </td></tr>
-<tr class="separator:a915589f4d93e15d110444ed9b3464fa1"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad95d16a8e25e191a351a1c8c66433b23"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView</a> () const </td></tr>
+<tr class="separator:ad95d16a8e25e191a351a1c8c66433b23"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aaafe19f81fb44272ce2b3b285f965e66"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">horizontalFieldOfView</a> () const </td></tr>
+<tr class="separator:aaafe19f81fb44272ce2b3b285f965e66"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a06471e2ca19ce8da106ee4b996687b01"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio</a> () const </td></tr>
+<tr class="separator:a06471e2ca19ce8da106ee4b996687b01"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a80386c5943505b915246563262825d8e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">screenWidth</a> () const </td></tr>
 <tr class="separator:a80386c5943505b915246563262825d8e"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9fb925ffbf82e93898ae6db366a8d794"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight</a> () const </td></tr>
 <tr class="separator:a9fb925ffbf82e93898ae6db366a8d794"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5034f21055f864c1ade7d86fec209348"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348">getViewport</a> (GLint viewport[4]) const </td></tr>
 <tr class="separator:a5034f21055f864c1ade7d86fec209348"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a27f2dfd157643704c48630515a7f811f"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f">pixelGLRatio</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position</a>) const </td></tr>
-<tr class="separator:a27f2dfd157643704c48630515a7f811f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4c29c26071ddbe8512d478511e04a93e"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">zNearCoefficient</a> () const </td></tr>
-<tr class="separator:a4c29c26071ddbe8512d478511e04a93e"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:acd07c1b9464b935ad21bb38b7c27afca"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient</a> () const </td></tr>
-<tr class="separator:acd07c1b9464b935ad21bb38b7c27afca"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a419a57556a6681c3a0489c847d687ea5"><td class="memItemLeft" align="right" valign="top">virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear</a> () const </td></tr>
-<tr class="separator:a419a57556a6681c3a0489c847d687ea5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aa7461df81c1ea0384d4c64723eb7b949"><td class="memItemLeft" align="right" valign="top">virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar</a> () const </td></tr>
-<tr class="separator:aa7461df81c1ea0384d4c64723eb7b949"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a741302a202c8ed668844c9669dadb41c"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c">pixelGLRatio</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position</a>) const </td></tr>
+<tr class="separator:a741302a202c8ed668844c9669dadb41c"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a94611fb4d218f627fd21af0376044e14"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">zNearCoefficient</a> () const </td></tr>
+<tr class="separator:a94611fb4d218f627fd21af0376044e14"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:abcfab7ec0ef378eaafe3f0948b91d392"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient</a> () const </td></tr>
+<tr class="separator:abcfab7ec0ef378eaafe3f0948b91d392"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a41c0dcedcae5b5d5d326f67fc0126ec0"><td class="memItemLeft" align="right" valign="top">virtual qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear</a> () const </td></tr>
+<tr class="separator:a41c0dcedcae5b5d5d326f67fc0126ec0"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a75932dd1002e31ca5f205c3ada493391"><td class="memItemLeft" align="right" valign="top">virtual qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar</a> () const </td></tr>
+<tr class="separator:a75932dd1002e31ca5f205c3ada493391"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:affe84ed52b08d5d1d3dfdb87fe9242fa"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa">getOrthoWidthHeight</a> (GLdouble &halfWidth, GLdouble &halfHeight) const </td></tr>
 <tr class="separator:affe84ed52b08d5d1d3dfdb87fe9242fa"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a1450258d117908a71908a72184136e41"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41">getFrustumPlanesCoefficients</a> (GLdouble coef[6][4]) const </td></tr>
 <tr class="separator:a1450258d117908a71908a72184136e41"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a608e58a2f9fb7e497f91662a6e9ae4cc"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc">setType</a> (<a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7">Type</a> <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type</a>)</td></tr>
 <tr class="separator:a608e58a2f9fb7e497f91662a6e9ae4cc"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a524f0183a127bb004defe3c2f7614e4c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c">setFieldOfView</a> (float fov)</td></tr>
-<tr class="separator:a524f0183a127bb004defe3c2f7614e4c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a017ace2ed5f67b6aeaef5c9a47b5f014"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014">setHorizontalFieldOfView</a> (float hfov)</td></tr>
-<tr class="separator:a017ace2ed5f67b6aeaef5c9a47b5f014"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad3984b3f62cf1e7f4f548b948b97da42"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42">setFieldOfView</a> (qreal fov)</td></tr>
+<tr class="separator:ad3984b3f62cf1e7f4f548b948b97da42"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a10db68788d45cf5e901358413bcde87d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d">setHorizontalFieldOfView</a> (qreal hfov)</td></tr>
+<tr class="separator:a10db68788d45cf5e901358413bcde87d"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a3394c425f95c5649b1e2e532dbd97fa7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7">setFOVToFitScene</a> ()</td></tr>
 <tr class="separator:a3394c425f95c5649b1e2e532dbd97fa7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a5b191e9b12b704a05302b5d922792e9c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c">setAspectRatio</a> (float aspect)</td></tr>
-<tr class="separator:a5b191e9b12b704a05302b5d922792e9c"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a254f1cf63c3ba41c4947e5587260a5f0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0">setAspectRatio</a> (qreal aspect)</td></tr>
+<tr class="separator:a254f1cf63c3ba41c4947e5587260a5f0"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a504c573cdd26be8b717a6da9fdb41812"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812">setScreenWidthAndHeight</a> (int width, int height)</td></tr>
 <tr class="separator:a504c573cdd26be8b717a6da9fdb41812"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a1d478610f928ecc4597c56d677d908b5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5">setZNearCoefficient</a> (float coef)</td></tr>
-<tr class="separator:a1d478610f928ecc4597c56d677d908b5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a62ab18396bd8c212ec7b90dc156b59d7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7">setZClippingCoefficient</a> (float coef)</td></tr>
-<tr class="separator:a62ab18396bd8c212ec7b90dc156b59d7"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8c7b68fdc4a06c76e623a7c4eafcef95"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95">setZNearCoefficient</a> (qreal coef)</td></tr>
+<tr class="separator:a8c7b68fdc4a06c76e623a7c4eafcef95"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a0c33a4fefeb54c41eebffb4dd4080198"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198">setZClippingCoefficient</a> (qreal coef)</td></tr>
+<tr class="separator:a0c33a4fefeb54c41eebffb4dd4080198"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Scene radius and center</h2></td></tr>
-<tr class="memitem:a58c17044cc4a601c6b446bf5e83513f9"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius</a> () const </td></tr>
-<tr class="separator:a58c17044cc4a601c6b446bf5e83513f9"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a32b418de3796a253b28c9635b2f4f6fb"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius</a> () const </td></tr>
+<tr class="separator:a32b418de3796a253b28c9635b2f4f6fb"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a87bccbfd40649310f3da369af02d50b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a> () const </td></tr>
 <tr class="separator:a87bccbfd40649310f3da369af02d50b1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a253932bd8634348f9c189ab4c9b280b5"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5">distanceToSceneCenter</a> () const </td></tr>
-<tr class="separator:a253932bd8634348f9c189ab4c9b280b5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a33c70507fea15c3ea49a561b743ed822"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">setSceneRadius</a> (float radius)</td></tr>
-<tr class="separator:a33c70507fea15c3ea49a561b743ed822"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a1d9313d5a2f8ac1ccff7555a94909639"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639">distanceToSceneCenter</a> () const </td></tr>
+<tr class="separator:a1d9313d5a2f8ac1ccff7555a94909639"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:afda9d0eccbfea770f911886c2b63cd5f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">setSceneRadius</a> (qreal radius)</td></tr>
+<tr class="separator:afda9d0eccbfea770f911886c2b63cd5f"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9185df6d9e8fbc108f83c5355f5e7b33"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33">setSceneCenter</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &center)</td></tr>
 <tr class="separator:a9185df6d9e8fbc108f83c5355f5e7b33"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a338c3360223f5fb20e2248208d2f32bf"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf">setSceneCenterFromPixel</a> (const QPoint &pixel)</td></tr>
@@ -248,18 +248,18 @@ Associated frame</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 KeyFramed paths</h2></td></tr>
-<tr class="memitem:abfbef567a6bbb9163b31c6f46238e4de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator</a> (int i) const </td></tr>
-<tr class="separator:abfbef567a6bbb9163b31c6f46238e4de"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a049b63c8c9ef48e24446ce44a3bd32b5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5">setKeyFrameInterpolator</a> (int i, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a> *const kfi)</td></tr>
-<tr class="separator:a049b63c8c9ef48e24446ce44a3bd32b5"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a804ee001a41c3ddc33948447fc555cec"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec">addKeyFrameToPath</a> (int i)</td></tr>
-<tr class="separator:a804ee001a41c3ddc33948447fc555cec"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4eb47bb1cf02f806f1f355f63b445818"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">playPath</a> (int i)</td></tr>
-<tr class="separator:a4eb47bb1cf02f806f1f355f63b445818"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8a75fa050d365ba249e8dcd439670aac"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac">deletePath</a> (int i)</td></tr>
-<tr class="separator:a8a75fa050d365ba249e8dcd439670aac"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae0329e473f00bb56f1e9949b8423ecbf"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf">resetPath</a> (int i)</td></tr>
-<tr class="separator:ae0329e473f00bb56f1e9949b8423ecbf"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad4acc41f907360dc96eaa219728948b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator</a> (unsigned int i) const </td></tr>
+<tr class="separator:ad4acc41f907360dc96eaa219728948b7"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a1dc08d932d63661cfdaea0c13e13d38a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a">setKeyFrameInterpolator</a> (unsigned int i, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a> *const kfi)</td></tr>
+<tr class="separator:a1dc08d932d63661cfdaea0c13e13d38a"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa7e7ce69cd4d82497dfbc26f991375d4"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4">addKeyFrameToPath</a> (unsigned int i)</td></tr>
+<tr class="separator:aa7e7ce69cd4d82497dfbc26f991375d4"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a4299db38c4e04020738e39cfa99d91a0"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">playPath</a> (unsigned int i)</td></tr>
+<tr class="separator:a4299db38c4e04020738e39cfa99d91a0"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:afd30e89271866821e57126847a85f35f"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f">deletePath</a> (unsigned int i)</td></tr>
+<tr class="separator:afd30e89271866821e57126847a85f35f"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:abaddf6c36a75060a76c6813d59e6b132"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132">resetPath</a> (unsigned int i)</td></tr>
+<tr class="separator:abaddf6c36a75060a76c6813d59e6b132"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aeea4caff561e6b1d8fe4b3d8efe4ae87"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87">drawAllPaths</a> ()</td></tr>
 <tr class="separator:aeea4caff561e6b1d8fe4b3d8efe4ae87"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -292,8 +292,8 @@ OpenGL matrices</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Drawing</h2></td></tr>
-<tr class="memitem:a1636e20e6910ded1c9a5860ba91f397e"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e">draw</a> (bool drawFarPlane=true, float scale=1.0) const </td></tr>
-<tr class="separator:a1636e20e6910ded1c9a5860ba91f397e"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a569004264ba94a5bc05bd50943ff366b"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b">draw</a> (bool drawFarPlane=true, qreal scale=1.0) const </td></tr>
+<tr class="separator:a569004264ba94a5bc05bd50943ff366b"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 World to Camera coordinate systems conversions</h2></td></tr>
@@ -301,10 +301,10 @@ World to Camera coordinate systems conversions</h2></td></tr>
 <tr class="separator:a5dd8eca926558c252d7552d85079880a"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a123ad9bda6d715b5370650c2514896ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab">worldCoordinatesOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src) const </td></tr>
 <tr class="separator:a123ad9bda6d715b5370650c2514896ab"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:abadd060aa34d51a940575b58d256dca4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4">getCameraCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:abadd060aa34d51a940575b58d256dca4"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae1b0a45b7cd3a071c4ef88ed608511fd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd">getWorldCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:ae1b0a45b7cd3a071c4ef88ed608511fd"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a31ad7293f39e9d1a738f84068191b878"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878">getCameraCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a31ad7293f39e9d1a738f84068191b878"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae07fc4d1649590ae48a4c591077440e1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1">getWorldCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:ae07fc4d1649590ae48a4c591077440e1"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 2D screen to 3D world coordinate systems conversions</h2></td></tr>
@@ -312,10 +312,10 @@ World to Camera coordinate systems conversions</h2></td></tr>
 <tr class="separator:ac4dc649d17bd2ae8664a7f4fdd50360f"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a42577d3077e22b4726d78b3db3bba50d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d">unprojectedCoordinatesOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src, const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *<a class="el" href="classq [...]
 <tr class="separator:a42577d3077e22b4726d78b3db3bba50d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae167e3b955401e11bbbf0fc25f52e3ee"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee">getProjectedCoordinatesOf</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *<a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame</a>=NULL) const </td></tr>
-<tr class="separator:ae167e3b955401e11bbbf0fc25f52e3ee"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a222deedc6fa32ab78d0a338eaa312f1f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f">getUnprojectedCoordinatesOf</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *<a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame</a>=NULL) const </td></tr>
-<tr class="separator:a222deedc6fa32ab78d0a338eaa312f1f"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a2d47092c9cb14040b5e07dc37fca9b4c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c">getProjectedCoordinatesOf</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *<a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame</a>=NULL) const </td></tr>
+<tr class="separator:a2d47092c9cb14040b5e07dc37fca9b4c"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a006cbbe3fa0207c3b7609358772b457a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a">getUnprojectedCoordinatesOf</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *<a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame</a>=NULL) const </td></tr>
+<tr class="separator:a006cbbe3fa0207c3b7609358772b457a"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a706d401cffa41e0e30864e59007f005f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a706d401cffa41e0e30864e59007f005f">convertClickToLine</a> (const QPoint &pixel, <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &orig, <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &dir) const </td></tr>
 <tr class="separator:a706d401cffa41e0e30864e59007f005f"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a90459767f782c80086ad7cff90a40b5a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a">pointUnderPixel</a> (const QPoint &pixel, bool &found) const </td></tr>
@@ -323,27 +323,27 @@ World to Camera coordinate systems conversions</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Fly speed</h2></td></tr>
-<tr class="memitem:ac1758b72dab0895b9340fa833e62b802"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">flySpeed</a> () const </td></tr>
-<tr class="separator:ac1758b72dab0895b9340fa833e62b802"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a02765efeaae1ef24f9d899f0d1d9ca09"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09">setFlySpeed</a> (float speed)</td></tr>
-<tr class="separator:a02765efeaae1ef24f9d899f0d1d9ca09"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a906c1998f29453838417d8ce80cf3ebe"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed</a> () const </td></tr>
+<tr class="separator:a906c1998f29453838417d8ce80cf3ebe"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7e90b8a66d0e7f25dbf7778f8a80650f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f">setFlySpeed</a> (qreal speed)</td></tr>
+<tr class="separator:a7e90b8a66d0e7f25dbf7778f8a80650f"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Stereo parameters</h2></td></tr>
-<tr class="memitem:ad36e74de9c4020f951ea1a04e53a192d"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">IODistance</a> () const </td></tr>
-<tr class="separator:ad36e74de9c4020f951ea1a04e53a192d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a2cbb7d182c56732a6129936c5dd19d64"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64">physicalDistanceToScreen</a> () const </td></tr>
-<tr class="separator:a2cbb7d182c56732a6129936c5dd19d64"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8418799b4eeb22cbc1a157d488dcf09c"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">physicalScreenWidth</a> () const </td></tr>
-<tr class="separator:a8418799b4eeb22cbc1a157d488dcf09c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af201ce62f669c8944a276a2615951379"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance</a> () const </td></tr>
-<tr class="separator:af201ce62f669c8944a276a2615951379"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6cd81fe74a9dfe5c7124d00341ad0234"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234">setIODistance</a> (float distance)</td></tr>
-<tr class="separator:a6cd81fe74a9dfe5c7124d00341ad0234"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a34911cda1cc1bc13336024c844ff4401"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401">setPhysicalScreenWidth</a> (float width)</td></tr>
-<tr class="separator:a34911cda1cc1bc13336024c844ff4401"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a863ffb0284b534d5c57ac64a98e5e49a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a">setFocusDistance</a> (float distance)</td></tr>
-<tr class="separator:a863ffb0284b534d5c57ac64a98e5e49a"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a1fe9adbc9faf97dce7b292d96a40c2a7"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">IODistance</a> () const </td></tr>
+<tr class="separator:a1fe9adbc9faf97dce7b292d96a40c2a7"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6a402ce251ce223f9137e4c116403291"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291">physicalDistanceToScreen</a> () const </td></tr>
+<tr class="separator:a6a402ce251ce223f9137e4c116403291"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a2f43dea16a80f1683baa16c1fbf9ca64"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">physicalScreenWidth</a> () const </td></tr>
+<tr class="separator:a2f43dea16a80f1683baa16c1fbf9ca64"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3e93c356c617acdc3287b1e68b6578f8"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance</a> () const </td></tr>
+<tr class="separator:a3e93c356c617acdc3287b1e68b6578f8"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a90329d0edd2bdf789ca22ccee1a2d6f7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7">setIODistance</a> (qreal distance)</td></tr>
+<tr class="separator:a90329d0edd2bdf789ca22ccee1a2d6f7"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a98d2a2c7d32f5088203e010f7e563f8f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f">setPhysicalScreenWidth</a> (qreal width)</td></tr>
+<tr class="separator:a98d2a2c7d32f5088203e010f7e563f8f"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a05a5690ac023c6498cb62c13fbeb1e98"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98">setFocusDistance</a> (qreal distance)</td></tr>
+<tr class="separator:a05a5690ac023c6498cb62c13fbeb1e98"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 XML representation</h2></td></tr>
@@ -354,15 +354,15 @@ XML representation</h2></td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>A perspective or orthographic camera. </p>
-<p>A Camera defines some intrinsic parameters (<a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a>, <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a>, <a class="el" href="classqglviewer_1_1Camera.html#aac10e453c166209b4e6c14c0266651c7">viewDirection()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a9cd2e746e7379b08fbaeea0ced76e1d7">upVector()</a>...) and useful positioning tools t [...]
+<p>A Camera defines some intrinsic parameters (<a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a>, <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a>, <a class="el" href="classqglviewer_1_1Camera.html#aac10e453c166209b4e6c14c0266651c7">viewDirection()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a9cd2e746e7379b08fbaeea0ced76e1d7">upVector()</a>...) and useful positioning tools t [...]
 <h3>Mouse manipulation</h3>
 <p>The <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> of the Camera are defined by a <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html" title="The ManipulatedCameraFrame class represents a ManipulatedFrame with Camera specific mouse bindings...">ManipulatedCameraFrame</a> (retrieved using <a class="el" href="classq [...]
 <p>Different displacements can be performed using the mouse. The list of possible actions is defined by the <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875">QGLViewer::MouseAction</a> enum. Use <a class="el" href="classQGLViewer.html#a98e3c0b956c3fea7dc804e7a7a7dd295">QGLViewer::setMouseBinding()</a> to attach a specific action to an arbitrary mouse button-state key binding. These actions are detailed in the <a href="../mouse.html">mouse page</a>.</p>
 <p>The default button binding are: <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3dcfe0046eb5876e287dbf0914819b16">ROTATE</a> (left), <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> (middle) and <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875abc6501410409b0638909b580970b35f7">TRANSLATE</a> (right). With this configuration, the Camera <em>observes</em> a scene and rot [...]
 <h3>Other functionalities</h3>
-<p>The <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> of the Camera can be <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a> or <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> (see <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c6 [...]
-<p>The near and far planes of the Camera are fitted to the scene and determined from <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer::sceneRadius()</a>, <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">QGLViewer::sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> by the <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c84 [...]
-<p>A Camera holds <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html" title="A keyFrame Catmull-Rom Frame interpolator. ">KeyFrameInterpolator</a> that can be used to save Camera positions and paths. You can interactively <a class="el" href="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec">addKeyFrameToPath()</a> to a given path using the default <code>Alt+F</code>[1-12] shortcuts. Use <a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f [...]
+<p>The <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> of the Camera can be <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a> or <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> (see <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c6 [...]
+<p>The near and far planes of the Camera are fitted to the scene and determined from <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer::sceneRadius()</a>, <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">QGLViewer::sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> by the <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67f [...]
+<p>A Camera holds <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html" title="A keyFrame Catmull-Rom Frame interpolator. ">KeyFrameInterpolator</a> that can be used to save Camera positions and paths. You can interactively <a class="el" href="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4">addKeyFrameToPath()</a> to a given path using the default <code>Alt+F</code>[1-12] shortcuts. Use <a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39c [...]
 <p>Use <a class="el" href="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a">cameraCoordinatesOf()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab">worldCoordinatesOf()</a> to convert to and from the Camera <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a> coordinate system. <a class="el" href="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f">projectedCoordinatesOf()< [...]
 <p>Stereo display is possible on machines with quad buffer capabilities (with <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> only). Test the <a href="../examples/stereoViewer.html">stereoViewer example</a> to check.</p>
 <p>A Camera can also be used outside of a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a> or even without OpenGL for its coordinate system conversion capabilities. Note however that some of them explicitly rely on the presence of a Z-buffer. </p>
@@ -377,7 +377,7 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Enumerates the two possible types of Camera.</p>
-<p>See <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc">setType()</a>. This type mainly defines different Camera projection matrix (see <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a>). Many other methods (<a class="el" href="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a">p [...]
+<p>See <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc">setType()</a>. This type mainly defines different Camera projection matrix (see <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a>). Many other methods (<a class="el" href="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a">p [...]
 <table class="fieldtable">
 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f"></a>PERSPECTIVE </td><td class="fielddoc">
 </td></tr>
@@ -401,8 +401,8 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Default constructor.</p>
-<p><a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> is set to (0,0,0) and <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> is set to 1.0. <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a>, with [...]
-<p>See <a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">IODistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64">physicalDistanceToScreen()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">physicalScreenWidth()</a> and <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance()</a> documentations for default stereo parameter v [...]
+<p><a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> is set to (0,0,0) and <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> is set to 1.0. <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a>, with [...]
+<p>See <a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">IODistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291">physicalDistanceToScreen()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">physicalScreenWidth()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance()</a> documentations for default stereo parameter v [...]
 
 </div>
 </div>
@@ -427,7 +427,7 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Virtual destructor.</p>
-<p>The <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a> is deleted, but the different <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> are <em>not</em> deleted (in case they are shared). </p>
+<p>The <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a> is deleted, but the different <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> are <em>not</em> deleted (in case they are shared). </p>
 
 </div>
 </div>
@@ -449,7 +449,7 @@ XML representation</h2></td></tr>
 </div>
 </div>
 <h2 class="groupheader">Member Function Documentation</h2>
-<a class="anchor" id="a804ee001a41c3ddc33948447fc555cec"></a>
+<a class="anchor" id="aa7e7ce69cd4d82497dfbc26f991375d4"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -459,7 +459,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="memname">void addKeyFrameToPath </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
           <td></td>
         </tr>
@@ -471,18 +471,18 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Adds the current Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> as a keyFrame to the path number <code>i</code>.</p>
-<p>This method can also be used if you simply want to save a Camera point of view (a path made of a single keyFrame). Use <a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">playPath()</a> to make the Camera play the keyFrame path (resp. restore the point of view). Use <a class="el" href="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac">deletePath()</a> to clear the path.</p>
-<p>The default keyboard shortcut for this method is Alt+F[1-12]. Set <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">QGLViewer::pathKey()</a> and <a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">QGLViewer::addKeyFrameKeyboardModifiers()</a>.</p>
-<p>If you use directly this method and the keyFrameInterpolator(i) does not exist, a new one is created. Its <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">KeyFrameInterpolator::interpolated()</a> signal should then be connected to the QGLViewer::update() slot (see <a class="el" href="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5">setKeyFrameInterpolator()</a>). </p>
+<p>This method can also be used if you simply want to save a Camera point of view (a path made of a single keyFrame). Use <a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">playPath()</a> to make the Camera play the keyFrame path (resp. restore the point of view). Use <a class="el" href="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f">deletePath()</a> to clear the path.</p>
+<p>The default keyboard shortcut for this method is Alt+F[1-12]. Set <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">QGLViewer::pathKey()</a> and <a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">QGLViewer::addKeyFrameKeyboardModifiers()</a>.</p>
+<p>If you use directly this method and the keyFrameInterpolator(i) does not exist, a new one is created. Its <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">KeyFrameInterpolator::interpolated()</a> signal should then be connected to the QGLViewer::update() slot (see <a class="el" href="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a">setKeyFrameInterpolator()</a>). </p>
 
 </div>
 </div>
-<a class="anchor" id="a915589f4d93e15d110444ed9b3464fa1"></a>
+<a class="anchor" id="a06471e2ca19ce8da106ee4b996687b01"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float aspectRatio </td>
+          <td class="memname">qreal aspectRatio </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -490,7 +490,7 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the Camera aspect ratio defined by <a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">screenWidth()</a> / <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight()</a>.</p>
-<p>When the Camera is attached to a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a>, these values and hence the <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio()</a> are automatically fitted to the viewer's window aspect ratio using <a class="el" href="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812">setScreenWidthAndHeight()</a>. </p>
+<p>When the Camera is attached to a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a>, these values and hence the <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio()</a> are automatically fitted to the viewer's window aspect ratio using <a class="el" href="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812">setScreenWidthAndHeight()</a>. </p>
 
 </div>
 </div>
@@ -533,7 +533,7 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Moves the Camera so that its <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> is projected on the center of the window. The <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> are unchanged.</p>
+<p>Moves the Camera so that its <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> is projected on the center of the window. The <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> and <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> are unchanged.</p>
 <p>Simply projects the current position on a line passing through <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>. See also <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a>. </p>
 
 </div>
@@ -570,9 +570,9 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Computes the projection matrix associated with the Camera.</p>
-<p>If <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a>, defines a <code>GL_PROJECTION</code> matrix similar to what would <code>gluPerspective()</code> do using the <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a>, window <a class="el" href="clas [...]
+<p>If <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a>, defines a <code>GL_PROJECTION</code> matrix similar to what would <code>gluPerspective()</code> do using the <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a>, window <a class="el" href="clas [...]
 <p>If <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a>, the projection matrix is as what <code>glOrtho()</code> would do. Frustum's width and height are set using <a class="el" href="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa">getOrthoWidthHeight()</a>.</p>
-<p>Both types use <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> to place clipping planes. These values are determined from <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> so that  [...]
+<p>Both types use <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> to place clipping planes. These values are determined from <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> so that  [...]
 <p>Use <a class="el" href="classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7">getProjectionMatrix()</a> to retrieve this matrix. Overload <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a> if you want your Camera to use an exotic projection matrix.</p>
 <dl class="section note"><dt>Note</dt><dd>You must call this method if your Camera is not associated with a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a> and is used for offscreen computations (using (un)<a class="el" href="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f">projectedCoordinatesOf()</a> for instance). <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadPro [...]
 
@@ -615,7 +615,7 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a8a75fa050d365ba249e8dcd439670aac"></a>
+<a class="anchor" id="afd30e89271866821e57126847a85f35f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -625,7 +625,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="memname">void deletePath </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
           <td></td>
         </tr>
@@ -636,25 +636,25 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Deletes the <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> of index <code>i</code>.</p>
-<p>Disconnect the <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">KeyFrameInterpolator::interpolated()</a> signal before deleting the <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> if needed: </p><div class="fragment"><div class="line">disconnect(camera()-><a c [...]
+<p>Deletes the <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> of index <code>i</code>.</p>
+<p>Disconnect the <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">KeyFrameInterpolator::interpolated()</a> signal before deleting the <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> if needed: </p><div class="fragment"><div class="line">disconnect(camera()-><a c [...]
 <div class="line">camera()->deletePath(i);</div>
 </div><!-- fragment --> 
 </div>
 </div>
-<a class="anchor" id="a253932bd8634348f9c189ab4c9b280b5"></a>
+<a class="anchor" id="a1d9313d5a2f8ac1ccff7555a94909639"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float distanceToSceneCenter </td>
+          <td class="memname">qreal distanceToSceneCenter </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Returns the distance from the Camera center to <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>, projected along the Camera Z axis. Used by <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> to optimize the Z range. </p>
+<p>Returns the distance from the Camera center to <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>, projected along the Camera Z axis. Used by <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> to optimize the Z range. </p>
 
 </div>
 </div>
@@ -706,7 +706,7 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a1636e20e6910ded1c9a5860ba91f397e"></a>
+<a class="anchor" id="a569004264ba94a5bc05bd50943ff366b"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -722,7 +722,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>scale</em> = <code>1.0</code> </td>
         </tr>
         <tr>
@@ -766,18 +766,18 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Draws all the Camera paths defined by the <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a>.</p>
-<p>Simply calls <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">KeyFrameInterpolator::drawPath()</a> for all the defined paths. The path color is the current <code>glColor()</code>.</p>
-<dl class="section attention"><dt>Attention</dt><dd>The OpenGL state is modified by this method: see <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">KeyFrameInterpolator::drawPath()</a>. </dd></dl>
+<p>Draws all the Camera paths defined by the <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a>.</p>
+<p>Simply calls <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">KeyFrameInterpolator::drawPath()</a> for all the defined paths. The path color is the current <code>glColor()</code>.</p>
+<dl class="section attention"><dt>Attention</dt><dd>The OpenGL state is modified by this method: see <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">KeyFrameInterpolator::drawPath()</a>. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="a89f1a2e62f7edf51de2d1c077ea5d330"></a>
+<a class="anchor" id="ad95d16a8e25e191a351a1c8c66433b23"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float fieldOfView </td>
+          <td class="memname">qreal fieldOfView </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -785,9 +785,9 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the vertical field of view of the Camera (in radians).</p>
-<p>Value is set using <a class="el" href="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c">setFieldOfView()</a>. Default value is pi/4 radians. This value is meaningless if the Camera <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a>.</p>
-<p>The field of view corresponds the one used in <code>gluPerspective</code> (see manual). It sets the Y (vertical) aperture of the Camera. The X (horizontal) angle is inferred from the window aspect ratio (see <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">horizontalFieldOfView()</a>).</p>
-<p>Use <a class="el" href="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7">setFOVToFitScene()</a> to adapt the <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> to a given scene. </p>
+<p>Value is set using <a class="el" href="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42">setFieldOfView()</a>. Default value is pi/4 radians. This value is meaningless if the Camera <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a>.</p>
+<p>The field of view corresponds the one used in <code>gluPerspective</code> (see manual). It sets the Y (vertical) aperture of the Camera. The X (horizontal) angle is inferred from the window aspect ratio (see <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">horizontalFieldOfView()</a>).</p>
+<p>Use <a class="el" href="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7">setFOVToFitScene()</a> to adapt the <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> to a given scene. </p>
 
 </div>
 </div>
@@ -822,7 +822,7 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Moves the Camera so that the (world axis aligned) bounding box (<code>min</code>, <code>max</code>) is entirely visible, using <a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">fitSphere()</a>. </p>
+<p>Moves the Camera so that the (world axis aligned) bounding box (<code>min</code>, <code>max</code>) is entirely visible, using <a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">fitSphere()</a>. </p>
 
 </div>
 </div>
@@ -852,7 +852,7 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a424fbe98af0ca295c692d8d4ae73ceec"></a>
+<a class="anchor" id="a402db5615edf1375851ca817ddbb9c10"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -868,7 +868,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>radius</em> </td>
         </tr>
         <tr>
@@ -884,17 +884,17 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Moves the Camera so that the sphere defined by (<code>center</code>, <code>radius</code>) is visible and fits in the frustum.</p>
-<p>The Camera is simply translated to center the sphere in the screen and make it fit the frustum. Its <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> and its <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> are unchanged.</p>
+<p>The Camera is simply translated to center the sphere in the screen and make it fit the frustum. Its <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> and its <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> are unchanged.</p>
 <p>You should therefore orientate the Camera before you call this method. See <a class="el" href="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446">lookAt()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868">setOrientation()</a> and <a class="el" href="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e">setUpVector()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="ac1758b72dab0895b9340fa833e62b802"></a>
+<a class="anchor" id="a906c1998f29453838417d8ce80cf3ebe"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float flySpeed </td>
+          <td class="memname">qreal flySpeed </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -902,17 +902,17 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the fly speed of the Camera.</p>
-<p>Simply returns <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a>-><a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">flySpeed()</a>. See the <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">ManipulatedCameraFrame::flySpeed()</a> documentation. This value is only meaningful when the MouseAction bindings is <a class="el" href="classQGLViewer.html#aded66 [...]
-<p>Set to 1% of the <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> by <a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">setSceneRadius()</a>. See also <a class="el" href="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09">setFlySpeed()</a>. </p>
+<p>Simply returns <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a>-><a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed()</a>. See the <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">ManipulatedCameraFrame::flySpeed()</a> documentation. This value is only meaningful when the MouseAction bindings is <a class="el" href="classQGLViewer.html#aded66 [...]
+<p>Set to 1% of the <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> by <a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">setSceneRadius()</a>. See also <a class="el" href="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f">setFlySpeed()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="af201ce62f669c8944a276a2615951379"></a>
+<a class="anchor" id="a3e93c356c617acdc3287b1e68b6578f8"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float focusDistance </td>
+          <td class="memname">qreal focusDistance </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -921,8 +921,8 @@ XML representation</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the focus distance used by stereo display, expressed in OpenGL units.</p>
 <p>This is the distance in the virtual world between the Camera and the plane where the horizontal stereo parallax is null (the stereo left and right cameras' lines of sigth cross at this distance).</p>
-<p>This distance is the virtual world equivalent of the real-world <a class="el" href="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64">physicalDistanceToScreen()</a>.</p>
-<dl class="section attention"><dt>Attention</dt><dd>This value is modified by <a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">QGLViewer::setSceneRadius()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">setSceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c">setFieldOfView()</a>. When one of these values is modified, <a class="el" href="classqglviewer_1_1Camera.html#a [...]
+<p>This distance is the virtual world equivalent of the real-world <a class="el" href="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291">physicalDistanceToScreen()</a>.</p>
+<dl class="section attention"><dt>Attention</dt><dd>This value is modified by <a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">QGLViewer::setSceneRadius()</a>, <a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">setSceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42">setFieldOfView()</a>. When one of these values is modified, <a class="el" href="classqglviewer_1_1Camera.html#a [...]
 
 </div>
 </div>
@@ -943,20 +943,20 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="abadd060aa34d51a940575b58d256dca4"></a>
+<a class="anchor" id="a31ad7293f39e9d1a738f84068191b878"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getCameraCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -966,7 +966,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a">cameraCoordinatesOf()</a>, but with <code>float</code>[3] parameters (<code>src</code> and <code>res</code> may be identical pointers). </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a">cameraCoordinatesOf()</a>, but with <code>qreal</code>[3] parameters (<code>src</code> and <code>res</code> may be identical pointers). </p>
 
 </div>
 </div>
@@ -1011,7 +1011,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Overloaded getModelViewMatrix(GLdouble m[16]) method using a <code>float</code> array instead. </p>
+<p>Overloaded getModelViewMatrix(GLdouble m[16]) method using a <code>qreal</code> array instead. </p>
 
 </div>
 </div>
@@ -1049,7 +1049,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Overloaded getModelViewProjectionMatrix(GLdouble m[16]) method using a <code>float</code> array instead. </p>
+<p>Overloaded getModelViewProjectionMatrix(GLdouble m[16]) method using a <code>qreal</code> array instead. </p>
 
 </div>
 </div>
@@ -1103,26 +1103,26 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Returns the <code>halfWidth</code> and <code>halfHeight</code> of the Camera orthographic frustum.</p>
-<p>These values are only valid and used when the Camera is of <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a>. They are expressed in OpenGL units and are used by <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a> to define the projection ma [...]
+<p>These values are only valid and used when the Camera is of <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a>. They are expressed in OpenGL units and are used by <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a> to define the projection ma [...]
 </div><!-- fragment --><p>These values are proportional to the Camera (z projected) distance to the <a class="el" href="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa">pivotPoint()</a>. When zooming on the object, the Camera is translated forward <em>and</em> its frustum is narrowed, making the object appear bigger on screen, as intuitively expected.</p>
 <p>Overload this method to change this behavior if desired, as is done in the <a href="../examples/standardCamera.html">standardCamera example</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="ae167e3b955401e11bbbf0fc25f52e3ee"></a>
+<a class="anchor" id="a2d47092c9cb14040b5e07dc37fca9b4c"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getProjectedCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3], </td>
         </tr>
         <tr>
@@ -1138,7 +1138,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f">projectedCoordinatesOf()</a>, but with <code>float</code> parameters (<code>src</code> and <code>res</code> can be identical pointers). </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f">projectedCoordinatesOf()</a>, but with <code>qreal</code> parameters (<code>src</code> and <code>res</code> can be identical pointers). </p>
 
 </div>
 </div>
@@ -1155,7 +1155,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Overloaded getProjectionMatrix(GLdouble m[16]) method using a <code>float</code> array instead. </p>
+<p>Overloaded getProjectionMatrix(GLdouble m[16]) method using a <code>qreal</code> array instead. </p>
 
 </div>
 </div>
@@ -1176,24 +1176,24 @@ XML representation</h2></td></tr>
 <p>Based on <a class="el" href="classqglviewer_1_1Camera.html#ae51b6c486fe6448453369174bbea8055">computeProjectionMatrix()</a> to make sure the Camera projection matrix is up to date.</p>
 <p>This matrix only reflects the Camera's internal parameters and it may differ from the <code>GL_PROJECTION</code> matrix retrieved using <code>glGetDoublev(GL_PROJECTION_MATRIX, m)</code>. It actually represents the state of the <code>GL_PROJECTION</code> after <a class="el" href="classQGLViewer.html#a9c6b3ec107b4f010cf1fcd8c51ca92e4">QGLViewer::preDraw()</a>, at the beginning of <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">QGLViewer::draw()</a>. If you mo [...]
 <p>The result is an OpenGL 4x4 matrix, which is given in <em>column-major</em> order (see <code>glMultMatrix</code> man page for details).</p>
-<p>See also <a class="el" href="classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20">getModelViewMatrix()</a> and <a class="el" href="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd">setFromProjectionMatrix()</a>. </p>
+<p>See also <a class="el" href="classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20">getModelViewMatrix()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629">setFromProjectionMatrix()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="a222deedc6fa32ab78d0a338eaa312f1f"></a>
+<a class="anchor" id="a006cbbe3fa0207c3b7609358772b457a"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getUnprojectedCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3], </td>
         </tr>
         <tr>
@@ -1209,7 +1209,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d">unprojectedCoordinatesOf()</a>, but with <code>float</code> parameters (<code>src</code> and <code>res</code> can be identical pointers). </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d">unprojectedCoordinatesOf()</a>, but with <code>qreal</code> parameters (<code>src</code> and <code>res</code> can be identical pointers). </p>
 
 </div>
 </div>
@@ -1231,20 +1231,20 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ae1b0a45b7cd3a071c4ef88ed608511fd"></a>
+<a class="anchor" id="ae07fc4d1649590ae48a4c591077440e1"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getWorldCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -1254,16 +1254,16 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab">worldCoordinatesOf()</a>, but with <code>float</code>[3] parameters (<code>src</code> and <code>res</code> may be identical pointers). </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab">worldCoordinatesOf()</a>, but with <code>qreal</code>[3] parameters (<code>src</code> and <code>res</code> may be identical pointers). </p>
 
 </div>
 </div>
-<a class="anchor" id="a957cf1049788f7aba3dd16f20f565960"></a>
+<a class="anchor" id="aaafe19f81fb44272ce2b3b285f965e66"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float horizontalFieldOfView </td>
+          <td class="memname">qreal horizontalFieldOfView </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1271,7 +1271,7 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the horizontal field of view of the Camera (in radians).</p>
-<p>Value is set using <a class="el" href="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014">setHorizontalFieldOfView()</a> or <a class="el" href="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c">setFieldOfView()</a>. These values are always linked by: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">horizontalFieldOfView</a>() = 2.0 * atan ( tan(<a class="code" href="classqglv [...]
+<p>Value is set using <a class="el" href="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d">setHorizontalFieldOfView()</a> or <a class="el" href="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42">setFieldOfView()</a>. These values are always linked by: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">horizontalFieldOfView</a>() = 2.0 * atan ( tan(<a class="code" href="classqglv [...]
 </div><!-- fragment --> 
 </div>
 </div>
@@ -1310,11 +1310,11 @@ XML representation</h2></td></tr>
 <div class="line">QDomElement main = document.documentElement();</div>
 <div class="line">myCamera->initFromDOMElement(main);</div>
 </div><!-- fragment --><p>The <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a> pointer is not modified by this method. The <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a> state is however modified.</p>
-<dl class="section attention"><dt>Attention</dt><dd>The original <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> are deleted and should be copied first if they are shared. </dd></dl>
+<dl class="section attention"><dt>Attention</dt><dd>The original <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> are deleted and should be copied first if they are shared. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="a37dee575e0fdf56909e1779e20383e97"></a>
+<a class="anchor" id="a81fbcef421a84c4b6eb588ff94882ac1"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1330,7 +1330,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>duration</em> </td>
         </tr>
         <tr>
@@ -1372,7 +1372,7 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Interpolates the Camera on a one second <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html" title="A keyFrame Catmull-Rom Frame interpolator. ">KeyFrameInterpolator</a> path so that the entire scene fits the screen at the end.</p>
-<p>The scene is defined by its <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and its <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>. See <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a>.</p>
+<p>The scene is defined by its <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and its <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>. See <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a>.</p>
 <p>The <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> of the Camera is not modified. See also <a class="el" href="classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c">interpolateToZoomOnPixel()</a>. </p>
 
 </div>
@@ -1404,12 +1404,12 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ad36e74de9c4020f951ea1a04e53a192d"></a>
+<a class="anchor" id="a1fe9adbc9faf97dce7b292d96a40c2a7"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float IODistance </td>
+          <td class="memname">qreal IODistance </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1417,18 +1417,18 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the user's inter-ocular distance (in meters). Default value is 0.062m, which fits most people.</p>
-<p><a class="el" href="classqglviewer_1_1Camera.html#a79dac3c1bcb983c9025710b333f063a3">loadProjectionMatrixStereo()</a> uses this value to define the Camera offset and frustum. See <a class="el" href="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234">setIODistance()</a>. </p>
+<p><a class="el" href="classqglviewer_1_1Camera.html#a79dac3c1bcb983c9025710b333f063a3">loadProjectionMatrixStereo()</a> uses this value to define the Camera offset and frustum. See <a class="el" href="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7">setIODistance()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="abfbef567a6bbb9163b31c6f46238e4de"></a>
+<a class="anchor" id="ad4acc41f907360dc96eaa219728948b7"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a> * keyFrameInterpolator </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
           <td> const</td>
         </tr>
@@ -1496,7 +1496,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </div><div class="memdoc">
 <p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53">loadModelViewMatrix()</a> but for a stereo setup.</p>
 <p>Only the <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is supported for stereo mode. See <a class="el" href="classQGLViewer.html#afe362ba5c3851a93f23fb833b2479f08">QGLViewer::setStereoDisplay()</a>.</p>
-<p>The modelView matrix is almost identical to the mono-vision one. It is simply translated along its horizontal axis by a value that depends on stereo parameters (see <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">IODistance()</a>, and <a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">physicalScreenWidth()</a>).</p>
+<p>The modelView matrix is almost identical to the mono-vision one. It is simply translated along its horizontal axis by a value that depends on stereo parameters (see <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">IODistance()</a>, and <a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">physicalScreenWidth()</a>).</p>
 <p>When <code>leftBuffer</code> is <code>true</code>, computes the modelView matrix associated to the left eye (right eye otherwise).</p>
 <p><a class="el" href="classqglviewer_1_1Camera.html#a79dac3c1bcb983c9025710b333f063a3">loadProjectionMatrixStereo()</a> explains how to retrieve to resulting matrix.</p>
 <p>See the <a href="../examples/stereoViewer.html">stereoViewer</a> and the <a href="../examples/contribs.html#anaglyph">anaglyph</a> examples for an illustration.</p>
@@ -1559,13 +1559,13 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </div><div class="memdoc">
 <p>Same as <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a> but for a stereo setup.</p>
 <p>Only the <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a> is supported for stereo mode. See <a class="el" href="classQGLViewer.html#afe362ba5c3851a93f23fb833b2479f08">QGLViewer::setStereoDisplay()</a>.</p>
-<p>Uses <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">IODistance()</a>, and <a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">physicalScreenWidth()</a> to compute cameras offset and asymmetric frustums.</p>
+<p>Uses <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">IODistance()</a>, and <a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">physicalScreenWidth()</a> to compute cameras offset and asymmetric frustums.</p>
 <p>When <code>leftBuffer</code> is <code>true</code>, computes the projection matrix associated to the left eye (right eye otherwise). See also <a class="el" href="classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392">loadModelViewMatrixStereo()</a>.</p>
 <p>See the <a href="../examples/stereoViewer.html">stereoViewer</a> and the <a href="../examples/contribs.html#anaglyph">anaglyph</a> examples for an illustration.</p>
 <p>To retrieve this matrix, use a code like: </p><div class="fragment"><div class="line">glMatrixMode(GL_PROJECTION);</div>
 <div class="line">glPushMatrix();</div>
 <div class="line"><a class="code" href="classqglviewer_1_1Camera.html#a79dac3c1bcb983c9025710b333f063a3">loadProjectionMatrixStereo</a>(left_or_right);</div>
-<div class="line">glGetFloatv(GL_PROJECTION_MATRIX, m);</div>
+<div class="line">glGetDoublev(GL_PROJECTION_MATRIX, m);</div>
 <div class="line">glPopMatrix();</div>
 </div><!-- fragment --><p> Note that <a class="el" href="classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7">getProjectionMatrix()</a> always returns the mono-vision matrix.</p>
 <dl class="section attention"><dt>Attention</dt><dd>glMatrixMode is set to <code>GL_PROJECTION</code>. </dd></dl>
@@ -1595,7 +1595,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </div><div class="memdoc">
 <p>Sets the Camera <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a>, so that it looks at point <code>target</code> (defined in the world coordinate system).</p>
 <p>The Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a> is not modified. Simply <a class="el" href="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6">setViewDirection()</a>.</p>
-<p>See also <a class="el" href="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e">setUpVector()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868">setOrientation()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">fitSphere()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a65a28 [...]
+<p>See also <a class="el" href="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e">setUpVector()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868">setOrientation()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">fitSphere()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a65a28 [...]
 
 </div>
 </div>
@@ -1616,7 +1616,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 <p>All the parameters of <code>camera</code> are copied. The <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a> pointer is not modified, but its <a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">Frame::position()</a> and <a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">Frame::orientation()</a> are set to those of <code>camera</code>.</p>
 <dl class="section attention"><dt>Attention</dt><dd>The Camera <a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">screenWidth()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight()</a> are set to those of <code>camera</code>. If your Camera is associated with a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a>, you should update these val [...]
 <div class="line">camera()->setScreenWidthAndHeight(width(), height());</div>
-</div><!-- fragment --> The same applies to <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>, if needed. </dd></dl>
+</div><!-- fragment --> The same applies to <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>, if needed. </dd></dl>
 
 </div>
 </div>
@@ -1637,12 +1637,12 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="a2cbb7d182c56732a6129936c5dd19d64"></a>
+<a class="anchor" id="a6a402ce251ce223f9137e4c116403291"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float physicalDistanceToScreen </td>
+          <td class="memname">qreal physicalDistanceToScreen </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1650,17 +1650,17 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the physical distance between the user's eyes and the screen (in meters).</p>
-<p><a class="el" href="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64">physicalDistanceToScreen()</a> and <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance()</a> represent the same distance. The former is expressed in physical real world units, while the latter is expressed in OpenGL virtual world units.</p>
-<p>This is a helper function. It simply returns <a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">physicalScreenWidth()</a> / 2.0 / tan(<a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">horizontalFieldOfView()</a> / 2.0); </p>
+<p><a class="el" href="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291">physicalDistanceToScreen()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance()</a> represent the same distance. The former is expressed in physical real world units, while the latter is expressed in OpenGL virtual world units.</p>
+<p>This is a helper function. It simply returns <a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">physicalScreenWidth()</a> / 2.0 / tan(<a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">horizontalFieldOfView()</a> / 2.0); </p>
 
 </div>
 </div>
-<a class="anchor" id="a8418799b4eeb22cbc1a157d488dcf09c"></a>
+<a class="anchor" id="a2f43dea16a80f1683baa16c1fbf9ca64"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float physicalScreenWidth </td>
+          <td class="memname">qreal physicalScreenWidth </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1668,7 +1668,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the physical screen width, in meters. Default value is 0.5m (average monitor width).</p>
-<p>Used for stereo display only (see <a class="el" href="classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392">loadModelViewMatrixStereo()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a79dac3c1bcb983c9025710b333f063a3">loadProjectionMatrixStereo()</a>). Set using <a class="el" href="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401">setPhysicalScreenWidth()</a>. </p>
+<p>Used for stereo display only (see <a class="el" href="classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392">loadModelViewMatrixStereo()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a79dac3c1bcb983c9025710b333f063a3">loadProjectionMatrixStereo()</a>). Set using <a class="el" href="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f">setPhysicalScreenWidth()</a>. </p>
 
 </div>
 </div>
@@ -1690,12 +1690,12 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="a27f2dfd157643704c48630515a7f811f"></a>
+<a class="anchor" id="a741302a202c8ed668844c9669dadb41c"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float pixelGLRatio </td>
+          <td class="memname">qreal pixelGLRatio </td>
           <td>(</td>
           <td class="paramtype">const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> & </td>
           <td class="paramname"><em>position</em></td><td>)</td>
@@ -1704,15 +1704,15 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the ratio between pixel and OpenGL units at <code>position</code>.</p>
-<p>A line of <code>n</code> * <a class="el" href="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f">pixelGLRatio()</a> OpenGL units, located at <code>position</code> in the world coordinates system, will be projected with a length of <code>n</code> pixels on screen.</p>
+<p>A line of <code>n</code> * <a class="el" href="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c">pixelGLRatio()</a> OpenGL units, located at <code>position</code> in the world coordinates system, will be projected with a length of <code>n</code> pixels on screen.</p>
 <p>Use this method to scale objects so that they have a constant pixel size on screen. The following code will draw a 20 pixel line, starting at <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and always directed along the screen vertical direction: </p><div class="fragment"><div class="line">glBegin(GL_LINES);</div>
 <div class="line">glVertex3fv(<a class="code" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>());</div>
-<div class="line">glVertex3fv(<a class="code" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>() + 20 * <a class="code" href="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f">pixelGLRatio</a>(<a class="code" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>()) * camera()-><a class="code" href="classqglviewer_1_1Camera.html#a9cd2e746e7379b08fbaeea0ced76e1d7">upVector</a>());</div>
+<div class="line">glVertex3fv(<a class="code" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>() + 20 * <a class="code" href="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c">pixelGLRatio</a>(<a class="code" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>()) * camera()-><a class="code" href="classqglviewer_1_1Camera.html#a9cd2e746e7379b08fbaeea0ced76e1d7">upVector</a>());</div>
 <div class="line">glEnd();</div>
 </div><!-- fragment --> 
 </div>
 </div>
-<a class="anchor" id="a4eb47bb1cf02f806f1f355f63b445818"></a>
+<a class="anchor" id="a4299db38c4e04020738e39cfa99d91a0"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1722,7 +1722,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void playPath </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
           <td></td>
         </tr>
@@ -1733,10 +1733,10 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Makes the Camera follow the path of <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> number <code>i</code>.</p>
+<p>Makes the Camera follow the path of <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> number <code>i</code>.</p>
 <p>If the interpolation is started, it stops it instead.</p>
-<p>This method silently ignores undefined (empty) paths (see <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a>).</p>
-<p>The default keyboard shortcut for this method is F[1-12]. Set <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">QGLViewer::pathKey()</a> and <a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">QGLViewer::playPathKeyboardModifiers()</a>. </p>
+<p>This method silently ignores undefined (empty) paths (see <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a>).</p>
+<p>The default keyboard shortcut for this method is F[1-12]. Set <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">QGLViewer::pathKey()</a> and <a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">QGLViewer::playPathKeyboardModifiers()</a>. </p>
 
 </div>
 </div>
@@ -1764,10 +1764,10 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the coordinates of the 3D point located at pixel (x,y) on screen.</p>
-<p>Calls a <code>glReadPixel</code> to get the pixel depth and applies an <a class="el" href="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d">unprojectedCoordinatesOf()</a> to the result. <code>found</code> indicates whether a point was found or not (i.e. background pixel, result's depth is <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> in that case).</p>
+<p>Calls a <code>glReadPixel</code> to get the pixel depth and applies an <a class="el" href="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d">unprojectedCoordinatesOf()</a> to the result. <code>found</code> indicates whether a point was found or not (i.e. background pixel, result's depth is <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> in that case).</p>
 <p><code>x</code> and <code>y</code> are expressed in pixel units with an origin in the upper left corner. Use <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight()</a> - y to convert to OpenGL standard.</p>
 <dl class="section attention"><dt>Attention</dt><dd>This method assumes that a GL context is available, and that its content was drawn using the Camera (i.e. using its projection and modelview matrices). This method hence cannot be used for offscreen Camera computations. Use <a class="el" href="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a">cameraCoordinatesOf()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab">worldCoordinates [...]
-<dl class="section note"><dt>Note</dt><dd>The precision of the z-Buffer highly depends on how the <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> values are fitted to your scene. Loose boundaries will result in imprecision along the viewing direction. </dd></dl>
+<dl class="section note"><dt>Note</dt><dd>The precision of the z-Buffer highly depends on how the <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> values are fitted to your scene. Loose boundaries will result in imprecision along the viewing direction. </dd></dl>
 
 </div>
 </div>
@@ -1784,8 +1784,8 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the Camera position (the eye), defined in the world coordinate system.</p>
-<p>Use <a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition()</a> to set the Camera position. Other convenient methods are <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a> or <a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">fitSphere()</a>. Actually returns <code><a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame [...]
-<p>This position corresponds to the projection center of a <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> Camera. It is not located in the image plane, which is at a <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> distance ahead. </p>
+<p>Use <a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition()</a> to set the Camera position. Other convenient methods are <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a> or <a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">fitSphere()</a>. Actually returns <code><a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame [...]
+<p>This position corresponds to the projection center of a <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> Camera. It is not located in the image plane, which is at a <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> distance ahead. </p>
 
 </div>
 </div>
@@ -1835,7 +1835,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 <div class="line">       {</div>
 <div class="line">        <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> l=0; l<4; ++l)</div>
 <div class="line">        {</div>
-<div class="line">                <span class="keywordtype">double</span> sum = 0.0;</div>
+<div class="line">                qreal sum = 0.0;</div>
 <div class="line">                <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> k=0; k<4; ++k)</div>
 <div class="line">                        sum += Projection[l+4*k]*Modelview[k+4*m];</div>
 <div class="line">                matrix[l+4*m] = sum;</div>
@@ -1867,7 +1867,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </div><!-- fragment --> 
 </div>
 </div>
-<a class="anchor" id="ae0329e473f00bb56f1e9949b8423ecbf"></a>
+<a class="anchor" id="abaddf6c36a75060a76c6813d59e6b132"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1877,7 +1877,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void resetPath </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
           <td></td>
         </tr>
@@ -1888,8 +1888,8 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Resets the path of the <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> number <code>i</code>.</p>
-<p>If this path is <em>not</em> being played (see <a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">playPath()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70">KeyFrameInterpolator::interpolationIsStarted()</a>), resets it to its starting position (see <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74">KeyFrameInterpolator::resetInterpolation()</a>) [...]
+<p>Resets the path of the <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> number <code>i</code>.</p>
+<p>If this path is <em>not</em> being played (see <a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">playPath()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70">KeyFrameInterpolator::interpolationIsStarted()</a>), resets it to its starting position (see <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74">KeyFrameInterpolator::resetInterpolation()</a>) [...]
 
 </div>
 </div>
@@ -1924,18 +1924,18 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the position of the scene center, defined in the world coordinate system.</p>
-<p>The scene observed by the Camera should be roughly centered on this position, and included in a <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> sphere. This approximate description of the scene permits a <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> clipping planes definition, and a [...]
+<p>The scene observed by the Camera should be roughly centered on this position, and included in a <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> sphere. This approximate description of the scene permits a <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> clipping planes definition, and a [...]
 <p>Default value is (0,0,0) (world origin). Use <a class="el" href="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33">setSceneCenter()</a> to change it. See also <a class="el" href="classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee">setSceneBoundingBox()</a>.</p>
 <p>Note that <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">QGLViewer::sceneCenter()</a> (resp. <a class="el" href="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d">QGLViewer::setSceneCenter()</a>) simply calls this method (resp. <a class="el" href="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33">setSceneCenter()</a>) on its associated <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">QGLViewer::camera()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="a58c17044cc4a601c6b446bf5e83513f9"></a>
+<a class="anchor" id="a32b418de3796a253b28c9635b2f4f6fb"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float sceneRadius </td>
+          <td class="memname">qreal sceneRadius </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1943,9 +1943,9 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the radius of the scene observed by the Camera.</p>
-<p>You need to provide such an approximation of the scene dimensions so that the Camera can adapt its <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> values. See the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> documentation.</p>
+<p>You need to provide such an approximation of the scene dimensions so that the Camera can adapt its <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> values. See the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> documentation.</p>
 <p>See also <a class="el" href="classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee">setSceneBoundingBox()</a>.</p>
-<p>Note that <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer::sceneRadius()</a> (resp. <a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">QGLViewer::setSceneRadius()</a>) simply call this method (resp. <a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">setSceneRadius()</a>) on its associated <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">QGLViewer::camera()</a>. </p>
+<p>Note that <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer::sceneRadius()</a> (resp. <a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">QGLViewer::setSceneRadius()</a>) simply call this method (resp. <a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">setSceneRadius()</a>) on its associated <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">QGLViewer::camera()</a>. </p>
 
 </div>
 </div>
@@ -1983,7 +1983,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="a5b191e9b12b704a05302b5d922792e9c"></a>
+<a class="anchor" id="a254f1cf63c3ba41c4947e5587260a5f0"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1993,7 +1993,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setAspectRatio </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>aspect</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2004,14 +2004,14 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Defines the Camera <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio()</a>.</p>
+<p>Defines the Camera <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio()</a>.</p>
 <p>This value is actually inferred from the <a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">screenWidth()</a> / <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight()</a> ratio. You should use <a class="el" href="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812">setScreenWidthAndHeight()</a> instead.</p>
 <p>This method might however be convenient when the Camera is not associated with a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a>. It actually sets the <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight()</a> to 100 and the <a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">screenWidth()</a> accordingly. See also <a class="el" href="classqglv [...]
-<dl class="section note"><dt>Note</dt><dd>If you absolutely need an <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio()</a> that does not correspond to your viewer's window dimensions, overload <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a> or multiply the created GL_PROJECTION matrix by a scaled diagonal matrix in your <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd [...]
+<dl class="section note"><dt>Note</dt><dd>If you absolutely need an <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio()</a> that does not correspond to your viewer's window dimensions, overload <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a> or multiply the created GL_PROJECTION matrix by a scaled diagonal matrix in your <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd [...]
 
 </div>
 </div>
-<a class="anchor" id="a524f0183a127bb004defe3c2f7614e4c"></a>
+<a class="anchor" id="ad3984b3f62cf1e7f4f548b948b97da42"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2021,7 +2021,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setFieldOfView </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>fov</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2032,12 +2032,12 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the vertical <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> of the Camera (in radians).</p>
-<p>Note that <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance()</a> is set to <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> / tan(<a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a>/2) by this method. </p>
+<p>Sets the vertical <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> of the Camera (in radians).</p>
+<p>Note that <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance()</a> is set to <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> / tan(<a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a>/2) by this method. </p>
 
 </div>
 </div>
-<a class="anchor" id="a02765efeaae1ef24f9d899f0d1d9ca09"></a>
+<a class="anchor" id="a7e90b8a66d0e7f25dbf7778f8a80650f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2047,7 +2047,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setFlySpeed </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>speed</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2058,12 +2058,12 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the Camera <a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">flySpeed()</a>.</p>
-<dl class="section attention"><dt>Attention</dt><dd>This value is modified by <a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">setSceneRadius()</a>. </dd></dl>
+<p>Sets the Camera <a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed()</a>.</p>
+<dl class="section attention"><dt>Attention</dt><dd>This value is modified by <a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">setSceneRadius()</a>. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="a863ffb0284b534d5c57ac64a98e5e49a"></a>
+<a class="anchor" id="a05a5690ac023c6498cb62c13fbeb1e98"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2073,7 +2073,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setFocusDistance </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>distance</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2084,7 +2084,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance()</a>, in OpenGL scene units. </p>
+<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance()</a>, in OpenGL scene units. </p>
 
 </div>
 </div>
@@ -2108,10 +2108,10 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Changes the Camera <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> so that the entire scene (defined by <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">QGLViewer::sceneCenter()</a> and <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer::sceneRadius()</a>) is visible from the Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">posit [...]
-<p>The <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> of the Camera are not modified and you first have to orientate the Camera in order to actually see the scene (see <a class="el" href="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446">lookAt()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf [...]
-<p>This method is especially useful for <em>shadow</em> <em>maps</em> computation. Use the Camera positioning tools (<a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition()</a>, <a class="el" href="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446">lookAt()</a>) to position a Camera at the light position. Then use this method to define the <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfV [...]
-<div class="line">lightCamera->setSceneRadius(<a class="code" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius</a>());</div>
+<p>Changes the Camera <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> so that the entire scene (defined by <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">QGLViewer::sceneCenter()</a> and <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer::sceneRadius()</a>) is visible from the Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">posit [...]
+<p>The <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> of the Camera are not modified and you first have to orientate the Camera in order to actually see the scene (see <a class="el" href="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446">lookAt()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf [...]
+<p>This method is especially useful for <em>shadow</em> <em>maps</em> computation. Use the Camera positioning tools (<a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition()</a>, <a class="el" href="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446">lookAt()</a>) to position a Camera at the light position. Then use this method to define the <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfV [...]
+<div class="line">lightCamera->setSceneRadius(<a class="code" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius</a>());</div>
 <div class="line">lightCamera->setSceneCenter(<a class="code" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>());</div>
 <div class="line"></div>
 <div class="line"><span class="comment">// Place the light camera.</span></div>
@@ -2119,7 +2119,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 <div class="line">lightCamera->lookAt(<a class="code" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter</a>());</div>
 <div class="line">lightCamera->setFOVToFitScene();</div>
 </div><!-- fragment --><p>See the (soon available) shadowMap contribution example for a practical implementation.</p>
-<dl class="section attention"><dt>Attention</dt><dd>The <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> is clamped to M_PI/2.0. This happens when the Camera is at a distance lower than sqrt(2.0) * <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> from the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>. It optimizes the shadow  [...]
+<dl class="section attention"><dt>Attention</dt><dd>The <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> is clamped to M_PI/2.0. This happens when the Camera is at a distance lower than sqrt(2.0) * <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> from the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>. It optimizes the shadow  [...]
 
 </div>
 </div>
@@ -2145,8 +2145,8 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </table>
 </div><div class="memdoc">
 <p>Sets the Camera <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a>.</p>
-<p>If you want to move the Camera, use <a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868">setOrientation()</a> or one of the Camera positioning methods (<a class="el" href="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446">lookAt()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">fitSphere()</a [...]
-<p>If you want to save the Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a>, there's no need to call this method either. Use <a class="el" href="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec">addKeyFrameToPath()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">playPath()</a> instead.</p>
+<p>If you want to move the Camera, use <a class="el" href="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821">setPosition()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868">setOrientation()</a> or one of the Camera positioning methods (<a class="el" href="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446">lookAt()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">fitSphere()</a [...]
+<p>If you want to save the Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a>, there's no need to call this method either. Use <a class="el" href="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4">addKeyFrameToPath()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">playPath()</a> instead.</p>
 <p>This method is actually mainly useful if you derive the <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html" title="The ManipulatedCameraFrame class represents a ManipulatedFrame with Camera specific mouse bindings...">ManipulatedCameraFrame</a> class and want to use an instance of your new class to move the Camera.</p>
 <p>A <code>NULL</code> <code>mcf</code> pointer will silently be ignored. The calling method is responsible for deleting the previous <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">frame()</a> pointer if needed in order to prevent memory leaks. </p>
 
@@ -2175,30 +2175,30 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="ac49280735bce44665a4eabb166f10fcd"></a>
+<a class="anchor" id="a3d4528247c30731f8440d86500a78629"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setFromProjectionMatrix </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>matrix</em>[12]</td><td>)</td>
           <td></td>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Defines the Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> from a projection matrix.</p>
+<p>Defines the Camera <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> and <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> from a projection matrix.</p>
 <p><code>matrix</code> has to be given in the format used by vision algorithm. It has 3 lines and 4 columns. It transforms a point from the world homogeneous coordinate system (4 coordinates: <code>sx</code>, <code>sy</code>, <code>sz</code> and <code>s</code>) into a point in the screen homogeneous coordinate system (3 coordinates: <code>sx</code>, <code>sy</code>, and <code>s</code>, where <code>x</code> and <code>y</code> are the pixel coordinates on the screen).</p>
 <p>Its three lines correspond to the homogeneous coordinates of the normals to the planes x=0, y=0 and z=0, defined in the Camera coordinate system.</p>
-<p>The elements of the matrix are ordered in line major order: you can call <code>setFromProjectionMatrix(&(matrix[0][0]))</code> if you defined your matrix as a <code>float</code> <code>matrix</code>[3][4].</p>
+<p>The elements of the matrix are ordered in line major order: you can call <code>setFromProjectionMatrix(&(matrix[0][0]))</code> if you defined your matrix as a <code>qreal</code> <code>matrix</code>[3][4].</p>
 <dl class="section attention"><dt>Attention</dt><dd>Passing the result of <a class="el" href="classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7">getProjectionMatrix()</a> or <a class="el" href="classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20">getModelViewMatrix()</a> to this method is not possible (purposefully incompatible matrix dimensions). <code>matrix</code> is more likely to be the product of these two matrices, without the last line.</dd></dl>
-<p>Use <a class="el" href="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9">setFromModelViewMatrix()</a> to set <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> from a <code>GL_MODELVIEW</code> matrix. <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> can also be r [...]
+<p>Use <a class="el" href="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9">setFromModelViewMatrix()</a> to set <a class="el" href="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50">position()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">orientation()</a> from a <code>GL_MODELVIEW</code> matrix. <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> can also be r [...]
 <p>This code was written by Sylvain Paris. </p>
 
 </div>
 </div>
-<a class="anchor" id="a017ace2ed5f67b6aeaef5c9a47b5f014"></a>
+<a class="anchor" id="a10db68788d45cf5e901358413bcde87d"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2208,7 +2208,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setHorizontalFieldOfView </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>hfov</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2219,12 +2219,12 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">horizontalFieldOfView()</a> of the Camera (in radians).</p>
-<p><a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">horizontalFieldOfView()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> are linked by the <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio()</a>. This method actually calls setFieldOfView(( 2.0 * atan (tan(hfov / 2.0) / <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444e [...]
+<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">horizontalFieldOfView()</a> of the Camera (in radians).</p>
+<p><a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">horizontalFieldOfView()</a> and <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> are linked by the <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio()</a>. This method actually calls setFieldOfView(( 2.0 * atan (tan(hfov / 2.0) / <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4 [...]
 
 </div>
 </div>
-<a class="anchor" id="a6cd81fe74a9dfe5c7124d00341ad0234"></a>
+<a class="anchor" id="a90329d0edd2bdf789ca22ccee1a2d6f7"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2234,7 +2234,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setIODistance </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>distance</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2245,11 +2245,11 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">IODistance()</a>. </p>
+<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">IODistance()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="a049b63c8c9ef48e24446ce44a3bd32b5"></a>
+<a class="anchor" id="a1dc08d932d63661cfdaea0c13e13d38a"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2259,7 +2259,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setKeyFrameInterpolator </td>
           <td>(</td>
-          <td class="paramtype">int </td>
+          <td class="paramtype">unsigned int </td>
           <td class="paramname"><em>i</em>, </td>
         </tr>
         <tr>
@@ -2281,11 +2281,11 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </table>
 </div><div class="memdoc">
 <p>Sets the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html" title="A keyFrame Catmull-Rom Frame interpolator. ">KeyFrameInterpolator</a> that defines the Camera path of index <code>i</code>.</p>
-<p>The previous <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">keyFrameInterpolator()</a> is lost and should be deleted by the calling method if needed.</p>
+<p>The previous <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">keyFrameInterpolator()</a> is lost and should be deleted by the calling method if needed.</p>
 <p>The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">KeyFrameInterpolator::interpolated()</a> signal of <code>kfi</code> probably needs to be connected to the Camera's associated QGLViewer::update() slot, so that when the Camera position is interpolated using <code>kfi</code>, every interpolation step updates the display: </p><div class="fragment"><div class="line">myViewer.camera()->deletePath(3);</div>
 <div class="line">myViewer.camera()->setKeyFrameInterpolator(3, myKeyFrameInterpolator);</div>
 <div class="line">connect(myKeyFrameInterpolator, SIGNAL(interpolated()), myViewer, SLOT(update());</div>
-</div><!-- fragment --><dl class="section note"><dt>Note</dt><dd>These connections are done automatically when a Camera is attached to a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a>, or when a new <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html" title="A keyFrame Catmull-Rom Frame interpolator. ">KeyFrameInterpolator</a> is defined using the <a class="el" href="classQGLViewer.html#aad35c97454fee139eb80948 [...]
+</div><!-- fragment --><dl class="section note"><dt>Note</dt><dd>These connections are done automatically when a Camera is attached to a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a>, or when a new <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html" title="A keyFrame Catmull-Rom Frame interpolator. ">KeyFrameInterpolator</a> is defined using the <a class="el" href="classQGLViewer.html#aad35c97454fee139eb80948 [...]
 
 </div>
 </div>
@@ -2314,7 +2314,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="a1842836742cf1ed8a33f32a863a5a05e"></a>
+<a class="anchor" id="a9baa87dc31e9b37ed73a2fab09d64b41"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2324,13 +2324,13 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setOrientation </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>theta</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>phi</em> </td>
         </tr>
         <tr>
@@ -2352,7 +2352,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="a34911cda1cc1bc13336024c844ff4401"></a>
+<a class="anchor" id="a98d2a2c7d32f5088203e010f7e563f8f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2362,7 +2362,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setPhysicalScreenWidth </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>width</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2486,7 +2486,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Similar to <a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">setSceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33">setSceneCenter()</a>, but the scene limits are defined by a (world axis aligned) bounding box. </p>
+<p>Similar to <a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">setSceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33">setSceneCenter()</a>, but the scene limits are defined by a (world axis aligned) bounding box. </p>
 
 </div>
 </div>
@@ -2543,7 +2543,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="a33c70507fea15c3ea49a561b743ed822"></a>
+<a class="anchor" id="afda9d0eccbfea770f911886c2b63cd5f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2553,7 +2553,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setSceneRadius </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>radius</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2564,8 +2564,8 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> value. Negative values are ignored.</p>
-<dl class="section attention"><dt>Attention</dt><dd>This methods also sets <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">focusDistance()</a> to <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> / tan(<a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a>/2) and <a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">flySp [...]
+<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> value. Negative values are ignored.</p>
+<dl class="section attention"><dt>Attention</dt><dd>This methods also sets <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">focusDistance()</a> to <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> / tan(<a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a>/2) and <a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">flySp [...]
 
 </div>
 </div>
@@ -2603,7 +2603,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 <p>Sets Camera <a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">screenWidth()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">screenHeight()</a> (expressed in pixels).</p>
 <p>You should not call this method when the Camera is associated with a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a>, since the latter automatically updates these values when it is resized (hence overwritting your values).</p>
 <p>Non-positive dimension are silently replaced by a 1 pixel value to ensure frustrum coherence.</p>
-<p>If your Camera is used without a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a> (offscreen rendering, shadow maps), use <a class="el" href="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c">setAspectRatio()</a> instead to define the projection matrix. </p>
+<p>If your Camera is used without a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a> (offscreen rendering, shadow maps), use <a class="el" href="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0">setAspectRatio()</a> instead to define the projection matrix. </p>
 
 </div>
 </div>
@@ -2701,7 +2701,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="a62ab18396bd8c212ec7b90dc156b59d7"></a>
+<a class="anchor" id="a0c33a4fefeb54c41eebffb4dd4080198"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2711,7 +2711,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setZClippingCoefficient </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>coef</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2722,11 +2722,11 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> value. </p>
+<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> value. </p>
 
 </div>
 </div>
-<a class="anchor" id="a1d478610f928ecc4597c56d677d908b5"></a>
+<a class="anchor" id="a8c7b68fdc4a06c76e623a7c4eafcef95"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2736,7 +2736,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
         <tr>
           <td class="memname">void setZNearCoefficient </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>coef</em></td><td>)</td>
           <td></td>
         </tr>
@@ -2747,7 +2747,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">zNearCoefficient()</a> value. </p>
+<p>Sets the <a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">zNearCoefficient()</a> value. </p>
 
 </div>
 </div>
@@ -2772,8 +2772,8 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </table>
 </div><div class="memdoc">
 <p>Moves the Camera so that the entire scene is visible.</p>
-<p>Simply calls <a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">fitSphere()</a> on a sphere defined by <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>.</p>
-<p>You will typically use this method in <a class="el" href="classQGLViewer.html#a9339772ec5ac9fa929938109207f2863">QGLViewer::init()</a> after you defined a new <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>. </p>
+<p>Simply calls <a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">fitSphere()</a> on a sphere defined by <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>.</p>
+<p>You will typically use this method in <a class="el" href="classQGLViewer.html#a9339772ec5ac9fa929938109207f2863">QGLViewer::init()</a> after you defined a new <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>. </p>
 
 </div>
 </div>
@@ -2791,9 +2791,9 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </div><div class="memdoc">
 <p>Returns the <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7">Camera::Type</a> of the Camera.</p>
 <p>Set by <a class="el" href="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc">setType()</a>. Mainly used by <a class="el" href="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a">loadProjectionMatrix()</a>.</p>
-<p>A <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> Camera uses a classical projection mainly defined by its <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a>.</p>
-<p>With a <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a> <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a>, the <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">fieldOfView()</a> is meaningless and the width and height of the Camera frustum are inferred from the distance to the <a class="el" href="classqglviewer_ [...]
-<p>Both types use <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> (to define their clipping planes) and <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">aspectRatio()</a> (for frustum shape). </p>
+<p>A <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a> Camera uses a classical projection mainly defined by its <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a>.</p>
+<p>With a <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7ae7bf29f117630a30ba5ffc75b33ac624">Camera::ORTHOGRAPHIC</a> <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">type()</a>, the <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">fieldOfView()</a> is meaningless and the width and height of the Camera frustum are inferred from the distance to the <a class="el" href="classqglviewer_ [...]
+<p>Both types use <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> (to define their clipping planes) and <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">aspectRatio()</a> (for frustum shape). </p>
 
 </div>
 </div>
@@ -2821,7 +2821,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the world unprojected coordinates of a point <code>src</code> defined in the screen coordinate system.</p>
-<p>The <code>src.x</code> and <code>src.y</code> input values are expressed in pixels, (0,0) being the <em>upper</em> left corner of the window. <code>src.z</code> is a depth value ranging in [0..1[ (respectively corresponding to the near and far planes). Note that src.z is <em>not</em> a linear interpolation between zNear and zFar. /code src.z = <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> / (<a class="el" href="classqglviewer_1_1Camera [...]
+<p>The <code>src.x</code> and <code>src.y</code> input values are expressed in pixels, (0,0) being the <em>upper</em> left corner of the window. <code>src.z</code> is a depth value ranging in [0..1[ (respectively corresponding to the near and far planes). Note that src.z is <em>not</em> a linear interpolation between zNear and zFar. /code src.z = <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> / (<a class="el" href="classqglviewer_1_1Camera [...]
 <p>The result is expressed in the <code>frame</code> coordinate system. When <code>frame</code> is <code>NULL</code> (default), the result is expressed in the world coordinates system. The possible <code>frame</code> <a class="el" href="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec">Frame::referenceFrame()</a> are taken into account.</p>
 <p><a class="el" href="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f">projectedCoordinatesOf()</a> performs the inverse transformation.</p>
 <p>This method only uses the intrinsic Camera parameters (see <a class="el" href="classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20">getModelViewMatrix()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7">getProjectionMatrix()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348">getViewport()</a>) and is completely independent of the OpenGL <code>GL_MODELVIEW</code>, <code>GL_PROJECTION</code> an [...]
@@ -2884,12 +2884,12 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 
 </div>
 </div>
-<a class="anchor" id="acd07c1b9464b935ad21bb38b7c27afca"></a>
+<a class="anchor" id="abcfab7ec0ef378eaafe3f0948b91d392"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float zClippingCoefficient </td>
+          <td class="memname">qreal zClippingCoefficient </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -2897,15 +2897,15 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
       </table>
 </div><div class="memdoc">
 <p>Returns the coefficient used to position the near and far clipping planes.</p>
-<p>The near (resp. far) clipping plane is positioned at a distance equal to <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> in front of (resp. behind) the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>. This garantees an optimal use of the z-buffer range and minimize [...]
-<p>Default value is square root of 3.0 (so that a cube of size <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> is not clipped).</p>
-<p>However, since the <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> is used for other purposes (see <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">flySpeed()</a>, ...) and you may want to change this value to define more precisely the location of the clipping planes. See also <a class="el [...]
-<p>For a total control on clipping planes' positions, an other option is to overload the <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> methods. See the <a href="../examples/standardCamera.html">standardCamera example</a>.</p>
-<dl class="section attention"><dt>Attention</dt><dd>When QGLViewer::cameraPathAreEdited(), this value is set to 5.0 so that the Camera paths are not clipped. The previous <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> value is restored back when you leave this mode. </dd></dl>
+<p>The near (resp. far) clipping plane is positioned at a distance equal to <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> in front of (resp. behind) the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>. This garantees an optimal use of the z-buffer range and minimize [...]
+<p>Default value is square root of 3.0 (so that a cube of size <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> is not clipped).</p>
+<p>However, since the <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> is used for other purposes (see <a class="el" href="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2">showEntireScene()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed()</a>, ...) and you may want to change this value to define more precisely the location of the clipping planes. See also <a class="el [...]
+<p>For a total control on clipping planes' positions, an other option is to overload the <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> methods. See the <a href="../examples/standardCamera.html">standardCamera example</a>.</p>
+<dl class="section attention"><dt>Attention</dt><dd>When QGLViewer::cameraPathAreEdited(), this value is set to 5.0 so that the Camera paths are not clipped. The previous <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> value is restored back when you leave this mode. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="aa7461df81c1ea0384d4c64723eb7b949"></a>
+<a class="anchor" id="a75932dd1002e31ca5f205c3ada493391"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2913,7 +2913,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   <td class="mlabels-left">
       <table class="memname">
         <tr>
-          <td class="memname">float zFar </td>
+          <td class="memname">qreal zFar </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -2926,12 +2926,12 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </table>
 </div><div class="memdoc">
 <p>Returns the far clipping plane distance used by the Camera projection matrix.</p>
-<p>The far clipping plane is positioned at a distance equal to <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> behind the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Camera.html#a [...]
-</div><!-- fragment --><p>See the <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> documentation for details. </p>
+<p>The far clipping plane is positioned at a distance equal to <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> behind the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Camera.html#a [...]
+</div><!-- fragment --><p>See the <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> documentation for details. </p>
 
 </div>
 </div>
-<a class="anchor" id="a419a57556a6681c3a0489c847d687ea5"></a>
+<a class="anchor" id="a41c0dcedcae5b5d5d326f67fc0126ec0"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -2939,7 +2939,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
   <td class="mlabels-left">
       <table class="memname">
         <tr>
-          <td class="memname">float zNear </td>
+          <td class="memname">qreal zNear </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -2952,37 +2952,37 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </table>
 </div><div class="memdoc">
 <p>Returns the near clipping plane distance used by the Camera projection matrix.</p>
-<p>The clipping planes' positions depend on the <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> rather than being fixed small-enough and large-enough values. A good scene dimension approximation will hence result in an optimal precision of the z-buffer.</p>
-<p>The near clipping plane is positioned at a distance equal to <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> in front of the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Camera. [...]
-</div><!-- fragment --><p>In order to prevent negative or too small <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> values (which would degrade the z precision), <a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">zNearCoefficient()</a> is used when the Camera is inside the <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a> sphere: </p><div class="fragment [...]
-<div class="line"><span class="keywordflow">if</span> (<a class="code" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear</a> < zMin)</div>
-<div class="line">  <a class="code" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear</a> = zMin;</div>
+<p>The clipping planes' positions depend on the <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> rather than being fixed small-enough and large-enough values. A good scene dimension approximation will hence result in an optimal precision of the z-buffer.</p>
+<p>The near clipping plane is positioned at a distance equal to <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> in front of the <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a>: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Camera. [...]
+</div><!-- fragment --><p>In order to prevent negative or too small <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> values (which would degrade the z precision), <a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">zNearCoefficient()</a> is used when the Camera is inside the <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a> sphere: </p><div class="fragment [...]
+<div class="line"><span class="keywordflow">if</span> (<a class="code" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear</a> < zMin)</div>
+<div class="line">  <a class="code" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear</a> = zMin;</div>
 <div class="line"><span class="comment">// With an ORTHOGRAPHIC type, the value is simply clamped to 0.0</span></div>
-</div><!-- fragment --><p>See also the <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a>, <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">zNearCoefficient()</a> documentations.</p>
-<p>If you need a completely different zNear computation, overload the <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">zFar()</a> methods in a new class that publicly inherits from Camera and use <a class="el" href="classQGLViewer.html#a9c45e1d2c4777de28664d3db952b7585">QGLViewer::setCamera()</a>: </p><div class="fragment"><div class="line"><span class= [...]
+</div><!-- fragment --><p>See also the <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a>, <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">zNearCoefficient()</a> documentations.</p>
+<p>If you need a completely different zNear computation, overload the <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> and <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">zFar()</a> methods in a new class that publicly inherits from Camera and use <a class="el" href="classQGLViewer.html#a9c45e1d2c4777de28664d3db952b7585">QGLViewer::setCamera()</a>: </p><div class="fragment"><div class="line"><span class= [...]
 <div class="line">{</div>
-<div class="line">  <span class="keyword">virtual</span> <span class="keywordtype">float</span> <a class="code" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">Camera::zNear</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.001; };</div>
-<div class="line">  <span class="keyword">virtual</span> <span class="keywordtype">float</span> <a class="code" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">Camera::zFar</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 100.0; };</div>
+<div class="line">  <span class="keyword">virtual</span> qreal <a class="code" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">Camera::zNear</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.001; };</div>
+<div class="line">  <span class="keyword">virtual</span> qreal <a class="code" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">Camera::zFar</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 100.0; };</div>
 <div class="line">}</div>
 </div><!-- fragment --><p>See the <a href="../examples/standardCamera.html">standardCamera example</a> for an application.</p>
 <dl class="section attention"><dt>Attention</dt><dd>The value is always positive although the clipping plane is positioned at a negative z value in the Camera coordinate system. This follows the <code>gluPerspective</code> standard. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="a4c29c26071ddbe8512d478511e04a93e"></a>
+<a class="anchor" id="a94611fb4d218f627fd21af0376044e14"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float zNearCoefficient </td>
+          <td class="memname">qreal zNearCoefficient </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Returns the coefficient which is used to set <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> when the Camera is inside the sphere defined by <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83 [...]
-<p>In that case, the <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">zNear()</a> value is set to <a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">zNearCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">sceneRadius()</a>. See the <a class="el" href="cl [...]
+<p>Returns the coefficient which is used to set <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> when the Camera is inside the sphere defined by <a class="el" href="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1">sceneCenter()</a> and <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f [...]
+<p>In that case, the <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">zNear()</a> value is set to <a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">zNearCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">zClippingCoefficient()</a> * <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">sceneRadius()</a>. See the <a class="el" href="cl [...]
 <p>Default value is 0.005, which is appropriate for most applications. In case you need a high dynamic ZBuffer precision, you can increase this value (~0.1). A lower value will prevent clipping of very close objects at the expense of a worst Z precision.</p>
 <p>Only meaningful when Camera type is <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera::PERSPECTIVE</a>. </p>
 
@@ -2991,7 +2991,7 @@ If you use several OpenGL contexts and bypass the Qt main refresh loop, you shou
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1CameraConstraint-members.html b/doc/refManual/classqglviewer_1_1CameraConstraint-members.html
index 3895f00..00342f1 100644
--- a/doc/refManual/classqglviewer_1_1CameraConstraint-members.html
+++ b/doc/refManual/classqglviewer_1_1CameraConstraint-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -121,7 +121,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1CameraConstraint.html b/doc/refManual/classqglviewer_1_1CameraConstraint.html
index 1991431..4a795c5 100644
--- a/doc/refManual/classqglviewer_1_1CameraConstraint.html
+++ b/doc/refManual/classqglviewer_1_1CameraConstraint.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -298,7 +298,7 @@ Additional Inherited Members</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Constraint-members.html b/doc/refManual/classqglviewer_1_1Constraint-members.html
index ca7b453..3b03996 100644
--- a/doc/refManual/classqglviewer_1_1Constraint-members.html
+++ b/doc/refManual/classqglviewer_1_1Constraint-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Constraint.html b/doc/refManual/classqglviewer_1_1Constraint.html
index 4b16c3b..6babc10 100644
--- a/doc/refManual/classqglviewer_1_1Constraint.html
+++ b/doc/refManual/classqglviewer_1_1Constraint.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -259,7 +259,7 @@ Public Member Functions</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Frame-members.html b/doc/refManual/classqglviewer_1_1Frame-members.html
index cc6f962..fe93713 100644
--- a/doc/refManual/classqglviewer_1_1Frame-members.html
+++ b/doc/refManual/classqglviewer_1_1Frame-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -95,7 +95,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <p>This is the complete list of members for <a class="el" href="classqglviewer_1_1Frame.html">Frame</a>, including all inherited members.</p>
 <table class="directory">
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">alignWithFrame</a>(const Frame *const frame, bool move=false, float threshold=0.0f)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">alignWithFrame</a>(const Frame *const frame, bool move=false, qreal threshold=0.0)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96">coordinatesOf</a>(const Vec &src) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce">coordinatesOfFrom</a>(const Vec &src, const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
@@ -104,24 +104,24 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab71e6ee46f0c2593266f9a62d9c5e029">Frame</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7864fb955cec11fe78c3b2bb81230516">Frame</a>(const Frame &frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1">Frame</a>(const Vec &position, const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">getCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">getCoordinatesOfFrom</a>(const float src[3], float res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">getCoordinatesOfIn</a>(const float src[3], float res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">getInverseCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">getInverseTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">getLocalCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">getLocalInverseCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">getLocalInverseTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">getLocalTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">getCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">getCoordinatesOfFrom</a>(const qreal src[3], qreal res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">getCoordinatesOfIn</a>(const qreal src[3], qreal res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">getInverseCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">getInverseTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">getLocalCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">getLocalInverseCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">getLocalInverseTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">getLocalTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a15f0dc7596dc78437154302466ac3c0a">getMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">getOrientation</a>(double &q0, double &q1, double &q2, double &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">getPosition</a>(float &x, float &y, float &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">getRotation</a>(double &q0, double &q1, double &q2, double &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">getTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">getTransformOfFrom</a>(const float src[3], float res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">getTransformOfIn</a>(const float src[3], float res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">getTranslation</a>(float &x, float &y, float &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">getOrientation</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">getPosition</a>(qreal &x, qreal &y, qreal &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">getRotation</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">getTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">getTransformOfFrom</a>(const qreal src[3], qreal res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">getTransformOfIn</a>(const qreal src[3], qreal res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">getTranslation</a>(qreal &x, qreal &y, qreal &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a45358fae434b3912ce81577dc7cf4fc9">getWorldMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead">getWorldMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement</a>(const QDomElement &element)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
@@ -142,8 +142,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec">referenceFrame</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate</a>(Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate</a>(const Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8">rotate</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad">rotate</a>(double &q0, double &q1, double &q2, double &q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff">rotate</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181">rotate</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca">rotateAroundPoint</a>(Quaternion &rotation, const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891">rotateAroundPoint</a>(const Quaternion &rotation, const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
@@ -151,20 +151,20 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5408d08ab204157ec29f555b6813f9e4">setFromMatrix</a>(const GLdouble m[4][4])</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0c4d51f142f43235e30198e7b8abc626">setFromMatrix</a>(const GLdouble m[16])</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation</a>(const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6">setOrientation</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb">setOrientation</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">setOrientationWithConstraint</a>(Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition</a>(const Vec &position)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083">setPosition</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e">setPosition</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087">setPositionAndOrientation</a>(const Vec &position, const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a">setPositionAndOrientationWithConstraint</a>(Vec &position, Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38">setPositionWithConstraint</a>(Vec &position)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8">setReferenceFrame</a>(const Frame *const refFrame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation</a>(const Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e">setRotation</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6">setRotation</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">setRotationWithConstraint</a>(Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7">settingAsReferenceFrameWillCreateALoop</a>(const Frame *const frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation</a>(const Vec &translation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1">setTranslation</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8">setTranslation</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48">setTranslationAndRotation</a>(const Vec &translation, const Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db">setTranslationAndRotationWithConstraint</a>(Vec &translation, Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">setTranslationWithConstraint</a>(Vec &translation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
@@ -173,8 +173,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0">transformOfIn</a>(const Vec &src, const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a">translate</a>(Vec &t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate</a>(const Vec &t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290">translate</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d">translate</a>(float &x, float &y, float &z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5">translate</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11">translate</a>(qreal &x, qreal &y, qreal &z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a37d4da8cfd297273e7bb55538debaa3e">worldInverse</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141">worldMatrix</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
@@ -182,7 +182,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Frame.html b/doc/refManual/classqglviewer_1_1Frame.html
index 2b7d4a2..09b55be 100644
--- a/doc/refManual/classqglviewer_1_1Frame.html
+++ b/doc/refManual/classqglviewer_1_1Frame.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -124,14 +124,14 @@ World coordinates position and orientation</h2></td></tr>
 <tr class="separator:a2f649a1218291aa3776ce08d0a2879b1"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a24f5da9b3f4bf4e71dfad7a74a932e52"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>)</td></tr>
 <tr class="separator:a24f5da9b3f4bf4e71dfad7a74a932e52"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aff7308b903966afc6c87b5cd766a9083"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083">setPosition</a> (float x, float y, float z)</td></tr>
-<tr class="separator:aff7308b903966afc6c87b5cd766a9083"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aeef87a7ad6aa43c19399347d49d2c27e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e">setPosition</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:aeef87a7ad6aa43c19399347d49d2c27e"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5081403cb47f1324edae5278d5438a38"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38">setPositionWithConstraint</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>)</td></tr>
 <tr class="separator:a5081403cb47f1324edae5278d5438a38"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a6733704520780505759efdef38a68b8b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation</a>)</td></tr>
 <tr class="separator:a6733704520780505759efdef38a68b8b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae3ac2bf6dcfe21252d40325789503ce6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6">setOrientation</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:ae3ac2bf6dcfe21252d40325789503ce6"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a63727a742d16aec0d93a0469134a55bb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb">setOrientation</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:a63727a742d16aec0d93a0469134a55bb"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a8b69106a268d78daf27d32854d455da4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">setOrientationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation</a>)</td></tr>
 <tr class="separator:a8b69106a268d78daf27d32854d455da4"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a47912d16be51eb85d68d3dcb4a4fb087"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087">setPositionAndOrientation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>, const <a class="el" href="classqglviewer_1_1Quatern [...]
@@ -142,23 +142,23 @@ World coordinates position and orientation</h2></td></tr>
 <tr class="separator:abc38a05a597e07c9ff525122682adc50"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a691af39b54669fad8b4e73599de22094"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation</a> () const </td></tr>
 <tr class="separator:a691af39b54669fad8b4e73599de22094"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab3ca600424074ccaf5ee078c8d3149c3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">getPosition</a> (float &x, float &y, float &z) const </td></tr>
-<tr class="separator:ab3ca600424074ccaf5ee078c8d3149c3"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac47c3b7fd6023734ba40249bea1fd253"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">getOrientation</a> (double &q0, double &q1, double &q2, double &q3) const </td></tr>
-<tr class="separator:ac47c3b7fd6023734ba40249bea1fd253"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8e2607c9b0e6d98e84cf3c9d467259b5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">getPosition</a> (qreal &x, qreal &y, qreal &z) const </td></tr>
+<tr class="separator:a8e2607c9b0e6d98e84cf3c9d467259b5"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad3f291e22719a35e8f8a4f3d244bf088"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">getOrientation</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td></tr>
+<tr class="separator:ad3f291e22719a35e8f8a4f3d244bf088"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Local translation and rotation w/r reference Frame</h2></td></tr>
 <tr class="memitem:ae5495cd791858225ba7c85ce39329704"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>)</td></tr>
 <tr class="separator:ae5495cd791858225ba7c85ce39329704"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aeafb612e3ad0d6a81de91884eb4bdef1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1">setTranslation</a> (float x, float y, float z)</td></tr>
-<tr class="separator:aeafb612e3ad0d6a81de91884eb4bdef1"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a033c48217e7dfccb3e88ae099e0f35c8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8">setTranslation</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:a033c48217e7dfccb3e88ae099e0f35c8"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a7f3395d24d164a7af9a8b99e4e6bafc0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">setTranslationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>)</td></tr>
 <tr class="separator:a7f3395d24d164a7af9a8b99e4e6bafc0"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a857aacdb88a574ec4a363335f6152a1e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>)</td></tr>
 <tr class="separator:a857aacdb88a574ec4a363335f6152a1e"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a26c462ecae655fa82c4d2efa42f9cd2e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e">setRotation</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:a26c462ecae655fa82c4d2efa42f9cd2e"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:afc95a5b7bbbb2e6d0df552a1df1b78b6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6">setRotation</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:afc95a5b7bbbb2e6d0df552a1df1b78b6"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9d4ab1388820d002d44304c5463fbfbd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">setRotationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>)</td></tr>
 <tr class="separator:a9d4ab1388820d002d44304c5463fbfbd"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a0fbfd129a52b36b6753cc1589ff87a48"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48">setTranslationAndRotation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>, const <a class="el" href="classqglviewer_1_1Quat [...]
@@ -169,10 +169,10 @@ Local translation and rotation w/r reference Frame</h2></td></tr>
 <tr class="separator:a388a5f38140104323aa51fc207fde642"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a19ee9243c60f412dfc4eac3dcf45a5a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a> () const </td></tr>
 <tr class="separator:a19ee9243c60f412dfc4eac3dcf45a5a1"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a39804059e5c4e694a6cb13b71347da97"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">getTranslation</a> (float &x, float &y, float &z) const </td></tr>
-<tr class="separator:a39804059e5c4e694a6cb13b71347da97"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a475a20f772ff87508b673a586fc50bbb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">getRotation</a> (double &q0, double &q1, double &q2, double &q3) const </td></tr>
-<tr class="separator:a475a20f772ff87508b673a586fc50bbb"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a97dd37882acc09d7b5a9246dfd4a9ad1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">getTranslation</a> (qreal &x, qreal &y, qreal &z) const </td></tr>
+<tr class="separator:a97dd37882acc09d7b5a9246dfd4a9ad1"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3778316610c7d32db8477ace730227c7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">getRotation</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td></tr>
+<tr class="separator:a3778316610c7d32db8477ace730227c7"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Frame hierarchy</h2></td></tr>
@@ -189,24 +189,24 @@ Frame modification</h2></td></tr>
 <tr class="separator:a4cb0cf5ff79e1acf0755befdaceb6f4a"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac774331eeae8d29acc94f5653b2f2c3b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &t)</td></tr>
 <tr class="separator:ac774331eeae8d29acc94f5653b2f2c3b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a9081ed23141a5980f028b21d58fa3290"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290">translate</a> (float x, float y, float z)</td></tr>
-<tr class="separator:a9081ed23141a5980f028b21d58fa3290"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a2ae644799a164d7519769ba393565c5d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d">translate</a> (float &x, float &y, float &z)</td></tr>
-<tr class="separator:a2ae644799a164d7519769ba393565c5d"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa1abe660fa5c640c01a33d29dd7acca5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5">translate</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:aa1abe660fa5c640c01a33d29dd7acca5"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a1148e82d06e6c4ad4a9baedc9893cd11"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11">translate</a> (qreal &x, qreal &y, qreal &z)</td></tr>
+<tr class="separator:a1148e82d06e6c4ad4a9baedc9893cd11"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a38dffd6ee0ad7e395b49082b2b94de33"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &q)</td></tr>
 <tr class="separator:a38dffd6ee0ad7e395b49082b2b94de33"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac754417fa609300f980fcba5405c9989"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &q)</td></tr>
 <tr class="separator:ac754417fa609300f980fcba5405c9989"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7fe03bbf807b109c1edb849193d03aa8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8">rotate</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:a7fe03bbf807b109c1edb849193d03aa8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab15e32161293dce94ae3df3bc3a7b0ad"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad">rotate</a> (double &q0, double &q1, double &q2, double &q3)</td></tr>
-<tr class="separator:ab15e32161293dce94ae3df3bc3a7b0ad"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae8e783d4aec3409b05fd414e3d30b8ff"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff">rotate</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:ae8e783d4aec3409b05fd414e3d30b8ff"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6d6d837252d4c1d036a08f2c50827181"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181">rotate</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3)</td></tr>
+<tr class="separator:a6d6d837252d4c1d036a08f2c50827181"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a85f48572c1298bc3192f111e8b587bca"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca">rotateAroundPoint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>, const <a class="el" href="classqglviewer_1_1Vec.htm [...]
 <tr class="separator:a85f48572c1298bc3192f111e8b587bca"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5f87bae05096c99fb3b30cf5bb52c891"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891">rotateAroundPoint</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>, const <a class="el" href="classqglviewer_1_1V [...]
 <tr class="separator:a5f87bae05096c99fb3b30cf5bb52c891"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7f069ac991d77d7d5887b9f890889e10"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">alignWithFrame</a> (const Frame *const frame, bool move=false, float threshold=0.0f)</td></tr>
-<tr class="separator:a7f069ac991d77d7d5887b9f890889e10"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:af5b704f2a19e1ebc3b646e4354724ccd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">alignWithFrame</a> (const Frame *const frame, bool move=false, qreal threshold=0.0)</td></tr>
+<tr class="separator:af5b704f2a19e1ebc3b646e4354724ccd"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:af97ae9e790033879dfcb9837a7312255"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255">projectOnLine</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &origin, const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &direction)</td></tr>
 <tr class="separator:af97ae9e790033879dfcb9837a7312255"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -224,18 +224,18 @@ Coordinate system transformation of 3D coordinates</h2></td></tr>
 <tr class="separator:a8c3c1e66b248a0f29e304e6c786b9391"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aadad46a46365f6977e4aac6dc18318ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce">coordinatesOfFrom</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src, const Frame *const from) const </td></tr>
 <tr class="separator:aadad46a46365f6977e4aac6dc18318ce"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3718dc9cc825c674c8da3576b1448764"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">getCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a3718dc9cc825c674c8da3576b1448764"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aede4243bfe48e6d870a2417bbfc711a8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">getInverseCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:aede4243bfe48e6d870a2417bbfc711a8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:abe456b2ee906b9def0d2ec0c949a9497"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">getLocalCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:abe456b2ee906b9def0d2ec0c949a9497"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:adbd3252d2089f077e23e78345b3723c2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">getLocalInverseCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:adbd3252d2089f077e23e78345b3723c2"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af2748e8dd6a4edad38d195132a8c8b30"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">getCoordinatesOfIn</a> (const float src[3], float res[3], const Frame *const in) const </td></tr>
-<tr class="separator:af2748e8dd6a4edad38d195132a8c8b30"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a36a2d7b27ab27bcff37ab9cbfab20a17"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">getCoordinatesOfFrom</a> (const float src[3], float res[3], const Frame *const from) const </td></tr>
-<tr class="separator:a36a2d7b27ab27bcff37ab9cbfab20a17"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a01f92194a37542283173ddd9c4be30ce"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">getCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a01f92194a37542283173ddd9c4be30ce"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a5cff28c3db707b06cc2510b207b0d010"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">getInverseCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a5cff28c3db707b06cc2510b207b0d010"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a80027fe347d2c4a184d948a532ddfbf1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">getLocalCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a80027fe347d2c4a184d948a532ddfbf1"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7514220133add8a16ec6b839e9e2d96a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">getLocalInverseCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a7514220133add8a16ec6b839e9e2d96a"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a767a4c18a613077afd82ec4813c6f71b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">getCoordinatesOfIn</a> (const qreal src[3], qreal res[3], const Frame *const in) const </td></tr>
+<tr class="separator:a767a4c18a613077afd82ec4813c6f71b"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa7f3dee34349894871a47007e5b2ea00"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">getCoordinatesOfFrom</a> (const qreal src[3], qreal res[3], const Frame *const from) const </td></tr>
+<tr class="separator:aa7f3dee34349894871a47007e5b2ea00"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Coordinate system transformation of vectors</h2></td></tr>
@@ -251,18 +251,18 @@ Coordinate system transformation of vectors</h2></td></tr>
 <tr class="separator:a01636f93c09d6fd9fca90cb671afdda0"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a3416ca5a53c1f2d932fca1906ec1c6c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7">transformOfFrom</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src, const Frame *const from) const </td></tr>
 <tr class="separator:a3416ca5a53c1f2d932fca1906ec1c6c7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aac70b883f8e3635d88356cb08b1abae3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">getTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:aac70b883f8e3635d88356cb08b1abae3"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6a2eb1467ca31f7db460a2d6b7166a07"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">getInverseTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a6a2eb1467ca31f7db460a2d6b7166a07"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6e4aeb1d5aafee31442cc3c82a6ee215"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">getLocalTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a6e4aeb1d5aafee31442cc3c82a6ee215"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a62b201feca5e0ebecc03a71b9566d97c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">getLocalInverseTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a62b201feca5e0ebecc03a71b9566d97c"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7d36c3c2d4b004b3e5d296aa58541f9f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">getTransformOfIn</a> (const float src[3], float res[3], const Frame *const in) const </td></tr>
-<tr class="separator:a7d36c3c2d4b004b3e5d296aa58541f9f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4eed4b2770a62e5ebb32d3dcee642c52"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">getTransformOfFrom</a> (const float src[3], float res[3], const Frame *const from) const </td></tr>
-<tr class="separator:a4eed4b2770a62e5ebb32d3dcee642c52"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a09224521fa56b13fa92ea023b48ef493"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">getTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a09224521fa56b13fa92ea023b48ef493"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ac3e418af121c82f130d75c3d94f422f2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">getInverseTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:ac3e418af121c82f130d75c3d94f422f2"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8d70454adf39301d5c6ad4281c51d6f2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">getLocalTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a8d70454adf39301d5c6ad4281c51d6f2"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a456964b8cfaa1c5e64ef18199c763854"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">getLocalInverseTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a456964b8cfaa1c5e64ef18199c763854"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a2404f140d0a2754323c119592d267aca"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">getTransformOfIn</a> (const qreal src[3], qreal res[3], const Frame *const in) const </td></tr>
+<tr class="separator:a2404f140d0a2754323c119592d267aca"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6eff9a03091546b0982840ad60e8a2f1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">getTransformOfFrom</a> (const qreal src[3], qreal res[3], const Frame *const from) const </td></tr>
+<tr class="separator:a6eff9a03091546b0982840ad60e8a2f1"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Constraint on the displacement</h2></td></tr>
@@ -426,7 +426,7 @@ XML representation</h2></td></tr>
 </div>
 </div>
 <h2 class="groupheader">Member Function Documentation</h2>
-<a class="anchor" id="a7f069ac991d77d7d5887b9f890889e10"></a>
+<a class="anchor" id="af5b704f2a19e1ebc3b646e4354724ccd"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -445,8 +445,8 @@ XML representation</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>threshold</em> = <code>0.0f</code> </td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>threshold</em> = <code>0.0</code> </td>
         </tr>
         <tr>
           <td></td>
@@ -603,20 +603,20 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a3718dc9cc825c674c8da3576b1448764"></a>
+<a class="anchor" id="a01f92194a37542283173ddd9c4be30ce"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -626,24 +626,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96">coordinatesOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96">coordinatesOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a36a2d7b27ab27bcff37ab9cbfab20a17"></a>
+<a class="anchor" id="aa7f3dee34349894871a47007e5b2ea00"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getCoordinatesOfFrom </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3], </td>
         </tr>
         <tr>
@@ -659,24 +659,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce">coordinatesOfFrom()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce">coordinatesOfFrom()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="af2748e8dd6a4edad38d195132a8c8b30"></a>
+<a class="anchor" id="a767a4c18a613077afd82ec4813c6f71b"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getCoordinatesOfIn </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3], </td>
         </tr>
         <tr>
@@ -692,24 +692,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391">coordinatesOfIn()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391">coordinatesOfIn()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="aede4243bfe48e6d870a2417bbfc711a8"></a>
+<a class="anchor" id="a5cff28c3db707b06cc2510b207b0d010"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getInverseCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -719,24 +719,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e">inverseCoordinatesOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e">inverseCoordinatesOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a6a2eb1467ca31f7db460a2d6b7166a07"></a>
+<a class="anchor" id="ac3e418af121c82f130d75c3d94f422f2"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getInverseTransformOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -746,24 +746,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5">inverseTransformOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5">inverseTransformOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="abe456b2ee906b9def0d2ec0c949a9497"></a>
+<a class="anchor" id="a80027fe347d2c4a184d948a532ddfbf1"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getLocalCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -773,24 +773,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a2b113688a0cab6c439dfbf598fd45e70">localCoordinatesOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a2b113688a0cab6c439dfbf598fd45e70">localCoordinatesOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="adbd3252d2089f077e23e78345b3723c2"></a>
+<a class="anchor" id="a7514220133add8a16ec6b839e9e2d96a"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getLocalInverseCoordinatesOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -800,24 +800,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7">localInverseCoordinatesOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7">localInverseCoordinatesOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a62b201feca5e0ebecc03a71b9566d97c"></a>
+<a class="anchor" id="a456964b8cfaa1c5e64ef18199c763854"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getLocalInverseTransformOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -827,24 +827,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e">localInverseTransformOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e">localInverseTransformOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a6e4aeb1d5aafee31442cc3c82a6ee215"></a>
+<a class="anchor" id="a8d70454adf39301d5c6ad4281c51d6f2"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getLocalTransformOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -854,7 +854,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2">localTransformOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2">localTransformOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
@@ -892,32 +892,32 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ac47c3b7fd6023734ba40249bea1fd253"></a>
+<a class="anchor" id="ad3f291e22719a35e8f8a4f3d244bf088"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getOrientation </td>
           <td>(</td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -928,30 +928,30 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Get the current orientation of the frame (same as <a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation()</a>). Parameters are the orientation <a class="el" href="classqglviewer_1_1Quaternion.html" title="The Quaternion class represents 3D rotations and orientations. ">Quaternion</a> values. See also <a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation()</a>. </p><pre class="fragment">The \p q are  [...]
-</pre><p>See <a class="el" href="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45">Quaternion::Quaternion(double, double, double, double)</a> for details on <code>q</code>. </p>
+</pre><p>See <a class="el" href="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba">Quaternion::Quaternion(qreal, qreal, qreal, qreal)</a> for details on <code>q</code>. </p>
 
 </div>
 </div>
-<a class="anchor" id="ab3ca600424074ccaf5ee078c8d3149c3"></a>
+<a class="anchor" id="a8e2607c9b0e6d98e84cf3c9d467259b5"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getPosition </td>
           <td>(</td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>x</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>z</em> </td>
         </tr>
         <tr>
@@ -965,32 +965,32 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a475a20f772ff87508b673a586fc50bbb"></a>
+<a class="anchor" id="a3778316610c7d32db8477ace730227c7"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getRotation </td>
           <td>(</td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -1001,24 +1001,24 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>The <code>q</code> are set to the <a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation()</a> of the Frame.</p>
-<p>See <a class="el" href="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45">Quaternion::Quaternion(double, double, double, double)</a> for details on <code>q</code>. </p>
+<p>See <a class="el" href="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba">Quaternion::Quaternion(qreal, qreal, qreal, qreal)</a> for details on <code>q</code>. </p>
 
 </div>
 </div>
-<a class="anchor" id="aac70b883f8e3635d88356cb08b1abae3"></a>
+<a class="anchor" id="a09224521fa56b13fa92ea023b48ef493"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getTransformOf </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3] </td>
         </tr>
         <tr>
@@ -1028,24 +1028,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e">transformOf()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e">transformOf()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a4eed4b2770a62e5ebb32d3dcee642c52"></a>
+<a class="anchor" id="a6eff9a03091546b0982840ad60e8a2f1"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getTransformOfFrom </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3], </td>
         </tr>
         <tr>
@@ -1061,24 +1061,24 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7">transformOfFrom()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7">transformOfFrom()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a7d36c3c2d4b004b3e5d296aa58541f9f"></a>
+<a class="anchor" id="a2404f140d0a2754323c119592d267aca"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getTransformOfIn </td>
           <td>(</td>
-          <td class="paramtype">const float </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>src</em>[3], </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>res</em>[3], </td>
         </tr>
         <tr>
@@ -1094,30 +1094,30 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0">transformOfIn()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0">transformOfIn()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a39804059e5c4e694a6cb13b71347da97"></a>
+<a class="anchor" id="a97dd37882acc09d7b5a9246dfd4a9ad1"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getTranslation </td>
           <td>(</td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>x</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>z</em> </td>
         </tr>
         <tr>
@@ -1144,7 +1144,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>float[4][4] parameter version of <a class="el" href="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141">worldMatrix()</a>. See also <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> and <a class="el" href="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a>. </p>
+<p>qreal[4][4] parameter version of <a class="el" href="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141">worldMatrix()</a>. See also <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> and <a class="el" href="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a>. </p>
 
 </div>
 </div>
@@ -1161,7 +1161,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>float[16] parameter version of <a class="el" href="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141">worldMatrix()</a>. See also <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> and <a class="el" href="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a>. </p>
+<p>qreal[16] parameter version of <a class="el" href="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141">worldMatrix()</a>. See also <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> and <a class="el" href="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a>. </p>
 
 </div>
 </div>
@@ -1557,32 +1557,32 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a7fe03bbf807b109c1edb849193d03aa8"></a>
+<a class="anchor" id="ae8e783d4aec3409b05fd414e3d30b8ff"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void rotate </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -1592,36 +1592,36 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate(const Quaternion&)</a> but with <code>float</code> <a class="el" href="classqglviewer_1_1Quaternion.html" title="The Quaternion class represents 3D rotations and orientations. ">Quaternion</a> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate(const Quaternion&)</a> but with <code>qreal</code> <a class="el" href="classqglviewer_1_1Quaternion.html" title="The Quaternion class represents 3D rotations and orientations. ">Quaternion</a> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="ab15e32161293dce94ae3df3bc3a7b0ad"></a>
+<a class="anchor" id="a6d6d837252d4c1d036a08f2c50827181"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void rotate </td>
           <td>(</td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -1631,7 +1631,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate(Quaternion&)</a> but with <code>float</code> <a class="el" href="classqglviewer_1_1Quaternion.html" title="The Quaternion class represents 3D rotations and orientations. ">Quaternion</a> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate(Quaternion&)</a> but with <code>qreal</code> <a class="el" href="classqglviewer_1_1Quaternion.html" title="The Quaternion class represents 3D rotations and orientations. ">Quaternion</a> parameters. </p>
 
 </div>
 </div>
@@ -1766,7 +1766,7 @@ XML representation</h2></td></tr>
 <div class="line">fr.setFromMatrix(m);</div>
 <div class="line">glMultMatrixd(fr.matrix());</div>
 </div><!-- fragment --><p>Using this conversion, you can benefit from the powerful Frame transformation methods to translate points and vectors to and from the Frame coordinate system to any other Frame coordinate system (including the world coordinate system). See <a class="el" href="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96">coordinatesOf()</a> and <a class="el" href="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e">transformOf()</a>.</p>
-<p>Emits the <a class="el" href="classqglviewer_1_1Frame.html#ab6722375e68e03d151762ebfc83c5459">modified()</a> signal. See also <a class="el" href="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a>, <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac">Quaternion::setFromRotationMatrix()</a>.</p>
+<p>Emits the <a class="el" href="classqglviewer_1_1Frame.html#ab6722375e68e03d151762ebfc83c5459">modified()</a> signal. See also <a class="el" href="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a>, <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f">Quaternion::setFromRotationMatrix()</a>.</p>
 <dl class="section attention"><dt>Attention</dt><dd>A Frame does not contain a scale factor. The possible scaling in <code>m</code> will not be converted into the Frame by this method. </dd></dl>
 
 </div>
@@ -1789,32 +1789,32 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ae3ac2bf6dcfe21252d40325789503ce6"></a>
+<a class="anchor" id="a63727a742d16aec0d93a0469134a55bb"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setOrientation </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -1824,7 +1824,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
@@ -1863,26 +1863,26 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="aff7308b903966afc6c87b5cd766a9083"></a>
+<a class="anchor" id="aeef87a7ad6aa43c19399347d49d2c27e"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setPosition </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>x</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>z</em> </td>
         </tr>
         <tr>
@@ -1892,7 +1892,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
@@ -2007,32 +2007,32 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a26c462ecae655fa82c4d2efa42f9cd2e"></a>
+<a class="anchor" id="afc95a5b7bbbb2e6d0df552a1df1b78b6"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setRotation </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -2042,7 +2042,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation()</a> but with <code>float</code> <a class="el" href="classqglviewer_1_1Quaternion.html" title="The Quaternion class represents 3D rotations and orientations. ">Quaternion</a> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation()</a> but with <code>qreal</code> <a class="el" href="classqglviewer_1_1Quaternion.html" title="The Quaternion class represents 3D rotations and orientations. ">Quaternion</a> parameters. </p>
 
 </div>
 </div>
@@ -2099,26 +2099,26 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="aeafb612e3ad0d6a81de91884eb4bdef1"></a>
+<a class="anchor" id="a033c48217e7dfccb3e88ae099e0f35c8"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setTranslation </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>x</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>z</em> </td>
         </tr>
         <tr>
@@ -2128,7 +2128,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation()</a>, but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation()</a>, but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
@@ -2316,26 +2316,26 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a9081ed23141a5980f028b21d58fa3290"></a>
+<a class="anchor" id="aa1abe660fa5c640c01a33d29dd7acca5"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void translate </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>x</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>z</em> </td>
         </tr>
         <tr>
@@ -2345,30 +2345,30 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate(const Vec&)</a> but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate(const Vec&)</a> but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
-<a class="anchor" id="a2ae644799a164d7519769ba393565c5d"></a>
+<a class="anchor" id="a1148e82d06e6c4ad4a9baedc9893cd11"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void translate </td>
           <td>(</td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>x</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>z</em> </td>
         </tr>
         <tr>
@@ -2378,7 +2378,7 @@ XML representation</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a">translate(Vec&)</a> but with <code>float</code> parameters. </p>
+<p>Same as <a class="el" href="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a">translate(Vec&)</a> but with <code>qreal</code> parameters. </p>
 
 </div>
 </div>
@@ -2448,7 +2448,7 @@ XML representation</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1KeyFrameInterpolator-members.html b/doc/refManual/classqglviewer_1_1KeyFrameInterpolator-members.html
index d593068..2258199 100644
--- a/doc/refManual/classqglviewer_1_1KeyFrameInterpolator-members.html
+++ b/doc/refManual/classqglviewer_1_1KeyFrameInterpolator-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -96,34 +96,34 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <p>This is the complete list of members for <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a>, including all inherited members.</p>
 <table class="directory">
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622">addKeyFrame</a>(const Frame &frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40">addKeyFrame</a>(const Frame &frame, float time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a">addKeyFrame</a>(const Frame &frame, qreal time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b">addKeyFrame</a>(const Frame *const frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa821392c6e108d5c7814317b8c3cd47f">addKeyFrame</a>(const Frame *const frame, float time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#added3bdd706f5a2e3c7c43de1c19d27d">addKeyFrame</a>(const Frame *const frame, qreal time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34">deletePath</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a48e0e2dd26cd96418c8b889ceabe80f6">domElement</a>(const QString &name, QDomDocument &document) const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">drawPath</a>(int mask=1, int nbFrames=6, float scale=1.0f)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980">duration</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">drawPath</a>(int mask=1, int nbFrames=6, qreal scale=1.0)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166">duration</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab4010a17bf77b9940b120ee8ed9a0271">endReached</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement</a>(const QDomElement &element)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae">interpolateAtTime</a>(float time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a">interpolateAtTime</a>(qreal time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">interpolated</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70">interpolationIsStarted</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8">keyFrame</a>(int index) const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e">KeyFrameInterpolator</a>(Frame *fr=NULL)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime</a>(int index) const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">lastTime</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime</a>(int index) const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">lastTime</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45">loopInterpolation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273">numberOfKeyFrames</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74">resetInterpolation</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d">setFrame</a>(Frame *const frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd">setInterpolationPeriod</a>(int period)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d">setInterpolationSpeed</a>(float speed)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3">setInterpolationTime</a>(float time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f">setInterpolationSpeed</a>(qreal speed)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7">setInterpolationTime</a>(qreal time)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd">setLoopInterpolation</a>(bool loop=true)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819">startInterpolation</a>(int period=-1)</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a16f0910299ae07cede3396a14ec01f4b">stopInterpolation</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html">KeyFrameInterpolator</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
@@ -132,7 +132,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1KeyFrameInterpolator.html b/doc/refManual/classqglviewer_1_1KeyFrameInterpolator.html
index fd7bc0d..de7275a 100644
--- a/doc/refManual/classqglviewer_1_1KeyFrameInterpolator.html
+++ b/doc/refManual/classqglviewer_1_1KeyFrameInterpolator.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -118,12 +118,12 @@ Public Member Functions</h2></td></tr>
 Path creation</h2></td></tr>
 <tr class="memitem:a44ac54529e675a2157067c9d205d9622"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622">addKeyFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> &<a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame</a>)</td></tr>
 <tr class="separator:a44ac54529e675a2157067c9d205d9622"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a379af0370e27c513c4d9091bff272b40"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40">addKeyFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> &<a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame</a>, float time)</td></tr>
-<tr class="separator:a379af0370e27c513c4d9091bff272b40"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad20780dd1eef86ef712cbeee0a69238a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a">addKeyFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> &<a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame</a>, qreal time)</td></tr>
+<tr class="separator:ad20780dd1eef86ef712cbeee0a69238a"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a23d3166003e0355b718f34a3e6c92a1b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b">addKeyFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame</a>)</td></tr>
 <tr class="separator:a23d3166003e0355b718f34a3e6c92a1b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aa821392c6e108d5c7814317b8c3cd47f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa821392c6e108d5c7814317b8c3cd47f">addKeyFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame</a>, float time)</td></tr>
-<tr class="separator:aa821392c6e108d5c7814317b8c3cd47f"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:added3bdd706f5a2e3c7c43de1c19d27d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#added3bdd706f5a2e3c7c43de1c19d27d">addKeyFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame</a>, qreal time)</td></tr>
+<tr class="separator:added3bdd706f5a2e3c7c43de1c19d27d"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ae343912505ce83d62bea580a83c7bc34"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34">deletePath</a> ()</td></tr>
 <tr class="separator:ae343912505ce83d62bea580a83c7bc34"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -138,31 +138,31 @@ Associated Frame</h2></td></tr>
 Path parameters</h2></td></tr>
 <tr class="memitem:a2437eecf340817ad1a3f86c822b111e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8">keyFrame</a> (int index) const </td></tr>
 <tr class="separator:a2437eecf340817ad1a3f86c822b111e8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a976ec792d48ccd7e53b55bb91b49d473"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime</a> (int index) const </td></tr>
-<tr class="separator:a976ec792d48ccd7e53b55bb91b49d473"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ab9e37b00f956270a5f76127f47390bbe"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime</a> (int index) const </td></tr>
+<tr class="separator:ab9e37b00f956270a5f76127f47390bbe"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aba3744250d9cd01ec848f81151a62273"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273">numberOfKeyFrames</a> () const </td></tr>
 <tr class="separator:aba3744250d9cd01ec848f81151a62273"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a80c858ec25677a47d066e0900f4e1980"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980">duration</a> () const </td></tr>
-<tr class="separator:a80c858ec25677a47d066e0900f4e1980"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a5335f8bedcb11c4e9cc06cbbab838477"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime</a> () const </td></tr>
-<tr class="separator:a5335f8bedcb11c4e9cc06cbbab838477"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3e953e6c813baa461389c132c9509e30"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">lastTime</a> () const </td></tr>
-<tr class="separator:a3e953e6c813baa461389c132c9509e30"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aaf7e5f37f8400275afa7c3eb891f4166"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166">duration</a> () const </td></tr>
+<tr class="separator:aaf7e5f37f8400275afa7c3eb891f4166"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad75cb46e1d9ab4458c563b20c77e25c0"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime</a> () const </td></tr>
+<tr class="separator:ad75cb46e1d9ab4458c563b20c77e25c0"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a18f3d03feb42cfc90779e39b118e3f7c"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">lastTime</a> () const </td></tr>
+<tr class="separator:a18f3d03feb42cfc90779e39b118e3f7c"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Interpolation parameters</h2></td></tr>
-<tr class="memitem:a58326b7948e78c1d2861ca659492207a"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime</a> () const </td></tr>
-<tr class="separator:a58326b7948e78c1d2861ca659492207a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7e468c84c27d896e341563c83e102aad"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed</a> () const </td></tr>
-<tr class="separator:a7e468c84c27d896e341563c83e102aad"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a9fe6b6595ce11b6eae4e6cf9d3a9d7c0"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime</a> () const </td></tr>
+<tr class="separator:a9fe6b6595ce11b6eae4e6cf9d3a9d7c0"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:af28fcfef8565e889da536728c7b81393"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed</a> () const </td></tr>
+<tr class="separator:af28fcfef8565e889da536728c7b81393"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a21bf6165ea3a6be2fd854e9be5105b1e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod</a> () const </td></tr>
 <tr class="separator:a21bf6165ea3a6be2fd854e9be5105b1e"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a906c17cf6c1d51a54c7d3b9b4c9cbd45"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45">loopInterpolation</a> () const </td></tr>
 <tr class="separator:a906c17cf6c1d51a54c7d3b9b4c9cbd45"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab860af88ea46ecedb2a648157bb68dc3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3">setInterpolationTime</a> (float time)</td></tr>
-<tr class="separator:ab860af88ea46ecedb2a648157bb68dc3"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3cc64e95e1b8dfda110bcf3d033ecf2d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d">setInterpolationSpeed</a> (float speed)</td></tr>
-<tr class="separator:a3cc64e95e1b8dfda110bcf3d033ecf2d"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a59c9040c5ffe58920e9dbc521c1407c7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7">setInterpolationTime</a> (qreal time)</td></tr>
+<tr class="separator:a59c9040c5ffe58920e9dbc521c1407c7"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a045bc0124754973cec8b24eacabd851f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f">setInterpolationSpeed</a> (qreal speed)</td></tr>
+<tr class="separator:a045bc0124754973cec8b24eacabd851f"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9763e647346a8bee885517d9985173fd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd">setInterpolationPeriod</a> (int period)</td></tr>
 <tr class="separator:a9763e647346a8bee885517d9985173fd"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a31a491ac2ac016298cbd1c66f07be6dd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd">setLoopInterpolation</a> (bool loop=true)</td></tr>
@@ -180,13 +180,13 @@ Interpolation</h2></td></tr>
 <tr class="separator:a0bfc602dc2fcaca40cc49195bba7ba74"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:acf744bd8ce09e5433f829f63ba310eef"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#acf744bd8ce09e5433f829f63ba310eef">toggleInterpolation</a> ()</td></tr>
 <tr class="separator:acf744bd8ce09e5433f829f63ba310eef"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad5393783e1768b6d688a8c49ddea56ae"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae">interpolateAtTime</a> (float time)</td></tr>
-<tr class="separator:ad5393783e1768b6d688a8c49ddea56ae"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa661a38cfc0fe1a3ac5f1e63fdc4918a"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a">interpolateAtTime</a> (qreal time)</td></tr>
+<tr class="separator:aa661a38cfc0fe1a3ac5f1e63fdc4918a"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Path drawing</h2></td></tr>
-<tr class="memitem:aca0ce46b39ad4093450019d77fd247f2"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">drawPath</a> (int mask=1, int nbFrames=6, float scale=1.0f)</td></tr>
-<tr class="separator:aca0ce46b39ad4093450019d77fd247f2"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a72eb61459856747e751eaf750168577e"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">drawPath</a> (int mask=1, int nbFrames=6, qreal scale=1.0)</td></tr>
+<tr class="separator:a72eb61459856747e751eaf750168577e"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 XML representation</h2></td></tr>
@@ -220,19 +220,19 @@ XML representation</h2></td></tr>
 <div class="line">      glPopMatrix();</div>
 <div class="line">}</div>
 </div><!-- fragment --><p>The keyFrames are defined by a <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> and a time, expressed in seconds. The <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> can be provided as a const reference or as a pointer to a <a class="el" href="c [...]
-<p>The time has to be monotonously increasing over keyFrames. When <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed()</a> equals 1.0 (default value), these times correspond to actual user's seconds during interpolation (provided that your main loop is fast enough). The interpolation is then real-time: the keyFrames will be reached at their <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e [...]
+<p>The time has to be monotonously increasing over keyFrames. When <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed()</a> equals 1.0 (default value), these times correspond to actual user's seconds during interpolation (provided that your main loop is fast enough). The interpolation is then real-time: the keyFrames will be reached at their <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a [...]
 <h3>Interpolation details</h3>
-<p>When the user <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819">startInterpolation()</a>, a timer is started which will update the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a>'s position and orientation every <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> milliseconds. This update increases the  [...]
-<p>Note that this mechanism ensures that the number of interpolation steps is constant and equal to the total path <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980">duration()</a> divided by the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> * <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed()</ [...]
-<p>During the interpolation, the KeyFrameInterpolator emits an <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">interpolated()</a> signal, which will usually be connected to the QGLViewer::update() slot. The interpolation is stopped when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> is greater than the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.ht [...]
-<p>Note that a <a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">Camera</a> has <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">Camera::keyFrameInterpolator()</a>, that can be used to drive the <a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">Camera</a> along a path, or to restore a saved position (a path made of a single keyFrame). Press Alt+Fx to define  [...]
+<p>When the user <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819">startInterpolation()</a>, a timer is started which will update the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a>'s position and orientation every <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> milliseconds. This update increases the  [...]
+<p>Note that this mechanism ensures that the number of interpolation steps is constant and equal to the total path <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166">duration()</a> divided by the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> * <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed()</ [...]
+<p>During the interpolation, the KeyFrameInterpolator emits an <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">interpolated()</a> signal, which will usually be connected to the QGLViewer::update() slot. The interpolation is stopped when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> is greater than the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.ht [...]
+<p>Note that a <a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">Camera</a> has <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">Camera::keyFrameInterpolator()</a>, that can be used to drive the <a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">Camera</a> along a path, or to restore a saved position (a path made of a single keyFrame). Press Alt+Fx to define  [...]
 <dl class="section attention"><dt>Attention</dt><dd>If a <a class="el" href="classqglviewer_1_1Constraint.html" title="An interface class for Frame constraints. ">Constraint</a> is attached to the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> (see <a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">Frame::constraint()</a>), it should be deactivated before <a class="el" href="classqglviewer_1_ [...]
 <h3>Retrieving interpolated values</h3>
 <p>This code defines a KeyFrameInterpolator, and displays the positions that will be followed by the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> along the path: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e">KeyFrameInterpolator</a> kfi( <span class="keyword">new</span> Frame() );</div>
 <div class="line"><span class="comment">// calls to kfi.addKeyFrame() to define the path.</span></div>
 <div class="line"></div>
-<div class="line"><span class="keyword">const</span> <span class="keywordtype">float</span> deltaTime = 0.04; <span class="comment">// output a position every deltaTime seconds</span></div>
-<div class="line"><span class="keywordflow">for</span> (<span class="keywordtype">float</span> time=kfi.firstTime(); time<=kfi.lastTime(); time += deltaTime)</div>
+<div class="line"><span class="keyword">const</span> qreal deltaTime = 0.04; <span class="comment">// output a position every deltaTime seconds</span></div>
+<div class="line"><span class="keywordflow">for</span> (qreal time=kfi.firstTime(); time<=kfi.lastTime(); time += deltaTime)</div>
 <div class="line">{</div>
 <div class="line">      kfi.interpolateAtTime(time);</div>
 <div class="line">      cout << <span class="stringliteral">"t="</span> << time << <span class="stringliteral">"\tpos="</span> << kfi.frame()->position() << endl;</div>
@@ -254,7 +254,7 @@ XML representation</h2></td></tr>
 </div><div class="memdoc">
 <p>Creates a KeyFrameInterpolator, with <code>frame</code> as associated <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a>.</p>
 <p>The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> can be set or changed using <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d">setFrame()</a>.</p>
-<p><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> are set to their default values. </p>
+<p><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> are set to their default values. </p>
 
 </div>
 </div>
@@ -305,11 +305,11 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Appends a new keyFrame to the path.</p>
-<p>Same as <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40">addKeyFrame(const Frame& frame, float)</a>, except that the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a> is automatically set to previous <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a> plus one second (or 0.0 if there is no previous k [...]
+<p>Same as <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a">addKeyFrame(const Frame& frame, qreal)</a>, except that the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a> is automatically set to previous <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a> plus one second (or 0.0 if there is no previous k [...]
 
 </div>
 </div>
-<a class="anchor" id="a379af0370e27c513c4d9091bff272b40"></a>
+<a class="anchor" id="ad20780dd1eef86ef712cbeee0a69238a"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -325,7 +325,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>time</em> </td>
         </tr>
         <tr>
@@ -341,8 +341,8 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Appends a new keyFrame to the path, with its associated <code>time</code> (in seconds).</p>
-<p>The path will use the current <code>frame</code> state. If you want the path to change when <code>frame</code> is modified, you need to pass a <em>pointer</em> to the <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> instead (see addKeyFrame(const Frame*, float)).</p>
-<p>The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a> have to be monotonously increasing over keyFrames. </p>
+<p>The path will use the current <code>frame</code> state. If you want the path to change when <code>frame</code> is modified, you need to pass a <em>pointer</em> to the <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> instead (see addKeyFrame(const Frame*, qreal)).</p>
+<p>The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a> have to be monotonously increasing over keyFrames. </p>
 
 </div>
 </div>
@@ -368,11 +368,11 @@ XML representation</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Appends a new keyFrame to the path.</p>
-<p>Same as <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa821392c6e108d5c7814317b8c3cd47f">addKeyFrame(const Frame* frame, float)</a>, except that the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a> is set to the previous <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a> plus one second (or 0.0 if there is no previous keyFrame). </p>
+<p>Same as <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#added3bdd706f5a2e3c7c43de1c19d27d">addKeyFrame(const Frame* frame, qreal)</a>, except that the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a> is set to the previous <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a> plus one second (or 0.0 if there is no previous keyFrame). </p>
 
 </div>
 </div>
-<a class="anchor" id="aa821392c6e108d5c7814317b8c3cd47f"></a>
+<a class="anchor" id="added3bdd706f5a2e3c7c43de1c19d27d"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -388,7 +388,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>time</em> </td>
         </tr>
         <tr>
@@ -405,8 +405,8 @@ XML representation</h2></td></tr>
 </div><div class="memdoc">
 <p>Appends a new keyFrame to the path, with its associated <code>time</code> (in seconds).</p>
 <p>The keyFrame is given as a pointer to a <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a>, which will be connected to the KeyFrameInterpolator: when <code>frame</code> is modified, the KeyFrameInterpolator path is updated accordingly. This allows for dynamic paths, where keyFrame can be edited, even during the interpolation. See the <a href="../examples/keyFrames.html">keyFrame [...]
-<p><code>NULL</code> <code>frame</code> pointers are silently ignored. The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a> has to be monotonously increasing over keyFrames.</p>
-<p>Use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40">addKeyFrame(const Frame&, float)</a> to add keyFrame by values. </p>
+<p><code>NULL</code> <code>frame</code> pointers are silently ignored. The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a> has to be monotonously increasing over keyFrames.</p>
+<p>Use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a">addKeyFrame(const Frame&, qreal)</a> to add keyFrame by values. </p>
 
 </div>
 </div>
@@ -470,11 +470,11 @@ XML representation</h2></td></tr>
 <p><code>name</code> is the name of the QDomElement tag. <code>doc</code> is the <code>QDomDocument</code> factory used to create QDomElement.</p>
 <p>Use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement()</a> to restore the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html" title="A ManipulatedFrame is a Frame that can be rotated and translated using the mouse. ...">ManipulatedFrame</a> state from the resulting QDomElement.</p>
 <p>See <a class="el" href="classqglviewer_1_1Vec.html#a48e0e2dd26cd96418c8b889ceabe80f6">Vec::domElement()</a> for a complete example. See also <a class="el" href="classqglviewer_1_1Quaternion.html#a48e0e2dd26cd96418c8b889ceabe80f6">Quaternion::domElement()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6">Camera::domElement()</a>...</p>
-<p>Note that the <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">Camera::keyFrameInterpolator()</a> are automatically saved by <a class="el" href="classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa">QGLViewer::saveStateToFile()</a> when a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a> is closed. </p>
+<p>Note that the <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">Camera::keyFrameInterpolator()</a> are automatically saved by <a class="el" href="classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa">QGLViewer::saveStateToFile()</a> when a <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a> is closed. </p>
 
 </div>
 </div>
-<a class="anchor" id="aca0ce46b39ad4093450019d77fd247f2"></a>
+<a class="anchor" id="a72eb61459856747e751eaf750168577e"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -496,8 +496,8 @@ XML representation</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
-          <td class="paramname"><em>scale</em> = <code>1.0f</code> </td>
+          <td class="paramtype">qreal </td>
+          <td class="paramname"><em>scale</em> = <code>1.0</code> </td>
         </tr>
         <tr>
           <td></td>
@@ -513,11 +513,11 @@ XML representation</h2></td></tr>
 </div><div class="memdoc">
 <p>Draws the path used to interpolate the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a>.</p>
 <p><code>mask</code> controls what is drawn: if (mask & 1) (default), the position path is drawn. If (mask & 2), a camera representation is regularly drawn and if (mask & 4), an oriented axis is regularly drawn. Examples:</p>
-<div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">drawPath</a>();  <span class="comment">// Simply draws the interpolation path</span></div>
-<div class="line"><a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">drawPath</a>(3); <span class="comment">// Draws path and cameras</span></div>
-<div class="line"><a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">drawPath</a>(5); <span class="comment">// Draws path and axis</span></div>
+<div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">drawPath</a>();  <span class="comment">// Simply draws the interpolation path</span></div>
+<div class="line"><a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">drawPath</a>(3); <span class="comment">// Draws path and cameras</span></div>
+<div class="line"><a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">drawPath</a>(5); <span class="comment">// Draws path and axis</span></div>
 </div><!-- fragment --><p>In the case where camera or axis is drawn, <code>nbFrames</code> controls the number of objects (axis or camera) drawn between two successive keyFrames. When <code>nbFrames=1</code>, only the path KeyFrames are drawn. <code>nbFrames=2</code> also draws the intermediate orientation, etc. The maximum value is 30. <code>nbFrames</code> should divide 30 so that an object is drawn for each KeyFrame. Default value is 6.</p>
-<p><code>scale</code> (default=1.0) controls the scaling of the camera and axis drawing. A value of <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer::sceneRadius()</a> should give good results.</p>
+<p><code>scale</code> (default=1.0) controls the scaling of the camera and axis drawing. A value of <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer::sceneRadius()</a> should give good results.</p>
 <p>See the <a href="../examples/keyFrames.html">keyFrames example</a> for an illustration.</p>
 <p>The color of the path is the current <code>glColor()</code>.</p>
 <dl class="section attention"><dt>Attention</dt><dd>The OpenGL state is modified by this method: GL_LIGHTING is disabled and line width set to 2. Use this code to preserve your current OpenGL state: <div class="fragment"><div class="line">glPushAttrib(GL_ALL_ATTRIB_BITS);</div>
@@ -527,12 +527,12 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a80c858ec25677a47d066e0900f4e1980"></a>
+<a class="anchor" id="aaf7e5f37f8400275afa7c3eb891f4166"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float duration </td>
+          <td class="memname">qreal duration </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -540,7 +540,7 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the duration of the KeyFrameInterpolator path, expressed in seconds.</p>
-<p>Simply corresponds to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">lastTime()</a> - <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime()</a>. Returns 0.0 if the path has less than 2 keyFrames. See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a>. </p>
+<p>Simply corresponds to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">lastTime()</a> - <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime()</a>. Returns 0.0 if the path has less than 2 keyFrames. See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a>. </p>
 
 </div>
 </div>
@@ -564,17 +564,17 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>This signal is emitted when the interpolation reaches the first (when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed()</a> is negative) or the last keyFrame.</p>
-<p>When <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45">loopInterpolation()</a> is <code>true</code>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> is reset and the interpolation continues. It otherwise stops. </p>
+<p>This signal is emitted when the interpolation reaches the first (when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed()</a> is negative) or the last keyFrame.</p>
+<p>When <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45">loopInterpolation()</a> is <code>true</code>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> is reset and the interpolation continues. It otherwise stops. </p>
 
 </div>
 </div>
-<a class="anchor" id="a5335f8bedcb11c4e9cc06cbbab838477"></a>
+<a class="anchor" id="ad75cb46e1d9ab4458c563b20c77e25c0"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float firstTime </td>
+          <td class="memname">qreal firstTime </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -582,7 +582,7 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the time corresponding to the first keyFrame, expressed in seconds.</p>
-<p>Returns 0.0 if the path is empty. See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">lastTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980">duration()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a>. </p>
+<p>Returns 0.0 if the path is empty. See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">lastTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166">duration()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a>. </p>
 
 </div>
 </div>
@@ -632,7 +632,7 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ad5393783e1768b6d688a8c49ddea56ae"></a>
+<a class="anchor" id="aa661a38cfc0fe1a3ac5f1e63fdc4918a"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -642,7 +642,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="memname">void interpolateAtTime </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>time</em></td><td>)</td>
           <td></td>
         </tr>
@@ -653,8 +653,8 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Interpolate <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> at time <code>time</code> (expressed in seconds). <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> is set to <code>time</code> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> is set accordingly.</p>
-<p>If you simply want to change <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> but not the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> state, use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3">setInterpolationTime()</a> instead.</p>
+<p>Interpolate <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> at time <code>time</code> (expressed in seconds). <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> is set to <code>time</code> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> is set accordingly.</p>
+<p>If you simply want to change <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> but not the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> state, use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7">setInterpolationTime()</a> instead.</p>
 <p>Emits the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">interpolated()</a> signal and makes the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> emit the <a class="el" href="classqglviewer_1_1Frame.html#ab55c2a4f1732b90057fae4b6037399de">Frame::interpolated()</a> signal. </p>
 
 </div>
@@ -683,7 +683,7 @@ XML representation</h2></td></tr>
 <p>The emission of this signal triggers the synchronous emission of the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> <a class="el" href="classqglviewer_1_1Frame.html#ab55c2a4f1732b90057fae4b6037399de">Frame::interpolated()</a> signal, which may also be useful.</p>
 <p>This signal should especially be connected to your QGLViewer::update() slot, so that the display is updated after every update of the KeyFrameInterpolator <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a>: </p><div class="fragment"><div class="line">connect(myKeyFrameInterpolator, SIGNAL(<a class="code" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">interpolated</a>()), SLOT(update()));</div>
 </div><!-- fragment --><p> Use the <a class="el" href="classQGLViewer.html#a32d7a506084c50fd97a24f94d9ca4864">QGLViewer::QGLViewerPool()</a> to connect the signal to all the viewers.</p>
-<p>Note that the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">QGLViewer::camera()</a> <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">Camera::keyFrameInterpolator()</a> created using <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">QGLViewer::pathKey()</a> have their <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">interpolated()</a> signals autom [...]
+<p>Note that the <a class="el" href="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042">QGLViewer::camera()</a> <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">Camera::keyFrameInterpolator()</a> created using <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">QGLViewer::pathKey()</a> have their <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">interpolated()</a> signals autom [...]
 
 </div>
 </div>
@@ -717,16 +717,16 @@ XML representation</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the current interpolation period, expressed in milliseconds.</p>
 <p>The update of the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> state will be done by a timer at this period when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70">interpolationIsStarted()</a>.</p>
-<p>This period (multiplied by <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed()</a>) is added to the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> at each update, and the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> state is modified accordingly (see <a class="el" href="classqgl [...]
+<p>This period (multiplied by <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed()</a>) is added to the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> at each update, and the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> state is modified accordingly (see <a class="el" href="classqgl [...]
 
 </div>
 </div>
-<a class="anchor" id="a7e468c84c27d896e341563c83e102aad"></a>
+<a class="anchor" id="af28fcfef8565e889da536728c7b81393"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float interpolationSpeed </td>
+          <td class="memname">qreal interpolationSpeed </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -734,17 +734,17 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the current interpolation speed.</p>
-<p>Default value is 1.0, which means <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a> will be matched during the interpolation (provided that your main loop is fast enough).</p>
+<p>Default value is 1.0, which means <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a> will be matched during the interpolation (provided that your main loop is fast enough).</p>
 <p>A negative value will result in a reverse interpolation of the keyFrames. See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="a58326b7948e78c1d2861ca659492207a"></a>
+<a class="anchor" id="a9fe6b6595ce11b6eae4e6cf9d3a9d7c0"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float interpolationTime </td>
+          <td class="memname">qreal interpolationTime </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -752,7 +752,7 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the current interpolation time (in seconds) along the KeyFrameInterpolator path.</p>
-<p>This time is regularly updated when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70">interpolationIsStarted()</a>. Can be set directly with <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3">setInterpolationTime()</a> or <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae">interpolateAtTime()</a>. </p>
+<p>This time is regularly updated when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70">interpolationIsStarted()</a>. Can be set directly with <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7">setInterpolationTime()</a> or <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a">interpolateAtTime()</a>. </p>
 
 </div>
 </div>
@@ -770,17 +770,17 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> associated with the keyFrame at index <code>index</code>.</p>
-<p>See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a>. <code>index</code> has to be in the range 0..<a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273">numberOfKeyFrames()</a>-1.</p>
+<p>See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a>. <code>index</code> has to be in the range 0..<a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273">numberOfKeyFrames()</a>-1.</p>
 <dl class="section note"><dt>Note</dt><dd>If this keyFrame was defined using a pointer to a <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> (see addKeyFrame(const Frame* const)), the <em>current</em> pointed <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> state is retur [...]
 
 </div>
 </div>
-<a class="anchor" id="a976ec792d48ccd7e53b55bb91b49d473"></a>
+<a class="anchor" id="ab9e37b00f956270a5f76127f47390bbe"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float keyFrameTime </td>
+          <td class="memname">qreal keyFrameTime </td>
           <td>(</td>
           <td class="paramtype">int </td>
           <td class="paramname"><em>index</em></td><td>)</td>
@@ -793,12 +793,12 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a3e953e6c813baa461389c132c9509e30"></a>
+<a class="anchor" id="a18f3d03feb42cfc90779e39b118e3f7c"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float lastTime </td>
+          <td class="memname">qreal lastTime </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -806,7 +806,7 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the time corresponding to the last keyFrame, expressed in seconds.</p>
-<p>Returns 0.0 if the path is empty. See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980">duration()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">keyFrameTime()</a>. </p>
+<p>Returns 0.0 if the path is empty. See also <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166">duration()</a> and <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">keyFrameTime()</a>. </p>
 
 </div>
 </div>
@@ -823,8 +823,8 @@ XML representation</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns <code>true</code> when the interpolation is played in an infinite loop.</p>
-<p>When <code>false</code> (default), the interpolation stops when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> reaches <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime()</a> (with negative <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed()</a>) or <a class="el" href="classqglviewer_1 [...]
-<p><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> is otherwise reset to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime()</a> (+ <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> - <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">la [...]
+<p>When <code>false</code> (default), the interpolation stops when <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> reaches <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime()</a> (with negative <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed()</a>) or <a class="el" href="classqglviewer_1 [...]
+<p><a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> is otherwise reset to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime()</a> (+ <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> - <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">la [...]
 <p>In both cases, the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab4010a17bf77b9940b120ee8ed9a0271">endReached()</a> signal is emitted. </p>
 
 </div>
@@ -865,8 +865,8 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Stops the interpolation and resets <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> to the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime()</a>.</p>
-<p>If desired, call <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae">interpolateAtTime()</a> after this method to actually move the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">firstTime()</a>. </p>
+<p>Stops the interpolation and resets <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> to the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime()</a>.</p>
+<p>If desired, call <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a">interpolateAtTime()</a> after this method to actually move the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">firstTime()</a>. </p>
 
 </div>
 </div>
@@ -920,7 +920,7 @@ XML representation</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a3cc64e95e1b8dfda110bcf3d033ecf2d"></a>
+<a class="anchor" id="a045bc0124754973cec8b24eacabd851f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -930,7 +930,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="memname">void setInterpolationSpeed </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>speed</em></td><td>)</td>
           <td></td>
         </tr>
@@ -941,11 +941,11 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">interpolationSpeed()</a>. Negative or null values are allowed. </p>
+<p>Sets the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">interpolationSpeed()</a>. Negative or null values are allowed. </p>
 
 </div>
 </div>
-<a class="anchor" id="ab860af88ea46ecedb2a648157bb68dc3"></a>
+<a class="anchor" id="a59c9040c5ffe58920e9dbc521c1407c7"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -955,7 +955,7 @@ XML representation</h2></td></tr>
         <tr>
           <td class="memname">void setInterpolationTime </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>time</em></td><td>)</td>
           <td></td>
         </tr>
@@ -966,8 +966,8 @@ XML representation</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a>.</p>
-<dl class="section attention"><dt>Attention</dt><dd>The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> state is not affected by this method. Use this function to define the starting time of a future interpolation (see <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819">startInterpolation()</a>). Use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6 [...]
+<p>Sets the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a>.</p>
+<dl class="section attention"><dt>Attention</dt><dd>The <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a> state is not affected by this method. Use this function to define the starting time of a future interpolation (see <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819">startInterpolation()</a>). Use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a [...]
 
 </div>
 </div>
@@ -1020,8 +1020,8 @@ XML representation</h2></td></tr>
 <p>Starts the interpolation process.</p>
 <p>A timer is started with an <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> period that updates the <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f">frame()</a>'s position and orientation. <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70">interpolationIsStarted()</a> will return <code>true</code> until <a class=" [...]
 <p>If <code>period</code> is positive, it is set as the new <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a>. The previous <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">interpolationPeriod()</a> is used otherwise (default).</p>
-<p>If <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> is larger than <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">lastTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a> is reset to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477" [...]
-<p>Use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3">setInterpolationTime()</a> before calling this method to change the starting <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">interpolationTime()</a>.</p>
+<p>If <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> is larger than <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">lastTime()</a>, <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a> is reset to <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0" [...]
+<p>Use <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7">setInterpolationTime()</a> before calling this method to change the starting <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">interpolationTime()</a>.</p>
 <p>See the <a href="../examples/keyFrames.html">keyFrames example</a> for an illustration.</p>
 <p>You may also be interested in <a class="el" href="classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2">QGLViewer::animate()</a> and <a class="el" href="classQGLViewer.html#ad5344a5f702678f309fafa0c699b2cf3">QGLViewer::startAnimation()</a>.</p>
 <dl class="section attention"><dt>Attention</dt><dd>The keyFrames must be defined (see <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622">addKeyFrame()</a>) <em>before</em> you <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819">startInterpolation()</a>, or else the interpolation will naturally immediately stop. </dd></dl>
@@ -1079,7 +1079,7 @@ XML representation</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1LocalConstraint-members.html b/doc/refManual/classqglviewer_1_1LocalConstraint-members.html
index 849859b..53a1949 100644
--- a/doc/refManual/classqglviewer_1_1LocalConstraint-members.html
+++ b/doc/refManual/classqglviewer_1_1LocalConstraint-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1LocalConstraint.html b/doc/refManual/classqglviewer_1_1LocalConstraint.html
index eceb900..a2e8c36 100644
--- a/doc/refManual/classqglviewer_1_1LocalConstraint.html
+++ b/doc/refManual/classqglviewer_1_1LocalConstraint.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -253,7 +253,7 @@ Additional Inherited Members</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame-members.html b/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame-members.html
index bcfece5..0d7f288 100644
--- a/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame-members.html
+++ b/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -96,7 +96,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <p>This is the complete list of members for <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a>, including all inherited members.</p>
 <table class="directory">
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82">addInMouseGrabberPool</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">alignWithFrame</a>(const Frame *const frame, bool move=false, float threshold=0.0f)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">alignWithFrame</a>(const Frame *const frame, bool move=false, qreal threshold=0.0)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#abe537c0091ddf3c907ca0e32861d701d">checkIfGrabsMouse</a>(int x, int y, const Camera *const camera)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a23548e9ef41cf38913f6c642509a81ec">clearMouseGrabberPool</a>(bool autoDelete=false)</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
@@ -105,28 +105,28 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391">coordinatesOfIn</a>(const Vec &src, const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aff4f89e6418df47cf2b269cf23c76ed4">currentMouseAction</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a48e0e2dd26cd96418c8b889ceabe80f6">domElement</a>(const QString &name, QDomDocument &document) const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">flySpeed</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab71e6ee46f0c2593266f9a62d9c5e029">Frame</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7864fb955cec11fe78c3b2bb81230516">Frame</a>(const Frame &frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1">Frame</a>(const Vec &position, const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">getCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">getCoordinatesOfFrom</a>(const float src[3], float res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">getCoordinatesOfIn</a>(const float src[3], float res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">getInverseCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">getInverseTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">getLocalCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">getLocalInverseCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">getLocalInverseTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">getLocalTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">getCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">getCoordinatesOfFrom</a>(const qreal src[3], qreal res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">getCoordinatesOfIn</a>(const qreal src[3], qreal res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">getInverseCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">getInverseTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">getLocalCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">getLocalInverseCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">getLocalInverseTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">getLocalTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a15f0dc7596dc78437154302466ac3c0a">getMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">getOrientation</a>(double &q0, double &q1, double &q2, double &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">getPosition</a>(float &x, float &y, float &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">getRotation</a>(double &q0, double &q1, double &q2, double &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">getTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">getTransformOfFrom</a>(const float src[3], float res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">getTransformOfIn</a>(const float src[3], float res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">getTranslation</a>(float &x, float &y, float &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">getOrientation</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">getPosition</a>(qreal &x, qreal &y, qreal &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">getRotation</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">getTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">getTransformOfFrom</a>(const qreal src[3], qreal res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">getTransformOfIn</a>(const qreal src[3], qreal res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">getTranslation</a>(qreal &x, qreal &y, qreal &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a45358fae434b3912ce81577dc7cf4fc9">getWorldMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead">getWorldMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a4eb7e14d035ae255b77ac1711aef039e">grabsMouse</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
@@ -166,50 +166,50 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a4ac2261aafd5f48f2d90c989cdd69369">removeFromMouseGrabberPool</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate</a>(Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate</a>(const Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8">rotate</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad">rotate</a>(double &q0, double &q1, double &q2, double &q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff">rotate</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181">rotate</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca">rotateAroundPoint</a>(Quaternion &rotation, const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891">rotateAroundPoint</a>(const Quaternion &rotation, const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ae8a6d13c86c8d063d33a33a8db45ec85">rotatesAroundUpVector</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">sceneUpVector</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224">setConstraint</a>(Constraint *const constraint)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09">setFlySpeed</a>(float speed)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f">setFlySpeed</a>(qreal speed)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5408d08ab204157ec29f555b6813f9e4">setFromMatrix</a>(const GLdouble m[4][4])</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0c4d51f142f43235e30198e7b8abc626">setFromMatrix</a>(const GLdouble m[16])</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a9ecea0a9f8ce1b2d92bbd1dd6bdcd4f9">setGrabsMouse</a>(bool grabs)</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation</a>(const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6">setOrientation</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb">setOrientation</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">setOrientationWithConstraint</a>(Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad0d493c3e540ec42a480e03d249b5a56">setPivotPoint</a>(const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition</a>(const Vec &position)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083">setPosition</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e">setPosition</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087">setPositionAndOrientation</a>(const Vec &position, const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a">setPositionAndOrientationWithConstraint</a>(Vec &position, Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38">setPositionWithConstraint</a>(Vec &position)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8">setReferenceFrame</a>(const Frame *const refFrame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a1d1e56d55fdbd1906a230392e2f7eedb">setRotatesAroundUpVector</a>(bool constrained)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation</a>(const Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e">setRotation</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11">setRotationSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6">setRotation</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef">setRotationSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">setRotationWithConstraint</a>(Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a">setSceneUpVector</a>(const Vec &up)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9">setSpinningQuaternion</a>(const Quaternion &spinningQuaternion)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">setSpinningSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">setSpinningSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7">settingAsReferenceFrameWillCreateALoop</a>(const Frame *const frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation</a>(const Vec &translation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1">setTranslation</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8">setTranslation</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48">setTranslationAndRotation</a>(const Vec &translation, const Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db">setTranslationAndRotationWithConstraint</a>(Vec &translation, Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871">setTranslationSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20">setTranslationSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">setTranslationWithConstraint</a>(Vec &translation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">setWheelSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0">setZoomSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">setWheelSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed">setZoomSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#aa715ac66a29d06ce3e86e241ae322813">setZoomsOnPivotPoint</a>(bool enabled)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#af87828117d0582d0031f563933f97bfd">spin</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276">spinningQuaternion</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c">spun</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf">startSpinning</a>(int updateInterval)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9dc6e4b2c4c4a3ae195dfc39bb2ce8ac">stopSpinning</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
@@ -218,15 +218,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0">transformOfIn</a>(const Vec &src, const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a">translate</a>(Vec &t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate</a>(const Vec &t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290">translate</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d">translate</a>(float &x, float &y, float &z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5">translate</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11">translate</a>(qreal &x, qreal &y, qreal &z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36">wheelEvent</a>(QWheelEvent *const event, Camera *const camera)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a37d4da8cfd297273e7bb55538debaa3e">worldInverse</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141">worldMatrix</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">zoomSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">zoomSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad9e5f408288e0c02c64b712a8b2ce589">zoomsOnPivotPoint</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae0c994a30d9a018000fe8ad66ff0a86d">~Frame</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a5f187b4d7822ab9602aee6dc27e723a6">~ManipulatedCameraFrame</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html">ManipulatedCameraFrame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
@@ -235,7 +235,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame.html b/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame.html
index 6b01cd6..a1d6f87 100644
--- a/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame.html
+++ b/doc/refManual/classqglviewer_1_1ManipulatedCameraFrame.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -118,16 +118,16 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a9b1534a226c056993bc9ed594de9cc7e inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ad6d13eba8611869fe824da2dab500f50 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad6d13eba8611869fe824da2dab500f50">operator=</a> (const <a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame [...]
 <tr class="separator:ad6d13eba8611869fe824da2dab500f50 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4573c3414e63c10dec06a3064d37532f inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity</a> () const </td></tr>
-<tr class="separator:a4573c3414e63c10dec06a3064d37532f inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a28fd6b0ca560be97bb899e1a7e3c821a inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity</a> () const </td></tr>
-<tr class="separator:a28fd6b0ca560be97bb899e1a7e3c821a inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a1025480797d5dd046d6d717de59ffbca inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity</a> () const </td></tr>
-<tr class="separator:a1025480797d5dd046d6d717de59ffbca inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8dd27ae910bfa43026fc8657dff46d4d inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">zoomSensitivity</a> () const </td></tr>
-<tr class="separator:a8dd27ae910bfa43026fc8657dff46d4d inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad9e7fc4134c9733e8cfecf8bf80dbd44 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensitivity</a> () const </td></tr>
-<tr class="separator:ad9e7fc4134c9733e8cfecf8bf80dbd44 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7c2890e63e18a21646516125fe5f3735 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity</a> () const </td></tr>
+<tr class="separator:a7c2890e63e18a21646516125fe5f3735 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a9fd3f92f20a5aa3a1930d891a0b6c841 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity</a> () const </td></tr>
+<tr class="separator:a9fd3f92f20a5aa3a1930d891a0b6c841 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a756fe0c7a6cad46ab5fdd3c268ec2cd7 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity</a> () const </td></tr>
+<tr class="separator:a756fe0c7a6cad46ab5fdd3c268ec2cd7 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a726bf4f1e12571999d7573fe018f1d59 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">zoomSensitivity</a> () const </td></tr>
+<tr class="separator:a726bf4f1e12571999d7573fe018f1d59 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:af72fc88ca2addd06420528ea5de9d182 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensitivity</a> () const </td></tr>
+<tr class="separator:af72fc88ca2addd06420528ea5de9d182 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a975dfbf6b972b7128520b30a4ffe11dd inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a975dfbf6b972b7128520b30a4ffe11dd">isSpinning</a> () const </td></tr>
 <tr class="separator:a975dfbf6b972b7128520b30a4ffe11dd inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a7b8b14da64c84fed1cbdb8d98191d276 inherit pub_methods_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276">spinningQuaternion</a> () const </td></tr>
@@ -151,14 +151,14 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a2f649a1218291aa3776ce08d0a2879b1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a24f5da9b3f4bf4e71dfad7a74a932e52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>)</td></tr>
 <tr class="separator:a24f5da9b3f4bf4e71dfad7a74a932e52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aff7308b903966afc6c87b5cd766a9083 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083">setPosition</a> (float x, float y, float z)</td></tr>
-<tr class="separator:aff7308b903966afc6c87b5cd766a9083 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aeef87a7ad6aa43c19399347d49d2c27e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e">setPosition</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:aeef87a7ad6aa43c19399347d49d2c27e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5081403cb47f1324edae5278d5438a38 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38">setPositionWithConstraint</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>)</td></tr>
 <tr class="separator:a5081403cb47f1324edae5278d5438a38 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a6733704520780505759efdef38a68b8b inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation</a>)</ [...]
 <tr class="separator:a6733704520780505759efdef38a68b8b inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae3ac2bf6dcfe21252d40325789503ce6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6">setOrientation</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:ae3ac2bf6dcfe21252d40325789503ce6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a63727a742d16aec0d93a0469134a55bb inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb">setOrientation</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:a63727a742d16aec0d93a0469134a55bb inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a8b69106a268d78daf27d32854d455da4 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">setOrientationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientatio [...]
 <tr class="separator:a8b69106a268d78daf27d32854d455da4 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a47912d16be51eb85d68d3dcb4a4fb087 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087">setPositionAndOrientation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>, const < [...]
@@ -169,20 +169,20 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:abc38a05a597e07c9ff525122682adc50 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a691af39b54669fad8b4e73599de22094 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation</a> () const </td></tr>
 <tr class="separator:a691af39b54669fad8b4e73599de22094 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab3ca600424074ccaf5ee078c8d3149c3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">getPosition</a> (float &x, float &y, float &z) const </td></tr>
-<tr class="separator:ab3ca600424074ccaf5ee078c8d3149c3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac47c3b7fd6023734ba40249bea1fd253 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">getOrientation</a> (double &q0, double &q1, double &q2, double &q3) const </td></tr>
-<tr class="separator:ac47c3b7fd6023734ba40249bea1fd253 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8e2607c9b0e6d98e84cf3c9d467259b5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">getPosition</a> (qreal &x, qreal &y, qreal &z) const </td></tr>
+<tr class="separator:a8e2607c9b0e6d98e84cf3c9d467259b5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad3f291e22719a35e8f8a4f3d244bf088 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">getOrientation</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td></tr>
+<tr class="separator:ad3f291e22719a35e8f8a4f3d244bf088 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ae5495cd791858225ba7c85ce39329704 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>)</td></tr>
 <tr class="separator:ae5495cd791858225ba7c85ce39329704 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aeafb612e3ad0d6a81de91884eb4bdef1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1">setTranslation</a> (float x, float y, float z)</td></tr>
-<tr class="separator:aeafb612e3ad0d6a81de91884eb4bdef1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a033c48217e7dfccb3e88ae099e0f35c8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8">setTranslation</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:a033c48217e7dfccb3e88ae099e0f35c8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a7f3395d24d164a7af9a8b99e4e6bafc0 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">setTranslationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>)</td></tr>
 <tr class="separator:a7f3395d24d164a7af9a8b99e4e6bafc0 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a857aacdb88a574ec4a363335f6152a1e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>)</td></tr>
 <tr class="separator:a857aacdb88a574ec4a363335f6152a1e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a26c462ecae655fa82c4d2efa42f9cd2e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e">setRotation</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:a26c462ecae655fa82c4d2efa42f9cd2e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:afc95a5b7bbbb2e6d0df552a1df1b78b6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6">setRotation</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:afc95a5b7bbbb2e6d0df552a1df1b78b6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9d4ab1388820d002d44304c5463fbfbd inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">setRotationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>) [...]
 <tr class="separator:a9d4ab1388820d002d44304c5463fbfbd inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a0fbfd129a52b36b6753cc1589ff87a48 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48">setTranslationAndRotation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>, cons [...]
@@ -193,10 +193,10 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a388a5f38140104323aa51fc207fde642 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a19ee9243c60f412dfc4eac3dcf45a5a1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a> () const </td></tr>
 <tr class="separator:a19ee9243c60f412dfc4eac3dcf45a5a1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a39804059e5c4e694a6cb13b71347da97 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">getTranslation</a> (float &x, float &y, float &z) const </td></tr>
-<tr class="separator:a39804059e5c4e694a6cb13b71347da97 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a475a20f772ff87508b673a586fc50bbb inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">getRotation</a> (double &q0, double &q1, double &q2, double &q3) const </td></tr>
-<tr class="separator:a475a20f772ff87508b673a586fc50bbb inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a97dd37882acc09d7b5a9246dfd4a9ad1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">getTranslation</a> (qreal &x, qreal &y, qreal &z) const </td></tr>
+<tr class="separator:a97dd37882acc09d7b5a9246dfd4a9ad1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3778316610c7d32db8477ace730227c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">getRotation</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td></tr>
+<tr class="separator:a3778316610c7d32db8477ace730227c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9794b079db5f492e8804631d3d23baec inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec">referenceFrame</a> () const </td></tr>
 <tr class="separator:a9794b079db5f492e8804631d3d23baec inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:abca9e0c2e40957fffeee4a52139facd8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8">setReferenceFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const refFrame)</td></tr>
@@ -207,24 +207,24 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a4cb0cf5ff79e1acf0755befdaceb6f4a inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac774331eeae8d29acc94f5653b2f2c3b inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &t)</td></tr>
 <tr class="separator:ac774331eeae8d29acc94f5653b2f2c3b inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a9081ed23141a5980f028b21d58fa3290 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290">translate</a> (float x, float y, float z)</td></tr>
-<tr class="separator:a9081ed23141a5980f028b21d58fa3290 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a2ae644799a164d7519769ba393565c5d inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d">translate</a> (float &x, float &y, float &z)</td></tr>
-<tr class="separator:a2ae644799a164d7519769ba393565c5d inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa1abe660fa5c640c01a33d29dd7acca5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5">translate</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:aa1abe660fa5c640c01a33d29dd7acca5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a1148e82d06e6c4ad4a9baedc9893cd11 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11">translate</a> (qreal &x, qreal &y, qreal &z)</td></tr>
+<tr class="separator:a1148e82d06e6c4ad4a9baedc9893cd11 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a38dffd6ee0ad7e395b49082b2b94de33 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &q)</td></tr>
 <tr class="separator:a38dffd6ee0ad7e395b49082b2b94de33 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac754417fa609300f980fcba5405c9989 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &q)</td></tr>
 <tr class="separator:ac754417fa609300f980fcba5405c9989 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7fe03bbf807b109c1edb849193d03aa8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8">rotate</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:a7fe03bbf807b109c1edb849193d03aa8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab15e32161293dce94ae3df3bc3a7b0ad inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad">rotate</a> (double &q0, double &q1, double &q2, double &q3)</td></tr>
-<tr class="separator:ab15e32161293dce94ae3df3bc3a7b0ad inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae8e783d4aec3409b05fd414e3d30b8ff inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff">rotate</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:ae8e783d4aec3409b05fd414e3d30b8ff inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6d6d837252d4c1d036a08f2c50827181 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181">rotate</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3)</td></tr>
+<tr class="separator:a6d6d837252d4c1d036a08f2c50827181 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a85f48572c1298bc3192f111e8b587bca inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca">rotateAroundPoint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>, const < [...]
 <tr class="separator:a85f48572c1298bc3192f111e8b587bca inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5f87bae05096c99fb3b30cf5bb52c891 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891">rotateAroundPoint</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>, c [...]
 <tr class="separator:a5f87bae05096c99fb3b30cf5bb52c891 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7f069ac991d77d7d5887b9f890889e10 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">alignWithFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const frame, bool move=false, float threshold=0.0f)</td></tr>
-<tr class="separator:a7f069ac991d77d7d5887b9f890889e10 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:af5b704f2a19e1ebc3b646e4354724ccd inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">alignWithFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const frame, bool move=false, qreal threshold=0.0)</td></tr>
+<tr class="separator:af5b704f2a19e1ebc3b646e4354724ccd inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:af97ae9e790033879dfcb9837a7312255 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255">projectOnLine</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &origin, const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &direction)</td></tr>
 <tr class="separator:af97ae9e790033879dfcb9837a7312255 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac706b338b08d9d7b511fd84d0b6ecf96 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96">coordinatesOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src) const </td></tr>
@@ -239,18 +239,18 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a8c3c1e66b248a0f29e304e6c786b9391 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aadad46a46365f6977e4aac6dc18318ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce">coordinatesOfFrom</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src, const <a class="el" href="classqglviewer_1_1Frame.html">F [...]
 <tr class="separator:aadad46a46365f6977e4aac6dc18318ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3718dc9cc825c674c8da3576b1448764 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">getCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a3718dc9cc825c674c8da3576b1448764 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aede4243bfe48e6d870a2417bbfc711a8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">getInverseCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:aede4243bfe48e6d870a2417bbfc711a8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:abe456b2ee906b9def0d2ec0c949a9497 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">getLocalCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:abe456b2ee906b9def0d2ec0c949a9497 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:adbd3252d2089f077e23e78345b3723c2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">getLocalInverseCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:adbd3252d2089f077e23e78345b3723c2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af2748e8dd6a4edad38d195132a8c8b30 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">getCoordinatesOfIn</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
-<tr class="separator:af2748e8dd6a4edad38d195132a8c8b30 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a36a2d7b27ab27bcff37ab9cbfab20a17 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">getCoordinatesOfFrom</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
-<tr class="separator:a36a2d7b27ab27bcff37ab9cbfab20a17 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a01f92194a37542283173ddd9c4be30ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">getCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a01f92194a37542283173ddd9c4be30ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a5cff28c3db707b06cc2510b207b0d010 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">getInverseCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a5cff28c3db707b06cc2510b207b0d010 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a80027fe347d2c4a184d948a532ddfbf1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">getLocalCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a80027fe347d2c4a184d948a532ddfbf1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7514220133add8a16ec6b839e9e2d96a inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">getLocalInverseCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a7514220133add8a16ec6b839e9e2d96a inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a767a4c18a613077afd82ec4813c6f71b inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">getCoordinatesOfIn</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
+<tr class="separator:a767a4c18a613077afd82ec4813c6f71b inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa7f3dee34349894871a47007e5b2ea00 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">getCoordinatesOfFrom</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
+<tr class="separator:aa7f3dee34349894871a47007e5b2ea00 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a05a3e18419f02427366a95b1e299f12e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e">transformOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src) const </td></tr>
 <tr class="separator:a05a3e18419f02427366a95b1e299f12e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aba2c6c46c1825a81f09d22322b03d9b5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5">inverseTransformOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src) const </td></tr>
@@ -263,18 +263,18 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a01636f93c09d6fd9fca90cb671afdda0 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a3416ca5a53c1f2d932fca1906ec1c6c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7">transformOfFrom</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src, const <a class="el" href="classqglviewer_1_1Frame.html">Fra [...]
 <tr class="separator:a3416ca5a53c1f2d932fca1906ec1c6c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aac70b883f8e3635d88356cb08b1abae3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">getTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:aac70b883f8e3635d88356cb08b1abae3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6a2eb1467ca31f7db460a2d6b7166a07 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">getInverseTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a6a2eb1467ca31f7db460a2d6b7166a07 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6e4aeb1d5aafee31442cc3c82a6ee215 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">getLocalTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a6e4aeb1d5aafee31442cc3c82a6ee215 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a62b201feca5e0ebecc03a71b9566d97c inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">getLocalInverseTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a62b201feca5e0ebecc03a71b9566d97c inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7d36c3c2d4b004b3e5d296aa58541f9f inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">getTransformOfIn</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
-<tr class="separator:a7d36c3c2d4b004b3e5d296aa58541f9f inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4eed4b2770a62e5ebb32d3dcee642c52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">getTransformOfFrom</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
-<tr class="separator:a4eed4b2770a62e5ebb32d3dcee642c52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a09224521fa56b13fa92ea023b48ef493 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">getTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a09224521fa56b13fa92ea023b48ef493 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ac3e418af121c82f130d75c3d94f422f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">getInverseTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:ac3e418af121c82f130d75c3d94f422f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8d70454adf39301d5c6ad4281c51d6f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">getLocalTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a8d70454adf39301d5c6ad4281c51d6f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a456964b8cfaa1c5e64ef18199c763854 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">getLocalInverseTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a456964b8cfaa1c5e64ef18199c763854 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a2404f140d0a2754323c119592d267aca inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">getTransformOfIn</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
+<tr class="separator:a2404f140d0a2754323c119592d267aca inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6eff9a03091546b0982840ad60e8a2f1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">getTransformOfFrom</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
+<tr class="separator:a6eff9a03091546b0982840ad60e8a2f1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a0974dfe336ed84a20adb8c6cdf8dedd9 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Constraint.html">Constraint</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint</a> () const </td></tr>
 <tr class="separator:a0974dfe336ed84a20adb8c6cdf8dedd9 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:adffa44cd173714b29f2441848a39c224 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224">setConstraint</a> (<a class="el" href="classqglviewer_1_1Constraint.html">Constraint</a> *const <a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint</a>)</td></tr>
@@ -335,12 +335,12 @@ Camera manipulation</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Fly parameters</h2></td></tr>
-<tr class="memitem:ac1758b72dab0895b9340fa833e62b802"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">flySpeed</a> () const </td></tr>
-<tr class="separator:ac1758b72dab0895b9340fa833e62b802"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a906c1998f29453838417d8ce80cf3ebe"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed</a> () const </td></tr>
+<tr class="separator:a906c1998f29453838417d8ce80cf3ebe"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ad6cd85c2c1378cf79c0fcb2789021b2b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">sceneUpVector</a> () const </td></tr>
 <tr class="separator:ad6cd85c2c1378cf79c0fcb2789021b2b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a02765efeaae1ef24f9d899f0d1d9ca09"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09">setFlySpeed</a> (float speed)</td></tr>
-<tr class="separator:a02765efeaae1ef24f9d899f0d1d9ca09"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7e90b8a66d0e7f25dbf7778f8a80650f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f">setFlySpeed</a> (qreal speed)</td></tr>
+<tr class="separator:a7e90b8a66d0e7f25dbf7778f8a80650f"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:af5a6d06d2ee74cc7fb365ed15f29132a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a">setSceneUpVector</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &up)</td></tr>
 <tr class="separator:af5a6d06d2ee74cc7fb365ed15f29132a"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -368,16 +368,16 @@ XML representation</h2></td></tr>
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
 Additional Inherited Members</h2></td></tr>
 <tr class="inherit_header pub_slots_classqglviewer_1_1ManipulatedFrame"><td colspan="2" onclick="javascript:toggleInherit('pub_slots_classqglviewer_1_1ManipulatedFrame')"><img src="closed.png" alt="-"/> Public Slots inherited from <a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td></tr>
-<tr class="memitem:a239ba71eaf212e169fe31918ed2d9c11 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11">setRotationSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:a239ba71eaf212e169fe31918ed2d9c11 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac0cdf6be7c1443e2e984012490569871 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871">setTranslationSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:ac0cdf6be7c1443e2e984012490569871 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aa319d217b34f0a861e30d90b78a5c39b inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">setSpinningSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:aa319d217b34f0a861e30d90b78a5c39b inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:afd6cb097279239492a3401893d317499 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">setWheelSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:afd6cb097279239492a3401893d317499 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a534fd19189851c5615da58621dfd32b0 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0">setZoomSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:a534fd19189851c5615da58621dfd32b0 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ac4124167e4ec2a468c5bfe15ae2235ef inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef">setRotationSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:ac4124167e4ec2a468c5bfe15ae2235ef inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae5939728e6d9883ac4854c29cf380a20 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20">setTranslationSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:ae5939728e6d9883ac4854c29cf380a20 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a96662e9b865bc8b689a5a49e6fc2ab02 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">setSpinningSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:a96662e9b865bc8b689a5a49e6fc2ab02 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ac55cd5aa877eb32543e90eb6236ccd5f inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">setWheelSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:ac55cd5aa877eb32543e90eb6236ccd5f inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a27e3095dda06896f7f121bcd242f64ed inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed">setZoomSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:a27e3095dda06896f7f121bcd242f64ed inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aaa23ed0375ee472156f439eaee070ec9 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9">setSpinningQuaternion</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84f [...]
 <tr class="separator:aaa23ed0375ee472156f439eaee070ec9 inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9942b6eab3fb197805f7af7e0edfdccf inherit pub_slots_classqglviewer_1_1ManipulatedFrame"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf">startSpinning</a> (int updateInterval)</td></tr>
@@ -419,7 +419,7 @@ Additional Inherited Members</h2></td></tr>
 <div class="textblock"><p>The ManipulatedCameraFrame class represents a <a class="el" href="classqglviewer_1_1ManipulatedFrame.html" title="A ManipulatedFrame is a Frame that can be rotated and translated using the mouse. ...">ManipulatedFrame</a> with <a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">Camera</a> specific mouse bindings. </p>
 <p>A ManipulatedCameraFrame is a specialization of a <a class="el" href="classqglviewer_1_1ManipulatedFrame.html" title="A ManipulatedFrame is a Frame that can be rotated and translated using the mouse. ...">ManipulatedFrame</a>, designed to be set as the <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">Camera::frame()</a>. Mouse motions are basically interpreted in a negated way: when the mouse goes to the right, the <a class="el" href="classqglviewer [...]
 <p>A ManipulatedCameraFrame rotates around its <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa">pivotPoint()</a>, which corresponds to the associated <a class="el" href="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa">Camera::pivotPoint()</a>.</p>
-<p>A ManipulatedCameraFrame can also "fly" in the scene. It basically moves forward, and turns according to the mouse motion. See <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">flySpeed()</a>, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">sceneUpVector()</a> and the <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a99906f0ddded6cfdab57271cd33e308c">MOVE_FOR [...]
+<p>A ManipulatedCameraFrame can also "fly" in the scene. It basically moves forward, and turns according to the mouse motion. See <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed()</a>, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">sceneUpVector()</a> and the <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a99906f0ddded6cfdab57271cd33e308c">MOVE_FOR [...]
 <p>See the <a href="../mouse.html">mouse page</a> for a description of the possible actions that can be performed using the mouse and their bindings. </p>
 </div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
 <a class="anchor" id="a8eb72b24950cc4c47c35c4fefc3dfa14"></a>
@@ -435,7 +435,7 @@ Additional Inherited Members</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Default constructor.</p>
-<p><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">flySpeed()</a> is set to 0.0 and <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">sceneUpVector()</a> is (0,1,0). The <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa">pivotPoint()</a> is set to (0,0,0).</p>
+<p><a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed()</a> is set to 0.0 and <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">sceneUpVector()</a> is (0,1,0). The <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa">pivotPoint()</a> is set to (0,0,0).</p>
 <dl class="section attention"><dt>Attention</dt><dd>Created object is <a class="el" href="classqglviewer_1_1MouseGrabber.html#a4ac2261aafd5f48f2d90c989cdd69369">removeFromMouseGrabberPool()</a>. </dd></dl>
 
 </div>
@@ -523,12 +523,12 @@ Additional Inherited Members</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ac1758b72dab0895b9340fa833e62b802"></a>
+<a class="anchor" id="a906c1998f29453838417d8ce80cf3ebe"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float flySpeed </td>
+          <td class="memname">qreal flySpeed </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -537,7 +537,7 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the fly speed, expressed in OpenGL units.</p>
 <p>It corresponds to the incremental displacement that is periodically applied to the ManipulatedCameraFrame position when a <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a99906f0ddded6cfdab57271cd33e308c">MOVE_FORWARD</a> or <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875ab3313fc5887b62fd14b36f1d67903e08">MOVE_BACKWARD</a> <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875">QGLViewer::MouseAction</a> is proceeded.</p>
-<dl class="section attention"><dt>Attention</dt><dd>When the ManipulatedCameraFrame is set as the <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">Camera::frame()</a>, this value is set according to the <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer::sceneRadius()</a> by <a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">QGLViewer::setSceneRadius()</a>. </dd></dl>
+<dl class="section attention"><dt>Attention</dt><dd>When the ManipulatedCameraFrame is set as the <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">Camera::frame()</a>, this value is set according to the <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer::sceneRadius()</a> by <a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">QGLViewer::setSceneRadius()</a>. </dd></dl>
 
 </div>
 </div>
@@ -715,7 +715,7 @@ Additional Inherited Members</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a02765efeaae1ef24f9d899f0d1d9ca09"></a>
+<a class="anchor" id="a7e90b8a66d0e7f25dbf7778f8a80650f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -725,7 +725,7 @@ Additional Inherited Members</h2></td></tr>
         <tr>
           <td class="memname">void setFlySpeed </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>speed</em></td><td>)</td>
           <td></td>
         </tr>
@@ -736,8 +736,8 @@ Additional Inherited Members</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Sets the <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">flySpeed()</a>, defined in OpenGL units.</p>
-<p>Default value is 0.0, but it is modified according to the <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer::sceneRadius()</a> when the ManipulatedCameraFrame is set as the <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">Camera::frame()</a>. </p>
+<p>Sets the <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">flySpeed()</a>, defined in OpenGL units.</p>
+<p>Default value is 0.0, but it is modified according to the <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer::sceneRadius()</a> when the ManipulatedCameraFrame is set as the <a class="el" href="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75">Camera::frame()</a>. </p>
 
 </div>
 </div>
@@ -877,7 +877,7 @@ Additional Inherited Members</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>This is an overload of <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36">ManipulatedFrame::wheelEvent()</a>.</p>
-<p>The wheel behavior depends on the wheel binded action. Current possible actions are <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a>, <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a99906f0ddded6cfdab57271cd33e308c">MOVE_FORWARD</a>, <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875ab3313fc5887b62fd14b36f1d67903e08">MOVE_BACKWARD</a>. <a class="el" href="classQGLViewer [...]
+<p>The wheel behavior depends on the wheel binded action. Current possible actions are <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a>, <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a99906f0ddded6cfdab57271cd33e308c">MOVE_FORWARD</a>, <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875ab3313fc5887b62fd14b36f1d67903e08">MOVE_BACKWARD</a>. <a class="el" href="classQGLViewer [...]
 
 <p>Reimplemented from <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36">ManipulatedFrame</a>.</p>
 
@@ -904,7 +904,7 @@ Additional Inherited Members</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1ManipulatedFrame-members.html b/doc/refManual/classqglviewer_1_1ManipulatedFrame-members.html
index 65d4f3e..9df6f0a 100644
--- a/doc/refManual/classqglviewer_1_1ManipulatedFrame-members.html
+++ b/doc/refManual/classqglviewer_1_1ManipulatedFrame-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -96,7 +96,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <p>This is the complete list of members for <a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a>, including all inherited members.</p>
 <table class="directory">
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82">addInMouseGrabberPool</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">alignWithFrame</a>(const Frame *const frame, bool move=false, float threshold=0.0f)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">alignWithFrame</a>(const Frame *const frame, bool move=false, qreal threshold=0.0)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#abe537c0091ddf3c907ca0e32861d701d">checkIfGrabsMouse</a>(int x, int y, const Camera *const camera)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a23548e9ef41cf38913f6c642509a81ec">clearMouseGrabberPool</a>(bool autoDelete=false)</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
@@ -108,24 +108,24 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab71e6ee46f0c2593266f9a62d9c5e029">Frame</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7864fb955cec11fe78c3b2bb81230516">Frame</a>(const Frame &frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1">Frame</a>(const Vec &position, const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">getCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">getCoordinatesOfFrom</a>(const float src[3], float res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">getCoordinatesOfIn</a>(const float src[3], float res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">getInverseCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">getInverseTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">getLocalCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">getLocalInverseCoordinatesOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">getLocalInverseTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">getLocalTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">getCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">getCoordinatesOfFrom</a>(const qreal src[3], qreal res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">getCoordinatesOfIn</a>(const qreal src[3], qreal res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">getInverseCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">getInverseTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">getLocalCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">getLocalInverseCoordinatesOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">getLocalInverseTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">getLocalTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a15f0dc7596dc78437154302466ac3c0a">getMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">getOrientation</a>(double &q0, double &q1, double &q2, double &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">getPosition</a>(float &x, float &y, float &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">getRotation</a>(double &q0, double &q1, double &q2, double &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">getTransformOf</a>(const float src[3], float res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">getTransformOfFrom</a>(const float src[3], float res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">getTransformOfIn</a>(const float src[3], float res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">getTranslation</a>(float &x, float &y, float &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">getOrientation</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">getPosition</a>(qreal &x, qreal &y, qreal &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">getRotation</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">getTransformOf</a>(const qreal src[3], qreal res[3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">getTransformOfFrom</a>(const qreal src[3], qreal res[3], const Frame *const from) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">getTransformOfIn</a>(const qreal src[3], qreal res[3], const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">getTranslation</a>(qreal &x, qreal &y, qreal &z) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a45358fae434b3912ce81577dc7cf4fc9">getWorldMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead">getWorldMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a4eb7e14d035ae255b77ac1711aef039e">grabsMouse</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
@@ -161,43 +161,43 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a4ac2261aafd5f48f2d90c989cdd69369">removeFromMouseGrabberPool</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate</a>(Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate</a>(const Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8">rotate</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad">rotate</a>(double &q0, double &q1, double &q2, double &q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff">rotate</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181">rotate</a>(qreal &q0, qreal &q1, qreal &q2, qreal &q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca">rotateAroundPoint</a>(Quaternion &rotation, const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891">rotateAroundPoint</a>(const Quaternion &rotation, const Vec &point)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224">setConstraint</a>(Constraint *const constraint)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5408d08ab204157ec29f555b6813f9e4">setFromMatrix</a>(const GLdouble m[4][4])</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0c4d51f142f43235e30198e7b8abc626">setFromMatrix</a>(const GLdouble m[16])</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#a9ecea0a9f8ce1b2d92bbd1dd6bdcd4f9">setGrabsMouse</a>(bool grabs)</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation</a>(const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6">setOrientation</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb">setOrientation</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">setOrientationWithConstraint</a>(Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition</a>(const Vec &position)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083">setPosition</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e">setPosition</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087">setPositionAndOrientation</a>(const Vec &position, const Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a">setPositionAndOrientationWithConstraint</a>(Vec &position, Quaternion &orientation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38">setPositionWithConstraint</a>(Vec &position)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8">setReferenceFrame</a>(const Frame *const refFrame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation</a>(const Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e">setRotation</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11">setRotationSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6">setRotation</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef">setRotationSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">setRotationWithConstraint</a>(Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9">setSpinningQuaternion</a>(const Quaternion &spinningQuaternion)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">setSpinningSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">setSpinningSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7">settingAsReferenceFrameWillCreateALoop</a>(const Frame *const frame)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation</a>(const Vec &translation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1">setTranslation</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8">setTranslation</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48">setTranslationAndRotation</a>(const Vec &translation, const Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db">setTranslationAndRotationWithConstraint</a>(Vec &translation, Quaternion &rotation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871">setTranslationSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20">setTranslationSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">setTranslationWithConstraint</a>(Vec &translation)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">setWheelSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0">setZoomSensitivity</a>(float sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">setWheelSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed">setZoomSensitivity</a>(qreal sensitivity)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">slot</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd">spin</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276">spinningQuaternion</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c">spun</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">signal</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf">startSpinning</a>(int updateInterval)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9dc6e4b2c4c4a3ae195dfc39bb2ce8ac">stopSpinning</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">virtual</span><span class="mlabel">slot</span></td></tr>
@@ -206,22 +206,22 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0">transformOfIn</a>(const Vec &src, const Frame *const in) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a">translate</a>(Vec &t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate</a>(const Vec &t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290">translate</a>(float x, float y, float z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d">translate</a>(float &x, float &y, float &z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5">translate</a>(qreal x, qreal y, qreal z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11">translate</a>(qreal &x, qreal &y, qreal &z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36">wheelEvent</a>(QWheelEvent *const event, Camera *const camera)</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a37d4da8cfd297273e7bb55538debaa3e">worldInverse</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141">worldMatrix</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">zoomSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">zoomSensitivity</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html#ae0c994a30d9a018000fe8ad66ff0a86d">~Frame</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Frame.html">Frame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae2ffc5f93122c6628e80dc254977c4cf">~ManipulatedFrame</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html">ManipulatedFrame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html#aacf14b5ce34121bce9fe5b75c54d666e">~MouseGrabber</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1MouseGrabber.html">MouseGrabber</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1ManipulatedFrame.html b/doc/refManual/classqglviewer_1_1ManipulatedFrame.html
index 7b7d8e7..fb6c5e4 100644
--- a/doc/refManual/classqglviewer_1_1ManipulatedFrame.html
+++ b/doc/refManual/classqglviewer_1_1ManipulatedFrame.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -135,14 +135,14 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a2f649a1218291aa3776ce08d0a2879b1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a24f5da9b3f4bf4e71dfad7a74a932e52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52">setPosition</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>)</td></tr>
 <tr class="separator:a24f5da9b3f4bf4e71dfad7a74a932e52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aff7308b903966afc6c87b5cd766a9083 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083">setPosition</a> (float x, float y, float z)</td></tr>
-<tr class="separator:aff7308b903966afc6c87b5cd766a9083 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aeef87a7ad6aa43c19399347d49d2c27e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e">setPosition</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:aeef87a7ad6aa43c19399347d49d2c27e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5081403cb47f1324edae5278d5438a38 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38">setPositionWithConstraint</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>)</td></tr>
 <tr class="separator:a5081403cb47f1324edae5278d5438a38 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a6733704520780505759efdef38a68b8b inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b">setOrientation</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation</a>)</ [...]
 <tr class="separator:a6733704520780505759efdef38a68b8b inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae3ac2bf6dcfe21252d40325789503ce6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6">setOrientation</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:ae3ac2bf6dcfe21252d40325789503ce6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a63727a742d16aec0d93a0469134a55bb inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb">setOrientation</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:a63727a742d16aec0d93a0469134a55bb inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a8b69106a268d78daf27d32854d455da4 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">setOrientationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientatio [...]
 <tr class="separator:a8b69106a268d78daf27d32854d455da4 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a47912d16be51eb85d68d3dcb4a4fb087 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087">setPositionAndOrientation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50">position</a>, const < [...]
@@ -153,20 +153,20 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:abc38a05a597e07c9ff525122682adc50 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a691af39b54669fad8b4e73599de22094 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094">orientation</a> () const </td></tr>
 <tr class="separator:a691af39b54669fad8b4e73599de22094 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab3ca600424074ccaf5ee078c8d3149c3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">getPosition</a> (float &x, float &y, float &z) const </td></tr>
-<tr class="separator:ab3ca600424074ccaf5ee078c8d3149c3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac47c3b7fd6023734ba40249bea1fd253 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">getOrientation</a> (double &q0, double &q1, double &q2, double &q3) const </td></tr>
-<tr class="separator:ac47c3b7fd6023734ba40249bea1fd253 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8e2607c9b0e6d98e84cf3c9d467259b5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">getPosition</a> (qreal &x, qreal &y, qreal &z) const </td></tr>
+<tr class="separator:a8e2607c9b0e6d98e84cf3c9d467259b5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad3f291e22719a35e8f8a4f3d244bf088 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">getOrientation</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td></tr>
+<tr class="separator:ad3f291e22719a35e8f8a4f3d244bf088 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ae5495cd791858225ba7c85ce39329704 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704">setTranslation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>)</td></tr>
 <tr class="separator:ae5495cd791858225ba7c85ce39329704 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aeafb612e3ad0d6a81de91884eb4bdef1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1">setTranslation</a> (float x, float y, float z)</td></tr>
-<tr class="separator:aeafb612e3ad0d6a81de91884eb4bdef1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a033c48217e7dfccb3e88ae099e0f35c8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8">setTranslation</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:a033c48217e7dfccb3e88ae099e0f35c8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a7f3395d24d164a7af9a8b99e4e6bafc0 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">setTranslationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>)</td></tr>
 <tr class="separator:a7f3395d24d164a7af9a8b99e4e6bafc0 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a857aacdb88a574ec4a363335f6152a1e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e">setRotation</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>)</td></tr>
 <tr class="separator:a857aacdb88a574ec4a363335f6152a1e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a26c462ecae655fa82c4d2efa42f9cd2e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e">setRotation</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:a26c462ecae655fa82c4d2efa42f9cd2e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:afc95a5b7bbbb2e6d0df552a1df1b78b6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6">setRotation</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:afc95a5b7bbbb2e6d0df552a1df1b78b6 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9d4ab1388820d002d44304c5463fbfbd inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">setRotationWithConstraint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>) [...]
 <tr class="separator:a9d4ab1388820d002d44304c5463fbfbd inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a0fbfd129a52b36b6753cc1589ff87a48 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48">setTranslationAndRotation</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">translation</a>, cons [...]
@@ -177,10 +177,10 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a388a5f38140104323aa51fc207fde642 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a19ee9243c60f412dfc4eac3dcf45a5a1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a> () const </td></tr>
 <tr class="separator:a19ee9243c60f412dfc4eac3dcf45a5a1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a39804059e5c4e694a6cb13b71347da97 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">getTranslation</a> (float &x, float &y, float &z) const </td></tr>
-<tr class="separator:a39804059e5c4e694a6cb13b71347da97 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a475a20f772ff87508b673a586fc50bbb inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">getRotation</a> (double &q0, double &q1, double &q2, double &q3) const </td></tr>
-<tr class="separator:a475a20f772ff87508b673a586fc50bbb inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a97dd37882acc09d7b5a9246dfd4a9ad1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">getTranslation</a> (qreal &x, qreal &y, qreal &z) const </td></tr>
+<tr class="separator:a97dd37882acc09d7b5a9246dfd4a9ad1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a3778316610c7d32db8477ace730227c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">getRotation</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3) const </td></tr>
+<tr class="separator:a3778316610c7d32db8477ace730227c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9794b079db5f492e8804631d3d23baec inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec">referenceFrame</a> () const </td></tr>
 <tr class="separator:a9794b079db5f492e8804631d3d23baec inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:abca9e0c2e40957fffeee4a52139facd8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8">setReferenceFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const refFrame)</td></tr>
@@ -191,24 +191,24 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a4cb0cf5ff79e1acf0755befdaceb6f4a inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac774331eeae8d29acc94f5653b2f2c3b inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b">translate</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &t)</td></tr>
 <tr class="separator:ac774331eeae8d29acc94f5653b2f2c3b inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a9081ed23141a5980f028b21d58fa3290 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290">translate</a> (float x, float y, float z)</td></tr>
-<tr class="separator:a9081ed23141a5980f028b21d58fa3290 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a2ae644799a164d7519769ba393565c5d inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d">translate</a> (float &x, float &y, float &z)</td></tr>
-<tr class="separator:a2ae644799a164d7519769ba393565c5d inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa1abe660fa5c640c01a33d29dd7acca5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5">translate</a> (qreal x, qreal y, qreal z)</td></tr>
+<tr class="separator:aa1abe660fa5c640c01a33d29dd7acca5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a1148e82d06e6c4ad4a9baedc9893cd11 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11">translate</a> (qreal &x, qreal &y, qreal &z)</td></tr>
+<tr class="separator:a1148e82d06e6c4ad4a9baedc9893cd11 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a38dffd6ee0ad7e395b49082b2b94de33 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33">rotate</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &q)</td></tr>
 <tr class="separator:a38dffd6ee0ad7e395b49082b2b94de33 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac754417fa609300f980fcba5405c9989 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989">rotate</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &q)</td></tr>
 <tr class="separator:ac754417fa609300f980fcba5405c9989 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7fe03bbf807b109c1edb849193d03aa8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8">rotate</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:a7fe03bbf807b109c1edb849193d03aa8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab15e32161293dce94ae3df3bc3a7b0ad inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad">rotate</a> (double &q0, double &q1, double &q2, double &q3)</td></tr>
-<tr class="separator:ab15e32161293dce94ae3df3bc3a7b0ad inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae8e783d4aec3409b05fd414e3d30b8ff inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff">rotate</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:ae8e783d4aec3409b05fd414e3d30b8ff inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6d6d837252d4c1d036a08f2c50827181 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181">rotate</a> (qreal &q0, qreal &q1, qreal &q2, qreal &q3)</td></tr>
+<tr class="separator:a6d6d837252d4c1d036a08f2c50827181 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a85f48572c1298bc3192f111e8b587bca inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca">rotateAroundPoint</a> (<a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>, const < [...]
 <tr class="separator:a85f48572c1298bc3192f111e8b587bca inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5f87bae05096c99fb3b30cf5bb52c891 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891">rotateAroundPoint</a> (const <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a> &<a class="el" href="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1">rotation</a>, c [...]
 <tr class="separator:a5f87bae05096c99fb3b30cf5bb52c891 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7f069ac991d77d7d5887b9f890889e10 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">alignWithFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const frame, bool move=false, float threshold=0.0f)</td></tr>
-<tr class="separator:a7f069ac991d77d7d5887b9f890889e10 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:af5b704f2a19e1ebc3b646e4354724ccd inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">alignWithFrame</a> (const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const frame, bool move=false, qreal threshold=0.0)</td></tr>
+<tr class="separator:af5b704f2a19e1ebc3b646e4354724ccd inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:af97ae9e790033879dfcb9837a7312255 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255">projectOnLine</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &origin, const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &direction)</td></tr>
 <tr class="separator:af97ae9e790033879dfcb9837a7312255 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ac706b338b08d9d7b511fd84d0b6ecf96 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96">coordinatesOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src) const </td></tr>
@@ -223,18 +223,18 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a8c3c1e66b248a0f29e304e6c786b9391 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aadad46a46365f6977e4aac6dc18318ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce">coordinatesOfFrom</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src, const <a class="el" href="classqglviewer_1_1Frame.html">F [...]
 <tr class="separator:aadad46a46365f6977e4aac6dc18318ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3718dc9cc825c674c8da3576b1448764 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">getCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a3718dc9cc825c674c8da3576b1448764 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aede4243bfe48e6d870a2417bbfc711a8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">getInverseCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:aede4243bfe48e6d870a2417bbfc711a8 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:abe456b2ee906b9def0d2ec0c949a9497 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">getLocalCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:abe456b2ee906b9def0d2ec0c949a9497 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:adbd3252d2089f077e23e78345b3723c2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">getLocalInverseCoordinatesOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:adbd3252d2089f077e23e78345b3723c2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af2748e8dd6a4edad38d195132a8c8b30 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">getCoordinatesOfIn</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
-<tr class="separator:af2748e8dd6a4edad38d195132a8c8b30 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a36a2d7b27ab27bcff37ab9cbfab20a17 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">getCoordinatesOfFrom</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
-<tr class="separator:a36a2d7b27ab27bcff37ab9cbfab20a17 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a01f92194a37542283173ddd9c4be30ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">getCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a01f92194a37542283173ddd9c4be30ce inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a5cff28c3db707b06cc2510b207b0d010 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">getInverseCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a5cff28c3db707b06cc2510b207b0d010 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a80027fe347d2c4a184d948a532ddfbf1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">getLocalCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a80027fe347d2c4a184d948a532ddfbf1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7514220133add8a16ec6b839e9e2d96a inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">getLocalInverseCoordinatesOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a7514220133add8a16ec6b839e9e2d96a inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a767a4c18a613077afd82ec4813c6f71b inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">getCoordinatesOfIn</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
+<tr class="separator:a767a4c18a613077afd82ec4813c6f71b inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa7f3dee34349894871a47007e5b2ea00 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">getCoordinatesOfFrom</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
+<tr class="separator:aa7f3dee34349894871a47007e5b2ea00 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a05a3e18419f02427366a95b1e299f12e inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e">transformOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src) const </td></tr>
 <tr class="separator:a05a3e18419f02427366a95b1e299f12e inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aba2c6c46c1825a81f09d22322b03d9b5 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5">inverseTransformOf</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src) const </td></tr>
@@ -247,18 +247,18 @@ Public Member Functions</h2></td></tr>
 <tr class="separator:a01636f93c09d6fd9fca90cb671afdda0 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a3416ca5a53c1f2d932fca1906ec1c6c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7">transformOfFrom</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &src, const <a class="el" href="classqglviewer_1_1Frame.html">Fra [...]
 <tr class="separator:a3416ca5a53c1f2d932fca1906ec1c6c7 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aac70b883f8e3635d88356cb08b1abae3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">getTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:aac70b883f8e3635d88356cb08b1abae3 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6a2eb1467ca31f7db460a2d6b7166a07 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">getInverseTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a6a2eb1467ca31f7db460a2d6b7166a07 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a6e4aeb1d5aafee31442cc3c82a6ee215 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">getLocalTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a6e4aeb1d5aafee31442cc3c82a6ee215 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a62b201feca5e0ebecc03a71b9566d97c inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">getLocalInverseTransformOf</a> (const float src[3], float res[3]) const </td></tr>
-<tr class="separator:a62b201feca5e0ebecc03a71b9566d97c inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a7d36c3c2d4b004b3e5d296aa58541f9f inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">getTransformOfIn</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
-<tr class="separator:a7d36c3c2d4b004b3e5d296aa58541f9f inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4eed4b2770a62e5ebb32d3dcee642c52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">getTransformOfFrom</a> (const float src[3], float res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
-<tr class="separator:a4eed4b2770a62e5ebb32d3dcee642c52 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a09224521fa56b13fa92ea023b48ef493 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">getTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a09224521fa56b13fa92ea023b48ef493 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ac3e418af121c82f130d75c3d94f422f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">getInverseTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:ac3e418af121c82f130d75c3d94f422f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a8d70454adf39301d5c6ad4281c51d6f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">getLocalTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a8d70454adf39301d5c6ad4281c51d6f2 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a456964b8cfaa1c5e64ef18199c763854 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">getLocalInverseTransformOf</a> (const qreal src[3], qreal res[3]) const </td></tr>
+<tr class="separator:a456964b8cfaa1c5e64ef18199c763854 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a2404f140d0a2754323c119592d267aca inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">getTransformOfIn</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const in) const </td></tr>
+<tr class="separator:a2404f140d0a2754323c119592d267aca inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6eff9a03091546b0982840ad60e8a2f1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">getTransformOfFrom</a> (const qreal src[3], qreal res[3], const <a class="el" href="classqglviewer_1_1Frame.html">Frame</a> *const from) const </td></tr>
+<tr class="separator:a6eff9a03091546b0982840ad60e8a2f1 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a0974dfe336ed84a20adb8c6cdf8dedd9 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Constraint.html">Constraint</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint</a> () const </td></tr>
 <tr class="separator:a0974dfe336ed84a20adb8c6cdf8dedd9 inherit pub_methods_classqglviewer_1_1Frame"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:adffa44cd173714b29f2441848a39c224 inherit pub_methods_classqglviewer_1_1Frame"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224">setConstraint</a> (<a class="el" href="classqglviewer_1_1Constraint.html">Constraint</a> *const <a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint</a>)</td></tr>
@@ -301,26 +301,26 @@ Public Member Functions</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Manipulation sensitivity</h2></td></tr>
-<tr class="memitem:a4573c3414e63c10dec06a3064d37532f"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity</a> () const </td></tr>
-<tr class="separator:a4573c3414e63c10dec06a3064d37532f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a28fd6b0ca560be97bb899e1a7e3c821a"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity</a> () const </td></tr>
-<tr class="separator:a28fd6b0ca560be97bb899e1a7e3c821a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a1025480797d5dd046d6d717de59ffbca"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity</a> () const </td></tr>
-<tr class="separator:a1025480797d5dd046d6d717de59ffbca"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a8dd27ae910bfa43026fc8657dff46d4d"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">zoomSensitivity</a> () const </td></tr>
-<tr class="separator:a8dd27ae910bfa43026fc8657dff46d4d"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad9e7fc4134c9733e8cfecf8bf80dbd44"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensitivity</a> () const </td></tr>
-<tr class="separator:ad9e7fc4134c9733e8cfecf8bf80dbd44"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a239ba71eaf212e169fe31918ed2d9c11"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11">setRotationSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:a239ba71eaf212e169fe31918ed2d9c11"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ac0cdf6be7c1443e2e984012490569871"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871">setTranslationSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:ac0cdf6be7c1443e2e984012490569871"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aa319d217b34f0a861e30d90b78a5c39b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">setSpinningSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:aa319d217b34f0a861e30d90b78a5c39b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:afd6cb097279239492a3401893d317499"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">setWheelSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:afd6cb097279239492a3401893d317499"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a534fd19189851c5615da58621dfd32b0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0">setZoomSensitivity</a> (float sensitivity)</td></tr>
-<tr class="separator:a534fd19189851c5615da58621dfd32b0"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a7c2890e63e18a21646516125fe5f3735"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity</a> () const </td></tr>
+<tr class="separator:a7c2890e63e18a21646516125fe5f3735"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a9fd3f92f20a5aa3a1930d891a0b6c841"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity</a> () const </td></tr>
+<tr class="separator:a9fd3f92f20a5aa3a1930d891a0b6c841"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a756fe0c7a6cad46ab5fdd3c268ec2cd7"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity</a> () const </td></tr>
+<tr class="separator:a756fe0c7a6cad46ab5fdd3c268ec2cd7"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a726bf4f1e12571999d7573fe018f1d59"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">zoomSensitivity</a> () const </td></tr>
+<tr class="separator:a726bf4f1e12571999d7573fe018f1d59"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:af72fc88ca2addd06420528ea5de9d182"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensitivity</a> () const </td></tr>
+<tr class="separator:af72fc88ca2addd06420528ea5de9d182"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ac4124167e4ec2a468c5bfe15ae2235ef"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef">setRotationSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:ac4124167e4ec2a468c5bfe15ae2235ef"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae5939728e6d9883ac4854c29cf380a20"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20">setTranslationSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:ae5939728e6d9883ac4854c29cf380a20"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a96662e9b865bc8b689a5a49e6fc2ab02"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">setSpinningSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:a96662e9b865bc8b689a5a49e6fc2ab02"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ac55cd5aa877eb32543e90eb6236ccd5f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">setWheelSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:ac55cd5aa877eb32543e90eb6236ccd5f"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a27e3095dda06896f7f121bcd242f64ed"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed">setZoomSensitivity</a> (qreal sensitivity)</td></tr>
+<tr class="separator:a27e3095dda06896f7f121bcd242f64ed"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Spinning</h2></td></tr>
@@ -403,7 +403,7 @@ Additional Inherited Members</h2></td></tr>
 <p>A <a class="el" href="classQGLViewer.html" title="A versatile 3D OpenGL viewer based on QGLWidget. ">QGLViewer</a> can handle at most one ManipulatedFrame at a time. If you want to move several objects in the scene, you simply have to keep a list of the different ManipulatedFrames, and to activate the right one (using <a class="el" href="classQGLViewer.html#ac6964ec1ebb2f42464313e0c43e767a3">QGLViewer::setManipulatedFrame()</a>) when needed. This can for instance be done according to  [...]
 <p>When the ManipulatedFrame is being manipulated using the mouse (mouse pressed and not yet released), <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a032c48e2e7cdced01dea0cb7eca14022">isManipulated()</a> returns <code>true</code>. This might be used to trigger a specific action or display (as is done with <a class="el" href="classQGLViewer.html#a8b6601997fe7a83e7cd041104d4b21d2">QGLViewer::fastDraw()</a>).</p>
 <p>The ManipulatedFrame also emits a <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a841d6d550acbe6e9103c32ac3b75c0c2">manipulated()</a> signal each time its state is modified by the mouse. This signal is automatically connected to the QGLViewer::update() slot when the ManipulatedFrame is attached to a viewer using <a class="el" href="classQGLViewer.html#ac6964ec1ebb2f42464313e0c43e767a3">QGLViewer::setManipulatedFrame()</a>.</p>
-<p>You can make the ManipulatedFrame <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd">spin()</a> if you release the rotation mouse button while moving the mouse fast enough (see <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity()</a>). See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity()</a> and <a class [...]
+<p>You can make the ManipulatedFrame <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd">spin()</a> if you release the rotation mouse button while moving the mouse fast enough (see <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity()</a>). See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity()</a> and <a class [...]
 </div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
 <a class="anchor" id="a1e9e849ecaeee6226bfb615d7a74a091"></a>
 <div class="memitem">
@@ -419,7 +419,7 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Default constructor.</p>
 <p>The translation is set to (0,0,0), with an identity rotation (0,0,0,1) (see <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> constructor for details).</p>
-<p>The different sensitivities are set to their default values (see <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFra [...]
+<p>The different sensitivities are set to their default values (see <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFra [...]
 
 </div>
 </div>
@@ -694,7 +694,7 @@ Additional Inherited Members</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Overloading of <a class="el" href="classqglviewer_1_1MouseGrabber.html#a7c092390bad31d7f73ea474667159859">MouseGrabber::mouseDoubleClickEvent()</a>.</p>
-<p>Left button double click aligns the ManipulatedFrame with the <code>camera</code> axis (see <a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">alignWithFrame()</a> and <a class="el" href="classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa3d318f59bc81979e3922c7e716085304">ALIGN_FRAME</a>). Right button projects the ManipulatedFrame on the <code>camera</code> view direction. </p>
+<p>Left button double click aligns the ManipulatedFrame with the <code>camera</code> axis (see <a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">alignWithFrame()</a> and <a class="el" href="classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa3d318f59bc81979e3922c7e716085304">ALIGN_FRAME</a>). Right button projects the ManipulatedFrame on the <code>camera</code> view direction. </p>
 
 <p>Reimplemented from <a class="el" href="classqglviewer_1_1MouseGrabber.html#a7c092390bad31d7f73ea474667159859">MouseGrabber</a>.</p>
 
@@ -733,7 +733,7 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Modifies the ManipulatedFrame according to the mouse motion.</p>
 <p>Actual behavior depends on mouse bindings. See the <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875">QGLViewer::MouseAction</a> enum and the <a href="../mouse.html">QGLViewer mouse page</a> for details.</p>
-<p>The <code>camera</code> is used to fit the mouse motion with the display parameters (see <a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">Camera::screenWidth()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">Camera::screenHeight()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">Camera::fieldOfView()</a>).</p>
+<p>The <code>camera</code> is used to fit the mouse motion with the display parameters (see <a class="el" href="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e">Camera::screenWidth()</a>, <a class="el" href="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794">Camera::screenHeight()</a>, <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">Camera::fieldOfView()</a>).</p>
 <p>Emits the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a841d6d550acbe6e9103c32ac3b75c0c2">manipulated()</a> signal. </p>
 
 <p>Reimplemented from <a class="el" href="classqglviewer_1_1MouseGrabber.html#a6e2baf9735a27e4c8a928518cc273d5c">MouseGrabber</a>.</p>
@@ -814,7 +814,7 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Stops the ManipulatedFrame mouse manipulation.</p>
 <p>Overloading of <a class="el" href="classqglviewer_1_1MouseGrabber.html#a2e07bf5f7c6c96f40e7f1d1fdb031b0c">MouseGrabber::mouseReleaseEvent()</a>.</p>
-<p>If the action was a <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3dcfe0046eb5876e287dbf0914819b16">ROTATE</a> <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875">QGLViewer::MouseAction</a>, a continuous spinning is possible if the speed of the mouse cursor is larger than <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity()</a> when the button is released. Press the rotat [...]
+<p>If the action was a <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3dcfe0046eb5876e287dbf0914819b16">ROTATE</a> <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875">QGLViewer::MouseAction</a>, a continuous spinning is possible if the speed of the mouse cursor is larger than <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity()</a> when the button is released. Press the rotat [...]
 
 <p>Reimplemented from <a class="el" href="classqglviewer_1_1MouseGrabber.html#a2e07bf5f7c6c96f40e7f1d1fdb031b0c">MouseGrabber</a>.</p>
 
@@ -839,12 +839,12 @@ Additional Inherited Members</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a4573c3414e63c10dec06a3064d37532f"></a>
+<a class="anchor" id="a7c2890e63e18a21646516125fe5f3735"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float rotationSensitivity </td>
+          <td class="memname">qreal rotationSensitivity </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -853,11 +853,11 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the influence of a mouse displacement on the ManipulatedFrame rotation.</p>
 <p>Default value is 1.0. With an identical mouse displacement, a higher value will generate a larger rotation (and inversely for lower values). A 0.0 value will forbid ManipulatedFrame mouse rotation (see also <a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint()</a>).</p>
-<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11">setRotationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensi [...]
+<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef">setRotationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensi [...]
 
 </div>
 </div>
-<a class="anchor" id="a239ba71eaf212e169fe31918ed2d9c11"></a>
+<a class="anchor" id="ac4124167e4ec2a468c5bfe15ae2235ef"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -867,7 +867,7 @@ Additional Inherited Members</h2></td></tr>
         <tr>
           <td class="memname">void setRotationSensitivity </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>sensitivity</em></td><td>)</td>
           <td></td>
         </tr>
@@ -878,7 +878,7 @@ Additional Inherited Members</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity()</a>. </p>
+<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity()</a>. </p>
 
 </div>
 </div>
@@ -907,7 +907,7 @@ Additional Inherited Members</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="aa319d217b34f0a861e30d90b78a5c39b"></a>
+<a class="anchor" id="a96662e9b865bc8b689a5a49e6fc2ab02"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -917,7 +917,7 @@ Additional Inherited Members</h2></td></tr>
         <tr>
           <td class="memname">void setSpinningSensitivity </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>sensitivity</em></td><td>)</td>
           <td></td>
         </tr>
@@ -928,11 +928,11 @@ Additional Inherited Members</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity()</a>, in pixels per milliseconds. </p>
+<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity()</a>, in pixels per milliseconds. </p>
 
 </div>
 </div>
-<a class="anchor" id="ac0cdf6be7c1443e2e984012490569871"></a>
+<a class="anchor" id="ae5939728e6d9883ac4854c29cf380a20"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -942,7 +942,7 @@ Additional Inherited Members</h2></td></tr>
         <tr>
           <td class="memname">void setTranslationSensitivity </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>sensitivity</em></td><td>)</td>
           <td></td>
         </tr>
@@ -953,11 +953,11 @@ Additional Inherited Members</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity()</a>. </p>
+<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="afd6cb097279239492a3401893d317499"></a>
+<a class="anchor" id="ac55cd5aa877eb32543e90eb6236ccd5f"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -967,7 +967,7 @@ Additional Inherited Members</h2></td></tr>
         <tr>
           <td class="memname">void setWheelSensitivity </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>sensitivity</em></td><td>)</td>
           <td></td>
         </tr>
@@ -978,11 +978,11 @@ Additional Inherited Members</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensitivity()</a>. </p>
+<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensitivity()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="a534fd19189851c5615da58621dfd32b0"></a>
+<a class="anchor" id="a27e3095dda06896f7f121bcd242f64ed"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -992,7 +992,7 @@ Additional Inherited Members</h2></td></tr>
         <tr>
           <td class="memname">void setZoomSensitivity </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>sensitivity</em></td><td>)</td>
           <td></td>
         </tr>
@@ -1003,7 +1003,7 @@ Additional Inherited Members</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">zoomSensitivity()</a>. </p>
+<p>Defines the <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">zoomSensitivity()</a>. </p>
 
 </div>
 </div>
@@ -1049,12 +1049,12 @@ Additional Inherited Members</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a1025480797d5dd046d6d717de59ffbca"></a>
+<a class="anchor" id="a756fe0c7a6cad46ab5fdd3c268ec2cd7"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float spinningSensitivity </td>
+          <td class="memname">qreal spinningSensitivity </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1063,8 +1063,8 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the minimum mouse speed required (at button release) to make the ManipulatedFrame <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd">spin()</a>.</p>
 <p>See <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd">spin()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276">spinningQuaternion()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf">startSpinning()</a> for details.</p>
-<p>Mouse speed is expressed in pixels per milliseconds. Default value is 0.3 (300 pixels per second). Use <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">setSpinningSensitivity()</a> to tune this value. A higher value will make spinning more difficult (a value of 100.0 forbids spinning in practice).</p>
-<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">setSpinningSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensi [...]
+<p>Mouse speed is expressed in pixels per milliseconds. Default value is 0.3 (300 pixels per second). Use <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">setSpinningSensitivity()</a> to tune this value. A higher value will make spinning more difficult (a value of 100.0 forbids spinning in practice).</p>
+<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">setSpinningSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensi [...]
 
 </div>
 </div>
@@ -1145,12 +1145,12 @@ Additional Inherited Members</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a28fd6b0ca560be97bb899e1a7e3c821a"></a>
+<a class="anchor" id="a9fd3f92f20a5aa3a1930d891a0b6c841"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float translationSensitivity </td>
+          <td class="memname">qreal translationSensitivity </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1160,8 +1160,8 @@ Additional Inherited Members</h2></td></tr>
 <p>Returns the influence of a mouse displacement on the ManipulatedFrame translation.</p>
 <p>Default value is 1.0. You should not have to modify this value, since with 1.0 the ManipulatedFrame precisely stays under the mouse cursor.</p>
 <p>With an identical mouse displacement, a higher value will generate a larger translation (and inversely for lower values). A 0.0 value will forbid ManipulatedFrame mouse translation (see also <a class="el" href="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9">constraint()</a>).</p>
-<dl class="section note"><dt>Note</dt><dd>When the ManipulatedFrame is used to move a <em><a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">Camera</a></em> (see the <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html" title="The ManipulatedCameraFrame class represents a ManipulatedFrame with Camera specific mouse bindings...">ManipulatedCameraFrame</a> class documentation), after zooming on a small region of your scene, the ca [...]
-<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871">setTranslationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">spinningSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensi [...]
+<dl class="section note"><dt>Note</dt><dd>When the ManipulatedFrame is used to move a <em><a class="el" href="classqglviewer_1_1Camera.html" title="A perspective or orthographic camera. ">Camera</a></em> (see the <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html" title="The ManipulatedCameraFrame class represents a ManipulatedFrame with Camera specific mouse bindings...">ManipulatedCameraFrame</a> class documentation), after zooming on a small region of your scene, the ca [...]
+<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20">setTranslationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">spinningSensitivity()</a> and <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensi [...]
 
 </div>
 </div>
@@ -1197,7 +1197,7 @@ Additional Inherited Members</h2></td></tr>
 </table>
 </div><div class="memdoc">
 <p>Overloading of <a class="el" href="classqglviewer_1_1MouseGrabber.html#a07a7d880d107f0b532ef779b29884e08">MouseGrabber::wheelEvent()</a>.</p>
-<p>Using the wheel is equivalent to a <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875">QGLViewer::MouseAction</a>. See <a class="el" href="classQGLViewer.html#a277f432be05de69ae2df05eac8951ad2">QGLViewer::setWheelBinding()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">setWheelSensitivity()</a>. </p>
+<p>Using the wheel is equivalent to a <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">ZOOM</a> <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875">QGLViewer::MouseAction</a>. See <a class="el" href="classQGLViewer.html#a277f432be05de69ae2df05eac8951ad2">QGLViewer::setWheelBinding()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">setWheelSensitivity()</a>. </p>
 
 <p>Reimplemented from <a class="el" href="classqglviewer_1_1MouseGrabber.html#a07a7d880d107f0b532ef779b29884e08">MouseGrabber</a>.</p>
 
@@ -1205,12 +1205,12 @@ Additional Inherited Members</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ad9e7fc4134c9733e8cfecf8bf80dbd44"></a>
+<a class="anchor" id="af72fc88ca2addd06420528ea5de9d182"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float wheelSensitivity </td>
+          <td class="memname">qreal wheelSensitivity </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1219,16 +1219,16 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the mouse wheel sensitivity.</p>
 <p>Default value is 1.0. A higher value will make the wheel action more efficient (usually meaning a faster zoom). Use a negative value to invert the zoom in and out directions.</p>
-<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">setWheelSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity()</a> <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">zoomSensitivity() [...]
+<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">setWheelSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity()</a> <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">zoomSensitivity() [...]
 
 </div>
 </div>
-<a class="anchor" id="a8dd27ae910bfa43026fc8657dff46d4d"></a>
+<a class="anchor" id="a726bf4f1e12571999d7573fe018f1d59"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">float zoomSensitivity </td>
+          <td class="memname">qreal zoomSensitivity </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -1237,14 +1237,14 @@ Additional Inherited Members</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the zoom sensitivity.</p>
 <p>Default value is 1.0. A higher value will make the zoom faster. Use a negative value to invert the zoom in and out directions.</p>
-<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0">setZoomSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">rotationSensitivity()</a> <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">wheelSensitivity() [...]
+<p>See also <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed">setZoomSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">translationSensitivity()</a>, <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">rotationSensitivity()</a> <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">wheelSensitivity() [...]
 
 </div>
 </div>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1MouseGrabber-members.html b/doc/refManual/classqglviewer_1_1MouseGrabber-members.html
index 8433641..a433544 100644
--- a/doc/refManual/classqglviewer_1_1MouseGrabber-members.html
+++ b/doc/refManual/classqglviewer_1_1MouseGrabber-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1MouseGrabber.html b/doc/refManual/classqglviewer_1_1MouseGrabber.html
index 7289d05..e453faf 100644
--- a/doc/refManual/classqglviewer_1_1MouseGrabber.html
+++ b/doc/refManual/classqglviewer_1_1MouseGrabber.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -630,7 +630,7 @@ Mouse event handlers</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Quaternion-members.html b/doc/refManual/classqglviewer_1_1Quaternion-members.html
index 43f9502..ea96bd8 100644
--- a/doc/refManual/classqglviewer_1_1Quaternion-members.html
+++ b/doc/refManual/classqglviewer_1_1Quaternion-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -95,18 +95,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <p>This is the complete list of members for <a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a>, including all inherited members.</p>
 <table class="directory">
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875">angle</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495">angle</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a48e0e2dd26cd96418c8b889ceabe80f6">domElement</a>(const QString &name, QDomDocument &document) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83">dot</a>(const Quaternion &a, const Quaternion &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb">dot</a>(const Quaternion &a, const Quaternion &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a5c546a33cc0c65f24b7e9c48e5069ba7">exp</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292">getAxisAngle</a>(Vec &axis, float &angle) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5">getAxisAngle</a>(Vec &axis, qreal &angle) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b">getInverseMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155">getInverseMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a">getInverseRotationMatrix</a>(float m[3][3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d">getInverseRotationMatrix</a>(qreal m[3][3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix</a>(GLdouble m[4][4]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a">getMatrix</a>(GLdouble m[16]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872">getRotationMatrix</a>(float m[3][3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1">getRotationMatrix</a>(qreal m[3][3]) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement</a>(const QDomElement &element)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e">inverse</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22">inverseMatrix</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
@@ -116,34 +116,34 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a4db67fbb8171a5e781b56404112cf848">log</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648">negate</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231">normalize</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639">normalize</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32">normalized</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919">operator*</a>(const Quaternion &a, const Quaternion &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a19ce6efe5ef2744c8293e8ba1a39b9e4">operator*</a>(const Quaternion &q, const Vec &v)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d">operator*=</a>(const Quaternion &q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796">operator<<</a>(std::ostream &o, const qglviewer::Vec &)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ad20a1310f5fac88d5e00fa055e09fe72">operator=</a>(const Quaternion &Q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f">operator[]</a>(int i) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b">operator[]</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a">operator[]</a>(int i) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e">operator[]</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66">Quaternion</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85">Quaternion</a>(const Vec &axis, double angle)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659">Quaternion</a>(const Vec &axis, qreal angle)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634">Quaternion</a>(const Vec &from, const Vec &to)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45">Quaternion</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba">Quaternion</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a71a4d1a3b760854468ff270a982e5f59">Quaternion</a>(const Quaternion &Q)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a87faf5efc96c9b5af85a611985b6618f">Quaternion</a>(const QDomElement &element)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a87d5e98d958fdc63100979fcff1d9976">randomQuaternion</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a5e2421069d88e576334e10f634625815">rotate</a>(const Vec &v) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b">setAxisAngle</a>(const Vec &axis, double angle)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81">setAxisAngle</a>(const Vec &axis, qreal angle)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9">setFromRotatedBasis</a>(const Vec &X, const Vec &Y, const Vec &Z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac">setFromRotationMatrix</a>(const double m[3][3])</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a">setValue</a>(double q0, double q1, double q2, double q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4">slerp</a>(const Quaternion &a, const Quaternion &b, float t, bool allowFlip=true)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812">squad</a>(const Quaternion &a, const Quaternion &tgA, const Quaternion &tgB, const Quaternion &b, float t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f">setFromRotationMatrix</a>(const qreal m[3][3])</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db">setValue</a>(qreal q0, qreal q1, qreal q2, qreal q3)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6">slerp</a>(const Quaternion &a, const Quaternion &b, qreal t, bool allowFlip=true)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf">squad</a>(const Quaternion &a, const Quaternion &tgA, const Quaternion &tgB, const Quaternion &b, qreal t)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005">squadTangent</a>(const Quaternion &before, const Quaternion &center, const Quaternion &after)</td><td class="entry"><a class="el" href="classqglviewer_1_1Quaternion.html">Quaternion</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Quaternion.html b/doc/refManual/classqglviewer_1_1Quaternion.html
index 40a3c81..6b131b0 100644
--- a/doc/refManual/classqglviewer_1_1Quaternion.html
+++ b/doc/refManual/classqglviewer_1_1Quaternion.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -102,22 +102,22 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 Defining a Quaternion</h2></td></tr>
 <tr class="memitem:a65ed15cc19af958b5933b5c522f10e66"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66">Quaternion</a> ()</td></tr>
 <tr class="separator:a65ed15cc19af958b5933b5c522f10e66"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad0347716e801bcdeab909493817edc85"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85">Quaternion</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>, double <a class="el" href="classqglviewer_1_1Quaternion.html#ad9 [...]
-<tr class="separator:ad0347716e801bcdeab909493817edc85"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a248f1a85b48c0fe32fb8ac7e3ef84659"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659">Quaternion</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>, qreal <a class="el" href="classqglviewer_1_1Quaternion.html#a5b5 [...]
+<tr class="separator:a248f1a85b48c0fe32fb8ac7e3ef84659"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a1b60be34a715145efc3b91e6dfba1634"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634">Quaternion</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &from, const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &to)</td></tr>
 <tr class="separator:a1b60be34a715145efc3b91e6dfba1634"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a81ba24ffd95778f3ca4e51b2b9922f45"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45">Quaternion</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:a81ba24ffd95778f3ca4e51b2b9922f45"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa277d38944106b8e5c7920ab570b41ba"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba">Quaternion</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:aa277d38944106b8e5c7920ab570b41ba"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a71a4d1a3b760854468ff270a982e5f59"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a71a4d1a3b760854468ff270a982e5f59">Quaternion</a> (const Quaternion &Q)</td></tr>
 <tr class="separator:a71a4d1a3b760854468ff270a982e5f59"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ad20a1310f5fac88d5e00fa055e09fe72"><td class="memItemLeft" align="right" valign="top">Quaternion & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#ad20a1310f5fac88d5e00fa055e09fe72">operator=</a> (const Quaternion &Q)</td></tr>
 <tr class="separator:ad20a1310f5fac88d5e00fa055e09fe72"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad6bd25e80a18f6bd38ae5c4e5337b53b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b">setAxisAngle</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>, double <a class="el" href="classqglviewer_1_1Quaternion.ht [...]
-<tr class="separator:ad6bd25e80a18f6bd38ae5c4e5337b53b"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:abe7dd94e4fb48e0c8e0d994cac84064a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a">setValue</a> (double q0, double q1, double q2, double q3)</td></tr>
-<tr class="separator:abe7dd94e4fb48e0c8e0d994cac84064a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a1880f20e8080ee670b6a88ed0c7d69ac"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac">setFromRotationMatrix</a> (const double m[3][3])</td></tr>
-<tr class="separator:a1880f20e8080ee670b6a88ed0c7d69ac"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ae903a46cefc96e2d13096d5b891d9c81"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81">setAxisAngle</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>, qreal <a class="el" href="classqglviewer_1_1Quaternion.htm [...]
+<tr class="separator:ae903a46cefc96e2d13096d5b891d9c81"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a9d93de4b634adf83674a3528a02f76db"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db">setValue</a> (qreal q0, qreal q1, qreal q2, qreal q3)</td></tr>
+<tr class="separator:a9d93de4b634adf83674a3528a02f76db"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a96216d678555ef6ba307e2d4de62831f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f">setFromRotationMatrix</a> (const qreal m[3][3])</td></tr>
+<tr class="separator:a96216d678555ef6ba307e2d4de62831f"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a760617f082c950633b5642d2f60b2dd9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9">setFromRotatedBasis</a> (const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &X, const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &Y, const <a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &Z)</td></tr>
 <tr class="separator:a760617f082c950633b5642d2f60b2dd9"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -125,14 +125,14 @@ Defining a Quaternion</h2></td></tr>
 Accessing values</h2></td></tr>
 <tr class="memitem:a63f3f585fd25e9cb32700a26d54f8ee4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a> () const </td></tr>
 <tr class="separator:a63f3f585fd25e9cb32700a26d54f8ee4"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ad9e7153c0d7a5327a3da2aedb437f875"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875">angle</a> () const </td></tr>
-<tr class="separator:ad9e7153c0d7a5327a3da2aedb437f875"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a46b7892fe36e140862b9c71e5cfe8292"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292">getAxisAngle</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>, float &<a class="el" href="classqglviewer_1_1Quaternion.html [...]
-<tr class="separator:a46b7892fe36e140862b9c71e5cfe8292"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a605b34d1fc87b2ccaf49a45419c2e46f"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f">operator[]</a> (int i) const </td></tr>
-<tr class="separator:a605b34d1fc87b2ccaf49a45419c2e46f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af1a8c9c4769161714a5a1a2c7fad446b"><td class="memItemLeft" align="right" valign="top">double & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b">operator[]</a> (int i)</td></tr>
-<tr class="separator:af1a8c9c4769161714a5a1a2c7fad446b"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a5b557bc34cd182effb2943f5a9e1b495"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495">angle</a> () const </td></tr>
+<tr class="separator:a5b557bc34cd182effb2943f5a9e1b495"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a82c00b9faae5d64038f913b08fda8af5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5">getAxisAngle</a> (<a class="el" href="classqglviewer_1_1Vec.html">Vec</a> &<a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>, qreal &<a class="el" href="classqglviewer_1_1Quaternion.html [...]
+<tr class="separator:a82c00b9faae5d64038f913b08fda8af5"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:afe97b7787c6981248d1117c5fd14619a"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a">operator[]</a> (int i) const </td></tr>
+<tr class="separator:afe97b7787c6981248d1117c5fd14619a"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a9e7f720c3b3b086f7aac81e480ea778e"><td class="memItemLeft" align="right" valign="top">qreal & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e">operator[]</a> (int i)</td></tr>
+<tr class="separator:a9e7f720c3b3b086f7aac81e480ea778e"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Rotation computations</h2></td></tr>
@@ -155,8 +155,8 @@ Inversion</h2></td></tr>
 <tr class="separator:a7fa1616cc61c19a5efcc863c950f7f30"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:abcdb1512395327f8236a4f4a4d4ff648"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648">negate</a> ()</td></tr>
 <tr class="separator:abcdb1512395327f8236a4f4a4d4ff648"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a05826e509c686f39baaec4656f1a7231"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231">normalize</a> ()</td></tr>
-<tr class="separator:a05826e509c686f39baaec4656f1a7231"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a5d64fc0ded287d65bf6e4fce7bbee639"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639">normalize</a> ()</td></tr>
+<tr class="separator:a5d64fc0ded287d65bf6e4fce7bbee639"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ae347ecf6e0a78618e8fd1a3b9107df32"><td class="memItemLeft" align="right" valign="top">Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32">normalized</a> () const </td></tr>
 <tr class="separator:ae347ecf6e0a78618e8fd1a3b9107df32"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -168,16 +168,16 @@ Associated matrix</h2></td></tr>
 <tr class="separator:a4915640a54a6b48a99cbdd0cd42fec48"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a15f0dc7596dc78437154302466ac3c0a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a">getMatrix</a> (GLdouble m[16]) const </td></tr>
 <tr class="separator:a15f0dc7596dc78437154302466ac3c0a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aad37aa66da74be6fb8d9d66f059f0872"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872">getRotationMatrix</a> (float m[3][3]) const </td></tr>
-<tr class="separator:aad37aa66da74be6fb8d9d66f059f0872"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a397ec5b8092565ae981a458adf8fe7c1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1">getRotationMatrix</a> (qreal m[3][3]) const </td></tr>
+<tr class="separator:a397ec5b8092565ae981a458adf8fe7c1"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a32992f152b7377da431c69f15384ed22"><td class="memItemLeft" align="right" valign="top">const GLdouble * </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22">inverseMatrix</a> () const </td></tr>
 <tr class="separator:a32992f152b7377da431c69f15384ed22"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aee97ea226e31ac805a2245e7c73dac7b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b">getInverseMatrix</a> (GLdouble m[4][4]) const </td></tr>
 <tr class="separator:aee97ea226e31ac805a2245e7c73dac7b"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a315cf039df621a101a953df20acc7155"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155">getInverseMatrix</a> (GLdouble m[16]) const </td></tr>
 <tr class="separator:a315cf039df621a101a953df20acc7155"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae1455acb1cbf59befe65295734d48c4a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a">getInverseRotationMatrix</a> (float m[3][3]) const </td></tr>
-<tr class="separator:ae1455acb1cbf59befe65295734d48c4a"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a62b8b94f4ac51fa4321689636e9ebd1d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d">getInverseRotationMatrix</a> (qreal m[3][3]) const </td></tr>
+<tr class="separator:a62b8b94f4ac51fa4321689636e9ebd1d"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Slerp interpolation</h2></td></tr>
@@ -185,12 +185,12 @@ Slerp interpolation</h2></td></tr>
 <tr class="separator:a4db67fbb8171a5e781b56404112cf848"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a5c546a33cc0c65f24b7e9c48e5069ba7"><td class="memItemLeft" align="right" valign="top">Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a5c546a33cc0c65f24b7e9c48e5069ba7">exp</a> ()</td></tr>
 <tr class="separator:a5c546a33cc0c65f24b7e9c48e5069ba7"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a755201c9a752fd892a3656a517b190e4"><td class="memItemLeft" align="right" valign="top">static Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4">slerp</a> (const Quaternion &a, const Quaternion &b, float t, bool allowFlip=true)</td></tr>
-<tr class="separator:a755201c9a752fd892a3656a517b190e4"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a4b218b205d88a4dd50c8de38522b5812"><td class="memItemLeft" align="right" valign="top">static Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812">squad</a> (const Quaternion &a, const Quaternion &tgA, const Quaternion &tgB, const Quaternion &b, float t)</td></tr>
-<tr class="separator:a4b218b205d88a4dd50c8de38522b5812"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a80d06247e39abf2980e56d2fe8c4bb83"><td class="memItemLeft" align="right" valign="top">static double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83">dot</a> (const Quaternion &a, const Quaternion &b)</td></tr>
-<tr class="separator:a80d06247e39abf2980e56d2fe8c4bb83"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:acb4a39b01841afcc686e81c0a4a375a6"><td class="memItemLeft" align="right" valign="top">static Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6">slerp</a> (const Quaternion &a, const Quaternion &b, qreal t, bool allowFlip=true)</td></tr>
+<tr class="separator:acb4a39b01841afcc686e81c0a4a375a6"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a00d67192e2f29685ebcd08502465c0bf"><td class="memItemLeft" align="right" valign="top">static Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf">squad</a> (const Quaternion &a, const Quaternion &tgA, const Quaternion &tgB, const Quaternion &b, qreal t)</td></tr>
+<tr class="separator:a00d67192e2f29685ebcd08502465c0bf"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a2d9c582375307cb4b41f29007130a2eb"><td class="memItemLeft" align="right" valign="top">static qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb">dot</a> (const Quaternion &a, const Quaternion &b)</td></tr>
+<tr class="separator:a2d9c582375307cb4b41f29007130a2eb"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:af4c74176967acca6e3947977351e1c68"><td class="memItemLeft" align="right" valign="top">static Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#af4c74176967acca6e3947977351e1c68">lnDif</a> (const Quaternion &a, const Quaternion &b)</td></tr>
 <tr class="separator:af4c74176967acca6e3947977351e1c68"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a2a27d43a68da6c7c5243fe81e5a9d005"><td class="memItemLeft" align="right" valign="top">static Quaternion </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005">squadTangent</a> (const Quaternion &before, const Quaternion &center, const Quaternion &after)</td></tr>
@@ -217,13 +217,13 @@ Output stream</h2></td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>The Quaternion class represents 3D rotations and orientations. </p>
-<p>The Quaternion is an appropriate (although not very intuitive) representation for 3D rotations and orientations. Many tools are provided to ease the definition of a Quaternion: see constructors, <a class="el" href="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b">setAxisAngle()</a>, <a class="el" href="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac">setFromRotationMatrix()</a>, <a class="el" href="classqglviewer_1_1Quaternion.html#a760617f082c9 [...]
+<p>The Quaternion is an appropriate (although not very intuitive) representation for 3D rotations and orientations. Many tools are provided to ease the definition of a Quaternion: see constructors, <a class="el" href="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81">setAxisAngle()</a>, <a class="el" href="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f">setFromRotationMatrix()</a>, <a class="el" href="classqglviewer_1_1Quaternion.html#a760617f082c9 [...]
 <p>You can apply the rotation represented by the Quaternion to 3D points using <a class="el" href="classqglviewer_1_1Quaternion.html#a5e2421069d88e576334e10f634625815">rotate()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a74d79bc1afcc02fdbfe0eb390c3546f5">inverseRotate()</a>. See also the <a class="el" href="classqglviewer_1_1Frame.html" title="The Frame class represents a coordinate system, defined by a position and an orientation. ">Frame</a> class that represents a c [...]
 <p>You can apply the Quaternion <code>q</code> rotation to the OpenGL matrices using: </p><div class="fragment"><div class="line">glMultMatrixd(q.matrix());</div>
 <div class="line"><span class="comment">// equvalent to glRotate(q.angle()*180.0/M_PI, q.axis().x, q.axis().y, q.axis().z);</span></div>
 </div><!-- fragment --><p>Quaternion is part of the <code>qglviewer</code> namespace, specify <code>qglviewer::Quaternion</code> or use the qglviewer namespace:</p><div class="fragment"><div class="line"><span class="keyword">using namespace </span><a class="code" href="namespaceqglviewer.html">qglviewer</a>; </div>
 </div><!-- fragment --><h3>Internal representation</h3>
-<p>The internal representation of a Quaternion corresponding to a rotation around axis <code>axis</code>, with an angle <code>alpha</code> is made of four doubles q[i]: </p><div class="fragment"><div class="line">{q[0],q[1],q[2]} = sin(alpha/2) * {<a class="code" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>[0],<a class="code" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>[1],axis[2]}</div>
+<p>The internal representation of a Quaternion corresponding to a rotation around axis <code>axis</code>, with an angle <code>alpha</code> is made of four qreals (i.e. doubles) q[i]: </p><div class="fragment"><div class="line">{q[0],q[1],q[2]} = sin(alpha/2) * {<a class="code" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>[0],<a class="code" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis</a>[1],axis[2]}</div>
 <div class="line">q[3] = cos(alpha/2)</div>
 </div><!-- fragment --><p>Note that certain implementations place the cosine term in first position (instead of last here).</p>
 <p>The Quaternion is always normalized, so that its <a class="el" href="classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e">inverse()</a> is actually its conjugate.</p>
@@ -245,7 +245,7 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ad0347716e801bcdeab909493817edc85"></a>
+<a class="anchor" id="a248f1a85b48c0fe32fb8ac7e3ef84659"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -258,7 +258,7 @@ Output stream</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>angle</em> </td>
         </tr>
         <tr>
@@ -268,7 +268,7 @@ Output stream</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Constructor from rotation axis (non null) and angle (in radians). See also <a class="el" href="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b">setAxisAngle()</a>. </p>
+<p>Constructor from rotation axis (non null) and angle (in radians). See also <a class="el" href="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81">setAxisAngle()</a>. </p>
 
 </div>
 </div>
@@ -300,32 +300,32 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a81ba24ffd95778f3ca4e51b2b9922f45"></a>
+<a class="anchor" id="aa277d38944106b8e5c7920ab570b41ba"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">Quaternion </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -385,12 +385,12 @@ Output stream</h2></td></tr>
 </div>
 </div>
 <h2 class="groupheader">Member Function Documentation</h2>
-<a class="anchor" id="ad9e7153c0d7a5327a3da2aedb437f875"></a>
+<a class="anchor" id="a5b557bc34cd182effb2943f5a9e1b495"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double angle </td>
+          <td class="memname">qreal angle </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -399,7 +399,7 @@ Output stream</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns the angle (in radians) of the rotation represented by the Quaternion.</p>
 <p>This value is always in the range [0-pi]. Larger rotational angles are obtained by inverting the <a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis()</a> direction.</p>
-<p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292">getAxisAngle()</a>. </p>
+<p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5">getAxisAngle()</a>. </p>
 
 </div>
 </div>
@@ -416,7 +416,7 @@ Output stream</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Returns the normalized axis direction of the rotation represented by the Quaternion.</p>
-<p>It is null for an identity Quaternion. See also <a class="el" href="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875">angle()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292">getAxisAngle()</a>. </p>
+<p>It is null for an identity Quaternion. See also <a class="el" href="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495">angle()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5">getAxisAngle()</a>. </p>
 
 </div>
 </div>
@@ -452,7 +452,7 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a80d06247e39abf2980e56d2fe8c4bb83"></a>
+<a class="anchor" id="a2d9c582375307cb4b41f29007130a2eb"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -460,7 +460,7 @@ Output stream</h2></td></tr>
   <td class="mlabels-left">
       <table class="memname">
         <tr>
-          <td class="memname">static double dot </td>
+          <td class="memname">static qreal dot </td>
           <td>(</td>
           <td class="paramtype">const Quaternion & </td>
           <td class="paramname"><em>a</em>, </td>
@@ -503,7 +503,7 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a46b7892fe36e140862b9c71e5cfe8292"></a>
+<a class="anchor" id="a82c00b9faae5d64038f913b08fda8af5"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -516,7 +516,7 @@ Output stream</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float & </td>
+          <td class="paramtype">qreal & </td>
           <td class="paramname"><em>angle</em> </td>
         </tr>
         <tr>
@@ -526,7 +526,7 @@ Output stream</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Returns the axis vector and the angle (in radians) of the rotation represented by the Quaternion. See the <a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875">angle()</a> documentations. </p>
+<p>Returns the axis vector and the angle (in radians) of the rotation represented by the Quaternion. See the <a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495">angle()</a> documentations. </p>
 
 </div>
 </div>
@@ -565,14 +565,14 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ae1455acb1cbf59befe65295734d48c4a"></a>
+<a class="anchor" id="a62b8b94f4ac51fa4321689636e9ebd1d"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getInverseRotationMatrix </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>m</em>[3][3]</td><td>)</td>
           <td> const</td>
         </tr>
@@ -618,21 +618,21 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="aad37aa66da74be6fb8d9d66f059f0872"></a>
+<a class="anchor" id="a397ec5b8092565ae981a458adf8fe7c1"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void getRotationMatrix </td>
           <td>(</td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>m</em>[3][3]</td><td>)</td>
           <td> const</td>
         </tr>
       </table>
 </div><div class="memdoc">
 <p>Fills <code>m</code> with the 3x3 rotation matrix associated with the Quaternion.</p>
-<p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a">getInverseRotationMatrix()</a>.</p>
+<p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d">getInverseRotationMatrix()</a>.</p>
 <dl class="section attention"><dt>Attention</dt><dd><code>m</code> uses the European mathematical representation of the rotation matrix. Use <a class="el" href="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> to retrieve the OpenGL transposed version. </dd></dl>
 
 </div>
@@ -689,7 +689,7 @@ Use invert() to actually modify the Quaternion.  </pre>
 <p>Returns the associated 4x4 OpenGL <em>inverse</em> rotation matrix. This is simply the <a class="el" href="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a> of the <a class="el" href="classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e">inverse()</a>.</p>
 <dl class="section attention"><dt>Attention</dt><dd>The result is only valid until the next call to <a class="el" href="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22">inverseMatrix()</a>. Use it immediately (as in <code>glMultMatrixd</code>(q.inverseMatrix())) or use <a class="el" href="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b">getInverseMatrix()</a> instead.</dd>
 <dd>
-The matrix is given in OpenGL format (row-major order) and is the transpose of the actual mathematical European representation. Consider using <a class="el" href="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a">getInverseRotationMatrix()</a> instead. </dd></dl>
+The matrix is given in OpenGL format (row-major order) and is the transpose of the actual mathematical European representation. Consider using <a class="el" href="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d">getInverseRotationMatrix()</a> instead. </dd></dl>
 
 </div>
 </div>
@@ -723,7 +723,7 @@ The matrix is given in OpenGL format (row-major order) and is the transpose of t
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Inverses the Quaternion (same rotation <a class="el" href="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875">angle()</a>, but negated <a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis()</a>). </p><pre class="fragment">See also inverse().  </pre> 
+<p>Inverses the Quaternion (same rotation <a class="el" href="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495">angle()</a>, but negated <a class="el" href="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4">axis()</a>). </p><pre class="fragment">See also inverse().  </pre> 
 </div>
 </div>
 <a class="anchor" id="af4c74176967acca6e3947977351e1c68"></a>
@@ -791,10 +791,10 @@ The matrix is given in OpenGL format (row-major order) and is the transpose of t
 </div><div class="memdoc">
 <p>Returns the Quaternion associated 4x4 OpenGL rotation matrix.</p>
 <p>Use <code>glMultMatrixd</code>(q.matrix()) to apply the rotation represented by Quaternion <code>q</code> to the current OpenGL matrix.</p>
-<p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a>, <a class="el" href="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872">getRotationMatrix()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22">inverseMatrix()</a>.</p>
+<p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a>, <a class="el" href="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1">getRotationMatrix()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22">inverseMatrix()</a>.</p>
 <dl class="section attention"><dt>Attention</dt><dd>The result is only valid until the next call to <a class="el" href="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047">matrix()</a>. Use it immediately (as shown above) or consider using <a class="el" href="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48">getMatrix()</a> instead.</dd>
 <dd>
-The matrix is given in OpenGL format (row-major order) and is the transpose of the actual mathematical European representation. Consider using <a class="el" href="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872">getRotationMatrix()</a> instead. </dd></dl>
+The matrix is given in OpenGL format (row-major order) and is the transpose of the actual mathematical European representation. Consider using <a class="el" href="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1">getRotationMatrix()</a> instead. </dd></dl>
 
 </div>
 </div>
@@ -818,12 +818,12 @@ This method is mainly useful for Quaternion interpolation, so that the spherical
 interpolation takes the shortest path on the unit sphere. See slerp() for details.  </pre> 
 </div>
 </div>
-<a class="anchor" id="a05826e509c686f39baaec4656f1a7231"></a>
+<a class="anchor" id="a5d64fc0ded287d65bf6e4fce7bbee639"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double normalize </td>
+          <td class="memname">qreal normalize </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td></td>
@@ -914,12 +914,12 @@ You may normalize() it after each application in case of numerical drift.  </pre
 
 </div>
 </div>
-<a class="anchor" id="a605b34d1fc87b2ccaf49a45419c2e46f"></a>
+<a class="anchor" id="afe97b7787c6981248d1117c5fd14619a"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double operator[] </td>
+          <td class="memname">qreal operator[] </td>
           <td>(</td>
           <td class="paramtype">int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
@@ -927,16 +927,16 @@ You may normalize() it after each application in case of numerical drift.  </pre
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Bracket operator, with a constant return value. <code>i</code> must range in [0..3]. See the <a class="el" href="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45">Quaternion(double, double, double, double)</a> documentation. </p>
+<p>Bracket operator, with a constant return value. <code>i</code> must range in [0..3]. See the <a class="el" href="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba">Quaternion(qreal, qreal, qreal, qreal)</a> documentation. </p>
 
 </div>
 </div>
-<a class="anchor" id="af1a8c9c4769161714a5a1a2c7fad446b"></a>
+<a class="anchor" id="a9e7f720c3b3b086f7aac81e480ea778e"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double& operator[] </td>
+          <td class="memname">qreal& operator[] </td>
           <td>(</td>
           <td class="paramtype">int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
@@ -944,7 +944,7 @@ You may normalize() it after each application in case of numerical drift.  </pre
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Bracket operator returning an l-value. <code>i</code> must range in [0..3]. See the <a class="el" href="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45">Quaternion(double, double, double, double)</a> documentation. </p>
+<p>Bracket operator returning an l-value. <code>i</code> must range in [0..3]. See the <a class="el" href="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba">Quaternion(qreal, qreal, qreal, qreal)</a> documentation. </p>
 
 </div>
 </div>
@@ -992,7 +992,7 @@ You may normalize() it after each application in case of numerical drift.  </pre
 
 </div>
 </div>
-<a class="anchor" id="ad6bd25e80a18f6bd38ae5c4e5337b53b"></a>
+<a class="anchor" id="ae903a46cefc96e2d13096d5b891d9c81"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -1005,7 +1005,7 @@ You may normalize() it after each application in case of numerical drift.  </pre
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>angle</em> </td>
         </tr>
         <tr>
@@ -1053,18 +1053,18 @@ You may normalize() it after each application in case of numerical drift.  </pre
 <div class="line">q.setFromRotatedBasis(X, Y, Z);</div>
 <div class="line"><span class="comment">// Now q.rotate(Vec(1,0,0)) == X and q.inverseRotate(X) == Vec(1,0,0)</span></div>
 <div class="line"><span class="comment">// Same goes for Y and Z with Vec(0,1,0) and Vec(0,0,1).</span></div>
-</div><!-- fragment --><p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac">setFromRotationMatrix()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634">Quaternion(const Vec&, const Vec&)</a>. </p>
+</div><!-- fragment --><p>See also <a class="el" href="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f">setFromRotationMatrix()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634">Quaternion(const Vec&, const Vec&)</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="a1880f20e8080ee670b6a88ed0c7d69ac"></a>
+<a class="anchor" id="a96216d678555ef6ba307e2d4de62831f"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setFromRotationMatrix </td>
           <td>(</td>
-          <td class="paramtype">const double </td>
+          <td class="paramtype">const qreal </td>
           <td class="paramname"><em>m</em>[3][3]</td><td>)</td>
           <td></td>
         </tr>
@@ -1076,32 +1076,32 @@ You may normalize() it after each application in case of numerical drift.  </pre
 
 </div>
 </div>
-<a class="anchor" id="abe7dd94e4fb48e0c8e0d994cac84064a"></a>
+<a class="anchor" id="a9d93de4b634adf83674a3528a02f76db"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setValue </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q0</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q1</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q2</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>q3</em> </td>
         </tr>
         <tr>
@@ -1111,11 +1111,11 @@ You may normalize() it after each application in case of numerical drift.  </pre
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Sets the Quaternion value. See the <a class="el" href="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45">Quaternion(double, double, double, double)</a> constructor documentation. </p>
+<p>Sets the Quaternion value. See the <a class="el" href="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba">Quaternion(qreal, qreal, qreal, qreal)</a> constructor documentation. </p>
 
 </div>
 </div>
-<a class="anchor" id="a755201c9a752fd892a3656a517b190e4"></a>
+<a class="anchor" id="acb4a39b01841afcc686e81c0a4a375a6"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1137,7 +1137,7 @@ You may normalize() it after each application in case of numerical drift.  </pre
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>t</em>, </td>
         </tr>
         <tr>
@@ -1164,7 +1164,7 @@ You may normalize() it after each application in case of numerical drift.  </pre
 
 </div>
 </div>
-<a class="anchor" id="a4b218b205d88a4dd50c8de38522b5812"></a>
+<a class="anchor" id="a00d67192e2f29685ebcd08502465c0bf"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1198,7 +1198,7 @@ You may normalize() it after each application in case of numerical drift.  </pre
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">float </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>t</em> </td>
         </tr>
         <tr>
@@ -1257,7 +1257,7 @@ You may normalize() it after each application in case of numerical drift.  </pre
 </table>
 </div><div class="memdoc">
 <p>Returns a tangent Quaternion for <code>center</code>, defined by <code>before</code> and <code>after</code> Quaternions.</p>
-<p>Useful for smooth spline interpolation of Quaternion with <a class="el" href="classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812">squad()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4">slerp()</a>. </p>
+<p>Useful for smooth spline interpolation of Quaternion with <a class="el" href="classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf">squad()</a> and <a class="el" href="classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6">slerp()</a>. </p>
 
 </div>
 </div>
@@ -1341,7 +1341,7 @@ case of numerical drift with small rotation composition.  </pre>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Vec-members.html b/doc/refManual/classqglviewer_1_1Vec-members.html
index 6823a35..0a8360f 100644
--- a/doc/refManual/classqglviewer_1_1Vec-members.html
+++ b/doc/refManual/classqglviewer_1_1Vec-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -98,46 +98,46 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e">cross</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a48e0e2dd26cd96418c8b889ceabe80f6">domElement</a>(const QString &name, QDomDocument &document) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement</a>(const QDomElement &element)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a">norm</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231">normalize</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b">norm</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639">normalize</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ad8df949331fe927b4cb5d9bf4685ed35">operator const double *</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a54795c57f1d998af73b630d786de2932">operator const float *</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9">operator double *</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54">operator!=</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52">operator*</a>(const Vec &a, double k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9">operator*</a>(double k, const Vec &a)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ae8b74b239e9752e017105b61239eb54e">operator*</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9">operator*=</a>(double k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d">operator*</a>(const Vec &a, qreal k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5">operator*</a>(qreal k, const Vec &a)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a941c47349fbb80d0a53f524e7a2c5702">operator*</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba">operator*=</a>(qreal k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7">operator+</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e">operator+=</a>(const Vec &a)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc">operator-</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373">operator-</a>(const Vec &a)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571">operator-=</a>(const Vec &a)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206">operator/</a>(const Vec &a, double k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4">operator/=</a>(double k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270">operator/</a>(const Vec &a, qreal k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22">operator/=</a>(qreal k)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a16d5f2f021103b05006b0c58fbd48796">operator<<</a>(std::ostream &o, const qglviewer::Vec &)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a9d105072fa3c0fc1e66c162ba083fee8">operator=</a>(const Vec &v)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f">operator==</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f">operator[]</a>(int i) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b">operator[]</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a">operator[]</a>(int i) const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e">operator[]</a>(int i)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317">operator^</a>(const Vec &a, const Vec &b)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d">orthogonalVec</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a8c89e6f39afb5bd92e4cae4ffa6c3221">projectOnAxis</a>(const Vec &direction)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a6ed4feca0d9a299bdc68632eb7db51b9">projectOnPlane</a>(const Vec &normal)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa">setValue</a>(double X, double Y, double Z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e">squaredNorm</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5">setValue</a>(qreal X, qreal Y, qreal Z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153">squaredNorm</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a7f3923a61bb70c53263379de9783d265">unit</a>() const </td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0">Vec</a>()</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6">Vec</a>(double X, double Y, double Z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911">Vec</a>(qreal X, qreal Y, qreal Z)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592">Vec</a>(const C &c)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
   <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a">Vec</a>(const QDomElement &element)</td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10">x</a></td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a">y</a></td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872">z</a></td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580">x</a></td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10">y</a></td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded">z</a></td><td class="entry"><a class="el" href="classqglviewer_1_1Vec.html">Vec</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1Vec.html b/doc/refManual/classqglviewer_1_1Vec.html
index 6071243..8e50bdf 100644
--- a/doc/refManual/classqglviewer_1_1Vec.html
+++ b/doc/refManual/classqglviewer_1_1Vec.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -101,33 +101,33 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
 Public Attributes</h2></td></tr>
-<tr class="memitem:af88b946fb90d5f08b5fb740c70e98c10"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10">x</a></td></tr>
-<tr class="separator:af88b946fb90d5f08b5fb740c70e98c10"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab927965981178aa1fba979a37168db2a"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a">y</a></td></tr>
-<tr class="separator:ab927965981178aa1fba979a37168db2a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab3e6ed577a7c669c19de1f9c1b46c872"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872">z</a></td></tr>
-<tr class="separator:ab3e6ed577a7c669c19de1f9c1b46c872"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:af5d08234e79004c62c1be19bf4471580"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580">x</a></td></tr>
+<tr class="separator:af5d08234e79004c62c1be19bf4471580"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aa73e2d855b90eb2152e249a594362b10"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10">y</a></td></tr>
+<tr class="separator:aa73e2d855b90eb2152e249a594362b10"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a27c6cea8c416bf2e88f7b9065ef02ded"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded">z</a></td></tr>
+<tr class="separator:a27c6cea8c416bf2e88f7b9065ef02ded"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Setting the value</h2></td></tr>
 <tr class="memitem:a82cf7e1c93ee9188fefb25b86fc6c5b0"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0">Vec</a> ()</td></tr>
 <tr class="separator:a82cf7e1c93ee9188fefb25b86fc6c5b0"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a3ce512deca2281c1d19ac001ed44f7c6"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6">Vec</a> (double X, double Y, double Z)</td></tr>
-<tr class="separator:a3ce512deca2281c1d19ac001ed44f7c6"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a19dbb15aecdc359210d94912edeec911"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911">Vec</a> (qreal X, qreal Y, qreal Z)</td></tr>
+<tr class="separator:a19dbb15aecdc359210d94912edeec911"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a87fee74d73a2a9228715567c445c3592"><td class="memTemplParams" colspan="2">template<class C > </td></tr>
 <tr class="memitem:a87fee74d73a2a9228715567c445c3592"><td class="memTemplItemLeft" align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592">Vec</a> (const C &c)</td></tr>
 <tr class="separator:a87fee74d73a2a9228715567c445c3592"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a9d105072fa3c0fc1e66c162ba083fee8"><td class="memItemLeft" align="right" valign="top">Vec & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a9d105072fa3c0fc1e66c162ba083fee8">operator=</a> (const Vec &v)</td></tr>
 <tr class="separator:a9d105072fa3c0fc1e66c162ba083fee8"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab4794e5d9a45a51ab239593116c480aa"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa">setValue</a> (double X, double Y, double Z)</td></tr>
-<tr class="separator:ab4794e5d9a45a51ab239593116c480aa"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a117fec7daec0df5a1c794d942ad08cb5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5">setValue</a> (qreal X, qreal Y, qreal Z)</td></tr>
+<tr class="separator:a117fec7daec0df5a1c794d942ad08cb5"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Accessing the value</h2></td></tr>
-<tr class="memitem:a605b34d1fc87b2ccaf49a45419c2e46f"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f">operator[]</a> (int i) const </td></tr>
-<tr class="separator:a605b34d1fc87b2ccaf49a45419c2e46f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:af1a8c9c4769161714a5a1a2c7fad446b"><td class="memItemLeft" align="right" valign="top">double & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b">operator[]</a> (int i)</td></tr>
-<tr class="separator:af1a8c9c4769161714a5a1a2c7fad446b"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:afe97b7787c6981248d1117c5fd14619a"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a">operator[]</a> (int i) const </td></tr>
+<tr class="separator:afe97b7787c6981248d1117c5fd14619a"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a9e7f720c3b3b086f7aac81e480ea778e"><td class="memItemLeft" align="right" valign="top">qreal & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e">operator[]</a> (int i)</td></tr>
+<tr class="separator:a9e7f720c3b3b086f7aac81e480ea778e"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:ad8df949331fe927b4cb5d9bf4685ed35"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ad8df949331fe927b4cb5d9bf4685ed35">operator const double *</a> () const </td></tr>
 <tr class="separator:ad8df949331fe927b4cb5d9bf4685ed35"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a028d1a021933d2f2a576efd9b7c4a7e9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9">operator double *</a> ()</td></tr>
@@ -141,10 +141,10 @@ Algebraic computations</h2></td></tr>
 <tr class="separator:a3be0b4bc904d39b75329eae40177240e"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:afa0c39c7dfe9db8b942f01f330925571"><td class="memItemLeft" align="right" valign="top">Vec & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571">operator-=</a> (const Vec &a)</td></tr>
 <tr class="separator:afa0c39c7dfe9db8b942f01f330925571"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a60ede4c4ea0d28e41335732ee7500fe9"><td class="memItemLeft" align="right" valign="top">Vec & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9">operator*=</a> (double k)</td></tr>
-<tr class="separator:a60ede4c4ea0d28e41335732ee7500fe9"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a9909f96f977d8d0bfabeb0331f6a69e4"><td class="memItemLeft" align="right" valign="top">Vec & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4">operator/=</a> (double k)</td></tr>
-<tr class="separator:a9909f96f977d8d0bfabeb0331f6a69e4"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:aac886f0c513c5ae07bdc9af149658dba"><td class="memItemLeft" align="right" valign="top">Vec & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba">operator*=</a> (qreal k)</td></tr>
+<tr class="separator:aac886f0c513c5ae07bdc9af149658dba"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a0fb079a45fba8116b30717d048c94b22"><td class="memItemLeft" align="right" valign="top">Vec & </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22">operator/=</a> (qreal k)</td></tr>
+<tr class="separator:a0fb079a45fba8116b30717d048c94b22"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a30d49f3d3753a7111fc67cdde253a43d"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d">orthogonalVec</a> () const </td></tr>
 <tr class="separator:a30d49f3d3753a7111fc67cdde253a43d"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:abc7a7829beaefabef78bbf1aa8aa69f7"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7">operator+</a> (const Vec &a, const Vec &b)</td></tr>
@@ -153,18 +153,18 @@ Algebraic computations</h2></td></tr>
 <tr class="separator:a84bd051b693ee420203ae5947ac38bdc"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a780b6fbbee93774c986eb645dc5c6373"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373">operator-</a> (const Vec &a)</td></tr>
 <tr class="separator:a780b6fbbee93774c986eb645dc5c6373"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae579ff9811fb814a1c19526300feba52"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52">operator*</a> (const Vec &a, double k)</td></tr>
-<tr class="separator:ae579ff9811fb814a1c19526300feba52"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ab1a8646ebc64cad8c3b98af9c33c16a9"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9">operator*</a> (double k, const Vec &a)</td></tr>
-<tr class="separator:ab1a8646ebc64cad8c3b98af9c33c16a9"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:aea982cdbaafc94cc70f99f176f431206"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206">operator/</a> (const Vec &a, double k)</td></tr>
-<tr class="separator:aea982cdbaafc94cc70f99f176f431206"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a902b74d17f4fd5ff37bfd81f0304300d"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d">operator*</a> (const Vec &a, qreal k)</td></tr>
+<tr class="separator:a902b74d17f4fd5ff37bfd81f0304300d"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ab31a7e0c3cbca5395eb59cb45236cce5"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5">operator*</a> (qreal k, const Vec &a)</td></tr>
+<tr class="separator:ab31a7e0c3cbca5395eb59cb45236cce5"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a0b311e215c03e4c4a2ee856255849270"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270">operator/</a> (const Vec &a, qreal k)</td></tr>
+<tr class="separator:a0b311e215c03e4c4a2ee856255849270"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aa694f4dad59f93a8b8364d1b9cbdfd54"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54">operator!=</a> (const Vec &a, const Vec &b)</td></tr>
 <tr class="separator:aa694f4dad59f93a8b8364d1b9cbdfd54"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:aa36a8f02bb5bd8f5ab8532a79ceb4e9f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f">operator==</a> (const Vec &a, const Vec &b)</td></tr>
 <tr class="separator:aa36a8f02bb5bd8f5ab8532a79ceb4e9f"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:ae8b74b239e9752e017105b61239eb54e"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ae8b74b239e9752e017105b61239eb54e">operator*</a> (const Vec &a, const Vec &b)</td></tr>
-<tr class="separator:ae8b74b239e9752e017105b61239eb54e"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a941c47349fbb80d0a53f524e7a2c5702"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a941c47349fbb80d0a53f524e7a2c5702">operator*</a> (const Vec &a, const Vec &b)</td></tr>
+<tr class="separator:a941c47349fbb80d0a53f524e7a2c5702"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:af521e6619361cc97fff70ae3115e0317"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317">operator^</a> (const Vec &a, const Vec &b)</td></tr>
 <tr class="separator:af521e6619361cc97fff70ae3115e0317"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a835244f47bc3744aed547f6ae814e13e"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e">cross</a> (const Vec &a, const Vec &b)</td></tr>
@@ -172,12 +172,12 @@ Algebraic computations</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
 Norm of the vector</h2></td></tr>
-<tr class="memitem:a7dcf0710a7514d91ab4ba6aaefde110e"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e">squaredNorm</a> () const </td></tr>
-<tr class="separator:a7dcf0710a7514d91ab4ba6aaefde110e"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a0c08e460a130fd3b8eff7eb7484e878a"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a">norm</a> () const </td></tr>
-<tr class="separator:a0c08e460a130fd3b8eff7eb7484e878a"><td class="memSeparator" colspan="2"> </td></tr>
-<tr class="memitem:a05826e509c686f39baaec4656f1a7231"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231">normalize</a> ()</td></tr>
-<tr class="separator:a05826e509c686f39baaec4656f1a7231"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a6840b3e560838c49775c0ec52ac27153"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153">squaredNorm</a> () const </td></tr>
+<tr class="separator:a6840b3e560838c49775c0ec52ac27153"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:ad9e3919ecb07829c2ca53303f2d10d4b"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b">norm</a> () const </td></tr>
+<tr class="separator:ad9e3919ecb07829c2ca53303f2d10d4b"><td class="memSeparator" colspan="2"> </td></tr>
+<tr class="memitem:a5d64fc0ded287d65bf6e4fce7bbee639"><td class="memItemLeft" align="right" valign="top">qreal </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639">normalize</a> ()</td></tr>
+<tr class="separator:a5d64fc0ded287d65bf6e4fce7bbee639"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a7f3923a61bb70c53263379de9783d265"><td class="memItemLeft" align="right" valign="top">Vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classqglviewer_1_1Vec.html#a7f3923a61bb70c53263379de9783d265">unit</a> () const </td></tr>
 <tr class="separator:a7f3923a61bb70c53263379de9783d265"><td class="memSeparator" colspan="2"> </td></tr>
 </table><table class="memberdecls">
@@ -231,26 +231,26 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a3ce512deca2281c1d19ac001ed44f7c6"></a>
+<a class="anchor" id="a19dbb15aecdc359210d94912edeec911"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">Vec </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>X</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>Y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>Z</em> </td>
         </tr>
         <tr>
@@ -289,12 +289,12 @@ Output stream</h2></td></tr>
 <div class="fragment"><div class="line"><span class="keyword">class </span>MyVec</div>
 <div class="line">{</div>
 <div class="line">      <span class="comment">// ...</span></div>
-<div class="line">      <span class="keywordtype">double</span> <a class="code" href="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f">operator[]</a>(<span class="keywordtype">int</span> i)<span class="keyword"> const </span>{ returns <a class="code" href="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10">x</a>, y or <a class="code" href="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872">z</a> when i=0, 1 or 2; }</div>
+<div class="line">      qreal <a class="code" href="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a">operator[]</a>(<span class="keywordtype">int</span> i)<span class="keyword"> const </span>{ returns <a class="code" href="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580">x</a>, y or <a class="code" href="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded">z</a> when i=0, 1 or 2; }</div>
 <div class="line">}</div>
 <div class="line"></div>
 <div class="line">MyVec v(...);</div>
 <div class="line">camera()->setPosition(v);</div>
-</div><!-- fragment --><p>Note that standard vector types (STL, <code>double</code>[3], ...) implement this operator and can hence be used in place of Vec. See also operator const double*() . </p>
+</div><!-- fragment --><p>Note that standard vector types (STL, <code>qreal</code>[3], ...) implement this operator and can hence be used in place of Vec. See also operator const qreal*() . </p>
 
 </div>
 </div>
@@ -319,7 +319,7 @@ Output stream</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Constructs a Vec from a <code>QDomElement</code> representing an XML code of the form </p><div class="fragment"><div class="line">< anyTagName x=<span class="stringliteral">".."</span> y=<span class="stringliteral">".."</span> <a class="code" href="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872">z</a>=<span class="stringliteral">".."</span> /></div>
+<p>Constructs a Vec from a <code>QDomElement</code> representing an XML code of the form </p><div class="fragment"><div class="line">< anyTagName x=<span class="stringliteral">".."</span> y=<span class="stringliteral">".."</span> <a class="code" href="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded">z</a>=<span class="stringliteral">".."</span> /></div>
 </div><!-- fragment --><p>If one of these attributes is missing or is not a number, a warning is displayed and the associated value is set to 0.0.</p>
 <p>See also <a class="el" href="classqglviewer_1_1Vec.html#a48e0e2dd26cd96418c8b889ceabe80f6">domElement()</a> and <a class="el" href="classqglviewer_1_1Vec.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement()</a>. </p>
 
@@ -351,7 +351,7 @@ Output stream</h2></td></tr>
 </div><div class="memdoc">
 <p>Returns an XML <code>QDomElement</code> that represents the Vec.</p>
 <p><code>name</code> is the name of the QDomElement tag. <code>doc</code> is the <code>QDomDocument</code> factory used to create QDomElement.</p>
-<p>When output to a file, the resulting QDomElement will look like: </p><div class="fragment"><div class="line"><name x=<span class="stringliteral">".."</span> y=<span class="stringliteral">".."</span> <a class="code" href="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872">z</a>=<span class="stringliteral">".."</span> /></div>
+<p>When output to a file, the resulting QDomElement will look like: </p><div class="fragment"><div class="line"><name x=<span class="stringliteral">".."</span> y=<span class="stringliteral">".."</span> <a class="code" href="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded">z</a>=<span class="stringliteral">".."</span> /></div>
 </div><!-- fragment --><p>Use <a class="el" href="classqglviewer_1_1Vec.html#acd13d2ddeca530cb9f26ead47f7d25d3">initFromDOMElement()</a> to restore the Vec state from the resulting <code>QDomElement</code>. See also the <a class="el" href="classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a">Vec(const QDomElement&)</a> constructor.</p>
 <p>Here is complete example that creates a QDomDocument and saves it into a file: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0">Vec</a> sunPos;</div>
 <div class="line">QDomDocument document(<span class="stringliteral">"myDocument"</span>);</div>
@@ -403,12 +403,12 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a0c08e460a130fd3b8eff7eb7484e878a"></a>
+<a class="anchor" id="ad9e3919ecb07829c2ca53303f2d10d4b"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double norm </td>
+          <td class="memname">qreal norm </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -419,12 +419,12 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a05826e509c686f39baaec4656f1a7231"></a>
+<a class="anchor" id="a5d64fc0ded287d65bf6e4fce7bbee639"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double normalize </td>
+          <td class="memname">qreal normalize </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td></td>
@@ -449,7 +449,7 @@ Output stream</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Conversion operator returning the memory address of the vector.</p>
-<p>Very convenient to pass a Vec pointer as a parameter to OpenGL functions: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0">Vec</a> pos, normal;</div>
+<p>Very convenient to pass a Vec pointer as a parameter to <code>GLdouble</code> OpenGL functions: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0">Vec</a> pos, normal;</div>
 <div class="line">glNormal3dv(normal);</div>
 <div class="line">glVertex3dv(pos);</div>
 </div><!-- fragment --> 
@@ -468,7 +468,7 @@ Output stream</h2></td></tr>
       </table>
 </div><div class="memdoc">
 <p>Conversion operator returning the memory address of the vector.</p>
-<p>Very convenient to pass a Vec pointer as a parameter to OpenGL functions: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0">Vec</a> pos, normal;</div>
+<p>Very convenient to pass a Vec pointer as a <code>float</code> parameter to OpenGL functions: </p><div class="fragment"><div class="line"><a class="code" href="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0">Vec</a> pos, normal;</div>
 <div class="line">glNormal3fv(normal);</div>
 <div class="line">glVertex3fv(pos);</div>
 </div><!-- fragment --> <dl class="section note"><dt>Note</dt><dd>The returned float array is a static shared by all <code>Vec</code> instances. </dd></dl>
@@ -492,14 +492,14 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a60ede4c4ea0d28e41335732ee7500fe9"></a>
+<a class="anchor" id="aac886f0c513c5ae07bdc9af149658dba"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">Vec& operator*= </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>k</em></td><td>)</td>
           <td></td>
         </tr>
@@ -543,14 +543,14 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a9909f96f977d8d0bfabeb0331f6a69e4"></a>
+<a class="anchor" id="a0fb079a45fba8116b30717d048c94b22"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">Vec& operator/= </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>k</em></td><td>)</td>
           <td></td>
         </tr>
@@ -606,12 +606,12 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a605b34d1fc87b2ccaf49a45419c2e46f"></a>
+<a class="anchor" id="afe97b7787c6981248d1117c5fd14619a"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double operator[] </td>
+          <td class="memname">qreal operator[] </td>
           <td>(</td>
           <td class="paramtype">int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
@@ -623,12 +623,12 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="af1a8c9c4769161714a5a1a2c7fad446b"></a>
+<a class="anchor" id="a9e7f720c3b3b086f7aac81e480ea778e"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double& operator[] </td>
+          <td class="memname">qreal& operator[] </td>
           <td>(</td>
           <td class="paramtype">int </td>
           <td class="paramname"><em>i</em></td><td>)</td>
@@ -652,7 +652,7 @@ Output stream</h2></td></tr>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>Returns a Vec orthogonal to the Vec. Its <a class="el" href="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a">norm()</a> depends on the Vec, but is zero only for a null Vec. Note that the function that associates an <a class="el" href="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d">orthogonalVec()</a> to a Vec is not continous. </p>
+<p>Returns a Vec orthogonal to the Vec. Its <a class="el" href="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b">norm()</a> depends on the Vec, but is zero only for a null Vec. Note that the function that associates an <a class="el" href="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d">orthogonalVec()</a> to a Vec is not continous. </p>
 
 </div>
 </div>
@@ -692,26 +692,26 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ab4794e5d9a45a51ab239593116c480aa"></a>
+<a class="anchor" id="a117fec7daec0df5a1c794d942ad08cb5"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void setValue </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>X</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>Y</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>Z</em> </td>
         </tr>
         <tr>
@@ -725,12 +725,12 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="a7dcf0710a7514d91ab4ba6aaefde110e"></a>
+<a class="anchor" id="a6840b3e560838c49775c0ec52ac27153"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double squaredNorm </td>
+          <td class="memname">qreal squaredNorm </td>
           <td>(</td>
           <td class="paramname"></td><td>)</td>
           <td> const</td>
@@ -828,7 +828,7 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ae579ff9811fb814a1c19526300feba52"></a>
+<a class="anchor" id="a902b74d17f4fd5ff37bfd81f0304300d"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -844,7 +844,7 @@ Output stream</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>k</em> </td>
         </tr>
         <tr>
@@ -863,7 +863,7 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ab1a8646ebc64cad8c3b98af9c33c16a9"></a>
+<a class="anchor" id="ab31a7e0c3cbca5395eb59cb45236cce5"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -873,7 +873,7 @@ Output stream</h2></td></tr>
         <tr>
           <td class="memname">Vec operator* </td>
           <td>(</td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>k</em>, </td>
         </tr>
         <tr>
@@ -898,7 +898,7 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="ae8b74b239e9752e017105b61239eb54e"></a>
+<a class="anchor" id="a941c47349fbb80d0a53f524e7a2c5702"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -906,7 +906,7 @@ Output stream</h2></td></tr>
   <td class="mlabels-left">
       <table class="memname">
         <tr>
-          <td class="memname">double operator* </td>
+          <td class="memname">qreal operator* </td>
           <td>(</td>
           <td class="paramtype">const Vec & </td>
           <td class="paramname"><em>a</em>, </td>
@@ -1028,7 +1028,7 @@ Output stream</h2></td></tr>
 
 </div>
 </div>
-<a class="anchor" id="aea982cdbaafc94cc70f99f176f431206"></a>
+<a class="anchor" id="a0b311e215c03e4c4a2ee856255849270"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -1044,7 +1044,7 @@ Output stream</h2></td></tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">double </td>
+          <td class="paramtype">qreal </td>
           <td class="paramname"><em>k</em> </td>
         </tr>
         <tr>
@@ -1095,7 +1095,7 @@ Output stream</h2></td></tr>
   </tr>
 </table>
 </div><div class="memdoc">
-<p>Returns <code>true</code> when the <a class="el" href="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e">squaredNorm()</a> of the difference vector is lower than 1E-10. </p>
+<p>Returns <code>true</code> when the <a class="el" href="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153">squaredNorm()</a> of the difference vector is lower than 1E-10. </p>
 
 </div>
 </div>
@@ -1135,37 +1135,37 @@ Output stream</h2></td></tr>
 </div>
 </div>
 <h2 class="groupheader">Member Data Documentation</h2>
-<a class="anchor" id="af88b946fb90d5f08b5fb740c70e98c10"></a>
+<a class="anchor" id="af5d08234e79004c62c1be19bf4471580"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double x</td>
+          <td class="memname">qreal x</td>
         </tr>
       </table>
 </div><div class="memdoc">
-<p>The internal data representation is public. One can use v.x, v.y, v.z. See also <a class="el" href="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f">operator[]()</a>. </p>
+<p>The internal data representation is public. One can use v.x, v.y, v.z. See also <a class="el" href="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a">operator[]()</a>. </p>
 
 </div>
 </div>
-<a class="anchor" id="ab927965981178aa1fba979a37168db2a"></a>
+<a class="anchor" id="aa73e2d855b90eb2152e249a594362b10"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double y</td>
+          <td class="memname">qreal y</td>
         </tr>
       </table>
 </div><div class="memdoc">
 
 </div>
 </div>
-<a class="anchor" id="ab3e6ed577a7c669c19de1f9c1b46c872"></a>
+<a class="anchor" id="a27c6cea8c416bf2e88f7b9065ef02ded"></a>
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">double z</td>
+          <td class="memname">qreal z</td>
         </tr>
       </table>
 </div><div class="memdoc">
@@ -1175,7 +1175,7 @@ Output stream</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1WorldConstraint-members.html b/doc/refManual/classqglviewer_1_1WorldConstraint-members.html
index 0825fd0..abd9bbf 100644
--- a/doc/refManual/classqglviewer_1_1WorldConstraint-members.html
+++ b/doc/refManual/classqglviewer_1_1WorldConstraint-members.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/classqglviewer_1_1WorldConstraint.html b/doc/refManual/classqglviewer_1_1WorldConstraint.html
index c5858ee..4688de7 100644
--- a/doc/refManual/classqglviewer_1_1WorldConstraint.html
+++ b/doc/refManual/classqglviewer_1_1WorldConstraint.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -253,7 +253,7 @@ Additional Inherited Members</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/config_8h.html b/doc/refManual/config_8h.html
index fa589b0..1ba7773 100644
--- a/doc/refManual/config_8h.html
+++ b/doc/refManual/config_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -96,7 +96,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
 Macros</h2></td></tr>
-<tr class="memitem:a31753aa03177ca4c55bb1054ceb23107"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="config_8h.html#a31753aa03177ca4c55bb1054ceb23107">QGLVIEWER_VERSION</a>   0x020503</td></tr>
+<tr class="memitem:a31753aa03177ca4c55bb1054ceb23107"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="config_8h.html#a31753aa03177ca4c55bb1054ceb23107">QGLVIEWER_VERSION</a>   0x020601</td></tr>
 <tr class="separator:a31753aa03177ca4c55bb1054ceb23107"><td class="memSeparator" colspan="2"> </td></tr>
 <tr class="memitem:a1e9c4d889526b73d9f4d5c688ae88c07"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="config_8h.html#a1e9c4d889526b73d9f4d5c688ae88c07">QT_CLEAN_NAMESPACE</a></td></tr>
 <tr class="separator:a1e9c4d889526b73d9f4d5c688ae88c07"><td class="memSeparator" colspan="2"> </td></tr>
@@ -121,7 +121,7 @@ Macros</h2></td></tr>
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define QGLVIEWER_VERSION   0x020503</td>
+          <td class="memname">#define QGLVIEWER_VERSION   0x020601</td>
         </tr>
       </table>
 </div><div class="memdoc">
@@ -143,7 +143,7 @@ Macros</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/constraint_8cpp.html b/doc/refManual/constraint_8cpp.html
index 72b1c0a..a49d5b3 100644
--- a/doc/refManual/constraint_8cpp.html
+++ b/doc/refManual/constraint_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/constraint_8h.html b/doc/refManual/constraint_8h.html
index 9e7c749..45aff13 100644
--- a/doc/refManual/constraint_8h.html
+++ b/doc/refManual/constraint_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -121,7 +121,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/dir_0d5ec90603fafeb6b6840b6051802ddc.html b/doc/refManual/dir_0d5ec90603fafeb6b6840b6051802ddc.html
index ea548e9..ba77885 100644
--- a/doc/refManual/dir_0d5ec90603fafeb6b6840b6051802ddc.html
+++ b/doc/refManual/dir_0d5ec90603fafeb6b6840b6051802ddc.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -138,7 +138,7 @@ Files</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/domUtils_8h.html b/doc/refManual/domUtils_8h.html
index 8472d95..d688be4 100644
--- a/doc/refManual/domUtils_8h.html
+++ b/doc/refManual/domUtils_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/files.html b/doc/refManual/files.html
index 03e501c..d5aad32 100644
--- a/doc/refManual/files.html
+++ b/doc/refManual/files.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/frame_8cpp.html b/doc/refManual/frame_8cpp.html
index f445440..5c26ec7 100644
--- a/doc/refManual/frame_8cpp.html
+++ b/doc/refManual/frame_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/frame_8h.html b/doc/refManual/frame_8h.html
index f19dfb5..76ff6a6 100644
--- a/doc/refManual/frame_8h.html
+++ b/doc/refManual/frame_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -109,7 +109,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions.html b/doc/refManual/functions.html
index 6e880fe..e1f0b17 100644
--- a/doc/refManual/functions.html
+++ b/doc/refManual/functions.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -134,13 +134,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82">MouseGrabber</a>
 </li>
 <li>addKeyFrame()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a">KeyFrameInterpolator</a>
 </li>
 <li>addKeyFrameKeyboardModifiers()
 : <a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">QGLViewer</a>
 </li>
 <li>addKeyFrameToPath()
-: <a class="el" href="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4">Camera</a>
 </li>
 <li>ALIGN_CAMERA
 : <a class="el" href="classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa35685e5c7e681c3c0eb079e4f132a82a">QGLViewer</a>
@@ -149,10 +149,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa3d318f59bc81979e3922c7e716085304">QGLViewer</a>
 </li>
 <li>alignWithFrame()
-: <a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">Frame</a>
 </li>
 <li>angle()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495">Quaternion</a>
 </li>
 <li>animate()
 : <a class="el" href="classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2">QGLViewer</a>
@@ -170,8 +170,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a700d9398d4293d9274766efa8b17917e">QGLViewer</a>
 </li>
 <li>aspectRatio()
-: <a class="el" href="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1">QGLViewer</a>
-, <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">Camera</a>
+: <a class="el" href="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01">QGLViewer</a>
+, <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">Camera</a>
 </li>
 <li>autoBufferSwap()
 : <a class="el" href="classQGLViewer.html#a36faca915c37548a53ab04f297bb5c17">QGLViewer</a>
@@ -195,7 +195,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_b.html b/doc/refManual/functions_b.html
index ff20bc0..24fe3e7 100644
--- a/doc/refManual/functions_b.html
+++ b/doc/refManual/functions_b.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -137,16 +137,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">QGLViewer</a>
 </li>
 <li>bufferTextureMaxU()
-: <a class="el" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">QGLViewer</a>
 </li>
 <li>bufferTextureMaxV()
-: <a class="el" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">QGLViewer</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_c.html b/doc/refManual/functions_c.html
index 54096a2..562b53b 100644
--- a/doc/refManual/functions_c.html
+++ b/doc/refManual/functions_c.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -230,7 +230,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e">Vec</a>
 </li>
 <li>currentFPS()
-: <a class="el" href="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56">QGLViewer</a>
 </li>
 <li>currentMouseAction()
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aff4f89e6418df47cf2b269cf23c76ed4">ManipulatedFrame</a>
@@ -239,7 +239,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_d.html b/doc/refManual/functions_d.html
index 4e30d42..992dd1d 100644
--- a/doc/refManual/functions_d.html
+++ b/doc/refManual/functions_d.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -131,7 +131,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a595e91c7270892a31306f01e105c1dd8">QGLViewer</a>
 </li>
 <li>deletePath()
-: <a class="el" href="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f">Camera</a>
 , <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34">KeyFrameInterpolator</a>
 </li>
 <li>DISPLAY_FPS
@@ -144,7 +144,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337">QGLViewer</a>
 </li>
 <li>distanceToSceneCenter()
-: <a class="el" href="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639">Camera</a>
 </li>
 <li>domElement()
 : <a class="el" href="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6">Camera</a>
@@ -157,10 +157,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="classqglviewer_1_1Vec.html#a48e0e2dd26cd96418c8b889ceabe80f6">Vec</a>
 </li>
 <li>dot()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb">Quaternion</a>
 </li>
 <li>draw()
-: <a class="el" href="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b">Camera</a>
 , <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">QGLViewer</a>
 </li>
 <li>DRAW_AXIS
@@ -173,25 +173,25 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87">Camera</a>
 </li>
 <li>drawArrow()
-: <a class="el" href="classQGLViewer.html#a27edb1331c7bf373d126487e9547969f">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc">QGLViewer</a>
 </li>
 <li>drawAxis()
-: <a class="el" href="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc">QGLViewer</a>
 </li>
 <li>drawFinished()
 : <a class="el" href="classQGLViewer.html#afc74e28548768da157f2fe75bced2803">QGLViewer</a>
 </li>
 <li>drawGrid()
-: <a class="el" href="classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a86a359ff8c78755fca0900321293da8f">QGLViewer</a>
 </li>
 <li>drawLight()
-: <a class="el" href="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07">QGLViewer</a>
 </li>
 <li>drawNeeded()
 : <a class="el" href="classQGLViewer.html#a7a712ca70a0b1c22af51363b786fc86e">QGLViewer</a>
 </li>
 <li>drawPath()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">KeyFrameInterpolator</a>
 </li>
 <li>drawText()
 : <a class="el" href="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775">QGLViewer</a>
@@ -203,13 +203,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875af7b6d6d8e5e14633d388ef9cc7a941b7">QGLViewer</a>
 </li>
 <li>duration()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166">KeyFrameInterpolator</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_e.html b/doc/refManual/functions_e.html
index 786d865..51719da 100644
--- a/doc/refManual/functions_e.html
+++ b/doc/refManual/functions_e.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_enum.html b/doc/refManual/functions_enum.html
index c271ef9..2de4264 100644
--- a/doc/refManual/functions_enum.html
+++ b/doc/refManual/functions_enum.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_eval.html b/doc/refManual/functions_eval.html
index d171b27..4a7d5eb 100644
--- a/doc/refManual/functions_eval.html
+++ b/doc/refManual/functions_eval.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -331,7 +331,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_f.html b/doc/refManual/functions_f.html
index 7ea6bcd..f6ffcb1 100644
--- a/doc/refManual/functions_f.html
+++ b/doc/refManual/functions_f.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -131,10 +131,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a8b6601997fe7a83e7cd041104d4b21d2">QGLViewer</a>
 </li>
 <li>fieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">Camera</a>
 </li>
 <li>firstTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">KeyFrameInterpolator</a>
 </li>
 <li>fitBoundingBox()
 : <a class="el" href="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9">Camera</a>
@@ -143,14 +143,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471">Camera</a>
 </li>
 <li>fitSphere()
-: <a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">Camera</a>
 </li>
 <li>flySpeed()
-: <a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">Camera</a>
-, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">ManipulatedCameraFrame</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">Camera</a>
+, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">ManipulatedCameraFrame</a>
 </li>
 <li>focusDistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">Camera</a>
 </li>
 <li>FORBIDDEN
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a1d1cfd8ffb84e947f82999c682b666a7a4b4068e636cd02a6e87e8d3920383d67">AxisPlaneConstraint</a>
@@ -186,7 +186,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func.html b/doc/refManual/functions_func.html
index 820e42d..c4c0a9c 100644
--- a/doc/refManual/functions_func.html
+++ b/doc/refManual/functions_func.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -132,19 +132,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82">MouseGrabber</a>
 </li>
 <li>addKeyFrame()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a">KeyFrameInterpolator</a>
 </li>
 <li>addKeyFrameKeyboardModifiers()
 : <a class="el" href="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1">QGLViewer</a>
 </li>
 <li>addKeyFrameToPath()
-: <a class="el" href="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4">Camera</a>
 </li>
 <li>alignWithFrame()
-: <a class="el" href="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd">Frame</a>
 </li>
 <li>angle()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495">Quaternion</a>
 </li>
 <li>animate()
 : <a class="el" href="classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2">QGLViewer</a>
@@ -159,8 +159,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a700d9398d4293d9274766efa8b17917e">QGLViewer</a>
 </li>
 <li>aspectRatio()
-: <a class="el" href="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1">QGLViewer</a>
-, <a class="el" href="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1">Camera</a>
+: <a class="el" href="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01">QGLViewer</a>
+, <a class="el" href="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01">Camera</a>
 </li>
 <li>autoBufferSwap()
 : <a class="el" href="classQGLViewer.html#a36faca915c37548a53ab04f297bb5c17">QGLViewer</a>
@@ -181,7 +181,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_b.html b/doc/refManual/functions_func_b.html
index d99fd52..bf95e9b 100644
--- a/doc/refManual/functions_func_b.html
+++ b/doc/refManual/functions_func_b.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -135,16 +135,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69">QGLViewer</a>
 </li>
 <li>bufferTextureMaxU()
-: <a class="el" href="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2">QGLViewer</a>
 </li>
 <li>bufferTextureMaxV()
-: <a class="el" href="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9">QGLViewer</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_c.html b/doc/refManual/functions_func_c.html
index fdd990a..48cca2c 100644
--- a/doc/refManual/functions_func_c.html
+++ b/doc/refManual/functions_func_c.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -210,7 +210,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453">QGLViewer</a>
 </li>
 <li>currentFPS()
-: <a class="el" href="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56">QGLViewer</a>
 </li>
 <li>currentMouseAction()
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aff4f89e6418df47cf2b269cf23c76ed4">ManipulatedFrame</a>
@@ -219,7 +219,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_d.html b/doc/refManual/functions_func_d.html
index eda1bef..59c094d 100644
--- a/doc/refManual/functions_func_d.html
+++ b/doc/refManual/functions_func_d.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -126,7 +126,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
 <li>deletePath()
-: <a class="el" href="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f">Camera</a>
 , <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34">KeyFrameInterpolator</a>
 </li>
 <li>displayMessage()
@@ -136,7 +136,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337">QGLViewer</a>
 </li>
 <li>distanceToSceneCenter()
-: <a class="el" href="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639">Camera</a>
 </li>
 <li>domElement()
 : <a class="el" href="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6">Camera</a>
@@ -149,35 +149,35 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="classqglviewer_1_1Vec.html#a48e0e2dd26cd96418c8b889ceabe80f6">Vec</a>
 </li>
 <li>dot()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb">Quaternion</a>
 </li>
 <li>draw()
-: <a class="el" href="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b">Camera</a>
 , <a class="el" href="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0">QGLViewer</a>
 </li>
 <li>drawAllPaths()
 : <a class="el" href="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87">Camera</a>
 </li>
 <li>drawArrow()
-: <a class="el" href="classQGLViewer.html#a27edb1331c7bf373d126487e9547969f">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc">QGLViewer</a>
 </li>
 <li>drawAxis()
-: <a class="el" href="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc">QGLViewer</a>
 </li>
 <li>drawFinished()
 : <a class="el" href="classQGLViewer.html#afc74e28548768da157f2fe75bced2803">QGLViewer</a>
 </li>
 <li>drawGrid()
-: <a class="el" href="classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a86a359ff8c78755fca0900321293da8f">QGLViewer</a>
 </li>
 <li>drawLight()
-: <a class="el" href="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07">QGLViewer</a>
 </li>
 <li>drawNeeded()
 : <a class="el" href="classQGLViewer.html#a7a712ca70a0b1c22af51363b786fc86e">QGLViewer</a>
 </li>
 <li>drawPath()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e">KeyFrameInterpolator</a>
 </li>
 <li>drawText()
 : <a class="el" href="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775">QGLViewer</a>
@@ -186,13 +186,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a528b238068a87472df8ac3a5b2481c55">QGLViewer</a>
 </li>
 <li>duration()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166">KeyFrameInterpolator</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_e.html b/doc/refManual/functions_func_e.html
index 2a8f9af..3bc0e34 100644
--- a/doc/refManual/functions_func_e.html
+++ b/doc/refManual/functions_func_e.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_f.html b/doc/refManual/functions_func_f.html
index a999457..fd31d2f 100644
--- a/doc/refManual/functions_func_f.html
+++ b/doc/refManual/functions_func_f.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -129,10 +129,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a8b6601997fe7a83e7cd041104d4b21d2">QGLViewer</a>
 </li>
 <li>fieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23">Camera</a>
 </li>
 <li>firstTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0">KeyFrameInterpolator</a>
 </li>
 <li>fitBoundingBox()
 : <a class="el" href="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9">Camera</a>
@@ -141,14 +141,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471">Camera</a>
 </li>
 <li>fitSphere()
-: <a class="el" href="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10">Camera</a>
 </li>
 <li>flySpeed()
-: <a class="el" href="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802">Camera</a>
-, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802">ManipulatedCameraFrame</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe">Camera</a>
+, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe">ManipulatedCameraFrame</a>
 </li>
 <li>focusDistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8">Camera</a>
 </li>
 <li>foregroundColor()
 : <a class="el" href="classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d">QGLViewer</a>
@@ -172,7 +172,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_g.html b/doc/refManual/functions_func_g.html
index 65f3889..72f48f2 100644
--- a/doc/refManual/functions_func_g.html
+++ b/doc/refManual/functions_func_g.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -126,49 +126,49 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
 <li>getAxisAngle()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5">Quaternion</a>
 </li>
 <li>getCameraCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878">Camera</a>
 </li>
 <li>getClickActionBinding()
 : <a class="el" href="classQGLViewer.html#ae57d9efa984795d6cfbe85ad594f660f">QGLViewer</a>
 </li>
 <li>getCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">Frame</a>
 </li>
 <li>getCoordinatesOfFrom()
-: <a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">Frame</a>
 </li>
 <li>getCoordinatesOfIn()
-: <a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">Frame</a>
 </li>
 <li>getFrustumPlanesCoefficients()
 : <a class="el" href="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41">Camera</a>
 </li>
 <li>getInverseCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">Frame</a>
 </li>
 <li>getInverseMatrix()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b">Quaternion</a>
 </li>
 <li>getInverseRotationMatrix()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d">Quaternion</a>
 </li>
 <li>getInverseTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">Frame</a>
 </li>
 <li>getLocalCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">Frame</a>
 </li>
 <li>getLocalInverseCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">Frame</a>
 </li>
 <li>getLocalInverseTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">Frame</a>
 </li>
 <li>getLocalTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">Frame</a>
 </li>
 <li>getMatrix()
 : <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">Frame</a>
@@ -184,40 +184,40 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#abcad615739f9ce3e857b94ca945deb5e">QGLViewer</a>
 </li>
 <li>getOrientation()
-: <a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">Frame</a>
 </li>
 <li>getOrthoWidthHeight()
 : <a class="el" href="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa">Camera</a>
 </li>
 <li>getPosition()
-: <a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">Frame</a>
 </li>
 <li>getProjectedCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c">Camera</a>
 </li>
 <li>getProjectionMatrix()
 : <a class="el" href="classqglviewer_1_1Camera.html#a97ff5cf330a6c24d6d49308aedd638bc">Camera</a>
 </li>
 <li>getRotation()
-: <a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">Frame</a>
 </li>
 <li>getRotationMatrix()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1">Quaternion</a>
 </li>
 <li>getTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">Frame</a>
 </li>
 <li>getTransformOfFrom()
-: <a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">Frame</a>
 </li>
 <li>getTransformOfIn()
-: <a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">Frame</a>
 </li>
 <li>getTranslation()
-: <a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">Frame</a>
 </li>
 <li>getUnprojectedCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a">Camera</a>
 </li>
 <li>getViewport()
 : <a class="el" href="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348">Camera</a>
@@ -226,7 +226,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a0f5b32b9880a9f32d590871663713b78">QGLViewer</a>
 </li>
 <li>getWorldCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1">Camera</a>
 </li>
 <li>getWorldMatrix()
 : <a class="el" href="classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead">Frame</a>
@@ -244,7 +244,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_h.html b/doc/refManual/functions_func_h.html
index 3339b02..94d81f4 100644
--- a/doc/refManual/functions_func_h.html
+++ b/doc/refManual/functions_func_h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -144,13 +144,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#af3af989be04f1d45b6ff3f748c2e9d4a">QGLViewer</a>
 </li>
 <li>horizontalFieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">Camera</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_i.html b/doc/refManual/functions_func_i.html
index efeb1b7..ce6df43 100644
--- a/doc/refManual/functions_func_i.html
+++ b/doc/refManual/functions_func_i.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -142,14 +142,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a2d3d45239c78255c23a70ca558b4d4f1">QGLViewer</a>
 </li>
 <li>interpolateAtTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a">KeyFrameInterpolator</a>
 </li>
 <li>interpolated()
 : <a class="el" href="classqglviewer_1_1Frame.html#ab55c2a4f1732b90057fae4b6037399de">Frame</a>
 , <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">KeyFrameInterpolator</a>
 </li>
 <li>interpolateTo()
-: <a class="el" href="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1">Camera</a>
 </li>
 <li>interpolateToFitScene()
 : <a class="el" href="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0">Camera</a>
@@ -164,10 +164,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">KeyFrameInterpolator</a>
 </li>
 <li>interpolationSpeed()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">KeyFrameInterpolator</a>
 </li>
 <li>interpolationTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">KeyFrameInterpolator</a>
 </li>
 <li>inverse()
 : <a class="el" href="classqglviewer_1_1Frame.html#a4534c3188c217feb8d21465d4cefd4ad">Frame</a>
@@ -189,7 +189,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a7fa1616cc61c19a5efcc863c950f7f30">Quaternion</a>
 </li>
 <li>IODistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">Camera</a>
 </li>
 <li>isFullScreen()
 : <a class="el" href="classQGLViewer.html#a129c439f36bb669672148192abc8ffed">QGLViewer</a>
@@ -213,7 +213,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_k.html b/doc/refManual/functions_func_k.html
index e726aee..081f3f3 100644
--- a/doc/refManual/functions_func_k.html
+++ b/doc/refManual/functions_func_k.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -132,13 +132,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8">KeyFrameInterpolator</a>
 </li>
 <li>keyFrameInterpolator()
-: <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">Camera</a>
 </li>
 <li>KeyFrameInterpolator()
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e">KeyFrameInterpolator</a>
 </li>
 <li>keyFrameTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">KeyFrameInterpolator</a>
 </li>
 <li>keyPressEvent()
 : <a class="el" href="classQGLViewer.html#a2cc4c898ca007c7cc0ebb7791aa3e5b3">QGLViewer</a>
@@ -150,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_l.html b/doc/refManual/functions_func_l.html
index 816a84b..4ad303d 100644
--- a/doc/refManual/functions_func_l.html
+++ b/doc/refManual/functions_func_l.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -126,7 +126,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
 <li>lastTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">KeyFrameInterpolator</a>
 </li>
 <li>lnDif()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#af4c74176967acca6e3947977351e1c68">Quaternion</a>
@@ -168,7 +168,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_m.html b/doc/refManual/functions_func_m.html
index 1adef94..af0f60f 100644
--- a/doc/refManual/functions_func_m.html
+++ b/doc/refManual/functions_func_m.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -197,7 +197,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_n.html b/doc/refManual/functions_func_n.html
index fa0e839..37a7455 100644
--- a/doc/refManual/functions_func_n.html
+++ b/doc/refManual/functions_func_n.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -129,11 +129,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648">Quaternion</a>
 </li>
 <li>norm()
-: <a class="el" href="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b">Vec</a>
 </li>
 <li>normalize()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231">Vec</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639">Quaternion</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639">Vec</a>
 </li>
 <li>normalized()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32">Quaternion</a>
@@ -145,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_o.html b/doc/refManual/functions_func_o.html
index 994db39..1193f7d 100644
--- a/doc/refManual/functions_func_o.html
+++ b/doc/refManual/functions_func_o.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -139,7 +139,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </li>
 <li>operator*=()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9">Vec</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba">Vec</a>
 </li>
 <li>operator+=()
 : <a class="el" href="classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e">Vec</a>
@@ -148,7 +148,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571">Vec</a>
 </li>
 <li>operator/=()
-: <a class="el" href="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22">Vec</a>
 </li>
 <li>operator<<()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796">Quaternion</a>
@@ -163,8 +163,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="classqglviewer_1_1Vec.html#a9d105072fa3c0fc1e66c162ba083fee8">Vec</a>
 </li>
 <li>operator[]()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b">Vec</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a">Quaternion</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e">Vec</a>
 </li>
 <li>orientation()
 : <a class="el" href="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094">Camera</a>
@@ -177,7 +177,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_p.html b/doc/refManual/functions_func_p.html
index 5eccfd5..424b84a 100644
--- a/doc/refManual/functions_func_p.html
+++ b/doc/refManual/functions_func_p.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -129,23 +129,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#ac5cbfafb28ef4c0474ae96437294f547">QGLViewer</a>
 </li>
 <li>pathKey()
-: <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">QGLViewer</a>
 </li>
 <li>physicalDistanceToScreen()
-: <a class="el" href="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291">Camera</a>
 </li>
 <li>physicalScreenWidth()
-: <a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">Camera</a>
 </li>
 <li>pivotPoint()
 : <a class="el" href="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa">Camera</a>
 , <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa">ManipulatedCameraFrame</a>
 </li>
 <li>pixelGLRatio()
-: <a class="el" href="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c">Camera</a>
 </li>
 <li>playPath()
-: <a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">Camera</a>
 </li>
 <li>playPathKeyboardModifiers()
 : <a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">QGLViewer</a>
@@ -188,7 +188,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_q.html b/doc/refManual/functions_func_q.html
index e5a1851..737f163 100644
--- a/doc/refManual/functions_func_q.html
+++ b/doc/refManual/functions_func_q.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -141,13 +141,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a32d7a506084c50fd97a24f94d9ca4864">QGLViewer</a>
 </li>
 <li>Quaternion()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659">Quaternion</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_r.html b/doc/refManual/functions_func_r.html
index 0fa8460..51c8b35 100644
--- a/doc/refManual/functions_func_r.html
+++ b/doc/refManual/functions_func_r.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74">KeyFrameInterpolator</a>
 </li>
 <li>resetPath()
-: <a class="el" href="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132">Camera</a>
 </li>
 <li>resize()
 : <a class="el" href="classQGLViewer.html#ad1185e99a9efec124b7a9bede84a6cf1">QGLViewer</a>
@@ -172,13 +172,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a61a05b9e18948b2b787e355c90b7b85f">AxisPlaneConstraint</a>
 </li>
 <li>rotationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">ManipulatedFrame</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_s.html b/doc/refManual/functions_func_s.html
index 2c3285b..b5bd028 100644
--- a/doc/refManual/functions_func_s.html
+++ b/doc/refManual/functions_func_s.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -139,8 +139,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">QGLViewer</a>
 </li>
 <li>sceneRadius()
-: <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">Camera</a>
-, <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">Camera</a>
+, <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer</a>
 </li>
 <li>sceneUpVector()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">ManipulatedCameraFrame</a>
@@ -176,13 +176,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#aa37d4e0afe6a47e8f4f828ed41072176">QGLViewer</a>
 </li>
 <li>setAspectRatio()
-: <a class="el" href="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0">Camera</a>
 </li>
 <li>setAutoBufferSwap()
 : <a class="el" href="classQGLViewer.html#ad95e0ffd255bcc1fb69c9213d8d8b017">QGLViewer</a>
 </li>
 <li>setAxisAngle()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81">Quaternion</a>
 </li>
 <li>setAxisIsDrawn()
 : <a class="el" href="classQGLViewer.html#a5be8cff3702c1a130f8a17330737a887">QGLViewer</a>
@@ -200,14 +200,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224">Frame</a>
 </li>
 <li>setFieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42">Camera</a>
 </li>
 <li>setFlySpeed()
-: <a class="el" href="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09">Camera</a>
-, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09">ManipulatedCameraFrame</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f">Camera</a>
+, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f">ManipulatedCameraFrame</a>
 </li>
 <li>setFocusDistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98">Camera</a>
 </li>
 <li>setForegroundColor()
 : <a class="el" href="classQGLViewer.html#a7d986b1944dc5a190e509835e7c79eec">QGLViewer</a>
@@ -229,13 +229,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9">Camera</a>
 </li>
 <li>setFromProjectionMatrix()
-: <a class="el" href="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629">Camera</a>
 </li>
 <li>setFromRotatedBasis()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9">Quaternion</a>
 </li>
 <li>setFromRotationMatrix()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f">Quaternion</a>
 </li>
 <li>setFullScreen()
 : <a class="el" href="classQGLViewer.html#a7e021e15180ba348e90c955bdd28b1a4">QGLViewer</a>
@@ -247,25 +247,25 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#ae9dd114195dfdf82e23b5754b7c161de">QGLViewer</a>
 </li>
 <li>setHorizontalFieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d">Camera</a>
 </li>
 <li>setInterpolationPeriod()
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd">KeyFrameInterpolator</a>
 </li>
 <li>setInterpolationSpeed()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f">KeyFrameInterpolator</a>
 </li>
 <li>setInterpolationTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7">KeyFrameInterpolator</a>
 </li>
 <li>setIODistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7">Camera</a>
 </li>
 <li>setKeyDescription()
-: <a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">QGLViewer</a>
 </li>
 <li>setKeyFrameInterpolator()
-: <a class="el" href="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a">Camera</a>
 </li>
 <li>setLoopInterpolation()
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd">KeyFrameInterpolator</a>
@@ -296,10 +296,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">Frame</a>
 </li>
 <li>setPathKey()
-: <a class="el" href="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13">QGLViewer</a>
 </li>
 <li>setPhysicalScreenWidth()
-: <a class="el" href="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f">Camera</a>
 </li>
 <li>setPivotPoint()
 : <a class="el" href="classqglviewer_1_1Camera.html#ad0d493c3e540ec42a480e03d249b5a56">Camera</a>
@@ -343,7 +343,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a7c0dc83d6a770742719c8d3ffa67c4e5">AxisPlaneConstraint</a>
 </li>
 <li>setRotationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef">ManipulatedFrame</a>
 </li>
 <li>setRotationWithConstraint()
 : <a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">Frame</a>
@@ -360,8 +360,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf">Camera</a>
 </li>
 <li>setSceneRadius()
-: <a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">Camera</a>
-, <a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">QGLViewer</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">Camera</a>
+, <a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">QGLViewer</a>
 </li>
 <li>setSceneUpVector()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a">ManipulatedCameraFrame</a>
@@ -400,7 +400,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9">ManipulatedFrame</a>
 </li>
 <li>setSpinningSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">ManipulatedFrame</a>
 </li>
 <li>setStateFileName()
 : <a class="el" href="classQGLViewer.html#a68737cce3d7301701bca6e4270a5a34e">QGLViewer</a>
@@ -433,7 +433,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a0cee03d4db5722e992c20f042601eaa5">AxisPlaneConstraint</a>
 </li>
 <li>setTranslationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20">ManipulatedFrame</a>
 </li>
 <li>setTranslationWithConstraint()
 : <a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">Frame</a>
@@ -445,8 +445,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e">Camera</a>
 </li>
 <li>setValue()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa">Vec</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db">Quaternion</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5">Vec</a>
 </li>
 <li>setViewDirection()
 : <a class="el" href="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6">Camera</a>
@@ -455,16 +455,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a277f432be05de69ae2df05eac8951ad2">QGLViewer</a>
 </li>
 <li>setWheelSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">ManipulatedFrame</a>
 </li>
 <li>setZClippingCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198">Camera</a>
 </li>
 <li>setZNearCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95">Camera</a>
 </li>
 <li>setZoomSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed">ManipulatedFrame</a>
 </li>
 <li>setZoomsOnPivotPoint()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#aa715ac66a29d06ce3e86e241ae322813">ManipulatedCameraFrame</a>
@@ -480,7 +480,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#ad8288a17cf54658f1ce1c0db9e97dc8a">QGLViewer</a>
 </li>
 <li>slerp()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6">Quaternion</a>
 </li>
 <li>snapshotCounter()
 : <a class="el" href="classQGLViewer.html#a4de825bb96eba2c5f6a55facb9dc4cef">QGLViewer</a>
@@ -505,19 +505,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276">ManipulatedFrame</a>
 </li>
 <li>spinningSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">ManipulatedFrame</a>
 </li>
 <li>spun()
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c">ManipulatedFrame</a>
 </li>
 <li>squad()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf">Quaternion</a>
 </li>
 <li>squadTangent()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005">Quaternion</a>
 </li>
 <li>squaredNorm()
-: <a class="el" href="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153">Vec</a>
 </li>
 <li>startAnimation()
 : <a class="el" href="classQGLViewer.html#ad5344a5f702678f309fafa0c699b2cf3">QGLViewer</a>
@@ -553,7 +553,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_t.html b/doc/refManual/functions_func_t.html
index e7131a7..173c0e1 100644
--- a/doc/refManual/functions_func_t.html
+++ b/doc/refManual/functions_func_t.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -174,7 +174,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0">Frame</a>
 </li>
 <li>translate()
-: <a class="el" href="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11">Frame</a>
 </li>
 <li>translation()
 : <a class="el" href="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642">Frame</a>
@@ -186,7 +186,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a12ad675910ffa86fbabefff2cd6a594a">AxisPlaneConstraint</a>
 </li>
 <li>translationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">ManipulatedFrame</a>
 </li>
 <li>type()
 : <a class="el" href="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7">Camera</a>
@@ -195,7 +195,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_u.html b/doc/refManual/functions_func_u.html
index 3211003..5bc9b65 100644
--- a/doc/refManual/functions_func_u.html
+++ b/doc/refManual/functions_func_u.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_v.html b/doc/refManual/functions_func_v.html
index fd650cf..cf98529 100644
--- a/doc/refManual/functions_func_v.html
+++ b/doc/refManual/functions_func_v.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_w.html b/doc/refManual/functions_func_w.html
index cffb6ed..519f34c 100644
--- a/doc/refManual/functions_func_w.html
+++ b/doc/refManual/functions_func_w.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a783e829b316bac1cb3c7baaff46797e7">QGLViewer</a>
 </li>
 <li>wheelSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">ManipulatedFrame</a>
 </li>
 <li>width()
 : <a class="el" href="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431">QGLViewer</a>
@@ -156,7 +156,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_z.html b/doc/refManual/functions_func_z.html
index 34e5ca4..7f1a86d 100644
--- a/doc/refManual/functions_func_z.html
+++ b/doc/refManual/functions_func_z.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -126,19 +126,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
 <li>zClippingCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">Camera</a>
 </li>
 <li>zFar()
-: <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">Camera</a>
 </li>
 <li>zNear()
-: <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">Camera</a>
 </li>
 <li>zNearCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">Camera</a>
 </li>
 <li>zoomSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">ManipulatedFrame</a>
 </li>
 <li>zoomsOnPivotPoint()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad9e5f408288e0c02c64b712a8b2ce589">ManipulatedCameraFrame</a>
@@ -147,7 +147,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_func_~.html b/doc/refManual/functions_func_~.html
index 81b39b2..26beb09 100644
--- a/doc/refManual/functions_func_~.html
+++ b/doc/refManual/functions_func_~.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -165,7 +165,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_g.html b/doc/refManual/functions_g.html
index 19dfbe8..e892eaf 100644
--- a/doc/refManual/functions_g.html
+++ b/doc/refManual/functions_g.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -128,49 +128,49 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
 <li>getAxisAngle()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5">Quaternion</a>
 </li>
 <li>getCameraCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878">Camera</a>
 </li>
 <li>getClickActionBinding()
 : <a class="el" href="classQGLViewer.html#ae57d9efa984795d6cfbe85ad594f660f">QGLViewer</a>
 </li>
 <li>getCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce">Frame</a>
 </li>
 <li>getCoordinatesOfFrom()
-: <a class="el" href="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00">Frame</a>
 </li>
 <li>getCoordinatesOfIn()
-: <a class="el" href="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b">Frame</a>
 </li>
 <li>getFrustumPlanesCoefficients()
 : <a class="el" href="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41">Camera</a>
 </li>
 <li>getInverseCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010">Frame</a>
 </li>
 <li>getInverseMatrix()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b">Quaternion</a>
 </li>
 <li>getInverseRotationMatrix()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d">Quaternion</a>
 </li>
 <li>getInverseTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2">Frame</a>
 </li>
 <li>getLocalCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1">Frame</a>
 </li>
 <li>getLocalInverseCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a">Frame</a>
 </li>
 <li>getLocalInverseTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854">Frame</a>
 </li>
 <li>getLocalTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2">Frame</a>
 </li>
 <li>getMatrix()
 : <a class="el" href="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48">Frame</a>
@@ -186,40 +186,40 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#abcad615739f9ce3e857b94ca945deb5e">QGLViewer</a>
 </li>
 <li>getOrientation()
-: <a class="el" href="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088">Frame</a>
 </li>
 <li>getOrthoWidthHeight()
 : <a class="el" href="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa">Camera</a>
 </li>
 <li>getPosition()
-: <a class="el" href="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5">Frame</a>
 </li>
 <li>getProjectedCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c">Camera</a>
 </li>
 <li>getProjectionMatrix()
 : <a class="el" href="classqglviewer_1_1Camera.html#a97ff5cf330a6c24d6d49308aedd638bc">Camera</a>
 </li>
 <li>getRotation()
-: <a class="el" href="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7">Frame</a>
 </li>
 <li>getRotationMatrix()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1">Quaternion</a>
 </li>
 <li>getTransformOf()
-: <a class="el" href="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493">Frame</a>
 </li>
 <li>getTransformOfFrom()
-: <a class="el" href="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1">Frame</a>
 </li>
 <li>getTransformOfIn()
-: <a class="el" href="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca">Frame</a>
 </li>
 <li>getTranslation()
-: <a class="el" href="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1">Frame</a>
 </li>
 <li>getUnprojectedCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a">Camera</a>
 </li>
 <li>getViewport()
 : <a class="el" href="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348">Camera</a>
@@ -228,7 +228,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a0f5b32b9880a9f32d590871663713b78">QGLViewer</a>
 </li>
 <li>getWorldCoordinatesOf()
-: <a class="el" href="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1">Camera</a>
 </li>
 <li>getWorldMatrix()
 : <a class="el" href="classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead">Frame</a>
@@ -246,7 +246,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_h.html b/doc/refManual/functions_h.html
index 17c2e72..951dcf6 100644
--- a/doc/refManual/functions_h.html
+++ b/doc/refManual/functions_h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -149,13 +149,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#af3af989be04f1d45b6ff3f748c2e9d4a">QGLViewer</a>
 </li>
 <li>horizontalFieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66">Camera</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_i.html b/doc/refManual/functions_i.html
index 0cb6712..be46124 100644
--- a/doc/refManual/functions_i.html
+++ b/doc/refManual/functions_i.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -147,14 +147,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a2d3d45239c78255c23a70ca558b4d4f1">QGLViewer</a>
 </li>
 <li>interpolateAtTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a">KeyFrameInterpolator</a>
 </li>
 <li>interpolated()
 : <a class="el" href="classqglviewer_1_1Frame.html#ab55c2a4f1732b90057fae4b6037399de">Frame</a>
 , <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de">KeyFrameInterpolator</a>
 </li>
 <li>interpolateTo()
-: <a class="el" href="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1">Camera</a>
 </li>
 <li>interpolateToFitScene()
 : <a class="el" href="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0">Camera</a>
@@ -169,10 +169,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e">KeyFrameInterpolator</a>
 </li>
 <li>interpolationSpeed()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393">KeyFrameInterpolator</a>
 </li>
 <li>interpolationTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0">KeyFrameInterpolator</a>
 </li>
 <li>inverse()
 : <a class="el" href="classqglviewer_1_1Frame.html#a4534c3188c217feb8d21465d4cefd4ad">Frame</a>
@@ -194,7 +194,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a7fa1616cc61c19a5efcc863c950f7f30">Quaternion</a>
 </li>
 <li>IODistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7">Camera</a>
 </li>
 <li>isFullScreen()
 : <a class="el" href="classQGLViewer.html#a129c439f36bb669672148192abc8ffed">QGLViewer</a>
@@ -218,7 +218,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_k.html b/doc/refManual/functions_k.html
index 12144d1..bc8926e 100644
--- a/doc/refManual/functions_k.html
+++ b/doc/refManual/functions_k.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -137,13 +137,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8">KeyFrameInterpolator</a>
 </li>
 <li>keyFrameInterpolator()
-: <a class="el" href="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7">Camera</a>
 </li>
 <li>KeyFrameInterpolator()
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e">KeyFrameInterpolator</a>
 </li>
 <li>keyFrameTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe">KeyFrameInterpolator</a>
 </li>
 <li>keyPressEvent()
 : <a class="el" href="classQGLViewer.html#a2cc4c898ca007c7cc0ebb7791aa3e5b3">QGLViewer</a>
@@ -155,7 +155,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_l.html b/doc/refManual/functions_l.html
index 514665b..33d941d 100644
--- a/doc/refManual/functions_l.html
+++ b/doc/refManual/functions_l.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -128,7 +128,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
 <li>lastTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c">KeyFrameInterpolator</a>
 </li>
 <li>lnDif()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#af4c74176967acca6e3947977351e1c68">Quaternion</a>
@@ -173,7 +173,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_m.html b/doc/refManual/functions_m.html
index 0df04dd..c7c0ef1 100644
--- a/doc/refManual/functions_m.html
+++ b/doc/refManual/functions_m.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -223,7 +223,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_n.html b/doc/refManual/functions_n.html
index 9b9e730..c68ce9f 100644
--- a/doc/refManual/functions_n.html
+++ b/doc/refManual/functions_n.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -137,11 +137,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3b20d5f27f63af5ea6e5b6af1112ecf8">QGLViewer</a>
 </li>
 <li>norm()
-: <a class="el" href="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b">Vec</a>
 </li>
 <li>normalize()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231">Vec</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639">Quaternion</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639">Vec</a>
 </li>
 <li>normalized()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32">Quaternion</a>
@@ -153,7 +153,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_o.html b/doc/refManual/functions_o.html
index 3cd1851..06e90fe 100644
--- a/doc/refManual/functions_o.html
+++ b/doc/refManual/functions_o.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -144,11 +144,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </li>
 <li>operator*
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52">Vec</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d">Vec</a>
 </li>
 <li>operator*=()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9">Vec</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba">Vec</a>
 </li>
 <li>operator+
 : <a class="el" href="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7">Vec</a>
@@ -163,10 +163,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571">Vec</a>
 </li>
 <li>operator/
-: <a class="el" href="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270">Vec</a>
 </li>
 <li>operator/=()
-: <a class="el" href="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22">Vec</a>
 </li>
 <li>operator<<()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796">Quaternion</a>
@@ -184,8 +184,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f">Vec</a>
 </li>
 <li>operator[]()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f">Vec</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a">Quaternion</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a">Vec</a>
 </li>
 <li>operator^
 : <a class="el" href="classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317">Vec</a>
@@ -204,7 +204,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_p.html b/doc/refManual/functions_p.html
index 27131c8..1005fd9 100644
--- a/doc/refManual/functions_p.html
+++ b/doc/refManual/functions_p.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -131,29 +131,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#ac5cbfafb28ef4c0474ae96437294f547">QGLViewer</a>
 </li>
 <li>pathKey()
-: <a class="el" href="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5">QGLViewer</a>
 </li>
 <li>PERSPECTIVE
 : <a class="el" href="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f">Camera</a>
 </li>
 <li>physicalDistanceToScreen()
-: <a class="el" href="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291">Camera</a>
 </li>
 <li>physicalScreenWidth()
-: <a class="el" href="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64">Camera</a>
 </li>
 <li>pivotPoint()
 : <a class="el" href="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa">Camera</a>
 , <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa">ManipulatedCameraFrame</a>
 </li>
 <li>pixelGLRatio()
-: <a class="el" href="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c">Camera</a>
 </li>
 <li>PLANE
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a1d1cfd8ffb84e947f82999c682b666a7a67572d1492c84d8d417b61e864f13f24">AxisPlaneConstraint</a>
 </li>
 <li>playPath()
-: <a class="el" href="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0">Camera</a>
 </li>
 <li>playPathKeyboardModifiers()
 : <a class="el" href="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d">QGLViewer</a>
@@ -196,7 +196,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_q.html b/doc/refManual/functions_q.html
index b7e0ea8..a82af49 100644
--- a/doc/refManual/functions_q.html
+++ b/doc/refManual/functions_q.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -143,13 +143,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a32d7a506084c50fd97a24f94d9ca4864">QGLViewer</a>
 </li>
 <li>Quaternion()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659">Quaternion</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_r.html b/doc/refManual/functions_r.html
index cc8bd0d..3ea02f6 100644
--- a/doc/refManual/functions_r.html
+++ b/doc/refManual/functions_r.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -146,7 +146,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74">KeyFrameInterpolator</a>
 </li>
 <li>resetPath()
-: <a class="el" href="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132">Camera</a>
 </li>
 <li>resize()
 : <a class="el" href="classQGLViewer.html#ad1185e99a9efec124b7a9bede84a6cf1">QGLViewer</a>
@@ -164,7 +164,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a2eeb9fef8a6a516fa6437a44a6efbd52">QGLViewer</a>
 </li>
 <li>rotate()
-: <a class="el" href="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8">Frame</a>
+: <a class="el" href="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff">Frame</a>
 , <a class="el" href="classqglviewer_1_1Quaternion.html#a5e2421069d88e576334e10f634625815">Quaternion</a>
 </li>
 <li>ROTATE
@@ -186,13 +186,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a61a05b9e18948b2b787e355c90b7b85f">AxisPlaneConstraint</a>
 </li>
 <li>rotationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735">ManipulatedFrame</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_rela.html b/doc/refManual/functions_rela.html
index 8992609..22298a4 100644
--- a/doc/refManual/functions_rela.html
+++ b/doc/refManual/functions_rela.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </li>
 <li>operator*
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52">Vec</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d">Vec</a>
 </li>
 <li>operator+
 : <a class="el" href="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7">Vec</a>
@@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc">Vec</a>
 </li>
 <li>operator/
-: <a class="el" href="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270">Vec</a>
 </li>
 <li>operator==
 : <a class="el" href="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f">Vec</a>
@@ -124,7 +124,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_s.html b/doc/refManual/functions_s.html
index 347d894..4b519e4 100644
--- a/doc/refManual/functions_s.html
+++ b/doc/refManual/functions_s.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -144,8 +144,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 , <a class="el" href="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab">QGLViewer</a>
 </li>
 <li>sceneRadius()
-: <a class="el" href="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9">Camera</a>
-, <a class="el" href="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9">QGLViewer</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb">Camera</a>
+, <a class="el" href="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb">QGLViewer</a>
 </li>
 <li>sceneUpVector()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b">ManipulatedCameraFrame</a>
@@ -193,13 +193,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#aa37d4e0afe6a47e8f4f828ed41072176">QGLViewer</a>
 </li>
 <li>setAspectRatio()
-: <a class="el" href="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0">Camera</a>
 </li>
 <li>setAutoBufferSwap()
 : <a class="el" href="classQGLViewer.html#ad95e0ffd255bcc1fb69c9213d8d8b017">QGLViewer</a>
 </li>
 <li>setAxisAngle()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81">Quaternion</a>
 </li>
 <li>setAxisIsDrawn()
 : <a class="el" href="classQGLViewer.html#a5be8cff3702c1a130f8a17330737a887">QGLViewer</a>
@@ -217,14 +217,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224">Frame</a>
 </li>
 <li>setFieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42">Camera</a>
 </li>
 <li>setFlySpeed()
-: <a class="el" href="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09">Camera</a>
-, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09">ManipulatedCameraFrame</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f">Camera</a>
+, <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f">ManipulatedCameraFrame</a>
 </li>
 <li>setFocusDistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98">Camera</a>
 </li>
 <li>setForegroundColor()
 : <a class="el" href="classQGLViewer.html#a7d986b1944dc5a190e509835e7c79eec">QGLViewer</a>
@@ -246,13 +246,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9">Camera</a>
 </li>
 <li>setFromProjectionMatrix()
-: <a class="el" href="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629">Camera</a>
 </li>
 <li>setFromRotatedBasis()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9">Quaternion</a>
 </li>
 <li>setFromRotationMatrix()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f">Quaternion</a>
 </li>
 <li>setFullScreen()
 : <a class="el" href="classQGLViewer.html#a7e021e15180ba348e90c955bdd28b1a4">QGLViewer</a>
@@ -264,25 +264,25 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#ae9dd114195dfdf82e23b5754b7c161de">QGLViewer</a>
 </li>
 <li>setHorizontalFieldOfView()
-: <a class="el" href="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d">Camera</a>
 </li>
 <li>setInterpolationPeriod()
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd">KeyFrameInterpolator</a>
 </li>
 <li>setInterpolationSpeed()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f">KeyFrameInterpolator</a>
 </li>
 <li>setInterpolationTime()
-: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3">KeyFrameInterpolator</a>
+: <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7">KeyFrameInterpolator</a>
 </li>
 <li>setIODistance()
-: <a class="el" href="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7">Camera</a>
 </li>
 <li>setKeyDescription()
-: <a class="el" href="classQGLViewer.html#a9e97204faca448653fad94a37024a488">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c">QGLViewer</a>
 </li>
 <li>setKeyFrameInterpolator()
-: <a class="el" href="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a">Camera</a>
 </li>
 <li>setLoopInterpolation()
 : <a class="el" href="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd">KeyFrameInterpolator</a>
@@ -313,10 +313,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4">Frame</a>
 </li>
 <li>setPathKey()
-: <a class="el" href="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13">QGLViewer</a>
+: <a class="el" href="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13">QGLViewer</a>
 </li>
 <li>setPhysicalScreenWidth()
-: <a class="el" href="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f">Camera</a>
 </li>
 <li>setPivotPoint()
 : <a class="el" href="classqglviewer_1_1Camera.html#ad0d493c3e540ec42a480e03d249b5a56">Camera</a>
@@ -360,7 +360,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a7c0dc83d6a770742719c8d3ffa67c4e5">AxisPlaneConstraint</a>
 </li>
 <li>setRotationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef">ManipulatedFrame</a>
 </li>
 <li>setRotationWithConstraint()
 : <a class="el" href="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd">Frame</a>
@@ -377,8 +377,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf">Camera</a>
 </li>
 <li>setSceneRadius()
-: <a class="el" href="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822">Camera</a>
-, <a class="el" href="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83">QGLViewer</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f">Camera</a>
+, <a class="el" href="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd">QGLViewer</a>
 </li>
 <li>setSceneUpVector()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a">ManipulatedCameraFrame</a>
@@ -417,7 +417,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9">ManipulatedFrame</a>
 </li>
 <li>setSpinningSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02">ManipulatedFrame</a>
 </li>
 <li>setStateFileName()
 : <a class="el" href="classQGLViewer.html#a68737cce3d7301701bca6e4270a5a34e">QGLViewer</a>
@@ -450,7 +450,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a0cee03d4db5722e992c20f042601eaa5">AxisPlaneConstraint</a>
 </li>
 <li>setTranslationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20">ManipulatedFrame</a>
 </li>
 <li>setTranslationWithConstraint()
 : <a class="el" href="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0">Frame</a>
@@ -462,8 +462,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e">Camera</a>
 </li>
 <li>setValue()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a">Quaternion</a>
-, <a class="el" href="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa">Vec</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db">Quaternion</a>
+, <a class="el" href="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5">Vec</a>
 </li>
 <li>setViewDirection()
 : <a class="el" href="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6">Camera</a>
@@ -472,16 +472,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a277f432be05de69ae2df05eac8951ad2">QGLViewer</a>
 </li>
 <li>setWheelSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f">ManipulatedFrame</a>
 </li>
 <li>setZClippingCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198">Camera</a>
 </li>
 <li>setZNearCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95">Camera</a>
 </li>
 <li>setZoomSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed">ManipulatedFrame</a>
 </li>
 <li>setZoomsOnPivotPoint()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#aa715ac66a29d06ce3e86e241ae322813">ManipulatedCameraFrame</a>
@@ -500,7 +500,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#ad8288a17cf54658f1ce1c0db9e97dc8a">QGLViewer</a>
 </li>
 <li>slerp()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6">Quaternion</a>
 </li>
 <li>SNAPSHOT_TO_CLIPBOARD
 : <a class="el" href="classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1af66c229e98a8724914c726433c735312">QGLViewer</a>
@@ -528,19 +528,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276">ManipulatedFrame</a>
 </li>
 <li>spinningSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7">ManipulatedFrame</a>
 </li>
 <li>spun()
 : <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c">ManipulatedFrame</a>
 </li>
 <li>squad()
-: <a class="el" href="classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812">Quaternion</a>
+: <a class="el" href="classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf">Quaternion</a>
 </li>
 <li>squadTangent()
 : <a class="el" href="classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005">Quaternion</a>
 </li>
 <li>squaredNorm()
-: <a class="el" href="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153">Vec</a>
 </li>
 <li>startAnimation()
 : <a class="el" href="classQGLViewer.html#ad5344a5f702678f309fafa0c699b2cf3">QGLViewer</a>
@@ -579,7 +579,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_t.html b/doc/refManual/functions_t.html
index 34849af..4e0a506 100644
--- a/doc/refManual/functions_t.html
+++ b/doc/refManual/functions_t.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -191,7 +191,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a12ad675910ffa86fbabefff2cd6a594a">AxisPlaneConstraint</a>
 </li>
 <li>translationSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841">ManipulatedFrame</a>
 </li>
 <li>Type
 : <a class="el" href="classqglviewer_1_1AxisPlaneConstraint.html#a1d1cfd8ffb84e947f82999c682b666a7">AxisPlaneConstraint</a>
@@ -206,7 +206,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_u.html b/doc/refManual/functions_u.html
index 9ccbf69..764b2d6 100644
--- a/doc/refManual/functions_u.html
+++ b/doc/refManual/functions_u.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -143,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_v.html b/doc/refManual/functions_v.html
index 21c1de1..976c872 100644
--- a/doc/refManual/functions_v.html
+++ b/doc/refManual/functions_v.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_vars.html b/doc/refManual/functions_vars.html
index 0011d98..f3b733a 100644
--- a/doc/refManual/functions_vars.html
+++ b/doc/refManual/functions_vars.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -96,19 +96,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="contents">
  <ul>
 <li>x
-: <a class="el" href="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580">Vec</a>
 </li>
 <li>y
-: <a class="el" href="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10">Vec</a>
 </li>
 <li>z
-: <a class="el" href="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded">Vec</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_w.html b/doc/refManual/functions_w.html
index 353db29..96dd8d2 100644
--- a/doc/refManual/functions_w.html
+++ b/doc/refManual/functions_w.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a783e829b316bac1cb3c7baaff46797e7">QGLViewer</a>
 </li>
 <li>wheelSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182">ManipulatedFrame</a>
 </li>
 <li>width()
 : <a class="el" href="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431">QGLViewer</a>
@@ -158,7 +158,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_x.html b/doc/refManual/functions_x.html
index 6ac7328..133ae90 100644
--- a/doc/refManual/functions_x.html
+++ b/doc/refManual/functions_x.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -128,13 +128,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_x"></a>- x -</h3><ul>
 <li>x
-: <a class="el" href="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580">Vec</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_y.html b/doc/refManual/functions_y.html
index e3e06d7..6abf0dd 100644
--- a/doc/refManual/functions_y.html
+++ b/doc/refManual/functions_y.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -128,13 +128,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_y"></a>- y -</h3><ul>
 <li>y
-: <a class="el" href="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10">Vec</a>
 </li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_z.html b/doc/refManual/functions_z.html
index 38e410d..4736de2 100644
--- a/doc/refManual/functions_z.html
+++ b/doc/refManual/functions_z.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -128,19 +128,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
 <li>z
-: <a class="el" href="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872">Vec</a>
+: <a class="el" href="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded">Vec</a>
 </li>
 <li>zClippingCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392">Camera</a>
 </li>
 <li>zFar()
-: <a class="el" href="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391">Camera</a>
 </li>
 <li>zNear()
-: <a class="el" href="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0">Camera</a>
 </li>
 <li>zNearCoefficient()
-: <a class="el" href="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e">Camera</a>
+: <a class="el" href="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14">Camera</a>
 </li>
 <li>ZOOM
 : <a class="el" href="classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201">QGLViewer</a>
@@ -155,7 +155,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 : <a class="el" href="classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fab1efbb77356f16254fd4a62e1236b531">QGLViewer</a>
 </li>
 <li>zoomSensitivity()
-: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d">ManipulatedFrame</a>
+: <a class="el" href="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59">ManipulatedFrame</a>
 </li>
 <li>zoomsOnPivotPoint()
 : <a class="el" href="classqglviewer_1_1ManipulatedCameraFrame.html#ad9e5f408288e0c02c64b712a8b2ce589">ManipulatedCameraFrame</a>
@@ -164,7 +164,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/functions_~.html b/doc/refManual/functions_~.html
index 6f6f4b7..9ef4158 100644
--- a/doc/refManual/functions_~.html
+++ b/doc/refManual/functions_~.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -167,7 +167,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/globals.html b/doc/refManual/globals.html
index 715249e..b4ea5c4 100644
--- a/doc/refManual/globals.html
+++ b/doc/refManual/globals.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/globals_defs.html b/doc/refManual/globals_defs.html
index bb4b040..9e54223 100644
--- a/doc/refManual/globals_defs.html
+++ b/doc/refManual/globals_defs.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/globals_func.html b/doc/refManual/globals_func.html
index 8051971..b337f3a 100644
--- a/doc/refManual/globals_func.html
+++ b/doc/refManual/globals_func.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/hierarchy.html b/doc/refManual/hierarchy.html
index efd1181..2094f49 100644
--- a/doc/refManual/hierarchy.html
+++ b/doc/refManual/hierarchy.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/index.filtered.qhp b/doc/refManual/index.filtered.qhp
index aebd39e..19ff894 100644
--- a/doc/refManual/index.filtered.qhp
+++ b/doc/refManual/index.filtered.qhp
@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <QtHelpProject version="1.0">
-  <namespace>com.libqglviewer.2.5.3</namespace>
+  <namespace>com.libqglviewer.2.6.1</namespace>
   <virtualFolder>doc</virtualFolder>
   <filterSection>
     <filterAttribute>doxygen</filterAttribute>
     <toc>
-      <section title="libQGLViewer Version 2.5.3" ref="index.html">
+      <section title="libQGLViewer Version 2.6.1" ref="index.html">
         <section title="Namespaces">
           <section title="Namespace List" ref="namespaces.html">
             <section title="qglviewer" ref="namespaceqglviewer.html" />
@@ -44,45 +44,45 @@
                 <section title="Camera" ref="classqglviewer_1_1Camera.html#aa3f3efcb2fcc75de885df29041103cd2" />
                 <section title="~Camera" ref="classqglviewer_1_1Camera.html#ab921e886e6f14e117eb8099ccb0a3775" />
                 <section title="Camera" ref="classqglviewer_1_1Camera.html#a43d24da01076c4cea5f3dbde85e8482c" />
-                <section title="addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec" />
-                <section title="aspectRatio" ref="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1" />
+                <section title="addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4" />
+                <section title="aspectRatio" ref="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01" />
                 <section title="cameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a" />
                 <section title="centerScene" ref="classqglviewer_1_1Camera.html#abf37eb8d64d09f93771b42b95cad00f6" />
                 <section title="computeModelViewMatrix" ref="classqglviewer_1_1Camera.html#a0dad4baab6008e5a94e8a2fa83ec0f05" />
                 <section title="computeProjectionMatrix" ref="classqglviewer_1_1Camera.html#ae51b6c486fe6448453369174bbea8055" />
                 <section title="convertClickToLine" ref="classqglviewer_1_1Camera.html#a706d401cffa41e0e30864e59007f005f" />
-                <section title="deletePath" ref="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac" />
-                <section title="distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5" />
+                <section title="deletePath" ref="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f" />
+                <section title="distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639" />
                 <section title="domElement" ref="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="draw" ref="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e" />
+                <section title="draw" ref="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b" />
                 <section title="drawAllPaths" ref="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87" />
-                <section title="fieldOfView" ref="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330" />
+                <section title="fieldOfView" ref="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23" />
                 <section title="fitBoundingBox" ref="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9" />
                 <section title="fitScreenRegion" ref="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471" />
-                <section title="fitSphere" ref="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec" />
-                <section title="flySpeed" ref="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802" />
-                <section title="focusDistance" ref="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379" />
+                <section title="fitSphere" ref="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10" />
+                <section title="flySpeed" ref="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe" />
+                <section title="focusDistance" ref="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8" />
                 <section title="frame" ref="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75" />
-                <section title="getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4" />
+                <section title="getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878" />
                 <section title="getFrustumPlanesCoefficients" ref="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41" />
                 <section title="getModelViewMatrix" ref="classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20" />
                 <section title="getModelViewMatrix" ref="classqglviewer_1_1Camera.html#aa1d631d6e368a7aa14656b7511787786" />
                 <section title="getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#a7df308e69b599f00c27107530c2a6765" />
                 <section title="getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#adeb5e39686b9fcb3db090dff84c13be4" />
                 <section title="getOrthoWidthHeight" ref="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa" />
-                <section title="getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee" />
+                <section title="getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c" />
                 <section title="getProjectionMatrix" ref="classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7" />
                 <section title="getProjectionMatrix" ref="classqglviewer_1_1Camera.html#a97ff5cf330a6c24d6d49308aedd638bc" />
-                <section title="getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f" />
+                <section title="getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a" />
                 <section title="getViewport" ref="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348" />
-                <section title="getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd" />
-                <section title="horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960" />
+                <section title="getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1" />
+                <section title="horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Camera.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-                <section title="interpolateTo" ref="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97" />
+                <section title="interpolateTo" ref="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1" />
                 <section title="interpolateToFitScene" ref="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0" />
                 <section title="interpolateToZoomOnPixel" ref="classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c" />
-                <section title="IODistance" ref="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d" />
-                <section title="keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de" />
+                <section title="IODistance" ref="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7" />
+                <section title="keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7" />
                 <section title="loadModelViewMatrix" ref="classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53" />
                 <section title="loadModelViewMatrixStereo" ref="classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392" />
                 <section title="loadProjectionMatrix" ref="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a" />
@@ -90,57 +90,57 @@
                 <section title="lookAt" ref="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446" />
                 <section title="operator=" ref="classqglviewer_1_1Camera.html#a0f87e84ad3356493738d4fc8331c7362" />
                 <section title="orientation" ref="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094" />
-                <section title="physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64" />
-                <section title="physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c" />
+                <section title="physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291" />
+                <section title="physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64" />
                 <section title="pivotPoint" ref="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa" />
-                <section title="pixelGLRatio" ref="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f" />
-                <section title="playPath" ref="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818" />
+                <section title="pixelGLRatio" ref="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c" />
+                <section title="playPath" ref="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0" />
                 <section title="pointUnderPixel" ref="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a" />
                 <section title="position" ref="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50" />
                 <section title="projectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f" />
-                <section title="resetPath" ref="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf" />
+                <section title="resetPath" ref="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132" />
                 <section title="rightVector" ref="classqglviewer_1_1Camera.html#a99f766869c7cc9faaf9a5337db6f223c" />
                 <section title="sceneCenter" ref="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1" />
-                <section title="sceneRadius" ref="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9" />
+                <section title="sceneRadius" ref="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb" />
                 <section title="screenHeight" ref="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794" />
                 <section title="screenWidth" ref="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e" />
-                <section title="setAspectRatio" ref="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c" />
-                <section title="setFieldOfView" ref="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c" />
-                <section title="setFlySpeed" ref="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
-                <section title="setFocusDistance" ref="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a" />
+                <section title="setAspectRatio" ref="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0" />
+                <section title="setFieldOfView" ref="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42" />
+                <section title="setFlySpeed" ref="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
+                <section title="setFocusDistance" ref="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98" />
                 <section title="setFOVToFitScene" ref="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7" />
                 <section title="setFrame" ref="classqglviewer_1_1Camera.html#a809bad30c861f4f6f74228fb59340f90" />
                 <section title="setFromModelViewMatrix" ref="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9" />
-                <section title="setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd" />
-                <section title="setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014" />
-                <section title="setIODistance" ref="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234" />
-                <section title="setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5" />
+                <section title="setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629" />
+                <section title="setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d" />
+                <section title="setIODistance" ref="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7" />
+                <section title="setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a" />
                 <section title="setOrientation" ref="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868" />
-                <section title="setOrientation" ref="classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e" />
-                <section title="setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401" />
+                <section title="setOrientation" ref="classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41" />
+                <section title="setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f" />
                 <section title="setPivotPoint" ref="classqglviewer_1_1Camera.html#ad0d493c3e540ec42a480e03d249b5a56" />
                 <section title="setPivotPointFromPixel" ref="classqglviewer_1_1Camera.html#abc3e131745649e6b18693c466f10382f" />
                 <section title="setPosition" ref="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821" />
                 <section title="setSceneBoundingBox" ref="classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee" />
                 <section title="setSceneCenter" ref="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33" />
                 <section title="setSceneCenterFromPixel" ref="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf" />
-                <section title="setSceneRadius" ref="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822" />
+                <section title="setSceneRadius" ref="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f" />
                 <section title="setScreenWidthAndHeight" ref="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812" />
                 <section title="setType" ref="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc" />
                 <section title="setUpVector" ref="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e" />
                 <section title="setViewDirection" ref="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6" />
-                <section title="setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7" />
-                <section title="setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5" />
+                <section title="setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198" />
+                <section title="setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95" />
                 <section title="showEntireScene" ref="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2" />
                 <section title="type" ref="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7" />
                 <section title="unprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d" />
                 <section title="upVector" ref="classqglviewer_1_1Camera.html#a9cd2e746e7379b08fbaeea0ced76e1d7" />
                 <section title="viewDirection" ref="classqglviewer_1_1Camera.html#aac10e453c166209b4e6c14c0266651c7" />
                 <section title="worldCoordinatesOf" ref="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab" />
-                <section title="zClippingCoefficient" ref="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca" />
-                <section title="zFar" ref="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949" />
-                <section title="zNear" ref="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5" />
-                <section title="zNearCoefficient" ref="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e" />
+                <section title="zClippingCoefficient" ref="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392" />
+                <section title="zFar" ref="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391" />
+                <section title="zNear" ref="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0" />
+                <section title="zNearCoefficient" ref="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14" />
               </section>
               <section title="CameraConstraint" ref="classqglviewer_1_1CameraConstraint.html">
                 <section title="CameraConstraint" ref="classqglviewer_1_1CameraConstraint.html#a38cba0f718402b8cd5ab74d36d7666b4" />
@@ -159,30 +159,30 @@
                 <section title="~Frame" ref="classqglviewer_1_1Frame.html#ae0c994a30d9a018000fe8ad66ff0a86d" />
                 <section title="Frame" ref="classqglviewer_1_1Frame.html#a7864fb955cec11fe78c3b2bb81230516" />
                 <section title="Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
-                <section title="alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+                <section title="alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
                 <section title="constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
                 <section title="coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
                 <section title="coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
                 <section title="coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
                 <section title="domElement" ref="classqglviewer_1_1Frame.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-                <section title="getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
-                <section title="getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-                <section title="getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-                <section title="getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-                <section title="getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-                <section title="getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-                <section title="getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-                <section title="getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
+                <section title="getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+                <section title="getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
+                <section title="getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+                <section title="getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+                <section title="getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+                <section title="getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+                <section title="getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+                <section title="getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+                <section title="getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
                 <section title="getMatrix" ref="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48" />
                 <section title="getMatrix" ref="classqglviewer_1_1Frame.html#a15f0dc7596dc78437154302466ac3c0a" />
-                <section title="getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
-                <section title="getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-                <section title="getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
-                <section title="getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-                <section title="getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
-                <section title="getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-                <section title="getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
+                <section title="getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
+                <section title="getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+                <section title="getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
+                <section title="getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+                <section title="getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
+                <section title="getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+                <section title="getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
                 <section title="getWorldMatrix" ref="classqglviewer_1_1Frame.html#a45358fae434b3912ce81577dc7cf4fc9" />
                 <section title="getWorldMatrix" ref="classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Frame.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
@@ -203,8 +203,8 @@
                 <section title="referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
                 <section title="rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
                 <section title="rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-                <section title="rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-                <section title="rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+                <section title="rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+                <section title="rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
                 <section title="rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
                 <section title="rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
                 <section title="rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
@@ -212,20 +212,20 @@
                 <section title="setFromMatrix" ref="classqglviewer_1_1Frame.html#a5408d08ab204157ec29f555b6813f9e4" />
                 <section title="setFromMatrix" ref="classqglviewer_1_1Frame.html#a0c4d51f142f43235e30198e7b8abc626" />
                 <section title="setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-                <section title="setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+                <section title="setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
                 <section title="setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
                 <section title="setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-                <section title="setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+                <section title="setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
                 <section title="setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
                 <section title="setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
                 <section title="setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
                 <section title="setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
                 <section title="setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-                <section title="setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+                <section title="setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
                 <section title="setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
                 <section title="settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
                 <section title="setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-                <section title="setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+                <section title="setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
                 <section title="setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
                 <section title="setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
                 <section title="setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
@@ -234,8 +234,8 @@
                 <section title="transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
                 <section title="translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
                 <section title="translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-                <section title="translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-                <section title="translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+                <section title="translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+                <section title="translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
                 <section title="translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
                 <section title="worldInverse" ref="classqglviewer_1_1Frame.html#a37d4da8cfd297273e7bb55538debaa3e" />
                 <section title="worldMatrix" ref="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141" />
@@ -244,33 +244,33 @@
                 <section title="KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e" />
                 <section title="~KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a110b875f9265a30f7a520a3603362f95" />
                 <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622" />
-                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40" />
+                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a" />
                 <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b" />
-                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa821392c6e108d5c7814317b8c3cd47f" />
+                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#added3bdd706f5a2e3c7c43de1c19d27d" />
                 <section title="deletePath" ref="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34" />
                 <section title="domElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2" />
-                <section title="duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980" />
+                <section title="drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e" />
+                <section title="duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166" />
                 <section title="endReached" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab4010a17bf77b9940b120ee8ed9a0271" />
-                <section title="firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477" />
+                <section title="firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0" />
                 <section title="frame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-                <section title="interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae" />
+                <section title="interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a" />
                 <section title="interpolated" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de" />
                 <section title="interpolationIsStarted" ref="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70" />
                 <section title="interpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e" />
-                <section title="interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad" />
-                <section title="interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a" />
+                <section title="interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393" />
+                <section title="interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0" />
                 <section title="keyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8" />
-                <section title="keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473" />
-                <section title="lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30" />
+                <section title="keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe" />
+                <section title="lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c" />
                 <section title="loopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45" />
                 <section title="numberOfKeyFrames" ref="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273" />
                 <section title="resetInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74" />
                 <section title="setFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d" />
                 <section title="setInterpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd" />
-                <section title="setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d" />
-                <section title="setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3" />
+                <section title="setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f" />
+                <section title="setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7" />
                 <section title="setLoopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd" />
                 <section title="startInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819" />
                 <section title="stopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a16f0910299ae07cede3396a14ec01f4b" />
@@ -286,7 +286,7 @@
                 <section title="~ManipulatedCameraFrame" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a5f187b4d7822ab9602aee6dc27e723a6" />
                 <section title="ManipulatedCameraFrame" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a1a319246151bdd8f5ca4d9e1824abcc2" />
                 <section title="domElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802" />
+                <section title="flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
                 <section title="mouseMoveEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a609d287c3721aff697068efa3dfc4b4c" />
                 <section title="mouseReleaseEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#aec95b0f05a05c1cdfc940ef4621d5db3" />
@@ -294,7 +294,7 @@
                 <section title="pivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa" />
                 <section title="rotatesAroundUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ae8a6d13c86c8d063d33a33a8db45ec85" />
                 <section title="sceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b" />
-                <section title="setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
+                <section title="setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
                 <section title="setPivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad0d493c3e540ec42a480e03d249b5a56" />
                 <section title="setRotatesAroundUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a1d1e56d55fdbd1906a230392e2f7eedb" />
                 <section title="setSceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a" />
@@ -319,23 +319,23 @@
                 <section title="mousePressEvent" ref="classqglviewer_1_1ManipulatedFrame.html#a9b4cce9d77e0495202100a8f1055f1f3" />
                 <section title="mouseReleaseEvent" ref="classqglviewer_1_1ManipulatedFrame.html#aec95b0f05a05c1cdfc940ef4621d5db3" />
                 <section title="operator=" ref="classqglviewer_1_1ManipulatedFrame.html#ad6d13eba8611869fe824da2dab500f50" />
-                <section title="rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f" />
-                <section title="setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11" />
+                <section title="rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735" />
+                <section title="setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef" />
                 <section title="setSpinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9" />
-                <section title="setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b" />
-                <section title="setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871" />
-                <section title="setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499" />
-                <section title="setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0" />
+                <section title="setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02" />
+                <section title="setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20" />
+                <section title="setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f" />
+                <section title="setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed" />
                 <section title="spin" ref="classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd" />
                 <section title="spinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276" />
-                <section title="spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca" />
+                <section title="spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7" />
                 <section title="spun" ref="classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c" />
                 <section title="startSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf" />
                 <section title="stopSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9dc6e4b2c4c4a3ae195dfc39bb2ce8ac" />
-                <section title="translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a" />
+                <section title="translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841" />
                 <section title="wheelEvent" ref="classqglviewer_1_1ManipulatedFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36" />
-                <section title="wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44" />
-                <section title="zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d" />
+                <section title="wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182" />
+                <section title="zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59" />
               </section>
               <section title="MouseGrabber" ref="classqglviewer_1_1MouseGrabber.html">
                 <section title="MouseGrabber" ref="classqglviewer_1_1MouseGrabber.html#aeed1d659951e2bc8dbe0ffa3850c97e6" />
@@ -355,22 +355,22 @@
               </section>
               <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html">
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66" />
-                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85" />
+                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659" />
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634" />
-                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45" />
+                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba" />
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a71a4d1a3b760854468ff270a982e5f59" />
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a87faf5efc96c9b5af85a611985b6618f" />
-                <section title="angle" ref="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875" />
+                <section title="angle" ref="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495" />
                 <section title="axis" ref="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4" />
                 <section title="domElement" ref="classqglviewer_1_1Quaternion.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
                 <section title="exp" ref="classqglviewer_1_1Quaternion.html#a5c546a33cc0c65f24b7e9c48e5069ba7" />
-                <section title="getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292" />
+                <section title="getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5" />
                 <section title="getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b" />
                 <section title="getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155" />
-                <section title="getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a" />
+                <section title="getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d" />
                 <section title="getMatrix" ref="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48" />
                 <section title="getMatrix" ref="classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a" />
-                <section title="getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872" />
+                <section title="getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Quaternion.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
                 <section title="inverse" ref="classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e" />
                 <section title="inverseMatrix" ref="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22" />
@@ -379,61 +379,61 @@
                 <section title="log" ref="classqglviewer_1_1Quaternion.html#a4db67fbb8171a5e781b56404112cf848" />
                 <section title="matrix" ref="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047" />
                 <section title="negate" ref="classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648" />
-                <section title="normalize" ref="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231" />
+                <section title="normalize" ref="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
                 <section title="normalized" ref="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32" />
                 <section title="operator*=" ref="classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d" />
                 <section title="operator<<" ref="classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796" />
                 <section title="operator=" ref="classqglviewer_1_1Quaternion.html#ad20a1310f5fac88d5e00fa055e09fe72" />
-                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a" />
+                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e" />
                 <section title="rotate" ref="classqglviewer_1_1Quaternion.html#a5e2421069d88e576334e10f634625815" />
-                <section title="setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b" />
+                <section title="setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81" />
                 <section title="setFromRotatedBasis" ref="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9" />
-                <section title="setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac" />
-                <section title="setValue" ref="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a" />
+                <section title="setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f" />
+                <section title="setValue" ref="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db" />
                 <section title="operator*" ref="classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919" />
                 <section title="operator*" ref="classqglviewer_1_1Quaternion.html#a19ce6efe5ef2744c8293e8ba1a39b9e4" />
               </section>
               <section title="Vec" ref="classqglviewer_1_1Vec.html">
                 <section title="Vec" ref="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0" />
-                <section title="Vec" ref="classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6" />
+                <section title="Vec" ref="classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911" />
                 <section title="Vec" ref="classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592" />
                 <section title="Vec" ref="classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a" />
                 <section title="domElement" ref="classqglviewer_1_1Vec.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Vec.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-                <section title="norm" ref="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a" />
-                <section title="normalize" ref="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231" />
+                <section title="norm" ref="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b" />
+                <section title="normalize" ref="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
                 <section title="operator const double *" ref="classqglviewer_1_1Vec.html#ad8df949331fe927b4cb5d9bf4685ed35" />
                 <section title="operator const float *" ref="classqglviewer_1_1Vec.html#a54795c57f1d998af73b630d786de2932" />
                 <section title="operator double *" ref="classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9" />
-                <section title="operator*=" ref="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9" />
+                <section title="operator*=" ref="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba" />
                 <section title="operator+=" ref="classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e" />
                 <section title="operator-=" ref="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571" />
-                <section title="operator/=" ref="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4" />
+                <section title="operator/=" ref="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22" />
                 <section title="operator<<" ref="classqglviewer_1_1Vec.html#a16d5f2f021103b05006b0c58fbd48796" />
                 <section title="operator=" ref="classqglviewer_1_1Vec.html#a9d105072fa3c0fc1e66c162ba083fee8" />
-                <section title="operator[]" ref="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-                <section title="operator[]" ref="classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+                <section title="operator[]" ref="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a" />
+                <section title="operator[]" ref="classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e" />
                 <section title="orthogonalVec" ref="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d" />
                 <section title="projectOnAxis" ref="classqglviewer_1_1Vec.html#a8c89e6f39afb5bd92e4cae4ffa6c3221" />
                 <section title="projectOnPlane" ref="classqglviewer_1_1Vec.html#a6ed4feca0d9a299bdc68632eb7db51b9" />
-                <section title="setValue" ref="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa" />
-                <section title="squaredNorm" ref="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e" />
+                <section title="setValue" ref="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5" />
+                <section title="squaredNorm" ref="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153" />
                 <section title="unit" ref="classqglviewer_1_1Vec.html#a7f3923a61bb70c53263379de9783d265" />
                 <section title="cross" ref="classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e" />
                 <section title="operator!=" ref="classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54" />
-                <section title="operator*" ref="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52" />
-                <section title="operator*" ref="classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9" />
-                <section title="operator*" ref="classqglviewer_1_1Vec.html#ae8b74b239e9752e017105b61239eb54e" />
+                <section title="operator*" ref="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d" />
+                <section title="operator*" ref="classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5" />
+                <section title="operator*" ref="classqglviewer_1_1Vec.html#a941c47349fbb80d0a53f524e7a2c5702" />
                 <section title="operator+" ref="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7" />
                 <section title="operator-" ref="classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc" />
                 <section title="operator-" ref="classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373" />
-                <section title="operator/" ref="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206" />
+                <section title="operator/" ref="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270" />
                 <section title="operator==" ref="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f" />
                 <section title="operator^" ref="classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317" />
-                <section title="x" ref="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10" />
-                <section title="y" ref="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a" />
-                <section title="z" ref="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872" />
+                <section title="x" ref="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580" />
+                <section title="y" ref="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10" />
+                <section title="z" ref="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded" />
               </section>
               <section title="WorldConstraint" ref="classqglviewer_1_1WorldConstraint.html">
                 <section title="~WorldConstraint" ref="classqglviewer_1_1WorldConstraint.html#a150934716deed3fda4d4121307d17fd0" />
@@ -504,15 +504,15 @@
               <section title="animateNeeded" ref="classQGLViewer.html#a841503c97db5a51e33f8a7e56d4ca006" />
               <section title="animationIsStarted" ref="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e" />
               <section title="animationPeriod" ref="classQGLViewer.html#a700d9398d4293d9274766efa8b17917e" />
-              <section title="aspectRatio" ref="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1" />
+              <section title="aspectRatio" ref="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01" />
               <section title="autoBufferSwap" ref="classQGLViewer.html#a36faca915c37548a53ab04f297bb5c17" />
               <section title="axisIsDrawn" ref="classQGLViewer.html#a7d38e6f11078e886f7978525def15797" />
               <section title="axisIsDrawnChanged" ref="classQGLViewer.html#a541cdbec67d0c5895cd6c77c01b0f89e" />
               <section title="backgroundColor" ref="classQGLViewer.html#a7ddf68dcfb09cc5a991a06d91cb4cc5b" />
               <section title="beginSelection" ref="classQGLViewer.html#af0a48cc50f194926bad38d4924162116" />
               <section title="bufferTextureId" ref="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69" />
-              <section title="bufferTextureMaxU" ref="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48" />
-              <section title="bufferTextureMaxV" ref="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7" />
+              <section title="bufferTextureMaxU" ref="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2" />
+              <section title="bufferTextureMaxV" ref="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9" />
               <section title="camera" ref="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042" />
               <section title="cameraIsEdited" ref="classQGLViewer.html#a1bf2817fb27f0ad326e3db75aeb46af7" />
               <section title="cameraIsEditedChanged" ref="classQGLViewer.html#a38968d2f050efa14869c2e4de416b7b4" />
@@ -521,13 +521,13 @@
               <section title="clickAction" ref="classQGLViewer.html#aebe4c9b3104cd089f855a1761c9f9ad8" />
               <section title="closeEvent" ref="classQGLViewer.html#a3fb8c90e5c48e6ccc09f9125aa86943e" />
               <section title="copyBufferToTexture" ref="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453" />
-              <section title="currentFPS" ref="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975" />
+              <section title="currentFPS" ref="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56" />
               <section title="displayMessage" ref="classQGLViewer.html#a61336516f9771ac6aef90875f848add4" />
               <section title="displaysInStereo" ref="classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337" />
               <section title="domElement" ref="classQGLViewer.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
               <section title="draw" ref="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0" />
               <section title="drawFinished" ref="classQGLViewer.html#afc74e28548768da157f2fe75bced2803" />
-              <section title="drawLight" ref="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53" />
+              <section title="drawLight" ref="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07" />
               <section title="drawNeeded" ref="classQGLViewer.html#a7a712ca70a0b1c22af51363b786fc86e" />
               <section title="drawText" ref="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775" />
               <section title="drawWithNames" ref="classQGLViewer.html#a528b238068a87472df8ac3a5b2481c55" />
@@ -570,7 +570,7 @@
               <section title="mouseString" ref="classQGLViewer.html#a6d66b99a4c5a38ef0072f350b055201b" />
               <section title="openSnapshotFormatDialog" ref="classQGLViewer.html#ac9c409fd034bc5ab42aacfa4c23fe55c" />
               <section title="paintGL" ref="classQGLViewer.html#ac5cbfafb28ef4c0474ae96437294f547" />
-              <section title="pathKey" ref="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835" />
+              <section title="pathKey" ref="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5" />
               <section title="playPathKeyboardModifiers" ref="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d" />
               <section title="pointSelected" ref="classQGLViewer.html#ab78f96913c9aede4854b0efccf53f983" />
               <section title="postDraw" ref="classQGLViewer.html#a24f5dce22199f5eea71f034cae6ae4fa" />
@@ -587,7 +587,7 @@
               <section title="saveStateToFile" ref="classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa" />
               <section title="scaledFont" ref="classQGLViewer.html#a7c5568ae9e5539cf410ef369dba7cec5" />
               <section title="sceneCenter" ref="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab" />
-              <section title="sceneRadius" ref="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9" />
+              <section title="sceneRadius" ref="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb" />
               <section title="select" ref="classQGLViewer.html#a3b20e4da96e6d8c038a08c7d34d182c6" />
               <section title="select" ref="classQGLViewer.html#af2ed82c063635ce439d9c73223e20fd6" />
               <section title="selectBuffer" ref="classQGLViewer.html#a87015f560fd54b358d185482ae82eec3" />
@@ -606,7 +606,7 @@
               <section title="setFPSIsDisplayed" ref="classQGLViewer.html#aad24c89e014de3ea16f071c3bc18f4db" />
               <section title="setFullScreen" ref="classQGLViewer.html#a7e021e15180ba348e90c955bdd28b1a4" />
               <section title="setGridIsDrawn" ref="classQGLViewer.html#ae9dd114195dfdf82e23b5754b7c161de" />
-              <section title="setKeyDescription" ref="classQGLViewer.html#a9e97204faca448653fad94a37024a488" />
+              <section title="setKeyDescription" ref="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c" />
               <section title="setManipulatedFrame" ref="classQGLViewer.html#ac6964ec1ebb2f42464313e0c43e767a3" />
               <section title="setMouseBinding" ref="classQGLViewer.html#a98e3c0b956c3fea7dc804e7a7a7dd295" />
               <section title="setMouseBinding" ref="classQGLViewer.html#af60ec98df1af2309ef1d16644e9791ef" />
@@ -617,11 +617,11 @@
               <section title="setMouseGrabber" ref="classQGLViewer.html#a993285ef8a16ccbdc5d57a1264212712" />
               <section title="setMouseGrabberIsEnabled" ref="classQGLViewer.html#a3f0b956f948f469c095ff3c2c1b73494" />
               <section title="setMouseTracking" ref="classQGLViewer.html#acf0a4ee197fe91b8c07dd74cad1aafaa" />
-              <section title="setPathKey" ref="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13" />
+              <section title="setPathKey" ref="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13" />
               <section title="setPlayPathKeyboardModifiers" ref="classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1" />
               <section title="setSceneBoundingBox" ref="classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c" />
               <section title="setSceneCenter" ref="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d" />
-              <section title="setSceneRadius" ref="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83" />
+              <section title="setSceneRadius" ref="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd" />
               <section title="setSelectBufferSize" ref="classQGLViewer.html#ae8af6dc4a89202211b764647caf3d1f3" />
               <section title="setSelectedName" ref="classQGLViewer.html#aeaa1327270d0bcdf991874e7d741afd5" />
               <section title="setSelectRegionHeight" ref="classQGLViewer.html#ae830757057c41db506410fd3c332d7dd" />
@@ -805,9 +805,9 @@
       <keyword name="foregroundColor" id="QGLViewer::foregroundColor" ref="classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d" />
       <keyword name="setBackgroundColor" id="QGLViewer::setBackgroundColor" ref="classQGLViewer.html#a70d4e21190fdc47edd88f078dd2037cb" />
       <keyword name="setForegroundColor" id="QGLViewer::setForegroundColor" ref="classQGLViewer.html#a7d986b1944dc5a190e509835e7c79eec" />
-      <keyword name="sceneRadius" id="QGLViewer::sceneRadius" ref="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9" />
+      <keyword name="sceneRadius" id="QGLViewer::sceneRadius" ref="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb" />
       <keyword name="sceneCenter" id="QGLViewer::sceneCenter" ref="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab" />
-      <keyword name="setSceneRadius" id="QGLViewer::setSceneRadius" ref="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83" />
+      <keyword name="setSceneRadius" id="QGLViewer::setSceneRadius" ref="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd" />
       <keyword name="setSceneCenter" id="QGLViewer::setSceneCenter" ref="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d" />
       <keyword name="setSceneBoundingBox" id="QGLViewer::setSceneBoundingBox" ref="classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c" />
       <keyword name="showEntireScene" id="QGLViewer::showEntireScene" ref="classQGLViewer.html#ada8dd7d2346ebf46ed1f9822a8418df2" />
@@ -819,8 +819,8 @@
       <keyword name="setMouseGrabberIsEnabled" id="QGLViewer::setMouseGrabberIsEnabled" ref="classQGLViewer.html#a3f0b956f948f469c095ff3c2c1b73494" />
       <keyword name="mouseGrabberIsEnabled" id="QGLViewer::mouseGrabberIsEnabled" ref="classQGLViewer.html#a5fe9b0a1fcd39a5cb132ffdc86f2574f" />
       <keyword name="setMouseGrabber" id="QGLViewer::setMouseGrabber" ref="classQGLViewer.html#a993285ef8a16ccbdc5d57a1264212712" />
-      <keyword name="aspectRatio" id="QGLViewer::aspectRatio" ref="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1" />
-      <keyword name="currentFPS" id="QGLViewer::currentFPS" ref="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975" />
+      <keyword name="aspectRatio" id="QGLViewer::aspectRatio" ref="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01" />
+      <keyword name="currentFPS" id="QGLViewer::currentFPS" ref="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56" />
       <keyword name="isFullScreen" id="QGLViewer::isFullScreen" ref="classQGLViewer.html#a129c439f36bb669672148192abc8ffed" />
       <keyword name="displaysInStereo" id="QGLViewer::displaysInStereo" ref="classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337" />
       <keyword name="sizeHint" id="QGLViewer::sizeHint" ref="classQGLViewer.html#ad8288a17cf54658f1ce1c0db9e97dc8a" />
@@ -833,11 +833,11 @@
       <keyword name="stopScreenCoordinatesSystem" id="QGLViewer::stopScreenCoordinatesSystem" ref="classQGLViewer.html#a9cff22af974391604bff7f91df789138" />
       <keyword name="drawText" id="QGLViewer::drawText" ref="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775" />
       <keyword name="displayMessage" id="QGLViewer::displayMessage" ref="classQGLViewer.html#a61336516f9771ac6aef90875f848add4" />
-      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0" />
-      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a27edb1331c7bf373d126487e9547969f" />
-      <keyword name="drawAxis" id="QGLViewer::drawAxis" ref="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c" />
-      <keyword name="drawGrid" id="QGLViewer::drawGrid" ref="classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d" />
-      <keyword name="drawLight" id="QGLViewer::drawLight" ref="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53" />
+      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150" />
+      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc" />
+      <keyword name="drawAxis" id="QGLViewer::drawAxis" ref="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc" />
+      <keyword name="drawGrid" id="QGLViewer::drawGrid" ref="classQGLViewer.html#a86a359ff8c78755fca0900321293da8f" />
+      <keyword name="drawLight" id="QGLViewer::drawLight" ref="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07" />
       <keyword name="width" id="QGLViewer::width" ref="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431" />
       <keyword name="height" id="QGLViewer::height" ref="classQGLViewer.html#ae26bcfe2f33f5873dbdfb6948cf1f59f" />
       <keyword name="updateGL" id="QGLViewer::updateGL" ref="classQGLViewer.html#ae12b7378efbffabc24a133ca1deb19ae" />
@@ -866,8 +866,8 @@
       <keyword name="openSnapshotFormatDialog" id="QGLViewer::openSnapshotFormatDialog" ref="classQGLViewer.html#ac9c409fd034bc5ab42aacfa4c23fe55c" />
       <keyword name="snapshotToClipboard" id="QGLViewer::snapshotToClipboard" ref="classQGLViewer.html#a6054c5da7cfd763db7c0b214026a50ec" />
       <keyword name="bufferTextureId" id="QGLViewer::bufferTextureId" ref="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69" />
-      <keyword name="bufferTextureMaxU" id="QGLViewer::bufferTextureMaxU" ref="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48" />
-      <keyword name="bufferTextureMaxV" id="QGLViewer::bufferTextureMaxV" ref="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7" />
+      <keyword name="bufferTextureMaxU" id="QGLViewer::bufferTextureMaxU" ref="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2" />
+      <keyword name="bufferTextureMaxV" id="QGLViewer::bufferTextureMaxV" ref="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9" />
       <keyword name="copyBufferToTexture" id="QGLViewer::copyBufferToTexture" ref="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453" />
       <keyword name="animationIsStarted" id="QGLViewer::animationIsStarted" ref="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e" />
       <keyword name="animationPeriod" id="QGLViewer::animationPeriod" ref="classQGLViewer.html#a700d9398d4293d9274766efa8b17917e" />
@@ -916,13 +916,13 @@
       <keyword name="endSelection" id="QGLViewer::endSelection" ref="classQGLViewer.html#a0d164809a99bbe6ff2fc0dee33fe0e91" />
       <keyword name="postSelection" id="QGLViewer::postSelection" ref="classQGLViewer.html#a3dc0d3b212e04bcafd63e9c3eb214a6c" />
       <keyword name="shortcut" id="QGLViewer::shortcut" ref="classQGLViewer.html#af8f502daf9ffa61c8904f891c843e994" />
-      <keyword name="pathKey" id="QGLViewer::pathKey" ref="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835" />
+      <keyword name="pathKey" id="QGLViewer::pathKey" ref="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5" />
       <keyword name="addKeyFrameKeyboardModifiers" id="QGLViewer::addKeyFrameKeyboardModifiers" ref="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1" />
       <keyword name="playPathKeyboardModifiers" id="QGLViewer::playPathKeyboardModifiers" ref="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d" />
       <keyword name="setShortcut" id="QGLViewer::setShortcut" ref="classQGLViewer.html#a34d76d224c67a0fdae03f0d921bf3330" />
-      <keyword name="setKeyDescription" id="QGLViewer::setKeyDescription" ref="classQGLViewer.html#a9e97204faca448653fad94a37024a488" />
+      <keyword name="setKeyDescription" id="QGLViewer::setKeyDescription" ref="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c" />
       <keyword name="clearShortcuts" id="QGLViewer::clearShortcuts" ref="classQGLViewer.html#ac02747804176d6db01421e12e699eb7a" />
-      <keyword name="setPathKey" id="QGLViewer::setPathKey" ref="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13" />
+      <keyword name="setPathKey" id="QGLViewer::setPathKey" ref="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13" />
       <keyword name="setPlayPathKeyboardModifiers" id="QGLViewer::setPlayPathKeyboardModifiers" ref="classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1" />
       <keyword name="setAddKeyFrameKeyboardModifiers" id="QGLViewer::setAddKeyFrameKeyboardModifiers" ref="classQGLViewer.html#afe04d1c918e50f6b4db5f7b6c7b80219" />
       <keyword name="mouseAction" id="QGLViewer::mouseAction" ref="classQGLViewer.html#ab689056381e744de41ccc27383294692" />
@@ -1026,47 +1026,47 @@
       <keyword name="rightVector" id="qglviewer::Camera::rightVector" ref="classqglviewer_1_1Camera.html#a99f766869c7cc9faaf9a5337db6f223c" />
       <keyword name="orientation" id="qglviewer::Camera::orientation" ref="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094" />
       <keyword name="setFromModelViewMatrix" id="qglviewer::Camera::setFromModelViewMatrix" ref="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9" />
-      <keyword name="setFromProjectionMatrix" id="qglviewer::Camera::setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd" />
+      <keyword name="setFromProjectionMatrix" id="qglviewer::Camera::setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629" />
       <keyword name="setPosition" id="qglviewer::Camera::setPosition" ref="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821" />
       <keyword name="setOrientation" id="qglviewer::Camera::setOrientation" ref="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868" />
-      <keyword name="setOrientation" id="qglviewer::Camera::setOrientation" ref="classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e" />
+      <keyword name="setOrientation" id="qglviewer::Camera::setOrientation" ref="classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41" />
       <keyword name="setUpVector" id="qglviewer::Camera::setUpVector" ref="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e" />
       <keyword name="setViewDirection" id="qglviewer::Camera::setViewDirection" ref="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6" />
       <keyword name="lookAt" id="qglviewer::Camera::lookAt" ref="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446" />
       <keyword name="showEntireScene" id="qglviewer::Camera::showEntireScene" ref="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2" />
-      <keyword name="fitSphere" id="qglviewer::Camera::fitSphere" ref="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec" />
+      <keyword name="fitSphere" id="qglviewer::Camera::fitSphere" ref="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10" />
       <keyword name="fitBoundingBox" id="qglviewer::Camera::fitBoundingBox" ref="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9" />
       <keyword name="fitScreenRegion" id="qglviewer::Camera::fitScreenRegion" ref="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471" />
       <keyword name="centerScene" id="qglviewer::Camera::centerScene" ref="classqglviewer_1_1Camera.html#abf37eb8d64d09f93771b42b95cad00f6" />
       <keyword name="interpolateToZoomOnPixel" id="qglviewer::Camera::interpolateToZoomOnPixel" ref="classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c" />
       <keyword name="interpolateToFitScene" id="qglviewer::Camera::interpolateToFitScene" ref="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0" />
-      <keyword name="interpolateTo" id="qglviewer::Camera::interpolateTo" ref="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97" />
+      <keyword name="interpolateTo" id="qglviewer::Camera::interpolateTo" ref="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1" />
       <keyword name="type" id="qglviewer::Camera::type" ref="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7" />
-      <keyword name="fieldOfView" id="qglviewer::Camera::fieldOfView" ref="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330" />
-      <keyword name="horizontalFieldOfView" id="qglviewer::Camera::horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960" />
-      <keyword name="aspectRatio" id="qglviewer::Camera::aspectRatio" ref="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1" />
+      <keyword name="fieldOfView" id="qglviewer::Camera::fieldOfView" ref="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23" />
+      <keyword name="horizontalFieldOfView" id="qglviewer::Camera::horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66" />
+      <keyword name="aspectRatio" id="qglviewer::Camera::aspectRatio" ref="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01" />
       <keyword name="screenWidth" id="qglviewer::Camera::screenWidth" ref="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e" />
       <keyword name="screenHeight" id="qglviewer::Camera::screenHeight" ref="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794" />
       <keyword name="getViewport" id="qglviewer::Camera::getViewport" ref="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348" />
-      <keyword name="pixelGLRatio" id="qglviewer::Camera::pixelGLRatio" ref="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f" />
-      <keyword name="zNearCoefficient" id="qglviewer::Camera::zNearCoefficient" ref="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e" />
-      <keyword name="zClippingCoefficient" id="qglviewer::Camera::zClippingCoefficient" ref="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca" />
-      <keyword name="zNear" id="qglviewer::Camera::zNear" ref="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5" />
-      <keyword name="zFar" id="qglviewer::Camera::zFar" ref="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949" />
+      <keyword name="pixelGLRatio" id="qglviewer::Camera::pixelGLRatio" ref="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c" />
+      <keyword name="zNearCoefficient" id="qglviewer::Camera::zNearCoefficient" ref="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14" />
+      <keyword name="zClippingCoefficient" id="qglviewer::Camera::zClippingCoefficient" ref="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392" />
+      <keyword name="zNear" id="qglviewer::Camera::zNear" ref="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0" />
+      <keyword name="zFar" id="qglviewer::Camera::zFar" ref="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391" />
       <keyword name="getOrthoWidthHeight" id="qglviewer::Camera::getOrthoWidthHeight" ref="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa" />
       <keyword name="getFrustumPlanesCoefficients" id="qglviewer::Camera::getFrustumPlanesCoefficients" ref="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41" />
       <keyword name="setType" id="qglviewer::Camera::setType" ref="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc" />
-      <keyword name="setFieldOfView" id="qglviewer::Camera::setFieldOfView" ref="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c" />
-      <keyword name="setHorizontalFieldOfView" id="qglviewer::Camera::setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014" />
+      <keyword name="setFieldOfView" id="qglviewer::Camera::setFieldOfView" ref="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42" />
+      <keyword name="setHorizontalFieldOfView" id="qglviewer::Camera::setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d" />
       <keyword name="setFOVToFitScene" id="qglviewer::Camera::setFOVToFitScene" ref="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7" />
-      <keyword name="setAspectRatio" id="qglviewer::Camera::setAspectRatio" ref="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c" />
+      <keyword name="setAspectRatio" id="qglviewer::Camera::setAspectRatio" ref="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0" />
       <keyword name="setScreenWidthAndHeight" id="qglviewer::Camera::setScreenWidthAndHeight" ref="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812" />
-      <keyword name="setZNearCoefficient" id="qglviewer::Camera::setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5" />
-      <keyword name="setZClippingCoefficient" id="qglviewer::Camera::setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7" />
-      <keyword name="sceneRadius" id="qglviewer::Camera::sceneRadius" ref="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9" />
+      <keyword name="setZNearCoefficient" id="qglviewer::Camera::setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95" />
+      <keyword name="setZClippingCoefficient" id="qglviewer::Camera::setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198" />
+      <keyword name="sceneRadius" id="qglviewer::Camera::sceneRadius" ref="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb" />
       <keyword name="sceneCenter" id="qglviewer::Camera::sceneCenter" ref="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1" />
-      <keyword name="distanceToSceneCenter" id="qglviewer::Camera::distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5" />
-      <keyword name="setSceneRadius" id="qglviewer::Camera::setSceneRadius" ref="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822" />
+      <keyword name="distanceToSceneCenter" id="qglviewer::Camera::distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639" />
+      <keyword name="setSceneRadius" id="qglviewer::Camera::setSceneRadius" ref="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f" />
       <keyword name="setSceneCenter" id="qglviewer::Camera::setSceneCenter" ref="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33" />
       <keyword name="setSceneCenterFromPixel" id="qglviewer::Camera::setSceneCenterFromPixel" ref="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf" />
       <keyword name="setSceneBoundingBox" id="qglviewer::Camera::setSceneBoundingBox" ref="classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee" />
@@ -1075,12 +1075,12 @@
       <keyword name="setPivotPointFromPixel" id="qglviewer::Camera::setPivotPointFromPixel" ref="classqglviewer_1_1Camera.html#abc3e131745649e6b18693c466f10382f" />
       <keyword name="frame" id="qglviewer::Camera::frame" ref="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75" />
       <keyword name="setFrame" id="qglviewer::Camera::setFrame" ref="classqglviewer_1_1Camera.html#a809bad30c861f4f6f74228fb59340f90" />
-      <keyword name="keyFrameInterpolator" id="qglviewer::Camera::keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de" />
-      <keyword name="setKeyFrameInterpolator" id="qglviewer::Camera::setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5" />
-      <keyword name="addKeyFrameToPath" id="qglviewer::Camera::addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec" />
-      <keyword name="playPath" id="qglviewer::Camera::playPath" ref="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818" />
-      <keyword name="deletePath" id="qglviewer::Camera::deletePath" ref="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac" />
-      <keyword name="resetPath" id="qglviewer::Camera::resetPath" ref="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf" />
+      <keyword name="keyFrameInterpolator" id="qglviewer::Camera::keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7" />
+      <keyword name="setKeyFrameInterpolator" id="qglviewer::Camera::setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a" />
+      <keyword name="addKeyFrameToPath" id="qglviewer::Camera::addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4" />
+      <keyword name="playPath" id="qglviewer::Camera::playPath" ref="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0" />
+      <keyword name="deletePath" id="qglviewer::Camera::deletePath" ref="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f" />
+      <keyword name="resetPath" id="qglviewer::Camera::resetPath" ref="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132" />
       <keyword name="drawAllPaths" id="qglviewer::Camera::drawAllPaths" ref="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87" />
       <keyword name="loadProjectionMatrix" id="qglviewer::Camera::loadProjectionMatrix" ref="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a" />
       <keyword name="loadModelViewMatrix" id="qglviewer::Camera::loadModelViewMatrix" ref="classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53" />
@@ -1094,26 +1094,26 @@
       <keyword name="getModelViewMatrix" id="qglviewer::Camera::getModelViewMatrix" ref="classqglviewer_1_1Camera.html#aa1d631d6e368a7aa14656b7511787786" />
       <keyword name="getModelViewProjectionMatrix" id="qglviewer::Camera::getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#a7df308e69b599f00c27107530c2a6765" />
       <keyword name="getModelViewProjectionMatrix" id="qglviewer::Camera::getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#adeb5e39686b9fcb3db090dff84c13be4" />
-      <keyword name="draw" id="qglviewer::Camera::draw" ref="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e" />
+      <keyword name="draw" id="qglviewer::Camera::draw" ref="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b" />
       <keyword name="cameraCoordinatesOf" id="qglviewer::Camera::cameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a" />
       <keyword name="worldCoordinatesOf" id="qglviewer::Camera::worldCoordinatesOf" ref="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab" />
-      <keyword name="getCameraCoordinatesOf" id="qglviewer::Camera::getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4" />
-      <keyword name="getWorldCoordinatesOf" id="qglviewer::Camera::getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd" />
+      <keyword name="getCameraCoordinatesOf" id="qglviewer::Camera::getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878" />
+      <keyword name="getWorldCoordinatesOf" id="qglviewer::Camera::getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1" />
       <keyword name="projectedCoordinatesOf" id="qglviewer::Camera::projectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f" />
       <keyword name="unprojectedCoordinatesOf" id="qglviewer::Camera::unprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d" />
-      <keyword name="getProjectedCoordinatesOf" id="qglviewer::Camera::getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee" />
-      <keyword name="getUnprojectedCoordinatesOf" id="qglviewer::Camera::getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f" />
+      <keyword name="getProjectedCoordinatesOf" id="qglviewer::Camera::getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c" />
+      <keyword name="getUnprojectedCoordinatesOf" id="qglviewer::Camera::getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a" />
       <keyword name="convertClickToLine" id="qglviewer::Camera::convertClickToLine" ref="classqglviewer_1_1Camera.html#a706d401cffa41e0e30864e59007f005f" />
       <keyword name="pointUnderPixel" id="qglviewer::Camera::pointUnderPixel" ref="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a" />
-      <keyword name="flySpeed" id="qglviewer::Camera::flySpeed" ref="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802" />
-      <keyword name="setFlySpeed" id="qglviewer::Camera::setFlySpeed" ref="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
-      <keyword name="IODistance" id="qglviewer::Camera::IODistance" ref="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d" />
-      <keyword name="physicalDistanceToScreen" id="qglviewer::Camera::physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64" />
-      <keyword name="physicalScreenWidth" id="qglviewer::Camera::physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c" />
-      <keyword name="focusDistance" id="qglviewer::Camera::focusDistance" ref="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379" />
-      <keyword name="setIODistance" id="qglviewer::Camera::setIODistance" ref="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234" />
-      <keyword name="setPhysicalScreenWidth" id="qglviewer::Camera::setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401" />
-      <keyword name="setFocusDistance" id="qglviewer::Camera::setFocusDistance" ref="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a" />
+      <keyword name="flySpeed" id="qglviewer::Camera::flySpeed" ref="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe" />
+      <keyword name="setFlySpeed" id="qglviewer::Camera::setFlySpeed" ref="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
+      <keyword name="IODistance" id="qglviewer::Camera::IODistance" ref="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7" />
+      <keyword name="physicalDistanceToScreen" id="qglviewer::Camera::physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291" />
+      <keyword name="physicalScreenWidth" id="qglviewer::Camera::physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64" />
+      <keyword name="focusDistance" id="qglviewer::Camera::focusDistance" ref="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8" />
+      <keyword name="setIODistance" id="qglviewer::Camera::setIODistance" ref="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7" />
+      <keyword name="setPhysicalScreenWidth" id="qglviewer::Camera::setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f" />
+      <keyword name="setFocusDistance" id="qglviewer::Camera::setFocusDistance" ref="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98" />
       <keyword name="domElement" id="qglviewer::Camera::domElement" ref="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
       <keyword name="initFromDOMElement" id="qglviewer::Camera::initFromDOMElement" ref="classqglviewer_1_1Camera.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
       <keyword name="PERSPECTIVE" id="qglviewer::Camera::PERSPECTIVE" ref="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f" />
@@ -1150,43 +1150,43 @@
       <keyword name="operator=" id="qglviewer::Frame::operator=" ref="classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c" />
       <keyword name="Frame" id="qglviewer::Frame::Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
       <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
       <keyword name="setPositionWithConstraint" id="qglviewer::Frame::setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
       <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
       <keyword name="setOrientationWithConstraint" id="qglviewer::Frame::setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
       <keyword name="setPositionAndOrientation" id="qglviewer::Frame::setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
       <keyword name="setPositionAndOrientationWithConstraint" id="qglviewer::Frame::setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
       <keyword name="position" id="qglviewer::Frame::position" ref="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50" />
       <keyword name="orientation" id="qglviewer::Frame::orientation" ref="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094" />
-      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
+      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
       <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
       <keyword name="setTranslationWithConstraint" id="qglviewer::Frame::setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
       <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
       <keyword name="setRotationWithConstraint" id="qglviewer::Frame::setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
       <keyword name="setTranslationAndRotation" id="qglviewer::Frame::setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
       <keyword name="setTranslationAndRotationWithConstraint" id="qglviewer::Frame::setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
       <keyword name="translation" id="qglviewer::Frame::translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
       <keyword name="rotation" id="qglviewer::Frame::rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
-      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
-      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
+      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
+      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
       <keyword name="referenceFrame" id="qglviewer::Frame::referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
       <keyword name="setReferenceFrame" id="qglviewer::Frame::setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
       <keyword name="settingAsReferenceFrameWillCreateALoop" id="qglviewer::Frame::settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
-      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
       <keyword name="projectOnLine" id="qglviewer::Frame::projectOnLine" ref="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255" />
       <keyword name="coordinatesOf" id="qglviewer::Frame::coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
       <keyword name="inverseCoordinatesOf" id="qglviewer::Frame::inverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e" />
@@ -1194,24 +1194,24 @@
       <keyword name="localInverseCoordinatesOf" id="qglviewer::Frame::localInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7" />
       <keyword name="coordinatesOfIn" id="qglviewer::Frame::coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
       <keyword name="coordinatesOfFrom" id="qglviewer::Frame::coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
-      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
+      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
       <keyword name="transformOf" id="qglviewer::Frame::transformOf" ref="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e" />
       <keyword name="inverseTransformOf" id="qglviewer::Frame::inverseTransformOf" ref="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5" />
       <keyword name="localTransformOf" id="qglviewer::Frame::localTransformOf" ref="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2" />
       <keyword name="localInverseTransformOf" id="qglviewer::Frame::localInverseTransformOf" ref="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e" />
       <keyword name="transformOfIn" id="qglviewer::Frame::transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
       <keyword name="transformOfFrom" id="qglviewer::Frame::transformOfFrom" ref="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7" />
-      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
-      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
+      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
+      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
       <keyword name="constraint" id="qglviewer::Frame::constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
       <keyword name="setConstraint" id="qglviewer::Frame::setConstraint" ref="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224" />
       <keyword name="matrix" id="qglviewer::Frame::matrix" ref="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047" />
@@ -1232,24 +1232,24 @@
       <keyword name="KeyFrameInterpolator" id="qglviewer::KeyFrameInterpolator::KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e" />
       <keyword name="~KeyFrameInterpolator" id="qglviewer::KeyFrameInterpolator::~KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a110b875f9265a30f7a520a3603362f95" />
       <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622" />
-      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40" />
+      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a" />
       <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b" />
-      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa821392c6e108d5c7814317b8c3cd47f" />
+      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#added3bdd706f5a2e3c7c43de1c19d27d" />
       <keyword name="deletePath" id="qglviewer::KeyFrameInterpolator::deletePath" ref="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34" />
       <keyword name="frame" id="qglviewer::KeyFrameInterpolator::frame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f" />
       <keyword name="setFrame" id="qglviewer::KeyFrameInterpolator::setFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d" />
       <keyword name="keyFrame" id="qglviewer::KeyFrameInterpolator::keyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8" />
-      <keyword name="keyFrameTime" id="qglviewer::KeyFrameInterpolator::keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473" />
+      <keyword name="keyFrameTime" id="qglviewer::KeyFrameInterpolator::keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe" />
       <keyword name="numberOfKeyFrames" id="qglviewer::KeyFrameInterpolator::numberOfKeyFrames" ref="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273" />
-      <keyword name="duration" id="qglviewer::KeyFrameInterpolator::duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980" />
-      <keyword name="firstTime" id="qglviewer::KeyFrameInterpolator::firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477" />
-      <keyword name="lastTime" id="qglviewer::KeyFrameInterpolator::lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30" />
-      <keyword name="interpolationTime" id="qglviewer::KeyFrameInterpolator::interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a" />
-      <keyword name="interpolationSpeed" id="qglviewer::KeyFrameInterpolator::interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad" />
+      <keyword name="duration" id="qglviewer::KeyFrameInterpolator::duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166" />
+      <keyword name="firstTime" id="qglviewer::KeyFrameInterpolator::firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0" />
+      <keyword name="lastTime" id="qglviewer::KeyFrameInterpolator::lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c" />
+      <keyword name="interpolationTime" id="qglviewer::KeyFrameInterpolator::interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0" />
+      <keyword name="interpolationSpeed" id="qglviewer::KeyFrameInterpolator::interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393" />
       <keyword name="interpolationPeriod" id="qglviewer::KeyFrameInterpolator::interpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e" />
       <keyword name="loopInterpolation" id="qglviewer::KeyFrameInterpolator::loopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45" />
-      <keyword name="setInterpolationTime" id="qglviewer::KeyFrameInterpolator::setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3" />
-      <keyword name="setInterpolationSpeed" id="qglviewer::KeyFrameInterpolator::setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d" />
+      <keyword name="setInterpolationTime" id="qglviewer::KeyFrameInterpolator::setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7" />
+      <keyword name="setInterpolationSpeed" id="qglviewer::KeyFrameInterpolator::setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f" />
       <keyword name="setInterpolationPeriod" id="qglviewer::KeyFrameInterpolator::setInterpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd" />
       <keyword name="setLoopInterpolation" id="qglviewer::KeyFrameInterpolator::setLoopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd" />
       <keyword name="interpolationIsStarted" id="qglviewer::KeyFrameInterpolator::interpolationIsStarted" ref="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70" />
@@ -1257,8 +1257,8 @@
       <keyword name="stopInterpolation" id="qglviewer::KeyFrameInterpolator::stopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a16f0910299ae07cede3396a14ec01f4b" />
       <keyword name="resetInterpolation" id="qglviewer::KeyFrameInterpolator::resetInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74" />
       <keyword name="toggleInterpolation" id="qglviewer::KeyFrameInterpolator::toggleInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#acf744bd8ce09e5433f829f63ba310eef" />
-      <keyword name="interpolateAtTime" id="qglviewer::KeyFrameInterpolator::interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae" />
-      <keyword name="drawPath" id="qglviewer::KeyFrameInterpolator::drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2" />
+      <keyword name="interpolateAtTime" id="qglviewer::KeyFrameInterpolator::interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a" />
+      <keyword name="drawPath" id="qglviewer::KeyFrameInterpolator::drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e" />
       <keyword name="domElement" id="qglviewer::KeyFrameInterpolator::domElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
       <keyword name="initFromDOMElement" id="qglviewer::KeyFrameInterpolator::initFromDOMElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
       <keyword name="qglviewer::LocalConstraint" id="qglviewer::LocalConstraint" ref="classqglviewer_1_1LocalConstraint.html" />
@@ -1287,11 +1287,11 @@
       <keyword name="~ManipulatedFrame" id="qglviewer::ManipulatedFrame::~ManipulatedFrame" ref="classqglviewer_1_1ManipulatedFrame.html#ae2ffc5f93122c6628e80dc254977c4cf" />
       <keyword name="ManipulatedFrame" id="qglviewer::ManipulatedFrame::ManipulatedFrame" ref="classqglviewer_1_1ManipulatedFrame.html#a9b1534a226c056993bc9ed594de9cc7e" />
       <keyword name="operator=" id="qglviewer::ManipulatedFrame::operator=" ref="classqglviewer_1_1ManipulatedFrame.html#ad6d13eba8611869fe824da2dab500f50" />
-      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f" />
-      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a" />
-      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca" />
-      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d" />
-      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44" />
+      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735" />
+      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841" />
+      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7" />
+      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59" />
+      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182" />
       <keyword name="isSpinning" id="qglviewer::ManipulatedFrame::isSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a975dfbf6b972b7128520b30a4ffe11dd" />
       <keyword name="spinningQuaternion" id="qglviewer::ManipulatedFrame::spinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276" />
       <keyword name="isManipulated" id="qglviewer::ManipulatedFrame::isManipulated" ref="classqglviewer_1_1ManipulatedFrame.html#a032c48e2e7cdced01dea0cb7eca14022" />
@@ -1303,43 +1303,43 @@
       <keyword name="operator=" id="qglviewer::Frame::operator=" ref="classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c" />
       <keyword name="Frame" id="qglviewer::Frame::Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
       <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
       <keyword name="setPositionWithConstraint" id="qglviewer::Frame::setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
       <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
       <keyword name="setOrientationWithConstraint" id="qglviewer::Frame::setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
       <keyword name="setPositionAndOrientation" id="qglviewer::Frame::setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
       <keyword name="setPositionAndOrientationWithConstraint" id="qglviewer::Frame::setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
       <keyword name="position" id="qglviewer::Frame::position" ref="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50" />
       <keyword name="orientation" id="qglviewer::Frame::orientation" ref="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094" />
-      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
+      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
       <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
       <keyword name="setTranslationWithConstraint" id="qglviewer::Frame::setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
       <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
       <keyword name="setRotationWithConstraint" id="qglviewer::Frame::setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
       <keyword name="setTranslationAndRotation" id="qglviewer::Frame::setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
       <keyword name="setTranslationAndRotationWithConstraint" id="qglviewer::Frame::setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
       <keyword name="translation" id="qglviewer::Frame::translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
       <keyword name="rotation" id="qglviewer::Frame::rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
-      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
-      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
+      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
+      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
       <keyword name="referenceFrame" id="qglviewer::Frame::referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
       <keyword name="setReferenceFrame" id="qglviewer::Frame::setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
       <keyword name="settingAsReferenceFrameWillCreateALoop" id="qglviewer::Frame::settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
-      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
       <keyword name="projectOnLine" id="qglviewer::Frame::projectOnLine" ref="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255" />
       <keyword name="coordinatesOf" id="qglviewer::Frame::coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
       <keyword name="inverseCoordinatesOf" id="qglviewer::Frame::inverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e" />
@@ -1347,24 +1347,24 @@
       <keyword name="localInverseCoordinatesOf" id="qglviewer::Frame::localInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7" />
       <keyword name="coordinatesOfIn" id="qglviewer::Frame::coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
       <keyword name="coordinatesOfFrom" id="qglviewer::Frame::coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
-      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
+      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
       <keyword name="transformOf" id="qglviewer::Frame::transformOf" ref="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e" />
       <keyword name="inverseTransformOf" id="qglviewer::Frame::inverseTransformOf" ref="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5" />
       <keyword name="localTransformOf" id="qglviewer::Frame::localTransformOf" ref="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2" />
       <keyword name="localInverseTransformOf" id="qglviewer::Frame::localInverseTransformOf" ref="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e" />
       <keyword name="transformOfIn" id="qglviewer::Frame::transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
       <keyword name="transformOfFrom" id="qglviewer::Frame::transformOfFrom" ref="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7" />
-      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
-      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
+      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
+      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
       <keyword name="constraint" id="qglviewer::Frame::constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
       <keyword name="setConstraint" id="qglviewer::Frame::setConstraint" ref="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224" />
       <keyword name="matrix" id="qglviewer::Frame::matrix" ref="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047" />
@@ -1390,9 +1390,9 @@
       <keyword name="setRotatesAroundUpVector" id="qglviewer::ManipulatedCameraFrame::setRotatesAroundUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a1d1e56d55fdbd1906a230392e2f7eedb" />
       <keyword name="zoomsOnPivotPoint" id="qglviewer::ManipulatedCameraFrame::zoomsOnPivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad9e5f408288e0c02c64b712a8b2ce589" />
       <keyword name="setZoomsOnPivotPoint" id="qglviewer::ManipulatedCameraFrame::setZoomsOnPivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#aa715ac66a29d06ce3e86e241ae322813" />
-      <keyword name="flySpeed" id="qglviewer::ManipulatedCameraFrame::flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802" />
+      <keyword name="flySpeed" id="qglviewer::ManipulatedCameraFrame::flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe" />
       <keyword name="sceneUpVector" id="qglviewer::ManipulatedCameraFrame::sceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b" />
-      <keyword name="setFlySpeed" id="qglviewer::ManipulatedCameraFrame::setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
+      <keyword name="setFlySpeed" id="qglviewer::ManipulatedCameraFrame::setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
       <keyword name="setSceneUpVector" id="qglviewer::ManipulatedCameraFrame::setSceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a" />
       <keyword name="mouseReleaseEvent" id="qglviewer::ManipulatedCameraFrame::mouseReleaseEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#aec95b0f05a05c1cdfc940ef4621d5db3" />
       <keyword name="mouseMoveEvent" id="qglviewer::ManipulatedCameraFrame::mouseMoveEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a609d287c3721aff697068efa3dfc4b4c" />
@@ -1400,11 +1400,11 @@
       <keyword name="spin" id="qglviewer::ManipulatedCameraFrame::spin" ref="classqglviewer_1_1ManipulatedCameraFrame.html#af87828117d0582d0031f563933f97bfd" />
       <keyword name="domElement" id="qglviewer::ManipulatedCameraFrame::domElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
       <keyword name="initFromDOMElement" id="qglviewer::ManipulatedCameraFrame::initFromDOMElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11" />
-      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871" />
-      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b" />
-      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499" />
-      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0" />
+      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef" />
+      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20" />
+      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02" />
+      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f" />
+      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed" />
       <keyword name="setSpinningQuaternion" id="qglviewer::ManipulatedFrame::setSpinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9" />
       <keyword name="startSpinning" id="qglviewer::ManipulatedFrame::startSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf" />
       <keyword name="stopSpinning" id="qglviewer::ManipulatedFrame::stopSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9dc6e4b2c4c4a3ae195dfc39bb2ce8ac" />
@@ -1434,43 +1434,43 @@
       <keyword name="operator=" id="qglviewer::Frame::operator=" ref="classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c" />
       <keyword name="Frame" id="qglviewer::Frame::Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
       <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
       <keyword name="setPositionWithConstraint" id="qglviewer::Frame::setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
       <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
       <keyword name="setOrientationWithConstraint" id="qglviewer::Frame::setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
       <keyword name="setPositionAndOrientation" id="qglviewer::Frame::setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
       <keyword name="setPositionAndOrientationWithConstraint" id="qglviewer::Frame::setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
       <keyword name="position" id="qglviewer::Frame::position" ref="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50" />
       <keyword name="orientation" id="qglviewer::Frame::orientation" ref="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094" />
-      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
+      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
       <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
       <keyword name="setTranslationWithConstraint" id="qglviewer::Frame::setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
       <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
       <keyword name="setRotationWithConstraint" id="qglviewer::Frame::setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
       <keyword name="setTranslationAndRotation" id="qglviewer::Frame::setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
       <keyword name="setTranslationAndRotationWithConstraint" id="qglviewer::Frame::setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
       <keyword name="translation" id="qglviewer::Frame::translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
       <keyword name="rotation" id="qglviewer::Frame::rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
-      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
-      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
+      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
+      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
       <keyword name="referenceFrame" id="qglviewer::Frame::referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
       <keyword name="setReferenceFrame" id="qglviewer::Frame::setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
       <keyword name="settingAsReferenceFrameWillCreateALoop" id="qglviewer::Frame::settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
-      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
       <keyword name="projectOnLine" id="qglviewer::Frame::projectOnLine" ref="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255" />
       <keyword name="coordinatesOf" id="qglviewer::Frame::coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
       <keyword name="inverseCoordinatesOf" id="qglviewer::Frame::inverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e" />
@@ -1478,24 +1478,24 @@
       <keyword name="localInverseCoordinatesOf" id="qglviewer::Frame::localInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7" />
       <keyword name="coordinatesOfIn" id="qglviewer::Frame::coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
       <keyword name="coordinatesOfFrom" id="qglviewer::Frame::coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
-      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
+      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
       <keyword name="transformOf" id="qglviewer::Frame::transformOf" ref="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e" />
       <keyword name="inverseTransformOf" id="qglviewer::Frame::inverseTransformOf" ref="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5" />
       <keyword name="localTransformOf" id="qglviewer::Frame::localTransformOf" ref="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2" />
       <keyword name="localInverseTransformOf" id="qglviewer::Frame::localInverseTransformOf" ref="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e" />
       <keyword name="transformOfIn" id="qglviewer::Frame::transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
       <keyword name="transformOfFrom" id="qglviewer::Frame::transformOfFrom" ref="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7" />
-      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
-      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
+      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
+      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
       <keyword name="constraint" id="qglviewer::Frame::constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
       <keyword name="setConstraint" id="qglviewer::Frame::setConstraint" ref="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224" />
       <keyword name="matrix" id="qglviewer::Frame::matrix" ref="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047" />
@@ -1515,16 +1515,16 @@
       <keyword name="addInMouseGrabberPool" id="qglviewer::MouseGrabber::addInMouseGrabberPool" ref="classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82" />
       <keyword name="removeFromMouseGrabberPool" id="qglviewer::MouseGrabber::removeFromMouseGrabberPool" ref="classqglviewer_1_1MouseGrabber.html#a4ac2261aafd5f48f2d90c989cdd69369" />
       <keyword name="clearMouseGrabberPool" id="qglviewer::MouseGrabber::clearMouseGrabberPool" ref="classqglviewer_1_1MouseGrabber.html#a23548e9ef41cf38913f6c642509a81ec" />
-      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f" />
-      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a" />
-      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca" />
-      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d" />
-      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44" />
-      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11" />
-      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871" />
-      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b" />
-      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499" />
-      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0" />
+      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735" />
+      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841" />
+      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7" />
+      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59" />
+      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182" />
+      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef" />
+      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20" />
+      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02" />
+      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f" />
+      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed" />
       <keyword name="isSpinning" id="qglviewer::ManipulatedFrame::isSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a975dfbf6b972b7128520b30a4ffe11dd" />
       <keyword name="spinningQuaternion" id="qglviewer::ManipulatedFrame::spinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276" />
       <keyword name="setSpinningQuaternion" id="qglviewer::ManipulatedFrame::setSpinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9" />
@@ -1562,20 +1562,20 @@
       <keyword name="wheelEvent" id="qglviewer::MouseGrabber::wheelEvent" ref="classqglviewer_1_1MouseGrabber.html#a07a7d880d107f0b532ef779b29884e08" />
       <keyword name="qglviewer::Quaternion" id="qglviewer::Quaternion" ref="classqglviewer_1_1Quaternion.html" />
       <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66" />
-      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85" />
+      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659" />
       <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634" />
-      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45" />
+      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba" />
       <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a71a4d1a3b760854468ff270a982e5f59" />
       <keyword name="operator=" id="qglviewer::Quaternion::operator=" ref="classqglviewer_1_1Quaternion.html#ad20a1310f5fac88d5e00fa055e09fe72" />
-      <keyword name="setAxisAngle" id="qglviewer::Quaternion::setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b" />
-      <keyword name="setValue" id="qglviewer::Quaternion::setValue" ref="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a" />
-      <keyword name="setFromRotationMatrix" id="qglviewer::Quaternion::setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac" />
+      <keyword name="setAxisAngle" id="qglviewer::Quaternion::setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81" />
+      <keyword name="setValue" id="qglviewer::Quaternion::setValue" ref="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db" />
+      <keyword name="setFromRotationMatrix" id="qglviewer::Quaternion::setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f" />
       <keyword name="setFromRotatedBasis" id="qglviewer::Quaternion::setFromRotatedBasis" ref="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9" />
       <keyword name="axis" id="qglviewer::Quaternion::axis" ref="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4" />
-      <keyword name="angle" id="qglviewer::Quaternion::angle" ref="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875" />
-      <keyword name="getAxisAngle" id="qglviewer::Quaternion::getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292" />
-      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+      <keyword name="angle" id="qglviewer::Quaternion::angle" ref="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495" />
+      <keyword name="getAxisAngle" id="qglviewer::Quaternion::getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5" />
+      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a" />
+      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e" />
       <keyword name="operator*=" id="qglviewer::Quaternion::operator*=" ref="classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d" />
       <keyword name="rotate" id="qglviewer::Quaternion::rotate" ref="classqglviewer_1_1Quaternion.html#a5e2421069d88e576334e10f634625815" />
       <keyword name="inverseRotate" id="qglviewer::Quaternion::inverseRotate" ref="classqglviewer_1_1Quaternion.html#a74d79bc1afcc02fdbfe0eb390c3546f5" />
@@ -1584,21 +1584,21 @@
       <keyword name="inverse" id="qglviewer::Quaternion::inverse" ref="classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e" />
       <keyword name="invert" id="qglviewer::Quaternion::invert" ref="classqglviewer_1_1Quaternion.html#a7fa1616cc61c19a5efcc863c950f7f30" />
       <keyword name="negate" id="qglviewer::Quaternion::negate" ref="classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648" />
-      <keyword name="normalize" id="qglviewer::Quaternion::normalize" ref="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231" />
+      <keyword name="normalize" id="qglviewer::Quaternion::normalize" ref="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
       <keyword name="normalized" id="qglviewer::Quaternion::normalized" ref="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32" />
       <keyword name="matrix" id="qglviewer::Quaternion::matrix" ref="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047" />
       <keyword name="getMatrix" id="qglviewer::Quaternion::getMatrix" ref="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48" />
       <keyword name="getMatrix" id="qglviewer::Quaternion::getMatrix" ref="classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a" />
-      <keyword name="getRotationMatrix" id="qglviewer::Quaternion::getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872" />
+      <keyword name="getRotationMatrix" id="qglviewer::Quaternion::getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1" />
       <keyword name="inverseMatrix" id="qglviewer::Quaternion::inverseMatrix" ref="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22" />
       <keyword name="getInverseMatrix" id="qglviewer::Quaternion::getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b" />
       <keyword name="getInverseMatrix" id="qglviewer::Quaternion::getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155" />
-      <keyword name="getInverseRotationMatrix" id="qglviewer::Quaternion::getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a" />
+      <keyword name="getInverseRotationMatrix" id="qglviewer::Quaternion::getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d" />
       <keyword name="log" id="qglviewer::Quaternion::log" ref="classqglviewer_1_1Quaternion.html#a4db67fbb8171a5e781b56404112cf848" />
       <keyword name="exp" id="qglviewer::Quaternion::exp" ref="classqglviewer_1_1Quaternion.html#a5c546a33cc0c65f24b7e9c48e5069ba7" />
-      <keyword name="slerp" id="qglviewer::Quaternion::slerp" ref="classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4" />
-      <keyword name="squad" id="qglviewer::Quaternion::squad" ref="classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812" />
-      <keyword name="dot" id="qglviewer::Quaternion::dot" ref="classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83" />
+      <keyword name="slerp" id="qglviewer::Quaternion::slerp" ref="classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6" />
+      <keyword name="squad" id="qglviewer::Quaternion::squad" ref="classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf" />
+      <keyword name="dot" id="qglviewer::Quaternion::dot" ref="classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb" />
       <keyword name="lnDif" id="qglviewer::Quaternion::lnDif" ref="classqglviewer_1_1Quaternion.html#af4c74176967acca6e3947977351e1c68" />
       <keyword name="squadTangent" id="qglviewer::Quaternion::squadTangent" ref="classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005" />
       <keyword name="randomQuaternion" id="qglviewer::Quaternion::randomQuaternion" ref="classqglviewer_1_1Quaternion.html#a87d5e98d958fdc63100979fcff1d9976" />
@@ -1607,38 +1607,38 @@
       <keyword name="initFromDOMElement" id="qglviewer::Quaternion::initFromDOMElement" ref="classqglviewer_1_1Quaternion.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
       <keyword name="operator<<" id="qglviewer::Quaternion::operator<<" ref="classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796" />
       <keyword name="qglviewer::Vec" id="qglviewer::Vec" ref="classqglviewer_1_1Vec.html" />
-      <keyword name="x" id="qglviewer::Vec::x" ref="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10" />
-      <keyword name="y" id="qglviewer::Vec::y" ref="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a" />
-      <keyword name="z" id="qglviewer::Vec::z" ref="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872" />
+      <keyword name="x" id="qglviewer::Vec::x" ref="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580" />
+      <keyword name="y" id="qglviewer::Vec::y" ref="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10" />
+      <keyword name="z" id="qglviewer::Vec::z" ref="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded" />
       <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0" />
-      <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6" />
+      <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911" />
       <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592" />
       <keyword name="operator=" id="qglviewer::Vec::operator=" ref="classqglviewer_1_1Vec.html#a9d105072fa3c0fc1e66c162ba083fee8" />
-      <keyword name="setValue" id="qglviewer::Vec::setValue" ref="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa" />
-      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+      <keyword name="setValue" id="qglviewer::Vec::setValue" ref="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5" />
+      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a" />
+      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e" />
       <keyword name="operator const double *" id="qglviewer::Vec::operator const double *" ref="classqglviewer_1_1Vec.html#ad8df949331fe927b4cb5d9bf4685ed35" />
       <keyword name="operator double *" id="qglviewer::Vec::operator double *" ref="classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9" />
       <keyword name="operator const float *" id="qglviewer::Vec::operator const float *" ref="classqglviewer_1_1Vec.html#a54795c57f1d998af73b630d786de2932" />
       <keyword name="operator+=" id="qglviewer::Vec::operator+=" ref="classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e" />
       <keyword name="operator-=" id="qglviewer::Vec::operator-=" ref="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571" />
-      <keyword name="operator*=" id="qglviewer::Vec::operator*=" ref="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9" />
-      <keyword name="operator/=" id="qglviewer::Vec::operator/=" ref="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4" />
+      <keyword name="operator*=" id="qglviewer::Vec::operator*=" ref="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba" />
+      <keyword name="operator/=" id="qglviewer::Vec::operator/=" ref="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22" />
       <keyword name="orthogonalVec" id="qglviewer::Vec::orthogonalVec" ref="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d" />
       <keyword name="operator+" id="qglviewer::Vec::operator+" ref="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7" />
       <keyword name="operator-" id="qglviewer::Vec::operator-" ref="classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc" />
       <keyword name="operator-" id="qglviewer::Vec::operator-" ref="classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373" />
-      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52" />
-      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9" />
-      <keyword name="operator/" id="qglviewer::Vec::operator/" ref="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206" />
+      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d" />
+      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5" />
+      <keyword name="operator/" id="qglviewer::Vec::operator/" ref="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270" />
       <keyword name="operator!=" id="qglviewer::Vec::operator!=" ref="classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54" />
       <keyword name="operator==" id="qglviewer::Vec::operator==" ref="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f" />
-      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ae8b74b239e9752e017105b61239eb54e" />
+      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#a941c47349fbb80d0a53f524e7a2c5702" />
       <keyword name="operator^" id="qglviewer::Vec::operator^" ref="classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317" />
       <keyword name="cross" id="qglviewer::Vec::cross" ref="classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e" />
-      <keyword name="squaredNorm" id="qglviewer::Vec::squaredNorm" ref="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e" />
-      <keyword name="norm" id="qglviewer::Vec::norm" ref="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a" />
-      <keyword name="normalize" id="qglviewer::Vec::normalize" ref="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231" />
+      <keyword name="squaredNorm" id="qglviewer::Vec::squaredNorm" ref="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153" />
+      <keyword name="norm" id="qglviewer::Vec::norm" ref="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b" />
+      <keyword name="normalize" id="qglviewer::Vec::normalize" ref="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
       <keyword name="unit" id="qglviewer::Vec::unit" ref="classqglviewer_1_1Vec.html#a7f3923a61bb70c53263379de9783d265" />
       <keyword name="projectOnAxis" id="qglviewer::Vec::projectOnAxis" ref="classqglviewer_1_1Vec.html#a8c89e6f39afb5bd92e4cae4ffa6c3221" />
       <keyword name="projectOnPlane" id="qglviewer::Vec::projectOnPlane" ref="classqglviewer_1_1Vec.html#a6ed4feca0d9a299bdc68632eb7db51b9" />
diff --git a/doc/refManual/index.html b/doc/refManual/index.html
index e4039c3..14d4e55 100644
--- a/doc/refManual/index.html
+++ b/doc/refManual/index.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -88,7 +88,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/index.qhp b/doc/refManual/index.qhp
index aebd39e..19ff894 100644
--- a/doc/refManual/index.qhp
+++ b/doc/refManual/index.qhp
@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <QtHelpProject version="1.0">
-  <namespace>com.libqglviewer.2.5.3</namespace>
+  <namespace>com.libqglviewer.2.6.1</namespace>
   <virtualFolder>doc</virtualFolder>
   <filterSection>
     <filterAttribute>doxygen</filterAttribute>
     <toc>
-      <section title="libQGLViewer Version 2.5.3" ref="index.html">
+      <section title="libQGLViewer Version 2.6.1" ref="index.html">
         <section title="Namespaces">
           <section title="Namespace List" ref="namespaces.html">
             <section title="qglviewer" ref="namespaceqglviewer.html" />
@@ -44,45 +44,45 @@
                 <section title="Camera" ref="classqglviewer_1_1Camera.html#aa3f3efcb2fcc75de885df29041103cd2" />
                 <section title="~Camera" ref="classqglviewer_1_1Camera.html#ab921e886e6f14e117eb8099ccb0a3775" />
                 <section title="Camera" ref="classqglviewer_1_1Camera.html#a43d24da01076c4cea5f3dbde85e8482c" />
-                <section title="addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec" />
-                <section title="aspectRatio" ref="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1" />
+                <section title="addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4" />
+                <section title="aspectRatio" ref="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01" />
                 <section title="cameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a" />
                 <section title="centerScene" ref="classqglviewer_1_1Camera.html#abf37eb8d64d09f93771b42b95cad00f6" />
                 <section title="computeModelViewMatrix" ref="classqglviewer_1_1Camera.html#a0dad4baab6008e5a94e8a2fa83ec0f05" />
                 <section title="computeProjectionMatrix" ref="classqglviewer_1_1Camera.html#ae51b6c486fe6448453369174bbea8055" />
                 <section title="convertClickToLine" ref="classqglviewer_1_1Camera.html#a706d401cffa41e0e30864e59007f005f" />
-                <section title="deletePath" ref="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac" />
-                <section title="distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5" />
+                <section title="deletePath" ref="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f" />
+                <section title="distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639" />
                 <section title="domElement" ref="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="draw" ref="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e" />
+                <section title="draw" ref="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b" />
                 <section title="drawAllPaths" ref="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87" />
-                <section title="fieldOfView" ref="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330" />
+                <section title="fieldOfView" ref="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23" />
                 <section title="fitBoundingBox" ref="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9" />
                 <section title="fitScreenRegion" ref="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471" />
-                <section title="fitSphere" ref="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec" />
-                <section title="flySpeed" ref="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802" />
-                <section title="focusDistance" ref="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379" />
+                <section title="fitSphere" ref="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10" />
+                <section title="flySpeed" ref="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe" />
+                <section title="focusDistance" ref="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8" />
                 <section title="frame" ref="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75" />
-                <section title="getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4" />
+                <section title="getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878" />
                 <section title="getFrustumPlanesCoefficients" ref="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41" />
                 <section title="getModelViewMatrix" ref="classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20" />
                 <section title="getModelViewMatrix" ref="classqglviewer_1_1Camera.html#aa1d631d6e368a7aa14656b7511787786" />
                 <section title="getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#a7df308e69b599f00c27107530c2a6765" />
                 <section title="getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#adeb5e39686b9fcb3db090dff84c13be4" />
                 <section title="getOrthoWidthHeight" ref="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa" />
-                <section title="getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee" />
+                <section title="getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c" />
                 <section title="getProjectionMatrix" ref="classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7" />
                 <section title="getProjectionMatrix" ref="classqglviewer_1_1Camera.html#a97ff5cf330a6c24d6d49308aedd638bc" />
-                <section title="getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f" />
+                <section title="getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a" />
                 <section title="getViewport" ref="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348" />
-                <section title="getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd" />
-                <section title="horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960" />
+                <section title="getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1" />
+                <section title="horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Camera.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-                <section title="interpolateTo" ref="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97" />
+                <section title="interpolateTo" ref="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1" />
                 <section title="interpolateToFitScene" ref="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0" />
                 <section title="interpolateToZoomOnPixel" ref="classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c" />
-                <section title="IODistance" ref="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d" />
-                <section title="keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de" />
+                <section title="IODistance" ref="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7" />
+                <section title="keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7" />
                 <section title="loadModelViewMatrix" ref="classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53" />
                 <section title="loadModelViewMatrixStereo" ref="classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392" />
                 <section title="loadProjectionMatrix" ref="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a" />
@@ -90,57 +90,57 @@
                 <section title="lookAt" ref="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446" />
                 <section title="operator=" ref="classqglviewer_1_1Camera.html#a0f87e84ad3356493738d4fc8331c7362" />
                 <section title="orientation" ref="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094" />
-                <section title="physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64" />
-                <section title="physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c" />
+                <section title="physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291" />
+                <section title="physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64" />
                 <section title="pivotPoint" ref="classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa" />
-                <section title="pixelGLRatio" ref="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f" />
-                <section title="playPath" ref="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818" />
+                <section title="pixelGLRatio" ref="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c" />
+                <section title="playPath" ref="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0" />
                 <section title="pointUnderPixel" ref="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a" />
                 <section title="position" ref="classqglviewer_1_1Camera.html#abc38a05a597e07c9ff525122682adc50" />
                 <section title="projectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f" />
-                <section title="resetPath" ref="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf" />
+                <section title="resetPath" ref="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132" />
                 <section title="rightVector" ref="classqglviewer_1_1Camera.html#a99f766869c7cc9faaf9a5337db6f223c" />
                 <section title="sceneCenter" ref="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1" />
-                <section title="sceneRadius" ref="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9" />
+                <section title="sceneRadius" ref="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb" />
                 <section title="screenHeight" ref="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794" />
                 <section title="screenWidth" ref="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e" />
-                <section title="setAspectRatio" ref="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c" />
-                <section title="setFieldOfView" ref="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c" />
-                <section title="setFlySpeed" ref="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
-                <section title="setFocusDistance" ref="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a" />
+                <section title="setAspectRatio" ref="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0" />
+                <section title="setFieldOfView" ref="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42" />
+                <section title="setFlySpeed" ref="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
+                <section title="setFocusDistance" ref="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98" />
                 <section title="setFOVToFitScene" ref="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7" />
                 <section title="setFrame" ref="classqglviewer_1_1Camera.html#a809bad30c861f4f6f74228fb59340f90" />
                 <section title="setFromModelViewMatrix" ref="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9" />
-                <section title="setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd" />
-                <section title="setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014" />
-                <section title="setIODistance" ref="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234" />
-                <section title="setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5" />
+                <section title="setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629" />
+                <section title="setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d" />
+                <section title="setIODistance" ref="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7" />
+                <section title="setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a" />
                 <section title="setOrientation" ref="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868" />
-                <section title="setOrientation" ref="classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e" />
-                <section title="setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401" />
+                <section title="setOrientation" ref="classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41" />
+                <section title="setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f" />
                 <section title="setPivotPoint" ref="classqglviewer_1_1Camera.html#ad0d493c3e540ec42a480e03d249b5a56" />
                 <section title="setPivotPointFromPixel" ref="classqglviewer_1_1Camera.html#abc3e131745649e6b18693c466f10382f" />
                 <section title="setPosition" ref="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821" />
                 <section title="setSceneBoundingBox" ref="classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee" />
                 <section title="setSceneCenter" ref="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33" />
                 <section title="setSceneCenterFromPixel" ref="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf" />
-                <section title="setSceneRadius" ref="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822" />
+                <section title="setSceneRadius" ref="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f" />
                 <section title="setScreenWidthAndHeight" ref="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812" />
                 <section title="setType" ref="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc" />
                 <section title="setUpVector" ref="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e" />
                 <section title="setViewDirection" ref="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6" />
-                <section title="setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7" />
-                <section title="setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5" />
+                <section title="setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198" />
+                <section title="setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95" />
                 <section title="showEntireScene" ref="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2" />
                 <section title="type" ref="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7" />
                 <section title="unprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d" />
                 <section title="upVector" ref="classqglviewer_1_1Camera.html#a9cd2e746e7379b08fbaeea0ced76e1d7" />
                 <section title="viewDirection" ref="classqglviewer_1_1Camera.html#aac10e453c166209b4e6c14c0266651c7" />
                 <section title="worldCoordinatesOf" ref="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab" />
-                <section title="zClippingCoefficient" ref="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca" />
-                <section title="zFar" ref="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949" />
-                <section title="zNear" ref="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5" />
-                <section title="zNearCoefficient" ref="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e" />
+                <section title="zClippingCoefficient" ref="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392" />
+                <section title="zFar" ref="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391" />
+                <section title="zNear" ref="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0" />
+                <section title="zNearCoefficient" ref="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14" />
               </section>
               <section title="CameraConstraint" ref="classqglviewer_1_1CameraConstraint.html">
                 <section title="CameraConstraint" ref="classqglviewer_1_1CameraConstraint.html#a38cba0f718402b8cd5ab74d36d7666b4" />
@@ -159,30 +159,30 @@
                 <section title="~Frame" ref="classqglviewer_1_1Frame.html#ae0c994a30d9a018000fe8ad66ff0a86d" />
                 <section title="Frame" ref="classqglviewer_1_1Frame.html#a7864fb955cec11fe78c3b2bb81230516" />
                 <section title="Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
-                <section title="alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+                <section title="alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
                 <section title="constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
                 <section title="coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
                 <section title="coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
                 <section title="coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
                 <section title="domElement" ref="classqglviewer_1_1Frame.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-                <section title="getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
-                <section title="getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-                <section title="getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-                <section title="getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-                <section title="getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-                <section title="getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-                <section title="getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-                <section title="getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
+                <section title="getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+                <section title="getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
+                <section title="getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+                <section title="getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+                <section title="getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+                <section title="getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+                <section title="getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+                <section title="getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+                <section title="getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
                 <section title="getMatrix" ref="classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48" />
                 <section title="getMatrix" ref="classqglviewer_1_1Frame.html#a15f0dc7596dc78437154302466ac3c0a" />
-                <section title="getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
-                <section title="getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-                <section title="getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
-                <section title="getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-                <section title="getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
-                <section title="getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-                <section title="getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
+                <section title="getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
+                <section title="getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+                <section title="getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
+                <section title="getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+                <section title="getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
+                <section title="getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+                <section title="getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
                 <section title="getWorldMatrix" ref="classqglviewer_1_1Frame.html#a45358fae434b3912ce81577dc7cf4fc9" />
                 <section title="getWorldMatrix" ref="classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Frame.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
@@ -203,8 +203,8 @@
                 <section title="referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
                 <section title="rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
                 <section title="rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-                <section title="rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-                <section title="rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+                <section title="rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+                <section title="rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
                 <section title="rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
                 <section title="rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
                 <section title="rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
@@ -212,20 +212,20 @@
                 <section title="setFromMatrix" ref="classqglviewer_1_1Frame.html#a5408d08ab204157ec29f555b6813f9e4" />
                 <section title="setFromMatrix" ref="classqglviewer_1_1Frame.html#a0c4d51f142f43235e30198e7b8abc626" />
                 <section title="setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-                <section title="setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+                <section title="setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
                 <section title="setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
                 <section title="setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-                <section title="setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+                <section title="setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
                 <section title="setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
                 <section title="setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
                 <section title="setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
                 <section title="setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
                 <section title="setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-                <section title="setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+                <section title="setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
                 <section title="setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
                 <section title="settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
                 <section title="setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-                <section title="setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+                <section title="setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
                 <section title="setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
                 <section title="setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
                 <section title="setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
@@ -234,8 +234,8 @@
                 <section title="transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
                 <section title="translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
                 <section title="translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-                <section title="translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-                <section title="translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+                <section title="translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+                <section title="translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
                 <section title="translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
                 <section title="worldInverse" ref="classqglviewer_1_1Frame.html#a37d4da8cfd297273e7bb55538debaa3e" />
                 <section title="worldMatrix" ref="classqglviewer_1_1Frame.html#a39aa0648db05006e2b2f22ac5d971141" />
@@ -244,33 +244,33 @@
                 <section title="KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e" />
                 <section title="~KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a110b875f9265a30f7a520a3603362f95" />
                 <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622" />
-                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40" />
+                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a" />
                 <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b" />
-                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa821392c6e108d5c7814317b8c3cd47f" />
+                <section title="addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#added3bdd706f5a2e3c7c43de1c19d27d" />
                 <section title="deletePath" ref="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34" />
                 <section title="domElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2" />
-                <section title="duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980" />
+                <section title="drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e" />
+                <section title="duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166" />
                 <section title="endReached" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab4010a17bf77b9940b120ee8ed9a0271" />
-                <section title="firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477" />
+                <section title="firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0" />
                 <section title="frame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-                <section title="interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae" />
+                <section title="interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a" />
                 <section title="interpolated" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de" />
                 <section title="interpolationIsStarted" ref="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70" />
                 <section title="interpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e" />
-                <section title="interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad" />
-                <section title="interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a" />
+                <section title="interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393" />
+                <section title="interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0" />
                 <section title="keyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8" />
-                <section title="keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473" />
-                <section title="lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30" />
+                <section title="keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe" />
+                <section title="lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c" />
                 <section title="loopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45" />
                 <section title="numberOfKeyFrames" ref="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273" />
                 <section title="resetInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74" />
                 <section title="setFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d" />
                 <section title="setInterpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd" />
-                <section title="setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d" />
-                <section title="setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3" />
+                <section title="setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f" />
+                <section title="setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7" />
                 <section title="setLoopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd" />
                 <section title="startInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819" />
                 <section title="stopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a16f0910299ae07cede3396a14ec01f4b" />
@@ -286,7 +286,7 @@
                 <section title="~ManipulatedCameraFrame" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a5f187b4d7822ab9602aee6dc27e723a6" />
                 <section title="ManipulatedCameraFrame" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a1a319246151bdd8f5ca4d9e1824abcc2" />
                 <section title="domElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
-                <section title="flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802" />
+                <section title="flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
                 <section title="mouseMoveEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a609d287c3721aff697068efa3dfc4b4c" />
                 <section title="mouseReleaseEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#aec95b0f05a05c1cdfc940ef4621d5db3" />
@@ -294,7 +294,7 @@
                 <section title="pivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa" />
                 <section title="rotatesAroundUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ae8a6d13c86c8d063d33a33a8db45ec85" />
                 <section title="sceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b" />
-                <section title="setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
+                <section title="setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
                 <section title="setPivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad0d493c3e540ec42a480e03d249b5a56" />
                 <section title="setRotatesAroundUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a1d1e56d55fdbd1906a230392e2f7eedb" />
                 <section title="setSceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a" />
@@ -319,23 +319,23 @@
                 <section title="mousePressEvent" ref="classqglviewer_1_1ManipulatedFrame.html#a9b4cce9d77e0495202100a8f1055f1f3" />
                 <section title="mouseReleaseEvent" ref="classqglviewer_1_1ManipulatedFrame.html#aec95b0f05a05c1cdfc940ef4621d5db3" />
                 <section title="operator=" ref="classqglviewer_1_1ManipulatedFrame.html#ad6d13eba8611869fe824da2dab500f50" />
-                <section title="rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f" />
-                <section title="setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11" />
+                <section title="rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735" />
+                <section title="setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef" />
                 <section title="setSpinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9" />
-                <section title="setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b" />
-                <section title="setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871" />
-                <section title="setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499" />
-                <section title="setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0" />
+                <section title="setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02" />
+                <section title="setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20" />
+                <section title="setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f" />
+                <section title="setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed" />
                 <section title="spin" ref="classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd" />
                 <section title="spinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276" />
-                <section title="spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca" />
+                <section title="spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7" />
                 <section title="spun" ref="classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c" />
                 <section title="startSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf" />
                 <section title="stopSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9dc6e4b2c4c4a3ae195dfc39bb2ce8ac" />
-                <section title="translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a" />
+                <section title="translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841" />
                 <section title="wheelEvent" ref="classqglviewer_1_1ManipulatedFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36" />
-                <section title="wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44" />
-                <section title="zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d" />
+                <section title="wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182" />
+                <section title="zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59" />
               </section>
               <section title="MouseGrabber" ref="classqglviewer_1_1MouseGrabber.html">
                 <section title="MouseGrabber" ref="classqglviewer_1_1MouseGrabber.html#aeed1d659951e2bc8dbe0ffa3850c97e6" />
@@ -355,22 +355,22 @@
               </section>
               <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html">
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66" />
-                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85" />
+                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659" />
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634" />
-                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45" />
+                <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba" />
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a71a4d1a3b760854468ff270a982e5f59" />
                 <section title="Quaternion" ref="classqglviewer_1_1Quaternion.html#a87faf5efc96c9b5af85a611985b6618f" />
-                <section title="angle" ref="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875" />
+                <section title="angle" ref="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495" />
                 <section title="axis" ref="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4" />
                 <section title="domElement" ref="classqglviewer_1_1Quaternion.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
                 <section title="exp" ref="classqglviewer_1_1Quaternion.html#a5c546a33cc0c65f24b7e9c48e5069ba7" />
-                <section title="getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292" />
+                <section title="getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5" />
                 <section title="getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b" />
                 <section title="getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155" />
-                <section title="getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a" />
+                <section title="getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d" />
                 <section title="getMatrix" ref="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48" />
                 <section title="getMatrix" ref="classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a" />
-                <section title="getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872" />
+                <section title="getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Quaternion.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
                 <section title="inverse" ref="classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e" />
                 <section title="inverseMatrix" ref="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22" />
@@ -379,61 +379,61 @@
                 <section title="log" ref="classqglviewer_1_1Quaternion.html#a4db67fbb8171a5e781b56404112cf848" />
                 <section title="matrix" ref="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047" />
                 <section title="negate" ref="classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648" />
-                <section title="normalize" ref="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231" />
+                <section title="normalize" ref="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
                 <section title="normalized" ref="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32" />
                 <section title="operator*=" ref="classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d" />
                 <section title="operator<<" ref="classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796" />
                 <section title="operator=" ref="classqglviewer_1_1Quaternion.html#ad20a1310f5fac88d5e00fa055e09fe72" />
-                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a" />
+                <section title="operator[]" ref="classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e" />
                 <section title="rotate" ref="classqglviewer_1_1Quaternion.html#a5e2421069d88e576334e10f634625815" />
-                <section title="setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b" />
+                <section title="setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81" />
                 <section title="setFromRotatedBasis" ref="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9" />
-                <section title="setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac" />
-                <section title="setValue" ref="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a" />
+                <section title="setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f" />
+                <section title="setValue" ref="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db" />
                 <section title="operator*" ref="classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919" />
                 <section title="operator*" ref="classqglviewer_1_1Quaternion.html#a19ce6efe5ef2744c8293e8ba1a39b9e4" />
               </section>
               <section title="Vec" ref="classqglviewer_1_1Vec.html">
                 <section title="Vec" ref="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0" />
-                <section title="Vec" ref="classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6" />
+                <section title="Vec" ref="classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911" />
                 <section title="Vec" ref="classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592" />
                 <section title="Vec" ref="classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a" />
                 <section title="domElement" ref="classqglviewer_1_1Vec.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
                 <section title="initFromDOMElement" ref="classqglviewer_1_1Vec.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-                <section title="norm" ref="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a" />
-                <section title="normalize" ref="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231" />
+                <section title="norm" ref="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b" />
+                <section title="normalize" ref="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
                 <section title="operator const double *" ref="classqglviewer_1_1Vec.html#ad8df949331fe927b4cb5d9bf4685ed35" />
                 <section title="operator const float *" ref="classqglviewer_1_1Vec.html#a54795c57f1d998af73b630d786de2932" />
                 <section title="operator double *" ref="classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9" />
-                <section title="operator*=" ref="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9" />
+                <section title="operator*=" ref="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba" />
                 <section title="operator+=" ref="classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e" />
                 <section title="operator-=" ref="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571" />
-                <section title="operator/=" ref="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4" />
+                <section title="operator/=" ref="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22" />
                 <section title="operator<<" ref="classqglviewer_1_1Vec.html#a16d5f2f021103b05006b0c58fbd48796" />
                 <section title="operator=" ref="classqglviewer_1_1Vec.html#a9d105072fa3c0fc1e66c162ba083fee8" />
-                <section title="operator[]" ref="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-                <section title="operator[]" ref="classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+                <section title="operator[]" ref="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a" />
+                <section title="operator[]" ref="classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e" />
                 <section title="orthogonalVec" ref="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d" />
                 <section title="projectOnAxis" ref="classqglviewer_1_1Vec.html#a8c89e6f39afb5bd92e4cae4ffa6c3221" />
                 <section title="projectOnPlane" ref="classqglviewer_1_1Vec.html#a6ed4feca0d9a299bdc68632eb7db51b9" />
-                <section title="setValue" ref="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa" />
-                <section title="squaredNorm" ref="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e" />
+                <section title="setValue" ref="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5" />
+                <section title="squaredNorm" ref="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153" />
                 <section title="unit" ref="classqglviewer_1_1Vec.html#a7f3923a61bb70c53263379de9783d265" />
                 <section title="cross" ref="classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e" />
                 <section title="operator!=" ref="classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54" />
-                <section title="operator*" ref="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52" />
-                <section title="operator*" ref="classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9" />
-                <section title="operator*" ref="classqglviewer_1_1Vec.html#ae8b74b239e9752e017105b61239eb54e" />
+                <section title="operator*" ref="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d" />
+                <section title="operator*" ref="classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5" />
+                <section title="operator*" ref="classqglviewer_1_1Vec.html#a941c47349fbb80d0a53f524e7a2c5702" />
                 <section title="operator+" ref="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7" />
                 <section title="operator-" ref="classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc" />
                 <section title="operator-" ref="classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373" />
-                <section title="operator/" ref="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206" />
+                <section title="operator/" ref="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270" />
                 <section title="operator==" ref="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f" />
                 <section title="operator^" ref="classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317" />
-                <section title="x" ref="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10" />
-                <section title="y" ref="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a" />
-                <section title="z" ref="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872" />
+                <section title="x" ref="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580" />
+                <section title="y" ref="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10" />
+                <section title="z" ref="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded" />
               </section>
               <section title="WorldConstraint" ref="classqglviewer_1_1WorldConstraint.html">
                 <section title="~WorldConstraint" ref="classqglviewer_1_1WorldConstraint.html#a150934716deed3fda4d4121307d17fd0" />
@@ -504,15 +504,15 @@
               <section title="animateNeeded" ref="classQGLViewer.html#a841503c97db5a51e33f8a7e56d4ca006" />
               <section title="animationIsStarted" ref="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e" />
               <section title="animationPeriod" ref="classQGLViewer.html#a700d9398d4293d9274766efa8b17917e" />
-              <section title="aspectRatio" ref="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1" />
+              <section title="aspectRatio" ref="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01" />
               <section title="autoBufferSwap" ref="classQGLViewer.html#a36faca915c37548a53ab04f297bb5c17" />
               <section title="axisIsDrawn" ref="classQGLViewer.html#a7d38e6f11078e886f7978525def15797" />
               <section title="axisIsDrawnChanged" ref="classQGLViewer.html#a541cdbec67d0c5895cd6c77c01b0f89e" />
               <section title="backgroundColor" ref="classQGLViewer.html#a7ddf68dcfb09cc5a991a06d91cb4cc5b" />
               <section title="beginSelection" ref="classQGLViewer.html#af0a48cc50f194926bad38d4924162116" />
               <section title="bufferTextureId" ref="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69" />
-              <section title="bufferTextureMaxU" ref="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48" />
-              <section title="bufferTextureMaxV" ref="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7" />
+              <section title="bufferTextureMaxU" ref="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2" />
+              <section title="bufferTextureMaxV" ref="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9" />
               <section title="camera" ref="classQGLViewer.html#a27a9e97573822d296b48e1c408b74042" />
               <section title="cameraIsEdited" ref="classQGLViewer.html#a1bf2817fb27f0ad326e3db75aeb46af7" />
               <section title="cameraIsEditedChanged" ref="classQGLViewer.html#a38968d2f050efa14869c2e4de416b7b4" />
@@ -521,13 +521,13 @@
               <section title="clickAction" ref="classQGLViewer.html#aebe4c9b3104cd089f855a1761c9f9ad8" />
               <section title="closeEvent" ref="classQGLViewer.html#a3fb8c90e5c48e6ccc09f9125aa86943e" />
               <section title="copyBufferToTexture" ref="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453" />
-              <section title="currentFPS" ref="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975" />
+              <section title="currentFPS" ref="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56" />
               <section title="displayMessage" ref="classQGLViewer.html#a61336516f9771ac6aef90875f848add4" />
               <section title="displaysInStereo" ref="classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337" />
               <section title="domElement" ref="classQGLViewer.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
               <section title="draw" ref="classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0" />
               <section title="drawFinished" ref="classQGLViewer.html#afc74e28548768da157f2fe75bced2803" />
-              <section title="drawLight" ref="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53" />
+              <section title="drawLight" ref="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07" />
               <section title="drawNeeded" ref="classQGLViewer.html#a7a712ca70a0b1c22af51363b786fc86e" />
               <section title="drawText" ref="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775" />
               <section title="drawWithNames" ref="classQGLViewer.html#a528b238068a87472df8ac3a5b2481c55" />
@@ -570,7 +570,7 @@
               <section title="mouseString" ref="classQGLViewer.html#a6d66b99a4c5a38ef0072f350b055201b" />
               <section title="openSnapshotFormatDialog" ref="classQGLViewer.html#ac9c409fd034bc5ab42aacfa4c23fe55c" />
               <section title="paintGL" ref="classQGLViewer.html#ac5cbfafb28ef4c0474ae96437294f547" />
-              <section title="pathKey" ref="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835" />
+              <section title="pathKey" ref="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5" />
               <section title="playPathKeyboardModifiers" ref="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d" />
               <section title="pointSelected" ref="classQGLViewer.html#ab78f96913c9aede4854b0efccf53f983" />
               <section title="postDraw" ref="classQGLViewer.html#a24f5dce22199f5eea71f034cae6ae4fa" />
@@ -587,7 +587,7 @@
               <section title="saveStateToFile" ref="classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa" />
               <section title="scaledFont" ref="classQGLViewer.html#a7c5568ae9e5539cf410ef369dba7cec5" />
               <section title="sceneCenter" ref="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab" />
-              <section title="sceneRadius" ref="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9" />
+              <section title="sceneRadius" ref="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb" />
               <section title="select" ref="classQGLViewer.html#a3b20e4da96e6d8c038a08c7d34d182c6" />
               <section title="select" ref="classQGLViewer.html#af2ed82c063635ce439d9c73223e20fd6" />
               <section title="selectBuffer" ref="classQGLViewer.html#a87015f560fd54b358d185482ae82eec3" />
@@ -606,7 +606,7 @@
               <section title="setFPSIsDisplayed" ref="classQGLViewer.html#aad24c89e014de3ea16f071c3bc18f4db" />
               <section title="setFullScreen" ref="classQGLViewer.html#a7e021e15180ba348e90c955bdd28b1a4" />
               <section title="setGridIsDrawn" ref="classQGLViewer.html#ae9dd114195dfdf82e23b5754b7c161de" />
-              <section title="setKeyDescription" ref="classQGLViewer.html#a9e97204faca448653fad94a37024a488" />
+              <section title="setKeyDescription" ref="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c" />
               <section title="setManipulatedFrame" ref="classQGLViewer.html#ac6964ec1ebb2f42464313e0c43e767a3" />
               <section title="setMouseBinding" ref="classQGLViewer.html#a98e3c0b956c3fea7dc804e7a7a7dd295" />
               <section title="setMouseBinding" ref="classQGLViewer.html#af60ec98df1af2309ef1d16644e9791ef" />
@@ -617,11 +617,11 @@
               <section title="setMouseGrabber" ref="classQGLViewer.html#a993285ef8a16ccbdc5d57a1264212712" />
               <section title="setMouseGrabberIsEnabled" ref="classQGLViewer.html#a3f0b956f948f469c095ff3c2c1b73494" />
               <section title="setMouseTracking" ref="classQGLViewer.html#acf0a4ee197fe91b8c07dd74cad1aafaa" />
-              <section title="setPathKey" ref="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13" />
+              <section title="setPathKey" ref="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13" />
               <section title="setPlayPathKeyboardModifiers" ref="classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1" />
               <section title="setSceneBoundingBox" ref="classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c" />
               <section title="setSceneCenter" ref="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d" />
-              <section title="setSceneRadius" ref="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83" />
+              <section title="setSceneRadius" ref="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd" />
               <section title="setSelectBufferSize" ref="classQGLViewer.html#ae8af6dc4a89202211b764647caf3d1f3" />
               <section title="setSelectedName" ref="classQGLViewer.html#aeaa1327270d0bcdf991874e7d741afd5" />
               <section title="setSelectRegionHeight" ref="classQGLViewer.html#ae830757057c41db506410fd3c332d7dd" />
@@ -805,9 +805,9 @@
       <keyword name="foregroundColor" id="QGLViewer::foregroundColor" ref="classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d" />
       <keyword name="setBackgroundColor" id="QGLViewer::setBackgroundColor" ref="classQGLViewer.html#a70d4e21190fdc47edd88f078dd2037cb" />
       <keyword name="setForegroundColor" id="QGLViewer::setForegroundColor" ref="classQGLViewer.html#a7d986b1944dc5a190e509835e7c79eec" />
-      <keyword name="sceneRadius" id="QGLViewer::sceneRadius" ref="classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9" />
+      <keyword name="sceneRadius" id="QGLViewer::sceneRadius" ref="classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb" />
       <keyword name="sceneCenter" id="QGLViewer::sceneCenter" ref="classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab" />
-      <keyword name="setSceneRadius" id="QGLViewer::setSceneRadius" ref="classQGLViewer.html#aef99f105486d457f0199fcc35181fa83" />
+      <keyword name="setSceneRadius" id="QGLViewer::setSceneRadius" ref="classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd" />
       <keyword name="setSceneCenter" id="QGLViewer::setSceneCenter" ref="classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d" />
       <keyword name="setSceneBoundingBox" id="QGLViewer::setSceneBoundingBox" ref="classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c" />
       <keyword name="showEntireScene" id="QGLViewer::showEntireScene" ref="classQGLViewer.html#ada8dd7d2346ebf46ed1f9822a8418df2" />
@@ -819,8 +819,8 @@
       <keyword name="setMouseGrabberIsEnabled" id="QGLViewer::setMouseGrabberIsEnabled" ref="classQGLViewer.html#a3f0b956f948f469c095ff3c2c1b73494" />
       <keyword name="mouseGrabberIsEnabled" id="QGLViewer::mouseGrabberIsEnabled" ref="classQGLViewer.html#a5fe9b0a1fcd39a5cb132ffdc86f2574f" />
       <keyword name="setMouseGrabber" id="QGLViewer::setMouseGrabber" ref="classQGLViewer.html#a993285ef8a16ccbdc5d57a1264212712" />
-      <keyword name="aspectRatio" id="QGLViewer::aspectRatio" ref="classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1" />
-      <keyword name="currentFPS" id="QGLViewer::currentFPS" ref="classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975" />
+      <keyword name="aspectRatio" id="QGLViewer::aspectRatio" ref="classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01" />
+      <keyword name="currentFPS" id="QGLViewer::currentFPS" ref="classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56" />
       <keyword name="isFullScreen" id="QGLViewer::isFullScreen" ref="classQGLViewer.html#a129c439f36bb669672148192abc8ffed" />
       <keyword name="displaysInStereo" id="QGLViewer::displaysInStereo" ref="classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337" />
       <keyword name="sizeHint" id="QGLViewer::sizeHint" ref="classQGLViewer.html#ad8288a17cf54658f1ce1c0db9e97dc8a" />
@@ -833,11 +833,11 @@
       <keyword name="stopScreenCoordinatesSystem" id="QGLViewer::stopScreenCoordinatesSystem" ref="classQGLViewer.html#a9cff22af974391604bff7f91df789138" />
       <keyword name="drawText" id="QGLViewer::drawText" ref="classQGLViewer.html#ad604ec747b161c869877fcb647a3c775" />
       <keyword name="displayMessage" id="QGLViewer::displayMessage" ref="classQGLViewer.html#a61336516f9771ac6aef90875f848add4" />
-      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0" />
-      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a27edb1331c7bf373d126487e9547969f" />
-      <keyword name="drawAxis" id="QGLViewer::drawAxis" ref="classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c" />
-      <keyword name="drawGrid" id="QGLViewer::drawGrid" ref="classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d" />
-      <keyword name="drawLight" id="QGLViewer::drawLight" ref="classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53" />
+      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150" />
+      <keyword name="drawArrow" id="QGLViewer::drawArrow" ref="classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc" />
+      <keyword name="drawAxis" id="QGLViewer::drawAxis" ref="classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc" />
+      <keyword name="drawGrid" id="QGLViewer::drawGrid" ref="classQGLViewer.html#a86a359ff8c78755fca0900321293da8f" />
+      <keyword name="drawLight" id="QGLViewer::drawLight" ref="classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07" />
       <keyword name="width" id="QGLViewer::width" ref="classQGLViewer.html#a369399896761e31ae71db57fdd0ba431" />
       <keyword name="height" id="QGLViewer::height" ref="classQGLViewer.html#ae26bcfe2f33f5873dbdfb6948cf1f59f" />
       <keyword name="updateGL" id="QGLViewer::updateGL" ref="classQGLViewer.html#ae12b7378efbffabc24a133ca1deb19ae" />
@@ -866,8 +866,8 @@
       <keyword name="openSnapshotFormatDialog" id="QGLViewer::openSnapshotFormatDialog" ref="classQGLViewer.html#ac9c409fd034bc5ab42aacfa4c23fe55c" />
       <keyword name="snapshotToClipboard" id="QGLViewer::snapshotToClipboard" ref="classQGLViewer.html#a6054c5da7cfd763db7c0b214026a50ec" />
       <keyword name="bufferTextureId" id="QGLViewer::bufferTextureId" ref="classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69" />
-      <keyword name="bufferTextureMaxU" id="QGLViewer::bufferTextureMaxU" ref="classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48" />
-      <keyword name="bufferTextureMaxV" id="QGLViewer::bufferTextureMaxV" ref="classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7" />
+      <keyword name="bufferTextureMaxU" id="QGLViewer::bufferTextureMaxU" ref="classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2" />
+      <keyword name="bufferTextureMaxV" id="QGLViewer::bufferTextureMaxV" ref="classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9" />
       <keyword name="copyBufferToTexture" id="QGLViewer::copyBufferToTexture" ref="classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453" />
       <keyword name="animationIsStarted" id="QGLViewer::animationIsStarted" ref="classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e" />
       <keyword name="animationPeriod" id="QGLViewer::animationPeriod" ref="classQGLViewer.html#a700d9398d4293d9274766efa8b17917e" />
@@ -916,13 +916,13 @@
       <keyword name="endSelection" id="QGLViewer::endSelection" ref="classQGLViewer.html#a0d164809a99bbe6ff2fc0dee33fe0e91" />
       <keyword name="postSelection" id="QGLViewer::postSelection" ref="classQGLViewer.html#a3dc0d3b212e04bcafd63e9c3eb214a6c" />
       <keyword name="shortcut" id="QGLViewer::shortcut" ref="classQGLViewer.html#af8f502daf9ffa61c8904f891c843e994" />
-      <keyword name="pathKey" id="QGLViewer::pathKey" ref="classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835" />
+      <keyword name="pathKey" id="QGLViewer::pathKey" ref="classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5" />
       <keyword name="addKeyFrameKeyboardModifiers" id="QGLViewer::addKeyFrameKeyboardModifiers" ref="classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1" />
       <keyword name="playPathKeyboardModifiers" id="QGLViewer::playPathKeyboardModifiers" ref="classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d" />
       <keyword name="setShortcut" id="QGLViewer::setShortcut" ref="classQGLViewer.html#a34d76d224c67a0fdae03f0d921bf3330" />
-      <keyword name="setKeyDescription" id="QGLViewer::setKeyDescription" ref="classQGLViewer.html#a9e97204faca448653fad94a37024a488" />
+      <keyword name="setKeyDescription" id="QGLViewer::setKeyDescription" ref="classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c" />
       <keyword name="clearShortcuts" id="QGLViewer::clearShortcuts" ref="classQGLViewer.html#ac02747804176d6db01421e12e699eb7a" />
-      <keyword name="setPathKey" id="QGLViewer::setPathKey" ref="classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13" />
+      <keyword name="setPathKey" id="QGLViewer::setPathKey" ref="classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13" />
       <keyword name="setPlayPathKeyboardModifiers" id="QGLViewer::setPlayPathKeyboardModifiers" ref="classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1" />
       <keyword name="setAddKeyFrameKeyboardModifiers" id="QGLViewer::setAddKeyFrameKeyboardModifiers" ref="classQGLViewer.html#afe04d1c918e50f6b4db5f7b6c7b80219" />
       <keyword name="mouseAction" id="QGLViewer::mouseAction" ref="classQGLViewer.html#ab689056381e744de41ccc27383294692" />
@@ -1026,47 +1026,47 @@
       <keyword name="rightVector" id="qglviewer::Camera::rightVector" ref="classqglviewer_1_1Camera.html#a99f766869c7cc9faaf9a5337db6f223c" />
       <keyword name="orientation" id="qglviewer::Camera::orientation" ref="classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094" />
       <keyword name="setFromModelViewMatrix" id="qglviewer::Camera::setFromModelViewMatrix" ref="classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9" />
-      <keyword name="setFromProjectionMatrix" id="qglviewer::Camera::setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd" />
+      <keyword name="setFromProjectionMatrix" id="qglviewer::Camera::setFromProjectionMatrix" ref="classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629" />
       <keyword name="setPosition" id="qglviewer::Camera::setPosition" ref="classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821" />
       <keyword name="setOrientation" id="qglviewer::Camera::setOrientation" ref="classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868" />
-      <keyword name="setOrientation" id="qglviewer::Camera::setOrientation" ref="classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e" />
+      <keyword name="setOrientation" id="qglviewer::Camera::setOrientation" ref="classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41" />
       <keyword name="setUpVector" id="qglviewer::Camera::setUpVector" ref="classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e" />
       <keyword name="setViewDirection" id="qglviewer::Camera::setViewDirection" ref="classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6" />
       <keyword name="lookAt" id="qglviewer::Camera::lookAt" ref="classqglviewer_1_1Camera.html#aafe147ffa75738c296c729d9b5026446" />
       <keyword name="showEntireScene" id="qglviewer::Camera::showEntireScene" ref="classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2" />
-      <keyword name="fitSphere" id="qglviewer::Camera::fitSphere" ref="classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec" />
+      <keyword name="fitSphere" id="qglviewer::Camera::fitSphere" ref="classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10" />
       <keyword name="fitBoundingBox" id="qglviewer::Camera::fitBoundingBox" ref="classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9" />
       <keyword name="fitScreenRegion" id="qglviewer::Camera::fitScreenRegion" ref="classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471" />
       <keyword name="centerScene" id="qglviewer::Camera::centerScene" ref="classqglviewer_1_1Camera.html#abf37eb8d64d09f93771b42b95cad00f6" />
       <keyword name="interpolateToZoomOnPixel" id="qglviewer::Camera::interpolateToZoomOnPixel" ref="classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c" />
       <keyword name="interpolateToFitScene" id="qglviewer::Camera::interpolateToFitScene" ref="classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0" />
-      <keyword name="interpolateTo" id="qglviewer::Camera::interpolateTo" ref="classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97" />
+      <keyword name="interpolateTo" id="qglviewer::Camera::interpolateTo" ref="classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1" />
       <keyword name="type" id="qglviewer::Camera::type" ref="classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7" />
-      <keyword name="fieldOfView" id="qglviewer::Camera::fieldOfView" ref="classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330" />
-      <keyword name="horizontalFieldOfView" id="qglviewer::Camera::horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960" />
-      <keyword name="aspectRatio" id="qglviewer::Camera::aspectRatio" ref="classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1" />
+      <keyword name="fieldOfView" id="qglviewer::Camera::fieldOfView" ref="classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23" />
+      <keyword name="horizontalFieldOfView" id="qglviewer::Camera::horizontalFieldOfView" ref="classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66" />
+      <keyword name="aspectRatio" id="qglviewer::Camera::aspectRatio" ref="classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01" />
       <keyword name="screenWidth" id="qglviewer::Camera::screenWidth" ref="classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e" />
       <keyword name="screenHeight" id="qglviewer::Camera::screenHeight" ref="classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794" />
       <keyword name="getViewport" id="qglviewer::Camera::getViewport" ref="classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348" />
-      <keyword name="pixelGLRatio" id="qglviewer::Camera::pixelGLRatio" ref="classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f" />
-      <keyword name="zNearCoefficient" id="qglviewer::Camera::zNearCoefficient" ref="classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e" />
-      <keyword name="zClippingCoefficient" id="qglviewer::Camera::zClippingCoefficient" ref="classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca" />
-      <keyword name="zNear" id="qglviewer::Camera::zNear" ref="classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5" />
-      <keyword name="zFar" id="qglviewer::Camera::zFar" ref="classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949" />
+      <keyword name="pixelGLRatio" id="qglviewer::Camera::pixelGLRatio" ref="classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c" />
+      <keyword name="zNearCoefficient" id="qglviewer::Camera::zNearCoefficient" ref="classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14" />
+      <keyword name="zClippingCoefficient" id="qglviewer::Camera::zClippingCoefficient" ref="classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392" />
+      <keyword name="zNear" id="qglviewer::Camera::zNear" ref="classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0" />
+      <keyword name="zFar" id="qglviewer::Camera::zFar" ref="classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391" />
       <keyword name="getOrthoWidthHeight" id="qglviewer::Camera::getOrthoWidthHeight" ref="classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa" />
       <keyword name="getFrustumPlanesCoefficients" id="qglviewer::Camera::getFrustumPlanesCoefficients" ref="classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41" />
       <keyword name="setType" id="qglviewer::Camera::setType" ref="classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc" />
-      <keyword name="setFieldOfView" id="qglviewer::Camera::setFieldOfView" ref="classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c" />
-      <keyword name="setHorizontalFieldOfView" id="qglviewer::Camera::setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014" />
+      <keyword name="setFieldOfView" id="qglviewer::Camera::setFieldOfView" ref="classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42" />
+      <keyword name="setHorizontalFieldOfView" id="qglviewer::Camera::setHorizontalFieldOfView" ref="classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d" />
       <keyword name="setFOVToFitScene" id="qglviewer::Camera::setFOVToFitScene" ref="classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7" />
-      <keyword name="setAspectRatio" id="qglviewer::Camera::setAspectRatio" ref="classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c" />
+      <keyword name="setAspectRatio" id="qglviewer::Camera::setAspectRatio" ref="classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0" />
       <keyword name="setScreenWidthAndHeight" id="qglviewer::Camera::setScreenWidthAndHeight" ref="classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812" />
-      <keyword name="setZNearCoefficient" id="qglviewer::Camera::setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5" />
-      <keyword name="setZClippingCoefficient" id="qglviewer::Camera::setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7" />
-      <keyword name="sceneRadius" id="qglviewer::Camera::sceneRadius" ref="classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9" />
+      <keyword name="setZNearCoefficient" id="qglviewer::Camera::setZNearCoefficient" ref="classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95" />
+      <keyword name="setZClippingCoefficient" id="qglviewer::Camera::setZClippingCoefficient" ref="classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198" />
+      <keyword name="sceneRadius" id="qglviewer::Camera::sceneRadius" ref="classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb" />
       <keyword name="sceneCenter" id="qglviewer::Camera::sceneCenter" ref="classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1" />
-      <keyword name="distanceToSceneCenter" id="qglviewer::Camera::distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5" />
-      <keyword name="setSceneRadius" id="qglviewer::Camera::setSceneRadius" ref="classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822" />
+      <keyword name="distanceToSceneCenter" id="qglviewer::Camera::distanceToSceneCenter" ref="classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639" />
+      <keyword name="setSceneRadius" id="qglviewer::Camera::setSceneRadius" ref="classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f" />
       <keyword name="setSceneCenter" id="qglviewer::Camera::setSceneCenter" ref="classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33" />
       <keyword name="setSceneCenterFromPixel" id="qglviewer::Camera::setSceneCenterFromPixel" ref="classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf" />
       <keyword name="setSceneBoundingBox" id="qglviewer::Camera::setSceneBoundingBox" ref="classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee" />
@@ -1075,12 +1075,12 @@
       <keyword name="setPivotPointFromPixel" id="qglviewer::Camera::setPivotPointFromPixel" ref="classqglviewer_1_1Camera.html#abc3e131745649e6b18693c466f10382f" />
       <keyword name="frame" id="qglviewer::Camera::frame" ref="classqglviewer_1_1Camera.html#ad367db656b03fe0bc87b021801d66b75" />
       <keyword name="setFrame" id="qglviewer::Camera::setFrame" ref="classqglviewer_1_1Camera.html#a809bad30c861f4f6f74228fb59340f90" />
-      <keyword name="keyFrameInterpolator" id="qglviewer::Camera::keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de" />
-      <keyword name="setKeyFrameInterpolator" id="qglviewer::Camera::setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5" />
-      <keyword name="addKeyFrameToPath" id="qglviewer::Camera::addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec" />
-      <keyword name="playPath" id="qglviewer::Camera::playPath" ref="classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818" />
-      <keyword name="deletePath" id="qglviewer::Camera::deletePath" ref="classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac" />
-      <keyword name="resetPath" id="qglviewer::Camera::resetPath" ref="classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf" />
+      <keyword name="keyFrameInterpolator" id="qglviewer::Camera::keyFrameInterpolator" ref="classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7" />
+      <keyword name="setKeyFrameInterpolator" id="qglviewer::Camera::setKeyFrameInterpolator" ref="classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a" />
+      <keyword name="addKeyFrameToPath" id="qglviewer::Camera::addKeyFrameToPath" ref="classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4" />
+      <keyword name="playPath" id="qglviewer::Camera::playPath" ref="classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0" />
+      <keyword name="deletePath" id="qglviewer::Camera::deletePath" ref="classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f" />
+      <keyword name="resetPath" id="qglviewer::Camera::resetPath" ref="classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132" />
       <keyword name="drawAllPaths" id="qglviewer::Camera::drawAllPaths" ref="classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87" />
       <keyword name="loadProjectionMatrix" id="qglviewer::Camera::loadProjectionMatrix" ref="classqglviewer_1_1Camera.html#a98a0679a22f005bbd8cc19756507cc9a" />
       <keyword name="loadModelViewMatrix" id="qglviewer::Camera::loadModelViewMatrix" ref="classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53" />
@@ -1094,26 +1094,26 @@
       <keyword name="getModelViewMatrix" id="qglviewer::Camera::getModelViewMatrix" ref="classqglviewer_1_1Camera.html#aa1d631d6e368a7aa14656b7511787786" />
       <keyword name="getModelViewProjectionMatrix" id="qglviewer::Camera::getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#a7df308e69b599f00c27107530c2a6765" />
       <keyword name="getModelViewProjectionMatrix" id="qglviewer::Camera::getModelViewProjectionMatrix" ref="classqglviewer_1_1Camera.html#adeb5e39686b9fcb3db090dff84c13be4" />
-      <keyword name="draw" id="qglviewer::Camera::draw" ref="classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e" />
+      <keyword name="draw" id="qglviewer::Camera::draw" ref="classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b" />
       <keyword name="cameraCoordinatesOf" id="qglviewer::Camera::cameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a5dd8eca926558c252d7552d85079880a" />
       <keyword name="worldCoordinatesOf" id="qglviewer::Camera::worldCoordinatesOf" ref="classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab" />
-      <keyword name="getCameraCoordinatesOf" id="qglviewer::Camera::getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4" />
-      <keyword name="getWorldCoordinatesOf" id="qglviewer::Camera::getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd" />
+      <keyword name="getCameraCoordinatesOf" id="qglviewer::Camera::getCameraCoordinatesOf" ref="classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878" />
+      <keyword name="getWorldCoordinatesOf" id="qglviewer::Camera::getWorldCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1" />
       <keyword name="projectedCoordinatesOf" id="qglviewer::Camera::projectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ac4dc649d17bd2ae8664a7f4fdd50360f" />
       <keyword name="unprojectedCoordinatesOf" id="qglviewer::Camera::unprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a42577d3077e22b4726d78b3db3bba50d" />
-      <keyword name="getProjectedCoordinatesOf" id="qglviewer::Camera::getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee" />
-      <keyword name="getUnprojectedCoordinatesOf" id="qglviewer::Camera::getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f" />
+      <keyword name="getProjectedCoordinatesOf" id="qglviewer::Camera::getProjectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c" />
+      <keyword name="getUnprojectedCoordinatesOf" id="qglviewer::Camera::getUnprojectedCoordinatesOf" ref="classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a" />
       <keyword name="convertClickToLine" id="qglviewer::Camera::convertClickToLine" ref="classqglviewer_1_1Camera.html#a706d401cffa41e0e30864e59007f005f" />
       <keyword name="pointUnderPixel" id="qglviewer::Camera::pointUnderPixel" ref="classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a" />
-      <keyword name="flySpeed" id="qglviewer::Camera::flySpeed" ref="classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802" />
-      <keyword name="setFlySpeed" id="qglviewer::Camera::setFlySpeed" ref="classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
-      <keyword name="IODistance" id="qglviewer::Camera::IODistance" ref="classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d" />
-      <keyword name="physicalDistanceToScreen" id="qglviewer::Camera::physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64" />
-      <keyword name="physicalScreenWidth" id="qglviewer::Camera::physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c" />
-      <keyword name="focusDistance" id="qglviewer::Camera::focusDistance" ref="classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379" />
-      <keyword name="setIODistance" id="qglviewer::Camera::setIODistance" ref="classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234" />
-      <keyword name="setPhysicalScreenWidth" id="qglviewer::Camera::setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401" />
-      <keyword name="setFocusDistance" id="qglviewer::Camera::setFocusDistance" ref="classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a" />
+      <keyword name="flySpeed" id="qglviewer::Camera::flySpeed" ref="classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe" />
+      <keyword name="setFlySpeed" id="qglviewer::Camera::setFlySpeed" ref="classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
+      <keyword name="IODistance" id="qglviewer::Camera::IODistance" ref="classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7" />
+      <keyword name="physicalDistanceToScreen" id="qglviewer::Camera::physicalDistanceToScreen" ref="classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291" />
+      <keyword name="physicalScreenWidth" id="qglviewer::Camera::physicalScreenWidth" ref="classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64" />
+      <keyword name="focusDistance" id="qglviewer::Camera::focusDistance" ref="classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8" />
+      <keyword name="setIODistance" id="qglviewer::Camera::setIODistance" ref="classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7" />
+      <keyword name="setPhysicalScreenWidth" id="qglviewer::Camera::setPhysicalScreenWidth" ref="classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f" />
+      <keyword name="setFocusDistance" id="qglviewer::Camera::setFocusDistance" ref="classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98" />
       <keyword name="domElement" id="qglviewer::Camera::domElement" ref="classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
       <keyword name="initFromDOMElement" id="qglviewer::Camera::initFromDOMElement" ref="classqglviewer_1_1Camera.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
       <keyword name="PERSPECTIVE" id="qglviewer::Camera::PERSPECTIVE" ref="classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f" />
@@ -1150,43 +1150,43 @@
       <keyword name="operator=" id="qglviewer::Frame::operator=" ref="classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c" />
       <keyword name="Frame" id="qglviewer::Frame::Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
       <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
       <keyword name="setPositionWithConstraint" id="qglviewer::Frame::setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
       <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
       <keyword name="setOrientationWithConstraint" id="qglviewer::Frame::setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
       <keyword name="setPositionAndOrientation" id="qglviewer::Frame::setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
       <keyword name="setPositionAndOrientationWithConstraint" id="qglviewer::Frame::setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
       <keyword name="position" id="qglviewer::Frame::position" ref="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50" />
       <keyword name="orientation" id="qglviewer::Frame::orientation" ref="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094" />
-      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
+      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
       <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
       <keyword name="setTranslationWithConstraint" id="qglviewer::Frame::setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
       <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
       <keyword name="setRotationWithConstraint" id="qglviewer::Frame::setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
       <keyword name="setTranslationAndRotation" id="qglviewer::Frame::setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
       <keyword name="setTranslationAndRotationWithConstraint" id="qglviewer::Frame::setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
       <keyword name="translation" id="qglviewer::Frame::translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
       <keyword name="rotation" id="qglviewer::Frame::rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
-      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
-      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
+      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
+      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
       <keyword name="referenceFrame" id="qglviewer::Frame::referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
       <keyword name="setReferenceFrame" id="qglviewer::Frame::setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
       <keyword name="settingAsReferenceFrameWillCreateALoop" id="qglviewer::Frame::settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
-      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
       <keyword name="projectOnLine" id="qglviewer::Frame::projectOnLine" ref="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255" />
       <keyword name="coordinatesOf" id="qglviewer::Frame::coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
       <keyword name="inverseCoordinatesOf" id="qglviewer::Frame::inverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e" />
@@ -1194,24 +1194,24 @@
       <keyword name="localInverseCoordinatesOf" id="qglviewer::Frame::localInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7" />
       <keyword name="coordinatesOfIn" id="qglviewer::Frame::coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
       <keyword name="coordinatesOfFrom" id="qglviewer::Frame::coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
-      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
+      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
       <keyword name="transformOf" id="qglviewer::Frame::transformOf" ref="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e" />
       <keyword name="inverseTransformOf" id="qglviewer::Frame::inverseTransformOf" ref="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5" />
       <keyword name="localTransformOf" id="qglviewer::Frame::localTransformOf" ref="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2" />
       <keyword name="localInverseTransformOf" id="qglviewer::Frame::localInverseTransformOf" ref="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e" />
       <keyword name="transformOfIn" id="qglviewer::Frame::transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
       <keyword name="transformOfFrom" id="qglviewer::Frame::transformOfFrom" ref="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7" />
-      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
-      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
+      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
+      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
       <keyword name="constraint" id="qglviewer::Frame::constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
       <keyword name="setConstraint" id="qglviewer::Frame::setConstraint" ref="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224" />
       <keyword name="matrix" id="qglviewer::Frame::matrix" ref="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047" />
@@ -1232,24 +1232,24 @@
       <keyword name="KeyFrameInterpolator" id="qglviewer::KeyFrameInterpolator::KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e" />
       <keyword name="~KeyFrameInterpolator" id="qglviewer::KeyFrameInterpolator::~KeyFrameInterpolator" ref="classqglviewer_1_1KeyFrameInterpolator.html#a110b875f9265a30f7a520a3603362f95" />
       <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622" />
-      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40" />
+      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a" />
       <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b" />
-      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa821392c6e108d5c7814317b8c3cd47f" />
+      <keyword name="addKeyFrame" id="qglviewer::KeyFrameInterpolator::addKeyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#added3bdd706f5a2e3c7c43de1c19d27d" />
       <keyword name="deletePath" id="qglviewer::KeyFrameInterpolator::deletePath" ref="classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34" />
       <keyword name="frame" id="qglviewer::KeyFrameInterpolator::frame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5426b68b2b1bb6ad8dc0007914412b4f" />
       <keyword name="setFrame" id="qglviewer::KeyFrameInterpolator::setFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d" />
       <keyword name="keyFrame" id="qglviewer::KeyFrameInterpolator::keyFrame" ref="classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8" />
-      <keyword name="keyFrameTime" id="qglviewer::KeyFrameInterpolator::keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473" />
+      <keyword name="keyFrameTime" id="qglviewer::KeyFrameInterpolator::keyFrameTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe" />
       <keyword name="numberOfKeyFrames" id="qglviewer::KeyFrameInterpolator::numberOfKeyFrames" ref="classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273" />
-      <keyword name="duration" id="qglviewer::KeyFrameInterpolator::duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980" />
-      <keyword name="firstTime" id="qglviewer::KeyFrameInterpolator::firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477" />
-      <keyword name="lastTime" id="qglviewer::KeyFrameInterpolator::lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30" />
-      <keyword name="interpolationTime" id="qglviewer::KeyFrameInterpolator::interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a" />
-      <keyword name="interpolationSpeed" id="qglviewer::KeyFrameInterpolator::interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad" />
+      <keyword name="duration" id="qglviewer::KeyFrameInterpolator::duration" ref="classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166" />
+      <keyword name="firstTime" id="qglviewer::KeyFrameInterpolator::firstTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0" />
+      <keyword name="lastTime" id="qglviewer::KeyFrameInterpolator::lastTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c" />
+      <keyword name="interpolationTime" id="qglviewer::KeyFrameInterpolator::interpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0" />
+      <keyword name="interpolationSpeed" id="qglviewer::KeyFrameInterpolator::interpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393" />
       <keyword name="interpolationPeriod" id="qglviewer::KeyFrameInterpolator::interpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e" />
       <keyword name="loopInterpolation" id="qglviewer::KeyFrameInterpolator::loopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a906c17cf6c1d51a54c7d3b9b4c9cbd45" />
-      <keyword name="setInterpolationTime" id="qglviewer::KeyFrameInterpolator::setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3" />
-      <keyword name="setInterpolationSpeed" id="qglviewer::KeyFrameInterpolator::setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d" />
+      <keyword name="setInterpolationTime" id="qglviewer::KeyFrameInterpolator::setInterpolationTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7" />
+      <keyword name="setInterpolationSpeed" id="qglviewer::KeyFrameInterpolator::setInterpolationSpeed" ref="classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f" />
       <keyword name="setInterpolationPeriod" id="qglviewer::KeyFrameInterpolator::setInterpolationPeriod" ref="classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd" />
       <keyword name="setLoopInterpolation" id="qglviewer::KeyFrameInterpolator::setLoopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd" />
       <keyword name="interpolationIsStarted" id="qglviewer::KeyFrameInterpolator::interpolationIsStarted" ref="classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70" />
@@ -1257,8 +1257,8 @@
       <keyword name="stopInterpolation" id="qglviewer::KeyFrameInterpolator::stopInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a16f0910299ae07cede3396a14ec01f4b" />
       <keyword name="resetInterpolation" id="qglviewer::KeyFrameInterpolator::resetInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74" />
       <keyword name="toggleInterpolation" id="qglviewer::KeyFrameInterpolator::toggleInterpolation" ref="classqglviewer_1_1KeyFrameInterpolator.html#acf744bd8ce09e5433f829f63ba310eef" />
-      <keyword name="interpolateAtTime" id="qglviewer::KeyFrameInterpolator::interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae" />
-      <keyword name="drawPath" id="qglviewer::KeyFrameInterpolator::drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2" />
+      <keyword name="interpolateAtTime" id="qglviewer::KeyFrameInterpolator::interpolateAtTime" ref="classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a" />
+      <keyword name="drawPath" id="qglviewer::KeyFrameInterpolator::drawPath" ref="classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e" />
       <keyword name="domElement" id="qglviewer::KeyFrameInterpolator::domElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
       <keyword name="initFromDOMElement" id="qglviewer::KeyFrameInterpolator::initFromDOMElement" ref="classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
       <keyword name="qglviewer::LocalConstraint" id="qglviewer::LocalConstraint" ref="classqglviewer_1_1LocalConstraint.html" />
@@ -1287,11 +1287,11 @@
       <keyword name="~ManipulatedFrame" id="qglviewer::ManipulatedFrame::~ManipulatedFrame" ref="classqglviewer_1_1ManipulatedFrame.html#ae2ffc5f93122c6628e80dc254977c4cf" />
       <keyword name="ManipulatedFrame" id="qglviewer::ManipulatedFrame::ManipulatedFrame" ref="classqglviewer_1_1ManipulatedFrame.html#a9b1534a226c056993bc9ed594de9cc7e" />
       <keyword name="operator=" id="qglviewer::ManipulatedFrame::operator=" ref="classqglviewer_1_1ManipulatedFrame.html#ad6d13eba8611869fe824da2dab500f50" />
-      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f" />
-      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a" />
-      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca" />
-      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d" />
-      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44" />
+      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735" />
+      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841" />
+      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7" />
+      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59" />
+      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182" />
       <keyword name="isSpinning" id="qglviewer::ManipulatedFrame::isSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a975dfbf6b972b7128520b30a4ffe11dd" />
       <keyword name="spinningQuaternion" id="qglviewer::ManipulatedFrame::spinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276" />
       <keyword name="isManipulated" id="qglviewer::ManipulatedFrame::isManipulated" ref="classqglviewer_1_1ManipulatedFrame.html#a032c48e2e7cdced01dea0cb7eca14022" />
@@ -1303,43 +1303,43 @@
       <keyword name="operator=" id="qglviewer::Frame::operator=" ref="classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c" />
       <keyword name="Frame" id="qglviewer::Frame::Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
       <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
       <keyword name="setPositionWithConstraint" id="qglviewer::Frame::setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
       <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
       <keyword name="setOrientationWithConstraint" id="qglviewer::Frame::setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
       <keyword name="setPositionAndOrientation" id="qglviewer::Frame::setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
       <keyword name="setPositionAndOrientationWithConstraint" id="qglviewer::Frame::setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
       <keyword name="position" id="qglviewer::Frame::position" ref="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50" />
       <keyword name="orientation" id="qglviewer::Frame::orientation" ref="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094" />
-      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
+      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
       <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
       <keyword name="setTranslationWithConstraint" id="qglviewer::Frame::setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
       <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
       <keyword name="setRotationWithConstraint" id="qglviewer::Frame::setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
       <keyword name="setTranslationAndRotation" id="qglviewer::Frame::setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
       <keyword name="setTranslationAndRotationWithConstraint" id="qglviewer::Frame::setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
       <keyword name="translation" id="qglviewer::Frame::translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
       <keyword name="rotation" id="qglviewer::Frame::rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
-      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
-      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
+      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
+      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
       <keyword name="referenceFrame" id="qglviewer::Frame::referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
       <keyword name="setReferenceFrame" id="qglviewer::Frame::setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
       <keyword name="settingAsReferenceFrameWillCreateALoop" id="qglviewer::Frame::settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
-      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
       <keyword name="projectOnLine" id="qglviewer::Frame::projectOnLine" ref="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255" />
       <keyword name="coordinatesOf" id="qglviewer::Frame::coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
       <keyword name="inverseCoordinatesOf" id="qglviewer::Frame::inverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e" />
@@ -1347,24 +1347,24 @@
       <keyword name="localInverseCoordinatesOf" id="qglviewer::Frame::localInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7" />
       <keyword name="coordinatesOfIn" id="qglviewer::Frame::coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
       <keyword name="coordinatesOfFrom" id="qglviewer::Frame::coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
-      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
+      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
       <keyword name="transformOf" id="qglviewer::Frame::transformOf" ref="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e" />
       <keyword name="inverseTransformOf" id="qglviewer::Frame::inverseTransformOf" ref="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5" />
       <keyword name="localTransformOf" id="qglviewer::Frame::localTransformOf" ref="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2" />
       <keyword name="localInverseTransformOf" id="qglviewer::Frame::localInverseTransformOf" ref="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e" />
       <keyword name="transformOfIn" id="qglviewer::Frame::transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
       <keyword name="transformOfFrom" id="qglviewer::Frame::transformOfFrom" ref="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7" />
-      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
-      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
+      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
+      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
       <keyword name="constraint" id="qglviewer::Frame::constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
       <keyword name="setConstraint" id="qglviewer::Frame::setConstraint" ref="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224" />
       <keyword name="matrix" id="qglviewer::Frame::matrix" ref="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047" />
@@ -1390,9 +1390,9 @@
       <keyword name="setRotatesAroundUpVector" id="qglviewer::ManipulatedCameraFrame::setRotatesAroundUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a1d1e56d55fdbd1906a230392e2f7eedb" />
       <keyword name="zoomsOnPivotPoint" id="qglviewer::ManipulatedCameraFrame::zoomsOnPivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad9e5f408288e0c02c64b712a8b2ce589" />
       <keyword name="setZoomsOnPivotPoint" id="qglviewer::ManipulatedCameraFrame::setZoomsOnPivotPoint" ref="classqglviewer_1_1ManipulatedCameraFrame.html#aa715ac66a29d06ce3e86e241ae322813" />
-      <keyword name="flySpeed" id="qglviewer::ManipulatedCameraFrame::flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802" />
+      <keyword name="flySpeed" id="qglviewer::ManipulatedCameraFrame::flySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe" />
       <keyword name="sceneUpVector" id="qglviewer::ManipulatedCameraFrame::sceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b" />
-      <keyword name="setFlySpeed" id="qglviewer::ManipulatedCameraFrame::setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09" />
+      <keyword name="setFlySpeed" id="qglviewer::ManipulatedCameraFrame::setFlySpeed" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f" />
       <keyword name="setSceneUpVector" id="qglviewer::ManipulatedCameraFrame::setSceneUpVector" ref="classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a" />
       <keyword name="mouseReleaseEvent" id="qglviewer::ManipulatedCameraFrame::mouseReleaseEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#aec95b0f05a05c1cdfc940ef4621d5db3" />
       <keyword name="mouseMoveEvent" id="qglviewer::ManipulatedCameraFrame::mouseMoveEvent" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a609d287c3721aff697068efa3dfc4b4c" />
@@ -1400,11 +1400,11 @@
       <keyword name="spin" id="qglviewer::ManipulatedCameraFrame::spin" ref="classqglviewer_1_1ManipulatedCameraFrame.html#af87828117d0582d0031f563933f97bfd" />
       <keyword name="domElement" id="qglviewer::ManipulatedCameraFrame::domElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#a48e0e2dd26cd96418c8b889ceabe80f6" />
       <keyword name="initFromDOMElement" id="qglviewer::ManipulatedCameraFrame::initFromDOMElement" ref="classqglviewer_1_1ManipulatedCameraFrame.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
-      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11" />
-      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871" />
-      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b" />
-      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499" />
-      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0" />
+      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef" />
+      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20" />
+      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02" />
+      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f" />
+      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed" />
       <keyword name="setSpinningQuaternion" id="qglviewer::ManipulatedFrame::setSpinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9" />
       <keyword name="startSpinning" id="qglviewer::ManipulatedFrame::startSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9942b6eab3fb197805f7af7e0edfdccf" />
       <keyword name="stopSpinning" id="qglviewer::ManipulatedFrame::stopSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a9dc6e4b2c4c4a3ae195dfc39bb2ce8ac" />
@@ -1434,43 +1434,43 @@
       <keyword name="operator=" id="qglviewer::Frame::operator=" ref="classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c" />
       <keyword name="Frame" id="qglviewer::Frame::Frame" ref="classqglviewer_1_1Frame.html#a2f649a1218291aa3776ce08d0a2879b1" />
       <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52" />
-      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083" />
+      <keyword name="setPosition" id="qglviewer::Frame::setPosition" ref="classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e" />
       <keyword name="setPositionWithConstraint" id="qglviewer::Frame::setPositionWithConstraint" ref="classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38" />
       <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b" />
-      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#ae3ac2bf6dcfe21252d40325789503ce6" />
+      <keyword name="setOrientation" id="qglviewer::Frame::setOrientation" ref="classqglviewer_1_1Frame.html#a63727a742d16aec0d93a0469134a55bb" />
       <keyword name="setOrientationWithConstraint" id="qglviewer::Frame::setOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4" />
       <keyword name="setPositionAndOrientation" id="qglviewer::Frame::setPositionAndOrientation" ref="classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087" />
       <keyword name="setPositionAndOrientationWithConstraint" id="qglviewer::Frame::setPositionAndOrientationWithConstraint" ref="classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a" />
       <keyword name="position" id="qglviewer::Frame::position" ref="classqglviewer_1_1Frame.html#abc38a05a597e07c9ff525122682adc50" />
       <keyword name="orientation" id="qglviewer::Frame::orientation" ref="classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094" />
-      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3" />
-      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253" />
+      <keyword name="getPosition" id="qglviewer::Frame::getPosition" ref="classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5" />
+      <keyword name="getOrientation" id="qglviewer::Frame::getOrientation" ref="classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088" />
       <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704" />
-      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1" />
+      <keyword name="setTranslation" id="qglviewer::Frame::setTranslation" ref="classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8" />
       <keyword name="setTranslationWithConstraint" id="qglviewer::Frame::setTranslationWithConstraint" ref="classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0" />
       <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e" />
-      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e" />
+      <keyword name="setRotation" id="qglviewer::Frame::setRotation" ref="classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6" />
       <keyword name="setRotationWithConstraint" id="qglviewer::Frame::setRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd" />
       <keyword name="setTranslationAndRotation" id="qglviewer::Frame::setTranslationAndRotation" ref="classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48" />
       <keyword name="setTranslationAndRotationWithConstraint" id="qglviewer::Frame::setTranslationAndRotationWithConstraint" ref="classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db" />
       <keyword name="translation" id="qglviewer::Frame::translation" ref="classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642" />
       <keyword name="rotation" id="qglviewer::Frame::rotation" ref="classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1" />
-      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97" />
-      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb" />
+      <keyword name="getTranslation" id="qglviewer::Frame::getTranslation" ref="classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1" />
+      <keyword name="getRotation" id="qglviewer::Frame::getRotation" ref="classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7" />
       <keyword name="referenceFrame" id="qglviewer::Frame::referenceFrame" ref="classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec" />
       <keyword name="setReferenceFrame" id="qglviewer::Frame::setReferenceFrame" ref="classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8" />
       <keyword name="settingAsReferenceFrameWillCreateALoop" id="qglviewer::Frame::settingAsReferenceFrameWillCreateALoop" ref="classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a" />
       <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290" />
-      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5" />
+      <keyword name="translate" id="qglviewer::Frame::translate" ref="classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33" />
       <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8" />
-      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff" />
+      <keyword name="rotate" id="qglviewer::Frame::rotate" ref="classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca" />
       <keyword name="rotateAroundPoint" id="qglviewer::Frame::rotateAroundPoint" ref="classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891" />
-      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10" />
+      <keyword name="alignWithFrame" id="qglviewer::Frame::alignWithFrame" ref="classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd" />
       <keyword name="projectOnLine" id="qglviewer::Frame::projectOnLine" ref="classqglviewer_1_1Frame.html#af97ae9e790033879dfcb9837a7312255" />
       <keyword name="coordinatesOf" id="qglviewer::Frame::coordinatesOf" ref="classqglviewer_1_1Frame.html#ac706b338b08d9d7b511fd84d0b6ecf96" />
       <keyword name="inverseCoordinatesOf" id="qglviewer::Frame::inverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e" />
@@ -1478,24 +1478,24 @@
       <keyword name="localInverseCoordinatesOf" id="qglviewer::Frame::localInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a4e6ac1c504a2f70fdbc0e7383c1aa7c7" />
       <keyword name="coordinatesOfIn" id="qglviewer::Frame::coordinatesOfIn" ref="classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391" />
       <keyword name="coordinatesOfFrom" id="qglviewer::Frame::coordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce" />
-      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764" />
-      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8" />
-      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497" />
-      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2" />
-      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30" />
-      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17" />
+      <keyword name="getCoordinatesOf" id="qglviewer::Frame::getCoordinatesOf" ref="classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce" />
+      <keyword name="getInverseCoordinatesOf" id="qglviewer::Frame::getInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010" />
+      <keyword name="getLocalCoordinatesOf" id="qglviewer::Frame::getLocalCoordinatesOf" ref="classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1" />
+      <keyword name="getLocalInverseCoordinatesOf" id="qglviewer::Frame::getLocalInverseCoordinatesOf" ref="classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a" />
+      <keyword name="getCoordinatesOfIn" id="qglviewer::Frame::getCoordinatesOfIn" ref="classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b" />
+      <keyword name="getCoordinatesOfFrom" id="qglviewer::Frame::getCoordinatesOfFrom" ref="classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00" />
       <keyword name="transformOf" id="qglviewer::Frame::transformOf" ref="classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e" />
       <keyword name="inverseTransformOf" id="qglviewer::Frame::inverseTransformOf" ref="classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5" />
       <keyword name="localTransformOf" id="qglviewer::Frame::localTransformOf" ref="classqglviewer_1_1Frame.html#a37239448835f46771b9598a31b964cf2" />
       <keyword name="localInverseTransformOf" id="qglviewer::Frame::localInverseTransformOf" ref="classqglviewer_1_1Frame.html#ad36cf320ff7cf6c8f9a2ac527c924f9e" />
       <keyword name="transformOfIn" id="qglviewer::Frame::transformOfIn" ref="classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0" />
       <keyword name="transformOfFrom" id="qglviewer::Frame::transformOfFrom" ref="classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7" />
-      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3" />
-      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07" />
-      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215" />
-      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c" />
-      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f" />
-      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52" />
+      <keyword name="getTransformOf" id="qglviewer::Frame::getTransformOf" ref="classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493" />
+      <keyword name="getInverseTransformOf" id="qglviewer::Frame::getInverseTransformOf" ref="classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2" />
+      <keyword name="getLocalTransformOf" id="qglviewer::Frame::getLocalTransformOf" ref="classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2" />
+      <keyword name="getLocalInverseTransformOf" id="qglviewer::Frame::getLocalInverseTransformOf" ref="classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854" />
+      <keyword name="getTransformOfIn" id="qglviewer::Frame::getTransformOfIn" ref="classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca" />
+      <keyword name="getTransformOfFrom" id="qglviewer::Frame::getTransformOfFrom" ref="classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1" />
       <keyword name="constraint" id="qglviewer::Frame::constraint" ref="classqglviewer_1_1Frame.html#a0974dfe336ed84a20adb8c6cdf8dedd9" />
       <keyword name="setConstraint" id="qglviewer::Frame::setConstraint" ref="classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224" />
       <keyword name="matrix" id="qglviewer::Frame::matrix" ref="classqglviewer_1_1Frame.html#aa12123cf45f68b9f7fe0526b70ab0047" />
@@ -1515,16 +1515,16 @@
       <keyword name="addInMouseGrabberPool" id="qglviewer::MouseGrabber::addInMouseGrabberPool" ref="classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82" />
       <keyword name="removeFromMouseGrabberPool" id="qglviewer::MouseGrabber::removeFromMouseGrabberPool" ref="classqglviewer_1_1MouseGrabber.html#a4ac2261aafd5f48f2d90c989cdd69369" />
       <keyword name="clearMouseGrabberPool" id="qglviewer::MouseGrabber::clearMouseGrabberPool" ref="classqglviewer_1_1MouseGrabber.html#a23548e9ef41cf38913f6c642509a81ec" />
-      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f" />
-      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a" />
-      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca" />
-      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d" />
-      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44" />
-      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11" />
-      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871" />
-      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b" />
-      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499" />
-      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0" />
+      <keyword name="rotationSensitivity" id="qglviewer::ManipulatedFrame::rotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735" />
+      <keyword name="translationSensitivity" id="qglviewer::ManipulatedFrame::translationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841" />
+      <keyword name="spinningSensitivity" id="qglviewer::ManipulatedFrame::spinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7" />
+      <keyword name="zoomSensitivity" id="qglviewer::ManipulatedFrame::zoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59" />
+      <keyword name="wheelSensitivity" id="qglviewer::ManipulatedFrame::wheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182" />
+      <keyword name="setRotationSensitivity" id="qglviewer::ManipulatedFrame::setRotationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef" />
+      <keyword name="setTranslationSensitivity" id="qglviewer::ManipulatedFrame::setTranslationSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20" />
+      <keyword name="setSpinningSensitivity" id="qglviewer::ManipulatedFrame::setSpinningSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02" />
+      <keyword name="setWheelSensitivity" id="qglviewer::ManipulatedFrame::setWheelSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f" />
+      <keyword name="setZoomSensitivity" id="qglviewer::ManipulatedFrame::setZoomSensitivity" ref="classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed" />
       <keyword name="isSpinning" id="qglviewer::ManipulatedFrame::isSpinning" ref="classqglviewer_1_1ManipulatedFrame.html#a975dfbf6b972b7128520b30a4ffe11dd" />
       <keyword name="spinningQuaternion" id="qglviewer::ManipulatedFrame::spinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276" />
       <keyword name="setSpinningQuaternion" id="qglviewer::ManipulatedFrame::setSpinningQuaternion" ref="classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9" />
@@ -1562,20 +1562,20 @@
       <keyword name="wheelEvent" id="qglviewer::MouseGrabber::wheelEvent" ref="classqglviewer_1_1MouseGrabber.html#a07a7d880d107f0b532ef779b29884e08" />
       <keyword name="qglviewer::Quaternion" id="qglviewer::Quaternion" ref="classqglviewer_1_1Quaternion.html" />
       <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66" />
-      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85" />
+      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659" />
       <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634" />
-      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a81ba24ffd95778f3ca4e51b2b9922f45" />
+      <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#aa277d38944106b8e5c7920ab570b41ba" />
       <keyword name="Quaternion" id="qglviewer::Quaternion::Quaternion" ref="classqglviewer_1_1Quaternion.html#a71a4d1a3b760854468ff270a982e5f59" />
       <keyword name="operator=" id="qglviewer::Quaternion::operator=" ref="classqglviewer_1_1Quaternion.html#ad20a1310f5fac88d5e00fa055e09fe72" />
-      <keyword name="setAxisAngle" id="qglviewer::Quaternion::setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b" />
-      <keyword name="setValue" id="qglviewer::Quaternion::setValue" ref="classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a" />
-      <keyword name="setFromRotationMatrix" id="qglviewer::Quaternion::setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac" />
+      <keyword name="setAxisAngle" id="qglviewer::Quaternion::setAxisAngle" ref="classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81" />
+      <keyword name="setValue" id="qglviewer::Quaternion::setValue" ref="classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db" />
+      <keyword name="setFromRotationMatrix" id="qglviewer::Quaternion::setFromRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f" />
       <keyword name="setFromRotatedBasis" id="qglviewer::Quaternion::setFromRotatedBasis" ref="classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9" />
       <keyword name="axis" id="qglviewer::Quaternion::axis" ref="classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4" />
-      <keyword name="angle" id="qglviewer::Quaternion::angle" ref="classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875" />
-      <keyword name="getAxisAngle" id="qglviewer::Quaternion::getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292" />
-      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+      <keyword name="angle" id="qglviewer::Quaternion::angle" ref="classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495" />
+      <keyword name="getAxisAngle" id="qglviewer::Quaternion::getAxisAngle" ref="classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5" />
+      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a" />
+      <keyword name="operator[]" id="qglviewer::Quaternion::operator[]" ref="classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e" />
       <keyword name="operator*=" id="qglviewer::Quaternion::operator*=" ref="classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d" />
       <keyword name="rotate" id="qglviewer::Quaternion::rotate" ref="classqglviewer_1_1Quaternion.html#a5e2421069d88e576334e10f634625815" />
       <keyword name="inverseRotate" id="qglviewer::Quaternion::inverseRotate" ref="classqglviewer_1_1Quaternion.html#a74d79bc1afcc02fdbfe0eb390c3546f5" />
@@ -1584,21 +1584,21 @@
       <keyword name="inverse" id="qglviewer::Quaternion::inverse" ref="classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e" />
       <keyword name="invert" id="qglviewer::Quaternion::invert" ref="classqglviewer_1_1Quaternion.html#a7fa1616cc61c19a5efcc863c950f7f30" />
       <keyword name="negate" id="qglviewer::Quaternion::negate" ref="classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648" />
-      <keyword name="normalize" id="qglviewer::Quaternion::normalize" ref="classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231" />
+      <keyword name="normalize" id="qglviewer::Quaternion::normalize" ref="classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
       <keyword name="normalized" id="qglviewer::Quaternion::normalized" ref="classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32" />
       <keyword name="matrix" id="qglviewer::Quaternion::matrix" ref="classqglviewer_1_1Quaternion.html#aa12123cf45f68b9f7fe0526b70ab0047" />
       <keyword name="getMatrix" id="qglviewer::Quaternion::getMatrix" ref="classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48" />
       <keyword name="getMatrix" id="qglviewer::Quaternion::getMatrix" ref="classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a" />
-      <keyword name="getRotationMatrix" id="qglviewer::Quaternion::getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872" />
+      <keyword name="getRotationMatrix" id="qglviewer::Quaternion::getRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1" />
       <keyword name="inverseMatrix" id="qglviewer::Quaternion::inverseMatrix" ref="classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22" />
       <keyword name="getInverseMatrix" id="qglviewer::Quaternion::getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b" />
       <keyword name="getInverseMatrix" id="qglviewer::Quaternion::getInverseMatrix" ref="classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155" />
-      <keyword name="getInverseRotationMatrix" id="qglviewer::Quaternion::getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a" />
+      <keyword name="getInverseRotationMatrix" id="qglviewer::Quaternion::getInverseRotationMatrix" ref="classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d" />
       <keyword name="log" id="qglviewer::Quaternion::log" ref="classqglviewer_1_1Quaternion.html#a4db67fbb8171a5e781b56404112cf848" />
       <keyword name="exp" id="qglviewer::Quaternion::exp" ref="classqglviewer_1_1Quaternion.html#a5c546a33cc0c65f24b7e9c48e5069ba7" />
-      <keyword name="slerp" id="qglviewer::Quaternion::slerp" ref="classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4" />
-      <keyword name="squad" id="qglviewer::Quaternion::squad" ref="classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812" />
-      <keyword name="dot" id="qglviewer::Quaternion::dot" ref="classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83" />
+      <keyword name="slerp" id="qglviewer::Quaternion::slerp" ref="classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6" />
+      <keyword name="squad" id="qglviewer::Quaternion::squad" ref="classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf" />
+      <keyword name="dot" id="qglviewer::Quaternion::dot" ref="classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb" />
       <keyword name="lnDif" id="qglviewer::Quaternion::lnDif" ref="classqglviewer_1_1Quaternion.html#af4c74176967acca6e3947977351e1c68" />
       <keyword name="squadTangent" id="qglviewer::Quaternion::squadTangent" ref="classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005" />
       <keyword name="randomQuaternion" id="qglviewer::Quaternion::randomQuaternion" ref="classqglviewer_1_1Quaternion.html#a87d5e98d958fdc63100979fcff1d9976" />
@@ -1607,38 +1607,38 @@
       <keyword name="initFromDOMElement" id="qglviewer::Quaternion::initFromDOMElement" ref="classqglviewer_1_1Quaternion.html#acd13d2ddeca530cb9f26ead47f7d25d3" />
       <keyword name="operator<<" id="qglviewer::Quaternion::operator<<" ref="classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796" />
       <keyword name="qglviewer::Vec" id="qglviewer::Vec" ref="classqglviewer_1_1Vec.html" />
-      <keyword name="x" id="qglviewer::Vec::x" ref="classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10" />
-      <keyword name="y" id="qglviewer::Vec::y" ref="classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a" />
-      <keyword name="z" id="qglviewer::Vec::z" ref="classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872" />
+      <keyword name="x" id="qglviewer::Vec::x" ref="classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580" />
+      <keyword name="y" id="qglviewer::Vec::y" ref="classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10" />
+      <keyword name="z" id="qglviewer::Vec::z" ref="classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded" />
       <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0" />
-      <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6" />
+      <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911" />
       <keyword name="Vec" id="qglviewer::Vec::Vec" ref="classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592" />
       <keyword name="operator=" id="qglviewer::Vec::operator=" ref="classqglviewer_1_1Vec.html#a9d105072fa3c0fc1e66c162ba083fee8" />
-      <keyword name="setValue" id="qglviewer::Vec::setValue" ref="classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa" />
-      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f" />
-      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b" />
+      <keyword name="setValue" id="qglviewer::Vec::setValue" ref="classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5" />
+      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a" />
+      <keyword name="operator[]" id="qglviewer::Vec::operator[]" ref="classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e" />
       <keyword name="operator const double *" id="qglviewer::Vec::operator const double *" ref="classqglviewer_1_1Vec.html#ad8df949331fe927b4cb5d9bf4685ed35" />
       <keyword name="operator double *" id="qglviewer::Vec::operator double *" ref="classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9" />
       <keyword name="operator const float *" id="qglviewer::Vec::operator const float *" ref="classqglviewer_1_1Vec.html#a54795c57f1d998af73b630d786de2932" />
       <keyword name="operator+=" id="qglviewer::Vec::operator+=" ref="classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e" />
       <keyword name="operator-=" id="qglviewer::Vec::operator-=" ref="classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571" />
-      <keyword name="operator*=" id="qglviewer::Vec::operator*=" ref="classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9" />
-      <keyword name="operator/=" id="qglviewer::Vec::operator/=" ref="classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4" />
+      <keyword name="operator*=" id="qglviewer::Vec::operator*=" ref="classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba" />
+      <keyword name="operator/=" id="qglviewer::Vec::operator/=" ref="classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22" />
       <keyword name="orthogonalVec" id="qglviewer::Vec::orthogonalVec" ref="classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d" />
       <keyword name="operator+" id="qglviewer::Vec::operator+" ref="classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7" />
       <keyword name="operator-" id="qglviewer::Vec::operator-" ref="classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc" />
       <keyword name="operator-" id="qglviewer::Vec::operator-" ref="classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373" />
-      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52" />
-      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9" />
-      <keyword name="operator/" id="qglviewer::Vec::operator/" ref="classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206" />
+      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d" />
+      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5" />
+      <keyword name="operator/" id="qglviewer::Vec::operator/" ref="classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270" />
       <keyword name="operator!=" id="qglviewer::Vec::operator!=" ref="classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54" />
       <keyword name="operator==" id="qglviewer::Vec::operator==" ref="classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f" />
-      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#ae8b74b239e9752e017105b61239eb54e" />
+      <keyword name="operator*" id="qglviewer::Vec::operator*" ref="classqglviewer_1_1Vec.html#a941c47349fbb80d0a53f524e7a2c5702" />
       <keyword name="operator^" id="qglviewer::Vec::operator^" ref="classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317" />
       <keyword name="cross" id="qglviewer::Vec::cross" ref="classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e" />
-      <keyword name="squaredNorm" id="qglviewer::Vec::squaredNorm" ref="classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e" />
-      <keyword name="norm" id="qglviewer::Vec::norm" ref="classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a" />
-      <keyword name="normalize" id="qglviewer::Vec::normalize" ref="classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231" />
+      <keyword name="squaredNorm" id="qglviewer::Vec::squaredNorm" ref="classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153" />
+      <keyword name="norm" id="qglviewer::Vec::norm" ref="classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b" />
+      <keyword name="normalize" id="qglviewer::Vec::normalize" ref="classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639" />
       <keyword name="unit" id="qglviewer::Vec::unit" ref="classqglviewer_1_1Vec.html#a7f3923a61bb70c53263379de9783d265" />
       <keyword name="projectOnAxis" id="qglviewer::Vec::projectOnAxis" ref="classqglviewer_1_1Vec.html#a8c89e6f39afb5bd92e4cae4ffa6c3221" />
       <keyword name="projectOnPlane" id="qglviewer::Vec::projectOnPlane" ref="classqglviewer_1_1Vec.html#a6ed4feca0d9a299bdc68632eb7db51b9" />
diff --git a/doc/refManual/keyFrameInterpolator_8cpp.html b/doc/refManual/keyFrameInterpolator_8cpp.html
index fa6c1f6..5258501 100644
--- a/doc/refManual/keyFrameInterpolator_8cpp.html
+++ b/doc/refManual/keyFrameInterpolator_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/keyFrameInterpolator_8h.html b/doc/refManual/keyFrameInterpolator_8h.html
index 3f80012..f50d558 100644
--- a/doc/refManual/keyFrameInterpolator_8h.html
+++ b/doc/refManual/keyFrameInterpolator_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -109,7 +109,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/manipulatedCameraFrame_8cpp.html b/doc/refManual/manipulatedCameraFrame_8cpp.html
index df3fa50..bc8c0ae 100644
--- a/doc/refManual/manipulatedCameraFrame_8cpp.html
+++ b/doc/refManual/manipulatedCameraFrame_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/manipulatedCameraFrame_8h.html b/doc/refManual/manipulatedCameraFrame_8h.html
index 352d1e9..d9935c0 100644
--- a/doc/refManual/manipulatedCameraFrame_8h.html
+++ b/doc/refManual/manipulatedCameraFrame_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -109,7 +109,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/manipulatedFrame_8cpp.html b/doc/refManual/manipulatedFrame_8cpp.html
index 65f878c..6bf7a0f 100644
--- a/doc/refManual/manipulatedFrame_8cpp.html
+++ b/doc/refManual/manipulatedFrame_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/manipulatedFrame_8h.html b/doc/refManual/manipulatedFrame_8h.html
index 5757c79..476a926 100644
--- a/doc/refManual/manipulatedFrame_8h.html
+++ b/doc/refManual/manipulatedFrame_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -109,7 +109,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/mouseGrabber_8cpp.html b/doc/refManual/mouseGrabber_8cpp.html
index 010d4cf..9d93d10 100644
--- a/doc/refManual/mouseGrabber_8cpp.html
+++ b/doc/refManual/mouseGrabber_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/mouseGrabber_8h.html b/doc/refManual/mouseGrabber_8h.html
index 6746b7b..cc5a400 100644
--- a/doc/refManual/mouseGrabber_8h.html
+++ b/doc/refManual/mouseGrabber_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -109,7 +109,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/namespaceqglviewer.html b/doc/refManual/namespaceqglviewer.html
index 2d88ae4..166586b 100644
--- a/doc/refManual/namespaceqglviewer.html
+++ b/doc/refManual/namespaceqglviewer.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -134,7 +134,7 @@ Classes</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/namespaces.html b/doc/refManual/namespaces.html
index 33b08d8..7b37a4c 100644
--- a/doc/refManual/namespaces.html
+++ b/doc/refManual/namespaces.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:50 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/qglviewer_8cpp.html b/doc/refManual/qglviewer_8cpp.html
index f92006a..e9f8ca1 100644
--- a/doc/refManual/qglviewer_8cpp.html
+++ b/doc/refManual/qglviewer_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -94,7 +94,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/qglviewer_8h.html b/doc/refManual/qglviewer_8h.html
index 9384115..e28fcad 100644
--- a/doc/refManual/qglviewer_8h.html
+++ b/doc/refManual/qglviewer_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -109,7 +109,7 @@ Namespaces</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/quaternion_8cpp.html b/doc/refManual/quaternion_8cpp.html
index 99a39d9..9252930 100644
--- a/doc/refManual/quaternion_8cpp.html
+++ b/doc/refManual/quaternion_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -129,7 +129,7 @@ Functions</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/quaternion_8h.html b/doc/refManual/quaternion_8h.html
index c000dd4..44d9b57 100644
--- a/doc/refManual/quaternion_8h.html
+++ b/doc/refManual/quaternion_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -142,7 +142,7 @@ Functions</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/saveSnapshot_8cpp.html b/doc/refManual/saveSnapshot_8cpp.html
index 5d1c4a0..e9ad784 100644
--- a/doc/refManual/saveSnapshot_8cpp.html
+++ b/doc/refManual/saveSnapshot_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -119,7 +119,7 @@ Functions</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/search/all_0.js b/doc/refManual/search/all_0.js
index 5b35bc5..e461c72 100644
--- a/doc/refManual/search/all_0.js
+++ b/doc/refManual/search/all_0.js
@@ -2,19 +2,19 @@ var searchData=
 [
   ['aboutqglviewer',['aboutQGLViewer',['../classQGLViewer.html#af08b8ca0f43910754ecd5d314e3febf0',1,'QGLViewer']]],
   ['addinmousegrabberpool',['addInMouseGrabberPool',['../classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82',1,'qglviewer::MouseGrabber']]],
-  ['addkeyframe',['addKeyFrame',['../classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame)'],['../classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame, float time)'],['../classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b',1,'qglviewer::KeyFrameInterpolator::addKeyFrame( [...]
+  ['addkeyframe',['addKeyFrame',['../classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame)'],['../classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame, qreal time)'],['../classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b',1,'qglviewer::KeyFrameInterpolator::addKeyFrame( [...]
   ['addkeyframekeyboardmodifiers',['addKeyFrameKeyboardModifiers',['../classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1',1,'QGLViewer']]],
-  ['addkeyframetopath',['addKeyFrameToPath',['../classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec',1,'qglviewer::Camera']]],
+  ['addkeyframetopath',['addKeyFrameToPath',['../classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4',1,'qglviewer::Camera']]],
   ['align_5fcamera',['ALIGN_CAMERA',['../classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa35685e5c7e681c3c0eb079e4f132a82a',1,'QGLViewer']]],
   ['align_5fframe',['ALIGN_FRAME',['../classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa3d318f59bc81979e3922c7e716085304',1,'QGLViewer']]],
-  ['alignwithframe',['alignWithFrame',['../classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10',1,'qglviewer::Frame']]],
-  ['angle',['angle',['../classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875',1,'qglviewer::Quaternion']]],
+  ['alignwithframe',['alignWithFrame',['../classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd',1,'qglviewer::Frame']]],
+  ['angle',['angle',['../classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495',1,'qglviewer::Quaternion']]],
   ['animate',['animate',['../classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2',1,'QGLViewer']]],
   ['animateneeded',['animateNeeded',['../classQGLViewer.html#a841503c97db5a51e33f8a7e56d4ca006',1,'QGLViewer']]],
   ['animation',['ANIMATION',['../classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1af3b49771c99e24d1407f9fc662fc7a6f',1,'QGLViewer']]],
   ['animationisstarted',['animationIsStarted',['../classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e',1,'QGLViewer']]],
   ['animationperiod',['animationPeriod',['../classQGLViewer.html#a700d9398d4293d9274766efa8b17917e',1,'QGLViewer']]],
-  ['aspectratio',['aspectRatio',['../classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1',1,'qglviewer::Camera::aspectRatio()'],['../classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1',1,'QGLViewer::aspectRatio()']]],
+  ['aspectratio',['aspectRatio',['../classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01',1,'qglviewer::Camera::aspectRatio()'],['../classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01',1,'QGLViewer::aspectRatio()']]],
   ['autobufferswap',['autoBufferSwap',['../classQGLViewer.html#a36faca915c37548a53ab04f297bb5c17',1,'QGLViewer']]],
   ['axis',['axis',['../classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4',1,'qglviewer::Quaternion::axis()'],['../classqglviewer_1_1AxisPlaneConstraint.html#a1d1cfd8ffb84e947f82999c682b666a7a1ad785f7d0b0b3a5a52cdd4385785a6b',1,'qglviewer::AxisPlaneConstraint::AXIS()']]],
   ['axisisdrawn',['axisIsDrawn',['../classQGLViewer.html#a7d38e6f11078e886f7978525def15797',1,'QGLViewer']]],
diff --git a/doc/refManual/search/all_1.js b/doc/refManual/search/all_1.js
index f23d924..6d426dc 100644
--- a/doc/refManual/search/all_1.js
+++ b/doc/refManual/search/all_1.js
@@ -3,6 +3,6 @@ var searchData=
   ['backgroundcolor',['backgroundColor',['../classQGLViewer.html#a7ddf68dcfb09cc5a991a06d91cb4cc5b',1,'QGLViewer']]],
   ['beginselection',['beginSelection',['../classQGLViewer.html#af0a48cc50f194926bad38d4924162116',1,'QGLViewer']]],
   ['buffertextureid',['bufferTextureId',['../classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69',1,'QGLViewer']]],
-  ['buffertexturemaxu',['bufferTextureMaxU',['../classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48',1,'QGLViewer']]],
-  ['buffertexturemaxv',['bufferTextureMaxV',['../classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7',1,'QGLViewer']]]
+  ['buffertexturemaxu',['bufferTextureMaxU',['../classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2',1,'QGLViewer']]],
+  ['buffertexturemaxv',['bufferTextureMaxV',['../classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9',1,'QGLViewer']]]
 ];
diff --git a/doc/refManual/search/all_10.js b/doc/refManual/search/all_10.js
index c2fa514..40667ab 100644
--- a/doc/refManual/search/all_10.js
+++ b/doc/refManual/search/all_10.js
@@ -6,17 +6,17 @@ var searchData=
   ['referenceframe',['referenceFrame',['../classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec',1,'qglviewer::Frame']]],
   ['removefrommousegrabberpool',['removeFromMouseGrabberPool',['../classqglviewer_1_1MouseGrabber.html#a4ac2261aafd5f48f2d90c989cdd69369',1,'qglviewer::MouseGrabber']]],
   ['resetinterpolation',['resetInterpolation',['../classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74',1,'qglviewer::KeyFrameInterpolator']]],
-  ['resetpath',['resetPath',['../classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf',1,'qglviewer::Camera']]],
+  ['resetpath',['resetPath',['../classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132',1,'qglviewer::Camera']]],
   ['resize',['resize',['../classQGLViewer.html#ad1185e99a9efec124b7a9bede84a6cf1',1,'QGLViewer']]],
   ['resizegl',['resizeGL',['../classQGLViewer.html#a3efe88f982dbec7825725dd954991139',1,'QGLViewer']]],
   ['restorestatefromfile',['restoreStateFromFile',['../classQGLViewer.html#a212f6b7b669463c2151688f629d72a81',1,'QGLViewer']]],
   ['rightvector',['rightVector',['../classqglviewer_1_1Camera.html#a99f766869c7cc9faaf9a5337db6f223c',1,'qglviewer::Camera']]],
   ['roll',['ROLL',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a2eeb9fef8a6a516fa6437a44a6efbd52',1,'QGLViewer']]],
-  ['rotate',['ROTATE',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3dcfe0046eb5876e287dbf0914819b16',1,'QGLViewer::ROTATE()'],['../classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33',1,'qglviewer::Frame::rotate(Quaternion &q)'],['../classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989',1,'qglviewer::Frame::rotate(const Quaternion &q)'],['../classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8',1,'qglviewer::Frame::rotate(double q0, do [...]
+  ['rotate',['ROTATE',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3dcfe0046eb5876e287dbf0914819b16',1,'QGLViewer::ROTATE()'],['../classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33',1,'qglviewer::Frame::rotate(Quaternion &q)'],['../classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989',1,'qglviewer::Frame::rotate(const Quaternion &q)'],['../classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff',1,'qglviewer::Frame::rotate(qreal q0, qre [...]
   ['rotatearoundpoint',['rotateAroundPoint',['../classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca',1,'qglviewer::Frame::rotateAroundPoint(Quaternion &rotation, const Vec &point)'],['../classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891',1,'qglviewer::Frame::rotateAroundPoint(const Quaternion &rotation, const Vec &point)']]],
   ['rotatesaroundupvector',['rotatesAroundUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#ae8a6d13c86c8d063d33a33a8db45ec85',1,'qglviewer::ManipulatedCameraFrame']]],
   ['rotation',['rotation',['../classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1',1,'qglviewer::Frame']]],
   ['rotationconstraintdirection',['rotationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#af982989dbeb2e0e63c85eecc09bd88d7',1,'qglviewer::AxisPlaneConstraint']]],
   ['rotationconstrainttype',['rotationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a61a05b9e18948b2b787e355c90b7b85f',1,'qglviewer::AxisPlaneConstraint']]],
-  ['rotationsensitivity',['rotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f',1,'qglviewer::ManipulatedFrame']]]
+  ['rotationsensitivity',['rotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735',1,'qglviewer::ManipulatedFrame']]]
 ];
diff --git a/doc/refManual/search/all_11.js b/doc/refManual/search/all_11.js
index 2bc6704..9625161 100644
--- a/doc/refManual/search/all_11.js
+++ b/doc/refManual/search/all_11.js
@@ -6,7 +6,7 @@ var searchData=
   ['savestatetofile',['saveStateToFile',['../classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa',1,'QGLViewer']]],
   ['scaledfont',['scaledFont',['../classQGLViewer.html#a7c5568ae9e5539cf410ef369dba7cec5',1,'QGLViewer']]],
   ['scenecenter',['sceneCenter',['../classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1',1,'qglviewer::Camera::sceneCenter()'],['../classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab',1,'QGLViewer::sceneCenter()']]],
-  ['sceneradius',['sceneRadius',['../classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9',1,'qglviewer::Camera::sceneRadius()'],['../classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9',1,'QGLViewer::sceneRadius()']]],
+  ['sceneradius',['sceneRadius',['../classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb',1,'qglviewer::Camera::sceneRadius()'],['../classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb',1,'QGLViewer::sceneRadius()']]],
   ['sceneupvector',['sceneUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b',1,'qglviewer::ManipulatedCameraFrame']]],
   ['screen_5frotate',['SCREEN_ROTATE',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a410b0fa7f49e7eedd6d739db37c67209',1,'QGLViewer']]],
   ['screen_5ftranslate',['SCREEN_TRANSLATE',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3de224b064ad81a76d8739cf288543a3',1,'QGLViewer']]],
@@ -20,36 +20,36 @@ var searchData=
   ['selectregionwidth',['selectRegionWidth',['../classQGLViewer.html#a16ad2d80aa574d32ae8237f56cfd7e06',1,'QGLViewer']]],
   ['setaddkeyframekeyboardmodifiers',['setAddKeyFrameKeyboardModifiers',['../classQGLViewer.html#afe04d1c918e50f6b4db5f7b6c7b80219',1,'QGLViewer']]],
   ['setanimationperiod',['setAnimationPeriod',['../classQGLViewer.html#aa37d4e0afe6a47e8f4f828ed41072176',1,'QGLViewer']]],
-  ['setaspectratio',['setAspectRatio',['../classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c',1,'qglviewer::Camera']]],
+  ['setaspectratio',['setAspectRatio',['../classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0',1,'qglviewer::Camera']]],
   ['setautobufferswap',['setAutoBufferSwap',['../classQGLViewer.html#ad95e0ffd255bcc1fb69c9213d8d8b017',1,'QGLViewer']]],
-  ['setaxisangle',['setAxisAngle',['../classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b',1,'qglviewer::Quaternion']]],
+  ['setaxisangle',['setAxisAngle',['../classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81',1,'qglviewer::Quaternion']]],
   ['setaxisisdrawn',['setAxisIsDrawn',['../classQGLViewer.html#a5be8cff3702c1a130f8a17330737a887',1,'QGLViewer']]],
   ['setbackgroundcolor',['setBackgroundColor',['../classQGLViewer.html#a70d4e21190fdc47edd88f078dd2037cb',1,'QGLViewer']]],
   ['setcamera',['setCamera',['../classQGLViewer.html#a9c45e1d2c4777de28664d3db952b7585',1,'QGLViewer']]],
   ['setcameraisedited',['setCameraIsEdited',['../classQGLViewer.html#a521c83b1d745b37331932b4d7b976d41',1,'QGLViewer']]],
   ['setconstraint',['setConstraint',['../classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224',1,'qglviewer::Frame']]],
-  ['setfieldofview',['setFieldOfView',['../classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c',1,'qglviewer::Camera']]],
-  ['setflyspeed',['setFlySpeed',['../classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09',1,'qglviewer::Camera::setFlySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09',1,'qglviewer::ManipulatedCameraFrame::setFlySpeed()']]],
-  ['setfocusdistance',['setFocusDistance',['../classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a',1,'qglviewer::Camera']]],
+  ['setfieldofview',['setFieldOfView',['../classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42',1,'qglviewer::Camera']]],
+  ['setflyspeed',['setFlySpeed',['../classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f',1,'qglviewer::Camera::setFlySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f',1,'qglviewer::ManipulatedCameraFrame::setFlySpeed()']]],
+  ['setfocusdistance',['setFocusDistance',['../classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98',1,'qglviewer::Camera']]],
   ['setforegroundcolor',['setForegroundColor',['../classQGLViewer.html#a7d986b1944dc5a190e509835e7c79eec',1,'QGLViewer']]],
   ['setfovtofitscene',['setFOVToFitScene',['../classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7',1,'qglviewer::Camera']]],
   ['setfpsisdisplayed',['setFPSIsDisplayed',['../classQGLViewer.html#aad24c89e014de3ea16f071c3bc18f4db',1,'QGLViewer']]],
   ['setframe',['setFrame',['../classqglviewer_1_1Camera.html#a809bad30c861f4f6f74228fb59340f90',1,'qglviewer::Camera::setFrame()'],['../classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d',1,'qglviewer::KeyFrameInterpolator::setFrame()']]],
   ['setfrommatrix',['setFromMatrix',['../classqglviewer_1_1Frame.html#a5408d08ab204157ec29f555b6813f9e4',1,'qglviewer::Frame::setFromMatrix(const GLdouble m[4][4])'],['../classqglviewer_1_1Frame.html#a0c4d51f142f43235e30198e7b8abc626',1,'qglviewer::Frame::setFromMatrix(const GLdouble m[16])']]],
   ['setfrommodelviewmatrix',['setFromModelViewMatrix',['../classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9',1,'qglviewer::Camera']]],
-  ['setfromprojectionmatrix',['setFromProjectionMatrix',['../classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd',1,'qglviewer::Camera']]],
+  ['setfromprojectionmatrix',['setFromProjectionMatrix',['../classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629',1,'qglviewer::Camera']]],
   ['setfromrotatedbasis',['setFromRotatedBasis',['../classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9',1,'qglviewer::Quaternion']]],
-  ['setfromrotationmatrix',['setFromRotationMatrix',['../classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac',1,'qglviewer::Quaternion']]],
+  ['setfromrotationmatrix',['setFromRotationMatrix',['../classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f',1,'qglviewer::Quaternion']]],
   ['setfullscreen',['setFullScreen',['../classQGLViewer.html#a7e021e15180ba348e90c955bdd28b1a4',1,'QGLViewer']]],
   ['setgrabsmouse',['setGrabsMouse',['../classqglviewer_1_1MouseGrabber.html#a9ecea0a9f8ce1b2d92bbd1dd6bdcd4f9',1,'qglviewer::MouseGrabber']]],
   ['setgridisdrawn',['setGridIsDrawn',['../classQGLViewer.html#ae9dd114195dfdf82e23b5754b7c161de',1,'QGLViewer']]],
-  ['sethorizontalfieldofview',['setHorizontalFieldOfView',['../classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014',1,'qglviewer::Camera']]],
+  ['sethorizontalfieldofview',['setHorizontalFieldOfView',['../classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d',1,'qglviewer::Camera']]],
   ['setinterpolationperiod',['setInterpolationPeriod',['../classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd',1,'qglviewer::KeyFrameInterpolator']]],
-  ['setinterpolationspeed',['setInterpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d',1,'qglviewer::KeyFrameInterpolator']]],
-  ['setinterpolationtime',['setInterpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3',1,'qglviewer::KeyFrameInterpolator']]],
-  ['setiodistance',['setIODistance',['../classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234',1,'qglviewer::Camera']]],
-  ['setkeydescription',['setKeyDescription',['../classQGLViewer.html#a9e97204faca448653fad94a37024a488',1,'QGLViewer']]],
-  ['setkeyframeinterpolator',['setKeyFrameInterpolator',['../classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5',1,'qglviewer::Camera']]],
+  ['setinterpolationspeed',['setInterpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f',1,'qglviewer::KeyFrameInterpolator']]],
+  ['setinterpolationtime',['setInterpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7',1,'qglviewer::KeyFrameInterpolator']]],
+  ['setiodistance',['setIODistance',['../classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7',1,'qglviewer::Camera']]],
+  ['setkeydescription',['setKeyDescription',['../classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c',1,'QGLViewer']]],
+  ['setkeyframeinterpolator',['setKeyFrameInterpolator',['../classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a',1,'qglviewer::Camera']]],
   ['setloopinterpolation',['setLoopInterpolation',['../classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd',1,'qglviewer::KeyFrameInterpolator']]],
   ['setmanipulatedframe',['setManipulatedFrame',['../classQGLViewer.html#ac6964ec1ebb2f42464313e0c43e767a3',1,'QGLViewer']]],
   ['setmousebinding',['setMouseBinding',['../classQGLViewer.html#a98e3c0b956c3fea7dc804e7a7a7dd295',1,'QGLViewer::setMouseBinding(Qt::KeyboardModifiers modifiers, Qt::MouseButton buttons, MouseHandler handler, MouseAction action, bool withConstraint=true)'],['../classQGLViewer.html#af60ec98df1af2309ef1d16644e9791ef',1,'QGLViewer::setMouseBinding(Qt::KeyboardModifiers modifiers, Qt::MouseButton button, ClickAction action, bool doubleClick=false, Qt::MouseButtons buttonsBefore=Qt::NoButton [...]
@@ -57,29 +57,29 @@ var searchData=
   ['setmousegrabber',['setMouseGrabber',['../classQGLViewer.html#a993285ef8a16ccbdc5d57a1264212712',1,'QGLViewer']]],
   ['setmousegrabberisenabled',['setMouseGrabberIsEnabled',['../classQGLViewer.html#a3f0b956f948f469c095ff3c2c1b73494',1,'QGLViewer']]],
   ['setmousetracking',['setMouseTracking',['../classQGLViewer.html#acf0a4ee197fe91b8c07dd74cad1aafaa',1,'QGLViewer']]],
-  ['setorientation',['setOrientation',['../classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868',1,'qglviewer::Camera::setOrientation(const Quaternion &q)'],['../classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e',1,'qglviewer::Camera::setOrientation(float theta, float phi)'],['../classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b',1,'qglviewer::Frame::setOrientation(const Quaternion &orientation)'],['../classqglviewer_1_1Frame.html#ae3ac2bf6dc [...]
+  ['setorientation',['setOrientation',['../classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868',1,'qglviewer::Camera::setOrientation(const Quaternion &q)'],['../classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41',1,'qglviewer::Camera::setOrientation(qreal theta, qreal phi)'],['../classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b',1,'qglviewer::Frame::setOrientation(const Quaternion &orientation)'],['../classqglviewer_1_1Frame.html#a63727a742d [...]
   ['setorientationwithconstraint',['setOrientationWithConstraint',['../classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4',1,'qglviewer::Frame']]],
-  ['setpathkey',['setPathKey',['../classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13',1,'QGLViewer']]],
-  ['setphysicalscreenwidth',['setPhysicalScreenWidth',['../classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401',1,'qglviewer::Camera']]],
+  ['setpathkey',['setPathKey',['../classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13',1,'QGLViewer']]],
+  ['setphysicalscreenwidth',['setPhysicalScreenWidth',['../classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f',1,'qglviewer::Camera']]],
   ['setpivotpoint',['setPivotPoint',['../classqglviewer_1_1Camera.html#ad0d493c3e540ec42a480e03d249b5a56',1,'qglviewer::Camera::setPivotPoint()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#ad0d493c3e540ec42a480e03d249b5a56',1,'qglviewer::ManipulatedCameraFrame::setPivotPoint()']]],
   ['setpivotpointfrompixel',['setPivotPointFromPixel',['../classqglviewer_1_1Camera.html#abc3e131745649e6b18693c466f10382f',1,'qglviewer::Camera']]],
   ['setplaypathkeyboardmodifiers',['setPlayPathKeyboardModifiers',['../classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1',1,'QGLViewer']]],
-  ['setposition',['setPosition',['../classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821',1,'qglviewer::Camera::setPosition()'],['../classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52',1,'qglviewer::Frame::setPosition(const Vec &position)'],['../classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083',1,'qglviewer::Frame::setPosition(float x, float y, float z)']]],
+  ['setposition',['setPosition',['../classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821',1,'qglviewer::Camera::setPosition()'],['../classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52',1,'qglviewer::Frame::setPosition(const Vec &position)'],['../classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e',1,'qglviewer::Frame::setPosition(qreal x, qreal y, qreal z)']]],
   ['setpositionandorientation',['setPositionAndOrientation',['../classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087',1,'qglviewer::Frame']]],
   ['setpositionandorientationwithconstraint',['setPositionAndOrientationWithConstraint',['../classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a',1,'qglviewer::Frame']]],
   ['setpositionwithconstraint',['setPositionWithConstraint',['../classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38',1,'qglviewer::Frame']]],
   ['setreferenceframe',['setReferenceFrame',['../classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8',1,'qglviewer::Frame']]],
   ['setrotatesaroundupvector',['setRotatesAroundUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#a1d1e56d55fdbd1906a230392e2f7eedb',1,'qglviewer::ManipulatedCameraFrame']]],
-  ['setrotation',['setRotation',['../classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e',1,'qglviewer::Frame::setRotation(const Quaternion &rotation)'],['../classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e',1,'qglviewer::Frame::setRotation(double q0, double q1, double q2, double q3)']]],
+  ['setrotation',['setRotation',['../classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e',1,'qglviewer::Frame::setRotation(const Quaternion &rotation)'],['../classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6',1,'qglviewer::Frame::setRotation(qreal q0, qreal q1, qreal q2, qreal q3)']]],
   ['setrotationconstraint',['setRotationConstraint',['../classqglviewer_1_1AxisPlaneConstraint.html#a116f0f394030f165b031287c1e1cf5ea',1,'qglviewer::AxisPlaneConstraint']]],
   ['setrotationconstraintdirection',['setRotationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#a7cb6055005e69d6edac8fbb0d14dd0fa',1,'qglviewer::AxisPlaneConstraint']]],
   ['setrotationconstrainttype',['setRotationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a7c0dc83d6a770742719c8d3ffa67c4e5',1,'qglviewer::AxisPlaneConstraint']]],
-  ['setrotationsensitivity',['setRotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11',1,'qglviewer::ManipulatedFrame']]],
+  ['setrotationsensitivity',['setRotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef',1,'qglviewer::ManipulatedFrame']]],
   ['setrotationwithconstraint',['setRotationWithConstraint',['../classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd',1,'qglviewer::Frame']]],
   ['setsceneboundingbox',['setSceneBoundingBox',['../classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee',1,'qglviewer::Camera::setSceneBoundingBox()'],['../classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c',1,'QGLViewer::setSceneBoundingBox()']]],
   ['setscenecenter',['setSceneCenter',['../classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33',1,'qglviewer::Camera::setSceneCenter()'],['../classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d',1,'QGLViewer::setSceneCenter()']]],
   ['setscenecenterfrompixel',['setSceneCenterFromPixel',['../classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf',1,'qglviewer::Camera']]],
-  ['setsceneradius',['setSceneRadius',['../classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822',1,'qglviewer::Camera::setSceneRadius()'],['../classQGLViewer.html#aef99f105486d457f0199fcc35181fa83',1,'QGLViewer::setSceneRadius()']]],
+  ['setsceneradius',['setSceneRadius',['../classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f',1,'qglviewer::Camera::setSceneRadius()'],['../classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd',1,'QGLViewer::setSceneRadius()']]],
   ['setsceneupvector',['setSceneUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a',1,'qglviewer::ManipulatedCameraFrame']]],
   ['setscreenwidthandheight',['setScreenWidthAndHeight',['../classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812',1,'qglviewer::Camera']]],
   ['setselectbuffersize',['setSelectBufferSize',['../classQGLViewer.html#ae8af6dc4a89202211b764647caf3d1f3',1,'QGLViewer']]],
@@ -92,34 +92,34 @@ var searchData=
   ['setsnapshotformat',['setSnapshotFormat',['../classQGLViewer.html#a82043998256d08163f79ceee83278e14',1,'QGLViewer']]],
   ['setsnapshotquality',['setSnapshotQuality',['../classQGLViewer.html#ab64b04b76b1f35ee1b3f07fa747dc9a0',1,'QGLViewer']]],
   ['setspinningquaternion',['setSpinningQuaternion',['../classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9',1,'qglviewer::ManipulatedFrame']]],
-  ['setspinningsensitivity',['setSpinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b',1,'qglviewer::ManipulatedFrame']]],
+  ['setspinningsensitivity',['setSpinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02',1,'qglviewer::ManipulatedFrame']]],
   ['setstatefilename',['setStateFileName',['../classQGLViewer.html#a68737cce3d7301701bca6e4270a5a34e',1,'QGLViewer']]],
   ['setstereodisplay',['setStereoDisplay',['../classQGLViewer.html#afe362ba5c3851a93f23fb833b2479f08',1,'QGLViewer']]],
   ['settextisenabled',['setTextIsEnabled',['../classQGLViewer.html#a73d76caa402acd217e504d0bcd13e421',1,'QGLViewer']]],
   ['settingasreferenceframewillcreatealoop',['settingAsReferenceFrameWillCreateALoop',['../classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7',1,'qglviewer::Frame']]],
-  ['settranslation',['setTranslation',['../classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704',1,'qglviewer::Frame::setTranslation(const Vec &translation)'],['../classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1',1,'qglviewer::Frame::setTranslation(float x, float y, float z)']]],
+  ['settranslation',['setTranslation',['../classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704',1,'qglviewer::Frame::setTranslation(const Vec &translation)'],['../classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8',1,'qglviewer::Frame::setTranslation(qreal x, qreal y, qreal z)']]],
   ['settranslationandrotation',['setTranslationAndRotation',['../classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48',1,'qglviewer::Frame']]],
   ['settranslationandrotationwithconstraint',['setTranslationAndRotationWithConstraint',['../classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db',1,'qglviewer::Frame']]],
   ['settranslationconstraint',['setTranslationConstraint',['../classqglviewer_1_1AxisPlaneConstraint.html#a722c30f7303a078681fbf516499579de',1,'qglviewer::AxisPlaneConstraint']]],
   ['settranslationconstraintdirection',['setTranslationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#a2b676c088af158a52724bbbab15d1a65',1,'qglviewer::AxisPlaneConstraint']]],
   ['settranslationconstrainttype',['setTranslationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a0cee03d4db5722e992c20f042601eaa5',1,'qglviewer::AxisPlaneConstraint']]],
-  ['settranslationsensitivity',['setTranslationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871',1,'qglviewer::ManipulatedFrame']]],
+  ['settranslationsensitivity',['setTranslationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20',1,'qglviewer::ManipulatedFrame']]],
   ['settranslationwithconstraint',['setTranslationWithConstraint',['../classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0',1,'qglviewer::Frame']]],
   ['settype',['setType',['../classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc',1,'qglviewer::Camera']]],
   ['setupvector',['setUpVector',['../classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e',1,'qglviewer::Camera']]],
-  ['setvalue',['setValue',['../classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a',1,'qglviewer::Quaternion::setValue()'],['../classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa',1,'qglviewer::Vec::setValue()']]],
+  ['setvalue',['setValue',['../classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db',1,'qglviewer::Quaternion::setValue()'],['../classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5',1,'qglviewer::Vec::setValue()']]],
   ['setviewdirection',['setViewDirection',['../classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6',1,'qglviewer::Camera']]],
   ['setwheelbinding',['setWheelBinding',['../classQGLViewer.html#a277f432be05de69ae2df05eac8951ad2',1,'QGLViewer::setWheelBinding(Qt::KeyboardModifiers modifiers, MouseHandler handler, MouseAction action, bool withConstraint=true)'],['../classQGLViewer.html#ac418dcff525e4236ebd4e8324fb725b1',1,'QGLViewer::setWheelBinding(Qt::Key key, Qt::KeyboardModifiers modifiers, MouseHandler handler, MouseAction action, bool withConstraint=true)']]],
-  ['setwheelsensitivity',['setWheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499',1,'qglviewer::ManipulatedFrame']]],
-  ['setzclippingcoefficient',['setZClippingCoefficient',['../classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7',1,'qglviewer::Camera']]],
-  ['setznearcoefficient',['setZNearCoefficient',['../classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5',1,'qglviewer::Camera']]],
-  ['setzoomsensitivity',['setZoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0',1,'qglviewer::ManipulatedFrame']]],
+  ['setwheelsensitivity',['setWheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f',1,'qglviewer::ManipulatedFrame']]],
+  ['setzclippingcoefficient',['setZClippingCoefficient',['../classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198',1,'qglviewer::Camera']]],
+  ['setznearcoefficient',['setZNearCoefficient',['../classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95',1,'qglviewer::Camera']]],
+  ['setzoomsensitivity',['setZoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed',1,'qglviewer::ManipulatedFrame']]],
   ['setzoomsonpivotpoint',['setZoomsOnPivotPoint',['../classqglviewer_1_1ManipulatedCameraFrame.html#aa715ac66a29d06ce3e86e241ae322813',1,'qglviewer::ManipulatedCameraFrame']]],
   ['shortcut',['shortcut',['../classQGLViewer.html#af8f502daf9ffa61c8904f891c843e994',1,'QGLViewer']]],
   ['show_5fentire_5fscene',['SHOW_ENTIRE_SCENE',['../classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fa3f717d1605f3ca83254beb93ea399ddc',1,'QGLViewer']]],
   ['showentirescene',['showEntireScene',['../classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2',1,'qglviewer::Camera::showEntireScene()'],['../classQGLViewer.html#ada8dd7d2346ebf46ed1f9822a8418df2',1,'QGLViewer::showEntireScene()']]],
   ['sizehint',['sizeHint',['../classQGLViewer.html#ad8288a17cf54658f1ce1c0db9e97dc8a',1,'QGLViewer']]],
-  ['slerp',['slerp',['../classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4',1,'qglviewer::Quaternion']]],
+  ['slerp',['slerp',['../classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6',1,'qglviewer::Quaternion']]],
   ['snapshot_5fto_5fclipboard',['SNAPSHOT_TO_CLIPBOARD',['../classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1af66c229e98a8724914c726433c735312',1,'QGLViewer']]],
   ['snapshotcounter',['snapshotCounter',['../classQGLViewer.html#a4de825bb96eba2c5f6a55facb9dc4cef',1,'QGLViewer']]],
   ['snapshotfilename',['snapshotFileName',['../classQGLViewer.html#a00f2094711c7349fe1f74b6fc0b5530f',1,'QGLViewer']]],
@@ -128,11 +128,11 @@ var searchData=
   ['snapshottoclipboard',['snapshotToClipboard',['../classQGLViewer.html#a6054c5da7cfd763db7c0b214026a50ec',1,'QGLViewer']]],
   ['spin',['spin',['../classqglviewer_1_1ManipulatedCameraFrame.html#af87828117d0582d0031f563933f97bfd',1,'qglviewer::ManipulatedCameraFrame::spin()'],['../classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd',1,'qglviewer::ManipulatedFrame::spin()']]],
   ['spinningquaternion',['spinningQuaternion',['../classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276',1,'qglviewer::ManipulatedFrame']]],
-  ['spinningsensitivity',['spinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca',1,'qglviewer::ManipulatedFrame']]],
+  ['spinningsensitivity',['spinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7',1,'qglviewer::ManipulatedFrame']]],
   ['spun',['spun',['../classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c',1,'qglviewer::ManipulatedFrame']]],
-  ['squad',['squad',['../classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812',1,'qglviewer::Quaternion']]],
+  ['squad',['squad',['../classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf',1,'qglviewer::Quaternion']]],
   ['squadtangent',['squadTangent',['../classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005',1,'qglviewer::Quaternion']]],
-  ['squarednorm',['squaredNorm',['../classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e',1,'qglviewer::Vec']]],
+  ['squarednorm',['squaredNorm',['../classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153',1,'qglviewer::Vec']]],
   ['startanimation',['startAnimation',['../classQGLViewer.html#ad5344a5f702678f309fafa0c699b2cf3',1,'QGLViewer']]],
   ['startinterpolation',['startInterpolation',['../classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819',1,'qglviewer::KeyFrameInterpolator']]],
   ['startscreencoordinatessystem',['startScreenCoordinatesSystem',['../classQGLViewer.html#a5825ac26bdef13ae5ddd021e318aaf15',1,'QGLViewer']]],
diff --git a/doc/refManual/search/all_12.js b/doc/refManual/search/all_12.js
index 7928804..81473c1 100644
--- a/doc/refManual/search/all_12.js
+++ b/doc/refManual/search/all_12.js
@@ -16,10 +16,10 @@ var searchData=
   ['transformof',['transformOf',['../classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e',1,'qglviewer::Frame']]],
   ['transformoffrom',['transformOfFrom',['../classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7',1,'qglviewer::Frame']]],
   ['transformofin',['transformOfIn',['../classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0',1,'qglviewer::Frame']]],
-  ['translate',['TRANSLATE',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875abc6501410409b0638909b580970b35f7',1,'QGLViewer::TRANSLATE()'],['../classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a',1,'qglviewer::Frame::translate(Vec &t)'],['../classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b',1,'qglviewer::Frame::translate(const Vec &t)'],['../classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290',1,'qglviewer::Frame::translate(float x,  [...]
+  ['translate',['TRANSLATE',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875abc6501410409b0638909b580970b35f7',1,'QGLViewer::TRANSLATE()'],['../classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a',1,'qglviewer::Frame::translate(Vec &t)'],['../classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b',1,'qglviewer::Frame::translate(const Vec &t)'],['../classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5',1,'qglviewer::Frame::translate(qreal x,  [...]
   ['translation',['translation',['../classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642',1,'qglviewer::Frame']]],
   ['translationconstraintdirection',['translationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#a431b0d36842122de9db3b4e4f00b8d7c',1,'qglviewer::AxisPlaneConstraint']]],
   ['translationconstrainttype',['translationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a12ad675910ffa86fbabefff2cd6a594a',1,'qglviewer::AxisPlaneConstraint']]],
-  ['translationsensitivity',['translationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a',1,'qglviewer::ManipulatedFrame']]],
+  ['translationsensitivity',['translationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841',1,'qglviewer::ManipulatedFrame']]],
   ['type',['type',['../classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7',1,'qglviewer::Camera::type() const '],['../classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7',1,'qglviewer::Camera::Type()'],['../classqglviewer_1_1AxisPlaneConstraint.html#a1d1cfd8ffb84e947f82999c682b666a7',1,'qglviewer::AxisPlaneConstraint::Type()']]]
 ];
diff --git a/doc/refManual/search/all_14.js b/doc/refManual/search/all_14.js
index e36ad4f..620b9cc 100644
--- a/doc/refManual/search/all_14.js
+++ b/doc/refManual/search/all_14.js
@@ -1,7 +1,7 @@
 var searchData=
 [
   ['vec',['Vec',['../classqglviewer_1_1Vec.html',1,'qglviewer']]],
-  ['vec',['Vec',['../classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0',1,'qglviewer::Vec::Vec()'],['../classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6',1,'qglviewer::Vec::Vec(double X, double Y, double Z)'],['../classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592',1,'qglviewer::Vec::Vec(const C &c)'],['../classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a',1,'qglviewer::Vec::Vec(const QDomElement &element)']]],
+  ['vec',['Vec',['../classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0',1,'qglviewer::Vec::Vec()'],['../classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911',1,'qglviewer::Vec::Vec(qreal X, qreal Y, qreal Z)'],['../classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592',1,'qglviewer::Vec::Vec(const C &c)'],['../classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a',1,'qglviewer::Vec::Vec(const QDomElement &element)']]],
   ['vec_2ecpp',['vec.cpp',['../vec_8cpp.html',1,'']]],
   ['vec_2eh',['vec.h',['../vec_8h.html',1,'']]],
   ['viewdirection',['viewDirection',['../classqglviewer_1_1Camera.html#aac10e453c166209b4e6c14c0266651c7',1,'qglviewer::Camera']]],
diff --git a/doc/refManual/search/all_15.js b/doc/refManual/search/all_15.js
index 02125e7..0eac7b9 100644
--- a/doc/refManual/search/all_15.js
+++ b/doc/refManual/search/all_15.js
@@ -3,7 +3,7 @@ var searchData=
   ['wheelaction',['wheelAction',['../classQGLViewer.html#a8d3605551bb140ab0c38c78c55722621',1,'QGLViewer']]],
   ['wheelevent',['wheelEvent',['../classqglviewer_1_1ManipulatedCameraFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36',1,'qglviewer::ManipulatedCameraFrame::wheelEvent()'],['../classqglviewer_1_1ManipulatedFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36',1,'qglviewer::ManipulatedFrame::wheelEvent()'],['../classqglviewer_1_1MouseGrabber.html#a07a7d880d107f0b532ef779b29884e08',1,'qglviewer::MouseGrabber::wheelEvent()'],['../classQGLViewer.html#abc61c05ed30a94d66ab715c718532c03',1,'QGLViewer::whe [...]
   ['wheelhandler',['wheelHandler',['../classQGLViewer.html#a783e829b316bac1cb3c7baaff46797e7',1,'QGLViewer']]],
-  ['wheelsensitivity',['wheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44',1,'qglviewer::ManipulatedFrame']]],
+  ['wheelsensitivity',['wheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182',1,'qglviewer::ManipulatedFrame']]],
   ['width',['width',['../classQGLViewer.html#a369399896761e31ae71db57fdd0ba431',1,'QGLViewer']]],
   ['worldconstraint',['WorldConstraint',['../classqglviewer_1_1WorldConstraint.html',1,'qglviewer']]],
   ['worldcoordinatesof',['worldCoordinatesOf',['../classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab',1,'qglviewer::Camera']]],
diff --git a/doc/refManual/search/all_16.js b/doc/refManual/search/all_16.js
index 975859b..3085c50 100644
--- a/doc/refManual/search/all_16.js
+++ b/doc/refManual/search/all_16.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['x',['x',['../classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10',1,'qglviewer::Vec']]]
+  ['x',['x',['../classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580',1,'qglviewer::Vec']]]
 ];
diff --git a/doc/refManual/search/all_17.js b/doc/refManual/search/all_17.js
index d3edcbf..3254ebe 100644
--- a/doc/refManual/search/all_17.js
+++ b/doc/refManual/search/all_17.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['y',['y',['../classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a',1,'qglviewer::Vec']]]
+  ['y',['y',['../classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10',1,'qglviewer::Vec']]]
 ];
diff --git a/doc/refManual/search/all_18.js b/doc/refManual/search/all_18.js
index 38b47be..5452d8c 100644
--- a/doc/refManual/search/all_18.js
+++ b/doc/refManual/search/all_18.js
@@ -1,14 +1,14 @@
 var searchData=
 [
-  ['z',['z',['../classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872',1,'qglviewer::Vec']]],
-  ['zclippingcoefficient',['zClippingCoefficient',['../classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca',1,'qglviewer::Camera']]],
-  ['zfar',['zFar',['../classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949',1,'qglviewer::Camera']]],
-  ['znear',['zNear',['../classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5',1,'qglviewer::Camera']]],
-  ['znearcoefficient',['zNearCoefficient',['../classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e',1,'qglviewer::Camera']]],
+  ['z',['z',['../classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded',1,'qglviewer::Vec']]],
+  ['zclippingcoefficient',['zClippingCoefficient',['../classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392',1,'qglviewer::Camera']]],
+  ['zfar',['zFar',['../classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391',1,'qglviewer::Camera']]],
+  ['znear',['zNear',['../classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0',1,'qglviewer::Camera']]],
+  ['znearcoefficient',['zNearCoefficient',['../classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14',1,'qglviewer::Camera']]],
   ['zoom',['ZOOM',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a604adefe799fe794cab6b76ed1108201',1,'QGLViewer']]],
   ['zoom_5fon_5fpixel',['ZOOM_ON_PIXEL',['../classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fac7b18b21c4c8f1eeb5d54bf1b7919db4',1,'QGLViewer']]],
   ['zoom_5fon_5fregion',['ZOOM_ON_REGION',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875afbac98d470c69690e178ff5ab9ad504d',1,'QGLViewer']]],
   ['zoom_5fto_5ffit',['ZOOM_TO_FIT',['../classQGLViewer.html#a85fe75121d351785616b75b2c5661d8fab1efbb77356f16254fd4a62e1236b531',1,'QGLViewer']]],
-  ['zoomsensitivity',['zoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d',1,'qglviewer::ManipulatedFrame']]],
+  ['zoomsensitivity',['zoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59',1,'qglviewer::ManipulatedFrame']]],
   ['zoomsonpivotpoint',['zoomsOnPivotPoint',['../classqglviewer_1_1ManipulatedCameraFrame.html#ad9e5f408288e0c02c64b712a8b2ce589',1,'qglviewer::ManipulatedCameraFrame']]]
 ];
diff --git a/doc/refManual/search/all_2.js b/doc/refManual/search/all_2.js
index 8298af6..e744ee3 100644
--- a/doc/refManual/search/all_2.js
+++ b/doc/refManual/search/all_2.js
@@ -35,6 +35,6 @@ var searchData=
   ['coordinatesofin',['coordinatesOfIn',['../classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391',1,'qglviewer::Frame']]],
   ['copybuffertotexture',['copyBufferToTexture',['../classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453',1,'QGLViewer']]],
   ['cross',['cross',['../classqglviewer_1_1Vec.html#a835244f47bc3744aed547f6ae814e13e',1,'qglviewer::Vec']]],
-  ['currentfps',['currentFPS',['../classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975',1,'QGLViewer']]],
+  ['currentfps',['currentFPS',['../classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56',1,'QGLViewer']]],
   ['currentmouseaction',['currentMouseAction',['../classqglviewer_1_1ManipulatedFrame.html#aff4f89e6418df47cf2b269cf23c76ed4',1,'qglviewer::ManipulatedFrame']]]
 ];
diff --git a/doc/refManual/search/all_3.js b/doc/refManual/search/all_3.js
index bf2e67e..aa14604 100644
--- a/doc/refManual/search/all_3.js
+++ b/doc/refManual/search/all_3.js
@@ -1,28 +1,28 @@
 var searchData=
 [
   ['decrease_5fflyspeed',['DECREASE_FLYSPEED',['../classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a595e91c7270892a31306f01e105c1dd8',1,'QGLViewer']]],
-  ['deletepath',['deletePath',['../classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac',1,'qglviewer::Camera::deletePath()'],['../classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34',1,'qglviewer::KeyFrameInterpolator::deletePath()']]],
+  ['deletepath',['deletePath',['../classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f',1,'qglviewer::Camera::deletePath()'],['../classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34',1,'qglviewer::KeyFrameInterpolator::deletePath()']]],
   ['display_5ffps',['DISPLAY_FPS',['../classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a7522d8401eb437769071ba3b1562ca97',1,'QGLViewer']]],
   ['displaymessage',['displayMessage',['../classQGLViewer.html#a61336516f9771ac6aef90875f848add4',1,'QGLViewer']]],
   ['displaysinstereo',['displaysInStereo',['../classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337',1,'QGLViewer']]],
-  ['distancetoscenecenter',['distanceToSceneCenter',['../classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5',1,'qglviewer::Camera']]],
+  ['distancetoscenecenter',['distanceToSceneCenter',['../classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639',1,'qglviewer::Camera']]],
   ['domelement',['domElement',['../classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::Camera::domElement()'],['../classqglviewer_1_1Frame.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::Frame::domElement()'],['../classqglviewer_1_1KeyFrameInterpolator.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::KeyFrameInterpolator::domElement()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::ManipulatedCame [...]
   ['domutils_2eh',['domUtils.h',['../domUtils_8h.html',1,'']]],
-  ['dot',['dot',['../classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83',1,'qglviewer::Quaternion']]],
-  ['draw',['draw',['../classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e',1,'qglviewer::Camera::draw()'],['../classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0',1,'QGLViewer::draw()']]],
+  ['dot',['dot',['../classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb',1,'qglviewer::Quaternion']]],
+  ['draw',['draw',['../classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b',1,'qglviewer::Camera::draw()'],['../classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0',1,'QGLViewer::draw()']]],
   ['draw_5faxis',['DRAW_AXIS',['../classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1aa9c213a1cf39290bfcad5d6813d2395d',1,'QGLViewer']]],
   ['draw_5fgrid',['DRAW_GRID',['../classQGLViewer.html#a7a90ec0b49f9586addb5eed9026077c1a9891606ac8b160f15d3e705f7d192604',1,'QGLViewer']]],
   ['drawallpaths',['drawAllPaths',['../classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87',1,'qglviewer::Camera']]],
-  ['drawarrow',['drawArrow',['../classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0',1,'QGLViewer::drawArrow(float length=1.0f, float radius=-1.0f, int nbSubdivisions=12)'],['../classQGLViewer.html#a27edb1331c7bf373d126487e9547969f',1,'QGLViewer::drawArrow(const qglviewer::Vec &from, const qglviewer::Vec &to, float radius=-1.0f, int nbSubdivisions=12)']]],
-  ['drawaxis',['drawAxis',['../classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c',1,'QGLViewer']]],
+  ['drawarrow',['drawArrow',['../classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150',1,'QGLViewer::drawArrow(qreal length=1.0, qreal radius=-1.0, int nbSubdivisions=12)'],['../classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc',1,'QGLViewer::drawArrow(const qglviewer::Vec &from, const qglviewer::Vec &to, qreal radius=-1.0, int nbSubdivisions=12)']]],
+  ['drawaxis',['drawAxis',['../classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc',1,'QGLViewer']]],
   ['drawfinished',['drawFinished',['../classQGLViewer.html#afc74e28548768da157f2fe75bced2803',1,'QGLViewer']]],
-  ['drawgrid',['drawGrid',['../classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d',1,'QGLViewer']]],
-  ['drawlight',['drawLight',['../classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53',1,'QGLViewer']]],
+  ['drawgrid',['drawGrid',['../classQGLViewer.html#a86a359ff8c78755fca0900321293da8f',1,'QGLViewer']]],
+  ['drawlight',['drawLight',['../classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07',1,'QGLViewer']]],
   ['drawneeded',['drawNeeded',['../classQGLViewer.html#a7a712ca70a0b1c22af51363b786fc86e',1,'QGLViewer']]],
-  ['drawpath',['drawPath',['../classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2',1,'qglviewer::KeyFrameInterpolator']]],
+  ['drawpath',['drawPath',['../classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e',1,'qglviewer::KeyFrameInterpolator']]],
   ['drawtext',['drawText',['../classQGLViewer.html#ad604ec747b161c869877fcb647a3c775',1,'QGLViewer']]],
   ['drawvectorial',['drawVectorial',['../saveSnapshot_8cpp.html#a17f76156bf2b7616d55305d1cbbf3227',1,'saveSnapshot.cpp']]],
   ['drawwithnames',['drawWithNames',['../classQGLViewer.html#a528b238068a87472df8ac3a5b2481c55',1,'QGLViewer']]],
   ['drive',['DRIVE',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875af7b6d6d8e5e14633d388ef9cc7a941b7',1,'QGLViewer']]],
-  ['duration',['duration',['../classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980',1,'qglviewer::KeyFrameInterpolator']]]
+  ['duration',['duration',['../classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166',1,'qglviewer::KeyFrameInterpolator']]]
 ];
diff --git a/doc/refManual/search/all_5.js b/doc/refManual/search/all_5.js
index 5cec54d..f86e981 100644
--- a/doc/refManual/search/all_5.js
+++ b/doc/refManual/search/all_5.js
@@ -1,13 +1,13 @@
 var searchData=
 [
   ['fastdraw',['fastDraw',['../classQGLViewer.html#a8b6601997fe7a83e7cd041104d4b21d2',1,'QGLViewer']]],
-  ['fieldofview',['fieldOfView',['../classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330',1,'qglviewer::Camera']]],
-  ['firsttime',['firstTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477',1,'qglviewer::KeyFrameInterpolator']]],
+  ['fieldofview',['fieldOfView',['../classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23',1,'qglviewer::Camera']]],
+  ['firsttime',['firstTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0',1,'qglviewer::KeyFrameInterpolator']]],
   ['fitboundingbox',['fitBoundingBox',['../classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9',1,'qglviewer::Camera']]],
   ['fitscreenregion',['fitScreenRegion',['../classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471',1,'qglviewer::Camera']]],
-  ['fitsphere',['fitSphere',['../classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec',1,'qglviewer::Camera']]],
-  ['flyspeed',['flySpeed',['../classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802',1,'qglviewer::Camera::flySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802',1,'qglviewer::ManipulatedCameraFrame::flySpeed()']]],
-  ['focusdistance',['focusDistance',['../classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379',1,'qglviewer::Camera']]],
+  ['fitsphere',['fitSphere',['../classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10',1,'qglviewer::Camera']]],
+  ['flyspeed',['flySpeed',['../classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe',1,'qglviewer::Camera::flySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe',1,'qglviewer::ManipulatedCameraFrame::flySpeed()']]],
+  ['focusdistance',['focusDistance',['../classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8',1,'qglviewer::Camera']]],
   ['forbidden',['FORBIDDEN',['../classqglviewer_1_1AxisPlaneConstraint.html#a1d1cfd8ffb84e947f82999c682b666a7a4b4068e636cd02a6e87e8d3920383d67',1,'qglviewer::AxisPlaneConstraint']]],
   ['foregroundcolor',['foregroundColor',['../classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d',1,'QGLViewer']]],
   ['fpsisdisplayed',['FPSIsDisplayed',['../classQGLViewer.html#a4b8985b86aca5584d9869c8ac868984a',1,'QGLViewer']]],
diff --git a/doc/refManual/search/all_6.js b/doc/refManual/search/all_6.js
index e0a1505..151cd48 100644
--- a/doc/refManual/search/all_6.js
+++ b/doc/refManual/search/all_6.js
@@ -1,39 +1,39 @@
 var searchData=
 [
-  ['getaxisangle',['getAxisAngle',['../classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292',1,'qglviewer::Quaternion']]],
-  ['getcameracoordinatesof',['getCameraCoordinatesOf',['../classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4',1,'qglviewer::Camera']]],
+  ['getaxisangle',['getAxisAngle',['../classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5',1,'qglviewer::Quaternion']]],
+  ['getcameracoordinatesof',['getCameraCoordinatesOf',['../classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878',1,'qglviewer::Camera']]],
   ['getclickactionbinding',['getClickActionBinding',['../classQGLViewer.html#ae57d9efa984795d6cfbe85ad594f660f',1,'QGLViewer']]],
-  ['getcoordinatesof',['getCoordinatesOf',['../classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764',1,'qglviewer::Frame']]],
-  ['getcoordinatesoffrom',['getCoordinatesOfFrom',['../classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17',1,'qglviewer::Frame']]],
-  ['getcoordinatesofin',['getCoordinatesOfIn',['../classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30',1,'qglviewer::Frame']]],
+  ['getcoordinatesof',['getCoordinatesOf',['../classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce',1,'qglviewer::Frame']]],
+  ['getcoordinatesoffrom',['getCoordinatesOfFrom',['../classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00',1,'qglviewer::Frame']]],
+  ['getcoordinatesofin',['getCoordinatesOfIn',['../classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b',1,'qglviewer::Frame']]],
   ['getfrustumplanescoefficients',['getFrustumPlanesCoefficients',['../classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41',1,'qglviewer::Camera']]],
-  ['getinversecoordinatesof',['getInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8',1,'qglviewer::Frame']]],
+  ['getinversecoordinatesof',['getInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010',1,'qglviewer::Frame']]],
   ['getinversematrix',['getInverseMatrix',['../classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b',1,'qglviewer::Quaternion::getInverseMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155',1,'qglviewer::Quaternion::getInverseMatrix(GLdouble m[16]) const ']]],
-  ['getinverserotationmatrix',['getInverseRotationMatrix',['../classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a',1,'qglviewer::Quaternion']]],
-  ['getinversetransformof',['getInverseTransformOf',['../classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07',1,'qglviewer::Frame']]],
-  ['getlocalcoordinatesof',['getLocalCoordinatesOf',['../classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497',1,'qglviewer::Frame']]],
-  ['getlocalinversecoordinatesof',['getLocalInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2',1,'qglviewer::Frame']]],
-  ['getlocalinversetransformof',['getLocalInverseTransformOf',['../classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c',1,'qglviewer::Frame']]],
-  ['getlocaltransformof',['getLocalTransformOf',['../classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215',1,'qglviewer::Frame']]],
+  ['getinverserotationmatrix',['getInverseRotationMatrix',['../classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d',1,'qglviewer::Quaternion']]],
+  ['getinversetransformof',['getInverseTransformOf',['../classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2',1,'qglviewer::Frame']]],
+  ['getlocalcoordinatesof',['getLocalCoordinatesOf',['../classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1',1,'qglviewer::Frame']]],
+  ['getlocalinversecoordinatesof',['getLocalInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a',1,'qglviewer::Frame']]],
+  ['getlocalinversetransformof',['getLocalInverseTransformOf',['../classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854',1,'qglviewer::Frame']]],
+  ['getlocaltransformof',['getLocalTransformOf',['../classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2',1,'qglviewer::Frame']]],
   ['getmatrix',['getMatrix',['../classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48',1,'qglviewer::Frame::getMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Frame.html#a15f0dc7596dc78437154302466ac3c0a',1,'qglviewer::Frame::getMatrix(GLdouble m[16]) const '],['../classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48',1,'qglviewer::Quaternion::getMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a',1 [...]
   ['getmodelviewmatrix',['getModelViewMatrix',['../classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20',1,'qglviewer::Camera::getModelViewMatrix(GLfloat m[16]) const '],['../classqglviewer_1_1Camera.html#aa1d631d6e368a7aa14656b7511787786',1,'qglviewer::Camera::getModelViewMatrix(GLdouble m[16]) const ']]],
   ['getmodelviewprojectionmatrix',['getModelViewProjectionMatrix',['../classqglviewer_1_1Camera.html#a7df308e69b599f00c27107530c2a6765',1,'qglviewer::Camera::getModelViewProjectionMatrix(GLfloat m[16]) const '],['../classqglviewer_1_1Camera.html#adeb5e39686b9fcb3db090dff84c13be4',1,'qglviewer::Camera::getModelViewProjectionMatrix(GLdouble m[16]) const ']]],
   ['getmouseactionbinding',['getMouseActionBinding',['../classQGLViewer.html#abcad615739f9ce3e857b94ca945deb5e',1,'QGLViewer']]],
-  ['getorientation',['getOrientation',['../classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253',1,'qglviewer::Frame']]],
+  ['getorientation',['getOrientation',['../classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088',1,'qglviewer::Frame']]],
   ['getorthowidthheight',['getOrthoWidthHeight',['../classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa',1,'qglviewer::Camera']]],
-  ['getposition',['getPosition',['../classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3',1,'qglviewer::Frame']]],
-  ['getprojectedcoordinatesof',['getProjectedCoordinatesOf',['../classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee',1,'qglviewer::Camera']]],
+  ['getposition',['getPosition',['../classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5',1,'qglviewer::Frame']]],
+  ['getprojectedcoordinatesof',['getProjectedCoordinatesOf',['../classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c',1,'qglviewer::Camera']]],
   ['getprojectionmatrix',['getProjectionMatrix',['../classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7',1,'qglviewer::Camera::getProjectionMatrix(GLfloat m[16]) const '],['../classqglviewer_1_1Camera.html#a97ff5cf330a6c24d6d49308aedd638bc',1,'qglviewer::Camera::getProjectionMatrix(GLdouble m[16]) const ']]],
-  ['getrotation',['getRotation',['../classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb',1,'qglviewer::Frame']]],
-  ['getrotationmatrix',['getRotationMatrix',['../classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872',1,'qglviewer::Quaternion']]],
-  ['gettransformof',['getTransformOf',['../classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3',1,'qglviewer::Frame']]],
-  ['gettransformoffrom',['getTransformOfFrom',['../classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52',1,'qglviewer::Frame']]],
-  ['gettransformofin',['getTransformOfIn',['../classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f',1,'qglviewer::Frame']]],
-  ['gettranslation',['getTranslation',['../classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97',1,'qglviewer::Frame']]],
-  ['getunprojectedcoordinatesof',['getUnprojectedCoordinatesOf',['../classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f',1,'qglviewer::Camera']]],
+  ['getrotation',['getRotation',['../classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7',1,'qglviewer::Frame']]],
+  ['getrotationmatrix',['getRotationMatrix',['../classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1',1,'qglviewer::Quaternion']]],
+  ['gettransformof',['getTransformOf',['../classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493',1,'qglviewer::Frame']]],
+  ['gettransformoffrom',['getTransformOfFrom',['../classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1',1,'qglviewer::Frame']]],
+  ['gettransformofin',['getTransformOfIn',['../classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca',1,'qglviewer::Frame']]],
+  ['gettranslation',['getTranslation',['../classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1',1,'qglviewer::Frame']]],
+  ['getunprojectedcoordinatesof',['getUnprojectedCoordinatesOf',['../classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a',1,'qglviewer::Camera']]],
   ['getviewport',['getViewport',['../classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348',1,'qglviewer::Camera']]],
   ['getwheelactionbinding',['getWheelActionBinding',['../classQGLViewer.html#a0f5b32b9880a9f32d590871663713b78',1,'QGLViewer']]],
-  ['getworldcoordinatesof',['getWorldCoordinatesOf',['../classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd',1,'qglviewer::Camera']]],
+  ['getworldcoordinatesof',['getWorldCoordinatesOf',['../classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1',1,'qglviewer::Camera']]],
   ['getworldmatrix',['getWorldMatrix',['../classqglviewer_1_1Frame.html#a45358fae434b3912ce81577dc7cf4fc9',1,'qglviewer::Frame::getWorldMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead',1,'qglviewer::Frame::getWorldMatrix(GLdouble m[16]) const ']]],
   ['grabsmouse',['grabsMouse',['../classqglviewer_1_1MouseGrabber.html#a4eb7e14d035ae255b77ac1711aef039e',1,'qglviewer::MouseGrabber']]],
   ['gridisdrawn',['gridIsDrawn',['../classQGLViewer.html#aee18c56a8321a60771b085a5fe798ee7',1,'QGLViewer']]],
diff --git a/doc/refManual/search/all_7.js b/doc/refManual/search/all_7.js
index 887785d..4780a72 100644
--- a/doc/refManual/search/all_7.js
+++ b/doc/refManual/search/all_7.js
@@ -6,5 +6,5 @@ var searchData=
   ['helprequired',['helpRequired',['../classQGLViewer.html#a64f461121859dc0c19e7af2d413935e0',1,'QGLViewer']]],
   ['helpstring',['helpString',['../classQGLViewer.html#a38ddb3cdf15e24de824a2d7a170ec915',1,'QGLViewer']]],
   ['helpwidget',['helpWidget',['../classQGLViewer.html#af3af989be04f1d45b6ff3f748c2e9d4a',1,'QGLViewer']]],
-  ['horizontalfieldofview',['horizontalFieldOfView',['../classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960',1,'qglviewer::Camera']]]
+  ['horizontalfieldofview',['horizontalFieldOfView',['../classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66',1,'qglviewer::Camera']]]
 ];
diff --git a/doc/refManual/search/all_8.js b/doc/refManual/search/all_8.js
index 5d8042a..bb25009 100644
--- a/doc/refManual/search/all_8.js
+++ b/doc/refManual/search/all_8.js
@@ -4,22 +4,22 @@ var searchData=
   ['init',['init',['../classQGLViewer.html#a9339772ec5ac9fa929938109207f2863',1,'QGLViewer']]],
   ['initfromdomelement',['initFromDOMElement',['../classqglviewer_1_1Camera.html#acd13d2ddeca530cb9f26ead47f7d25d3',1,'qglviewer::Camera::initFromDOMElement()'],['../classqglviewer_1_1Frame.html#acd13d2ddeca530cb9f26ead47f7d25d3',1,'qglviewer::Frame::initFromDOMElement()'],['../classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3',1,'qglviewer::KeyFrameInterpolator::initFromDOMElement()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#acd13d2ddeca530cb9f26ead [...]
   ['initializegl',['initializeGL',['../classQGLViewer.html#a2d3d45239c78255c23a70ca558b4d4f1',1,'QGLViewer']]],
-  ['interpolateattime',['interpolateAtTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae',1,'qglviewer::KeyFrameInterpolator']]],
+  ['interpolateattime',['interpolateAtTime',['../classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a',1,'qglviewer::KeyFrameInterpolator']]],
   ['interpolated',['interpolated',['../classqglviewer_1_1Frame.html#ab55c2a4f1732b90057fae4b6037399de',1,'qglviewer::Frame::interpolated()'],['../classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de',1,'qglviewer::KeyFrameInterpolator::interpolated()']]],
-  ['interpolateto',['interpolateTo',['../classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97',1,'qglviewer::Camera']]],
+  ['interpolateto',['interpolateTo',['../classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1',1,'qglviewer::Camera']]],
   ['interpolatetofitscene',['interpolateToFitScene',['../classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0',1,'qglviewer::Camera']]],
   ['interpolatetozoomonpixel',['interpolateToZoomOnPixel',['../classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c',1,'qglviewer::Camera']]],
   ['interpolationisstarted',['interpolationIsStarted',['../classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70',1,'qglviewer::KeyFrameInterpolator']]],
   ['interpolationperiod',['interpolationPeriod',['../classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e',1,'qglviewer::KeyFrameInterpolator']]],
-  ['interpolationspeed',['interpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad',1,'qglviewer::KeyFrameInterpolator']]],
-  ['interpolationtime',['interpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a',1,'qglviewer::KeyFrameInterpolator']]],
+  ['interpolationspeed',['interpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393',1,'qglviewer::KeyFrameInterpolator']]],
+  ['interpolationtime',['interpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0',1,'qglviewer::KeyFrameInterpolator']]],
   ['inverse',['inverse',['../classqglviewer_1_1Frame.html#a4534c3188c217feb8d21465d4cefd4ad',1,'qglviewer::Frame::inverse()'],['../classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e',1,'qglviewer::Quaternion::inverse()']]],
   ['inversecoordinatesof',['inverseCoordinatesOf',['../classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e',1,'qglviewer::Frame']]],
   ['inversematrix',['inverseMatrix',['../classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22',1,'qglviewer::Quaternion']]],
   ['inverserotate',['inverseRotate',['../classqglviewer_1_1Quaternion.html#a74d79bc1afcc02fdbfe0eb390c3546f5',1,'qglviewer::Quaternion']]],
   ['inversetransformof',['inverseTransformOf',['../classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5',1,'qglviewer::Frame']]],
   ['invert',['invert',['../classqglviewer_1_1Quaternion.html#a7fa1616cc61c19a5efcc863c950f7f30',1,'qglviewer::Quaternion']]],
-  ['iodistance',['IODistance',['../classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d',1,'qglviewer::Camera']]],
+  ['iodistance',['IODistance',['../classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7',1,'qglviewer::Camera']]],
   ['isfullscreen',['isFullScreen',['../classQGLViewer.html#a129c439f36bb669672148192abc8ffed',1,'QGLViewer']]],
   ['isinmousegrabberpool',['isInMouseGrabberPool',['../classqglviewer_1_1MouseGrabber.html#a958abc8c9ae9ea339f9765fddfc7dbdd',1,'qglviewer::MouseGrabber']]],
   ['ismanipulated',['isManipulated',['../classqglviewer_1_1ManipulatedFrame.html#a032c48e2e7cdced01dea0cb7eca14022',1,'qglviewer::ManipulatedFrame']]],
diff --git a/doc/refManual/search/all_9.js b/doc/refManual/search/all_9.js
index 55bd904..41a215e 100644
--- a/doc/refManual/search/all_9.js
+++ b/doc/refManual/search/all_9.js
@@ -4,10 +4,10 @@ var searchData=
   ['keyboardstring',['keyboardString',['../classQGLViewer.html#a0e20e13c1170d50b46b6fe2a49377690',1,'QGLViewer']]],
   ['keyframe',['keyFrame',['../classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8',1,'qglviewer::KeyFrameInterpolator']]],
   ['keyframeinterpolator',['KeyFrameInterpolator',['../classqglviewer_1_1KeyFrameInterpolator.html',1,'qglviewer']]],
-  ['keyframeinterpolator',['KeyFrameInterpolator',['../classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e',1,'qglviewer::KeyFrameInterpolator::KeyFrameInterpolator()'],['../classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de',1,'qglviewer::Camera::keyFrameInterpolator()']]],
+  ['keyframeinterpolator',['KeyFrameInterpolator',['../classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e',1,'qglviewer::KeyFrameInterpolator::KeyFrameInterpolator()'],['../classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7',1,'qglviewer::Camera::keyFrameInterpolator()']]],
   ['keyframeinterpolator_2ecpp',['keyFrameInterpolator.cpp',['../keyFrameInterpolator_8cpp.html',1,'']]],
   ['keyframeinterpolator_2eh',['keyFrameInterpolator.h',['../keyFrameInterpolator_8h.html',1,'']]],
-  ['keyframetime',['keyFrameTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473',1,'qglviewer::KeyFrameInterpolator']]],
+  ['keyframetime',['keyFrameTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe',1,'qglviewer::KeyFrameInterpolator']]],
   ['keypressevent',['keyPressEvent',['../classQGLViewer.html#a2cc4c898ca007c7cc0ebb7791aa3e5b3',1,'QGLViewer']]],
   ['keyreleaseevent',['keyReleaseEvent',['../classQGLViewer.html#a3bbb1d9848e9f0625bd0a7252e86de94',1,'QGLViewer']]]
 ];
diff --git a/doc/refManual/search/all_a.js b/doc/refManual/search/all_a.js
index a07cfea..5a60366 100644
--- a/doc/refManual/search/all_a.js
+++ b/doc/refManual/search/all_a.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['lasttime',['lastTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30',1,'qglviewer::KeyFrameInterpolator']]],
+  ['lasttime',['lastTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c',1,'qglviewer::KeyFrameInterpolator']]],
   ['lndif',['lnDif',['../classqglviewer_1_1Quaternion.html#af4c74176967acca6e3947977351e1c68',1,'qglviewer::Quaternion']]],
   ['loadmodelviewmatrix',['loadModelViewMatrix',['../classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53',1,'qglviewer::Camera']]],
   ['loadmodelviewmatrixstereo',['loadModelViewMatrixStereo',['../classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392',1,'qglviewer::Camera']]],
diff --git a/doc/refManual/search/all_c.js b/doc/refManual/search/all_c.js
index 4b877ba..f7a5785 100644
--- a/doc/refManual/search/all_c.js
+++ b/doc/refManual/search/all_c.js
@@ -3,8 +3,8 @@ var searchData=
   ['negate',['negate',['../classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648',1,'qglviewer::Quaternion']]],
   ['no_5fclick_5faction',['NO_CLICK_ACTION',['../classQGLViewer.html#a85fe75121d351785616b75b2c5661d8faed60c81bb5edd0570ff12ac8a0e2b604',1,'QGLViewer']]],
   ['no_5fmouse_5faction',['NO_MOUSE_ACTION',['../classQGLViewer.html#aded669cb17515ea2b5971496f9aef875a3b20d5f27f63af5ea6e5b6af1112ecf8',1,'QGLViewer']]],
-  ['norm',['norm',['../classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a',1,'qglviewer::Vec']]],
-  ['normalize',['normalize',['../classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231',1,'qglviewer::Quaternion::normalize()'],['../classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231',1,'qglviewer::Vec::normalize()']]],
+  ['norm',['norm',['../classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b',1,'qglviewer::Vec']]],
+  ['normalize',['normalize',['../classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639',1,'qglviewer::Quaternion::normalize()'],['../classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639',1,'qglviewer::Vec::normalize()']]],
   ['normalized',['normalized',['../classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32',1,'qglviewer::Quaternion']]],
   ['numberofkeyframes',['numberOfKeyFrames',['../classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273',1,'qglviewer::KeyFrameInterpolator']]]
 ];
diff --git a/doc/refManual/search/all_d.js b/doc/refManual/search/all_d.js
index ae6feb3..e2d397f 100644
--- a/doc/refManual/search/all_d.js
+++ b/doc/refManual/search/all_d.js
@@ -5,18 +5,18 @@ var searchData=
   ['operator_20const_20float_20_2a',['operator const float *',['../classqglviewer_1_1Vec.html#a54795c57f1d998af73b630d786de2932',1,'qglviewer::Vec']]],
   ['operator_20double_20_2a',['operator double *',['../classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9',1,'qglviewer::Vec']]],
   ['operator_21_3d',['operator!=',['../classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54',1,'qglviewer::Vec']]],
-  ['operator_2a',['operator*',['../classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Quaternion.html#a19ce6efe5ef2744c8293e8ba1a39b9e4',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#ae [...]
-  ['operator_2a_3d',['operator*=',['../classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d',1,'qglviewer::Quaternion::operator*=()'],['../classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9',1,'qglviewer::Vec::operator*=()']]],
+  ['operator_2a',['operator*',['../classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Quaternion.html#a19ce6efe5ef2744c8293e8ba1a39b9e4',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#a9 [...]
+  ['operator_2a_3d',['operator*=',['../classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d',1,'qglviewer::Quaternion::operator*=()'],['../classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba',1,'qglviewer::Vec::operator*=()']]],
   ['operator_2b',['operator+',['../classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7',1,'qglviewer::Vec']]],
   ['operator_2b_3d',['operator+=',['../classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e',1,'qglviewer::Vec']]],
   ['operator_2d',['operator-',['../classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc',1,'qglviewer::Vec::operator-()'],['../classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373',1,'qglviewer::Vec::operator-()']]],
   ['operator_2d_3d',['operator-=',['../classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571',1,'qglviewer::Vec']]],
-  ['operator_2f',['operator/',['../classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206',1,'qglviewer::Vec']]],
-  ['operator_2f_3d',['operator/=',['../classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4',1,'qglviewer::Vec']]],
+  ['operator_2f',['operator/',['../classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270',1,'qglviewer::Vec']]],
+  ['operator_2f_3d',['operator/=',['../classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22',1,'qglviewer::Vec']]],
   ['operator_3c_3c',['operator<<',['../classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796',1,'qglviewer::Quaternion::operator<<()'],['../classqglviewer_1_1Vec.html#a16d5f2f021103b05006b0c58fbd48796',1,'qglviewer::Vec::operator<<()'],['../quaternion_8cpp.html#ae1a0b3a657fdb3e0408f441598b79d2b',1,'operator<<(ostream &o, const Quaternion &Q): quaternion.cpp'],['../quaternion_8h.html#aea447317fdd00191332378fd132feffd',1,'operator<<( [...]
   ['operator_3d',['operator=',['../classqglviewer_1_1Camera.html#a0f87e84ad3356493738d4fc8331c7362',1,'qglviewer::Camera::operator=()'],['../classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c',1,'qglviewer::Frame::operator=()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a51ccf29ba558394424cf08ce21bd4e73',1,'qglviewer::ManipulatedCameraFrame::operator=()'],['../classqglviewer_1_1ManipulatedFrame.html#ad6d13eba8611869fe824da2dab500f50',1,'qglviewer::ManipulatedFrame::op [...]
   ['operator_3d_3d',['operator==',['../classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f',1,'qglviewer::Vec']]],
-  ['operator_5b_5d',['operator[]',['../classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f',1,'qglviewer::Quaternion::operator[](int i) const '],['../classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b',1,'qglviewer::Quaternion::operator[](int i)'],['../classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f',1,'qglviewer::Vec::operator[](int i) const '],['../classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b',1,'qglviewer::Vec::operator[](i [...]
+  ['operator_5b_5d',['operator[]',['../classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a',1,'qglviewer::Quaternion::operator[](int i) const '],['../classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e',1,'qglviewer::Quaternion::operator[](int i)'],['../classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a',1,'qglviewer::Vec::operator[](int i) const '],['../classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e',1,'qglviewer::Vec::operator[](i [...]
   ['operator_5e',['operator^',['../classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317',1,'qglviewer::Vec']]],
   ['orientation',['orientation',['../classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094',1,'qglviewer::Camera::orientation()'],['../classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094',1,'qglviewer::Frame::orientation()']]],
   ['orthogonalvec',['orthogonalVec',['../classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d',1,'qglviewer::Vec']]],
diff --git a/doc/refManual/search/all_e.js b/doc/refManual/search/all_e.js
index 0b6e966..da341c4 100644
--- a/doc/refManual/search/all_e.js
+++ b/doc/refManual/search/all_e.js
@@ -1,14 +1,14 @@
 var searchData=
 [
   ['paintgl',['paintGL',['../classQGLViewer.html#ac5cbfafb28ef4c0474ae96437294f547',1,'QGLViewer']]],
-  ['pathkey',['pathKey',['../classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835',1,'QGLViewer']]],
+  ['pathkey',['pathKey',['../classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5',1,'QGLViewer']]],
   ['perspective',['PERSPECTIVE',['../classqglviewer_1_1Camera.html#a1d1cfd8ffb84e947f82999c682b666a7a2c5d7801888c03752f28943ac85d805f',1,'qglviewer::Camera']]],
-  ['physicaldistancetoscreen',['physicalDistanceToScreen',['../classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64',1,'qglviewer::Camera']]],
-  ['physicalscreenwidth',['physicalScreenWidth',['../classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c',1,'qglviewer::Camera']]],
+  ['physicaldistancetoscreen',['physicalDistanceToScreen',['../classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291',1,'qglviewer::Camera']]],
+  ['physicalscreenwidth',['physicalScreenWidth',['../classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64',1,'qglviewer::Camera']]],
   ['pivotpoint',['pivotPoint',['../classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa',1,'qglviewer::Camera::pivotPoint()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa',1,'qglviewer::ManipulatedCameraFrame::pivotPoint()']]],
-  ['pixelglratio',['pixelGLRatio',['../classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f',1,'qglviewer::Camera']]],
+  ['pixelglratio',['pixelGLRatio',['../classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c',1,'qglviewer::Camera']]],
   ['plane',['PLANE',['../classqglviewer_1_1AxisPlaneConstraint.html#a1d1cfd8ffb84e947f82999c682b666a7a67572d1492c84d8d417b61e864f13f24',1,'qglviewer::AxisPlaneConstraint']]],
-  ['playpath',['playPath',['../classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818',1,'qglviewer::Camera']]],
+  ['playpath',['playPath',['../classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0',1,'qglviewer::Camera']]],
   ['playpathkeyboardmodifiers',['playPathKeyboardModifiers',['../classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d',1,'QGLViewer']]],
   ['pointselected',['pointSelected',['../classQGLViewer.html#ab78f96913c9aede4854b0efccf53f983',1,'QGLViewer']]],
   ['pointunderpixel',['pointUnderPixel',['../classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a',1,'qglviewer::Camera']]],
diff --git a/doc/refManual/search/all_f.js b/doc/refManual/search/all_f.js
index 8017dc0..5a0569f 100644
--- a/doc/refManual/search/all_f.js
+++ b/doc/refManual/search/all_f.js
@@ -11,7 +11,7 @@ var searchData=
   ['qglviewerpool',['QGLViewerPool',['../classQGLViewer.html#a32d7a506084c50fd97a24f94d9ca4864',1,'QGLViewer']]],
   ['qt_5fclean_5fnamespace',['QT_CLEAN_NAMESPACE',['../config_8h.html#a1e9c4d889526b73d9f4d5c688ae88c07',1,'config.h']]],
   ['quaternion',['Quaternion',['../classqglviewer_1_1Quaternion.html',1,'qglviewer']]],
-  ['quaternion',['Quaternion',['../classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66',1,'qglviewer::Quaternion::Quaternion()'],['../classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85',1,'qglviewer::Quaternion::Quaternion(const Vec &axis, double angle)'],['../classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634',1,'qglviewer::Quaternion::Quaternion(const Vec &from, const Vec &to)'],['../classqglviewer_1_1Quaternion.html#a81ba24 [...]
+  ['quaternion',['Quaternion',['../classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66',1,'qglviewer::Quaternion::Quaternion()'],['../classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659',1,'qglviewer::Quaternion::Quaternion(const Vec &axis, qreal angle)'],['../classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634',1,'qglviewer::Quaternion::Quaternion(const Vec &from, const Vec &to)'],['../classqglviewer_1_1Quaternion.html#aa277d38 [...]
   ['quaternion_2ecpp',['quaternion.cpp',['../quaternion_8cpp.html',1,'']]],
   ['quaternion_2eh',['quaternion.h',['../quaternion_8h.html',1,'']]]
 ];
diff --git a/doc/refManual/search/functions_0.js b/doc/refManual/search/functions_0.js
index f06b192..309c4e8 100644
--- a/doc/refManual/search/functions_0.js
+++ b/doc/refManual/search/functions_0.js
@@ -2,16 +2,16 @@ var searchData=
 [
   ['aboutqglviewer',['aboutQGLViewer',['../classQGLViewer.html#af08b8ca0f43910754ecd5d314e3febf0',1,'QGLViewer']]],
   ['addinmousegrabberpool',['addInMouseGrabberPool',['../classqglviewer_1_1MouseGrabber.html#a4ef00d9d2abb7b331a3c333649f6ff82',1,'qglviewer::MouseGrabber']]],
-  ['addkeyframe',['addKeyFrame',['../classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame)'],['../classqglviewer_1_1KeyFrameInterpolator.html#a379af0370e27c513c4d9091bff272b40',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame, float time)'],['../classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b',1,'qglviewer::KeyFrameInterpolator::addKeyFrame( [...]
+  ['addkeyframe',['addKeyFrame',['../classqglviewer_1_1KeyFrameInterpolator.html#a44ac54529e675a2157067c9d205d9622',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame)'],['../classqglviewer_1_1KeyFrameInterpolator.html#ad20780dd1eef86ef712cbeee0a69238a',1,'qglviewer::KeyFrameInterpolator::addKeyFrame(const Frame &frame, qreal time)'],['../classqglviewer_1_1KeyFrameInterpolator.html#a23d3166003e0355b718f34a3e6c92a1b',1,'qglviewer::KeyFrameInterpolator::addKeyFrame( [...]
   ['addkeyframekeyboardmodifiers',['addKeyFrameKeyboardModifiers',['../classQGLViewer.html#aad35c97454fee139eb809488ca7a8cb1',1,'QGLViewer']]],
-  ['addkeyframetopath',['addKeyFrameToPath',['../classqglviewer_1_1Camera.html#a804ee001a41c3ddc33948447fc555cec',1,'qglviewer::Camera']]],
-  ['alignwithframe',['alignWithFrame',['../classqglviewer_1_1Frame.html#a7f069ac991d77d7d5887b9f890889e10',1,'qglviewer::Frame']]],
-  ['angle',['angle',['../classqglviewer_1_1Quaternion.html#ad9e7153c0d7a5327a3da2aedb437f875',1,'qglviewer::Quaternion']]],
+  ['addkeyframetopath',['addKeyFrameToPath',['../classqglviewer_1_1Camera.html#aa7e7ce69cd4d82497dfbc26f991375d4',1,'qglviewer::Camera']]],
+  ['alignwithframe',['alignWithFrame',['../classqglviewer_1_1Frame.html#af5b704f2a19e1ebc3b646e4354724ccd',1,'qglviewer::Frame']]],
+  ['angle',['angle',['../classqglviewer_1_1Quaternion.html#a5b557bc34cd182effb2943f5a9e1b495',1,'qglviewer::Quaternion']]],
   ['animate',['animate',['../classQGLViewer.html#a64465ac69c7fe9f4f8519a57501c76c2',1,'QGLViewer']]],
   ['animateneeded',['animateNeeded',['../classQGLViewer.html#a841503c97db5a51e33f8a7e56d4ca006',1,'QGLViewer']]],
   ['animationisstarted',['animationIsStarted',['../classQGLViewer.html#ad865668850fb0aa249e79f21d2e9d40e',1,'QGLViewer']]],
   ['animationperiod',['animationPeriod',['../classQGLViewer.html#a700d9398d4293d9274766efa8b17917e',1,'QGLViewer']]],
-  ['aspectratio',['aspectRatio',['../classqglviewer_1_1Camera.html#a915589f4d93e15d110444ed9b3464fa1',1,'qglviewer::Camera::aspectRatio()'],['../classQGLViewer.html#a915589f4d93e15d110444ed9b3464fa1',1,'QGLViewer::aspectRatio()']]],
+  ['aspectratio',['aspectRatio',['../classqglviewer_1_1Camera.html#a06471e2ca19ce8da106ee4b996687b01',1,'qglviewer::Camera::aspectRatio()'],['../classQGLViewer.html#a06471e2ca19ce8da106ee4b996687b01',1,'QGLViewer::aspectRatio()']]],
   ['autobufferswap',['autoBufferSwap',['../classQGLViewer.html#a36faca915c37548a53ab04f297bb5c17',1,'QGLViewer']]],
   ['axis',['axis',['../classqglviewer_1_1Quaternion.html#a63f3f585fd25e9cb32700a26d54f8ee4',1,'qglviewer::Quaternion']]],
   ['axisisdrawn',['axisIsDrawn',['../classQGLViewer.html#a7d38e6f11078e886f7978525def15797',1,'QGLViewer']]],
diff --git a/doc/refManual/search/functions_1.js b/doc/refManual/search/functions_1.js
index f23d924..6d426dc 100644
--- a/doc/refManual/search/functions_1.js
+++ b/doc/refManual/search/functions_1.js
@@ -3,6 +3,6 @@ var searchData=
   ['backgroundcolor',['backgroundColor',['../classQGLViewer.html#a7ddf68dcfb09cc5a991a06d91cb4cc5b',1,'QGLViewer']]],
   ['beginselection',['beginSelection',['../classQGLViewer.html#af0a48cc50f194926bad38d4924162116',1,'QGLViewer']]],
   ['buffertextureid',['bufferTextureId',['../classQGLViewer.html#a6435e0a64e14d04dce25e524051f8d69',1,'QGLViewer']]],
-  ['buffertexturemaxu',['bufferTextureMaxU',['../classQGLViewer.html#ac60a0831696a80344fd04b2fba039f48',1,'QGLViewer']]],
-  ['buffertexturemaxv',['bufferTextureMaxV',['../classQGLViewer.html#a8d3ecfdb46f8971e46a0ab0f52c5bbf7',1,'QGLViewer']]]
+  ['buffertexturemaxu',['bufferTextureMaxU',['../classQGLViewer.html#aa7d083b81d5799f5a7ec768117b9f4a2',1,'QGLViewer']]],
+  ['buffertexturemaxv',['bufferTextureMaxV',['../classQGLViewer.html#accce92c989155aebccfb5dc05c2b8bf9',1,'QGLViewer']]]
 ];
diff --git a/doc/refManual/search/functions_10.js b/doc/refManual/search/functions_10.js
index 2e16b49..c924c19 100644
--- a/doc/refManual/search/functions_10.js
+++ b/doc/refManual/search/functions_10.js
@@ -4,16 +4,16 @@ var searchData=
   ['referenceframe',['referenceFrame',['../classqglviewer_1_1Frame.html#a9794b079db5f492e8804631d3d23baec',1,'qglviewer::Frame']]],
   ['removefrommousegrabberpool',['removeFromMouseGrabberPool',['../classqglviewer_1_1MouseGrabber.html#a4ac2261aafd5f48f2d90c989cdd69369',1,'qglviewer::MouseGrabber']]],
   ['resetinterpolation',['resetInterpolation',['../classqglviewer_1_1KeyFrameInterpolator.html#a0bfc602dc2fcaca40cc49195bba7ba74',1,'qglviewer::KeyFrameInterpolator']]],
-  ['resetpath',['resetPath',['../classqglviewer_1_1Camera.html#ae0329e473f00bb56f1e9949b8423ecbf',1,'qglviewer::Camera']]],
+  ['resetpath',['resetPath',['../classqglviewer_1_1Camera.html#abaddf6c36a75060a76c6813d59e6b132',1,'qglviewer::Camera']]],
   ['resize',['resize',['../classQGLViewer.html#ad1185e99a9efec124b7a9bede84a6cf1',1,'QGLViewer']]],
   ['resizegl',['resizeGL',['../classQGLViewer.html#a3efe88f982dbec7825725dd954991139',1,'QGLViewer']]],
   ['restorestatefromfile',['restoreStateFromFile',['../classQGLViewer.html#a212f6b7b669463c2151688f629d72a81',1,'QGLViewer']]],
   ['rightvector',['rightVector',['../classqglviewer_1_1Camera.html#a99f766869c7cc9faaf9a5337db6f223c',1,'qglviewer::Camera']]],
-  ['rotate',['rotate',['../classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33',1,'qglviewer::Frame::rotate(Quaternion &q)'],['../classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989',1,'qglviewer::Frame::rotate(const Quaternion &q)'],['../classqglviewer_1_1Frame.html#a7fe03bbf807b109c1edb849193d03aa8',1,'qglviewer::Frame::rotate(double q0, double q1, double q2, double q3)'],['../classqglviewer_1_1Frame.html#ab15e32161293dce94ae3df3bc3a7b0ad',1,'qglviewer::Fr [...]
+  ['rotate',['rotate',['../classqglviewer_1_1Frame.html#a38dffd6ee0ad7e395b49082b2b94de33',1,'qglviewer::Frame::rotate(Quaternion &q)'],['../classqglviewer_1_1Frame.html#ac754417fa609300f980fcba5405c9989',1,'qglviewer::Frame::rotate(const Quaternion &q)'],['../classqglviewer_1_1Frame.html#ae8e783d4aec3409b05fd414e3d30b8ff',1,'qglviewer::Frame::rotate(qreal q0, qreal q1, qreal q2, qreal q3)'],['../classqglviewer_1_1Frame.html#a6d6d837252d4c1d036a08f2c50827181',1,'qglviewer::Frame: [...]
   ['rotatearoundpoint',['rotateAroundPoint',['../classqglviewer_1_1Frame.html#a85f48572c1298bc3192f111e8b587bca',1,'qglviewer::Frame::rotateAroundPoint(Quaternion &rotation, const Vec &point)'],['../classqglviewer_1_1Frame.html#a5f87bae05096c99fb3b30cf5bb52c891',1,'qglviewer::Frame::rotateAroundPoint(const Quaternion &rotation, const Vec &point)']]],
   ['rotatesaroundupvector',['rotatesAroundUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#ae8a6d13c86c8d063d33a33a8db45ec85',1,'qglviewer::ManipulatedCameraFrame']]],
   ['rotation',['rotation',['../classqglviewer_1_1Frame.html#a19ee9243c60f412dfc4eac3dcf45a5a1',1,'qglviewer::Frame']]],
   ['rotationconstraintdirection',['rotationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#af982989dbeb2e0e63c85eecc09bd88d7',1,'qglviewer::AxisPlaneConstraint']]],
   ['rotationconstrainttype',['rotationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a61a05b9e18948b2b787e355c90b7b85f',1,'qglviewer::AxisPlaneConstraint']]],
-  ['rotationsensitivity',['rotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a4573c3414e63c10dec06a3064d37532f',1,'qglviewer::ManipulatedFrame']]]
+  ['rotationsensitivity',['rotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a7c2890e63e18a21646516125fe5f3735',1,'qglviewer::ManipulatedFrame']]]
 ];
diff --git a/doc/refManual/search/functions_11.js b/doc/refManual/search/functions_11.js
index 9cc9151..6760bc9 100644
--- a/doc/refManual/search/functions_11.js
+++ b/doc/refManual/search/functions_11.js
@@ -4,7 +4,7 @@ var searchData=
   ['savestatetofile',['saveStateToFile',['../classQGLViewer.html#aaec9168a5f41b3b7fa4211523535ceaa',1,'QGLViewer']]],
   ['scaledfont',['scaledFont',['../classQGLViewer.html#a7c5568ae9e5539cf410ef369dba7cec5',1,'QGLViewer']]],
   ['scenecenter',['sceneCenter',['../classqglviewer_1_1Camera.html#a87bccbfd40649310f3da369af02d50b1',1,'qglviewer::Camera::sceneCenter()'],['../classQGLViewer.html#a5a0503bc22a710f96bfd779eaf538bab',1,'QGLViewer::sceneCenter()']]],
-  ['sceneradius',['sceneRadius',['../classqglviewer_1_1Camera.html#a58c17044cc4a601c6b446bf5e83513f9',1,'qglviewer::Camera::sceneRadius()'],['../classQGLViewer.html#a58c17044cc4a601c6b446bf5e83513f9',1,'QGLViewer::sceneRadius()']]],
+  ['sceneradius',['sceneRadius',['../classqglviewer_1_1Camera.html#a32b418de3796a253b28c9635b2f4f6fb',1,'qglviewer::Camera::sceneRadius()'],['../classQGLViewer.html#a32b418de3796a253b28c9635b2f4f6fb',1,'QGLViewer::sceneRadius()']]],
   ['sceneupvector',['sceneUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#ad6cd85c2c1378cf79c0fcb2789021b2b',1,'qglviewer::ManipulatedCameraFrame']]],
   ['screenheight',['screenHeight',['../classqglviewer_1_1Camera.html#a9fb925ffbf82e93898ae6db366a8d794',1,'qglviewer::Camera']]],
   ['screenwidth',['screenWidth',['../classqglviewer_1_1Camera.html#a80386c5943505b915246563262825d8e',1,'qglviewer::Camera']]],
@@ -16,36 +16,36 @@ var searchData=
   ['selectregionwidth',['selectRegionWidth',['../classQGLViewer.html#a16ad2d80aa574d32ae8237f56cfd7e06',1,'QGLViewer']]],
   ['setaddkeyframekeyboardmodifiers',['setAddKeyFrameKeyboardModifiers',['../classQGLViewer.html#afe04d1c918e50f6b4db5f7b6c7b80219',1,'QGLViewer']]],
   ['setanimationperiod',['setAnimationPeriod',['../classQGLViewer.html#aa37d4e0afe6a47e8f4f828ed41072176',1,'QGLViewer']]],
-  ['setaspectratio',['setAspectRatio',['../classqglviewer_1_1Camera.html#a5b191e9b12b704a05302b5d922792e9c',1,'qglviewer::Camera']]],
+  ['setaspectratio',['setAspectRatio',['../classqglviewer_1_1Camera.html#a254f1cf63c3ba41c4947e5587260a5f0',1,'qglviewer::Camera']]],
   ['setautobufferswap',['setAutoBufferSwap',['../classQGLViewer.html#ad95e0ffd255bcc1fb69c9213d8d8b017',1,'QGLViewer']]],
-  ['setaxisangle',['setAxisAngle',['../classqglviewer_1_1Quaternion.html#ad6bd25e80a18f6bd38ae5c4e5337b53b',1,'qglviewer::Quaternion']]],
+  ['setaxisangle',['setAxisAngle',['../classqglviewer_1_1Quaternion.html#ae903a46cefc96e2d13096d5b891d9c81',1,'qglviewer::Quaternion']]],
   ['setaxisisdrawn',['setAxisIsDrawn',['../classQGLViewer.html#a5be8cff3702c1a130f8a17330737a887',1,'QGLViewer']]],
   ['setbackgroundcolor',['setBackgroundColor',['../classQGLViewer.html#a70d4e21190fdc47edd88f078dd2037cb',1,'QGLViewer']]],
   ['setcamera',['setCamera',['../classQGLViewer.html#a9c45e1d2c4777de28664d3db952b7585',1,'QGLViewer']]],
   ['setcameraisedited',['setCameraIsEdited',['../classQGLViewer.html#a521c83b1d745b37331932b4d7b976d41',1,'QGLViewer']]],
   ['setconstraint',['setConstraint',['../classqglviewer_1_1Frame.html#adffa44cd173714b29f2441848a39c224',1,'qglviewer::Frame']]],
-  ['setfieldofview',['setFieldOfView',['../classqglviewer_1_1Camera.html#a524f0183a127bb004defe3c2f7614e4c',1,'qglviewer::Camera']]],
-  ['setflyspeed',['setFlySpeed',['../classqglviewer_1_1Camera.html#a02765efeaae1ef24f9d899f0d1d9ca09',1,'qglviewer::Camera::setFlySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a02765efeaae1ef24f9d899f0d1d9ca09',1,'qglviewer::ManipulatedCameraFrame::setFlySpeed()']]],
-  ['setfocusdistance',['setFocusDistance',['../classqglviewer_1_1Camera.html#a863ffb0284b534d5c57ac64a98e5e49a',1,'qglviewer::Camera']]],
+  ['setfieldofview',['setFieldOfView',['../classqglviewer_1_1Camera.html#ad3984b3f62cf1e7f4f548b948b97da42',1,'qglviewer::Camera']]],
+  ['setflyspeed',['setFlySpeed',['../classqglviewer_1_1Camera.html#a7e90b8a66d0e7f25dbf7778f8a80650f',1,'qglviewer::Camera::setFlySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a7e90b8a66d0e7f25dbf7778f8a80650f',1,'qglviewer::ManipulatedCameraFrame::setFlySpeed()']]],
+  ['setfocusdistance',['setFocusDistance',['../classqglviewer_1_1Camera.html#a05a5690ac023c6498cb62c13fbeb1e98',1,'qglviewer::Camera']]],
   ['setforegroundcolor',['setForegroundColor',['../classQGLViewer.html#a7d986b1944dc5a190e509835e7c79eec',1,'QGLViewer']]],
   ['setfovtofitscene',['setFOVToFitScene',['../classqglviewer_1_1Camera.html#a3394c425f95c5649b1e2e532dbd97fa7',1,'qglviewer::Camera']]],
   ['setfpsisdisplayed',['setFPSIsDisplayed',['../classQGLViewer.html#aad24c89e014de3ea16f071c3bc18f4db',1,'QGLViewer']]],
   ['setframe',['setFrame',['../classqglviewer_1_1Camera.html#a809bad30c861f4f6f74228fb59340f90',1,'qglviewer::Camera::setFrame()'],['../classqglviewer_1_1KeyFrameInterpolator.html#a1e16bb31ee6240a9f0e3a6824f4bef0d',1,'qglviewer::KeyFrameInterpolator::setFrame()']]],
   ['setfrommatrix',['setFromMatrix',['../classqglviewer_1_1Frame.html#a5408d08ab204157ec29f555b6813f9e4',1,'qglviewer::Frame::setFromMatrix(const GLdouble m[4][4])'],['../classqglviewer_1_1Frame.html#a0c4d51f142f43235e30198e7b8abc626',1,'qglviewer::Frame::setFromMatrix(const GLdouble m[16])']]],
   ['setfrommodelviewmatrix',['setFromModelViewMatrix',['../classqglviewer_1_1Camera.html#ab21e4c76205431bdeba645a5f258dce9',1,'qglviewer::Camera']]],
-  ['setfromprojectionmatrix',['setFromProjectionMatrix',['../classqglviewer_1_1Camera.html#ac49280735bce44665a4eabb166f10fcd',1,'qglviewer::Camera']]],
+  ['setfromprojectionmatrix',['setFromProjectionMatrix',['../classqglviewer_1_1Camera.html#a3d4528247c30731f8440d86500a78629',1,'qglviewer::Camera']]],
   ['setfromrotatedbasis',['setFromRotatedBasis',['../classqglviewer_1_1Quaternion.html#a760617f082c950633b5642d2f60b2dd9',1,'qglviewer::Quaternion']]],
-  ['setfromrotationmatrix',['setFromRotationMatrix',['../classqglviewer_1_1Quaternion.html#a1880f20e8080ee670b6a88ed0c7d69ac',1,'qglviewer::Quaternion']]],
+  ['setfromrotationmatrix',['setFromRotationMatrix',['../classqglviewer_1_1Quaternion.html#a96216d678555ef6ba307e2d4de62831f',1,'qglviewer::Quaternion']]],
   ['setfullscreen',['setFullScreen',['../classQGLViewer.html#a7e021e15180ba348e90c955bdd28b1a4',1,'QGLViewer']]],
   ['setgrabsmouse',['setGrabsMouse',['../classqglviewer_1_1MouseGrabber.html#a9ecea0a9f8ce1b2d92bbd1dd6bdcd4f9',1,'qglviewer::MouseGrabber']]],
   ['setgridisdrawn',['setGridIsDrawn',['../classQGLViewer.html#ae9dd114195dfdf82e23b5754b7c161de',1,'QGLViewer']]],
-  ['sethorizontalfieldofview',['setHorizontalFieldOfView',['../classqglviewer_1_1Camera.html#a017ace2ed5f67b6aeaef5c9a47b5f014',1,'qglviewer::Camera']]],
+  ['sethorizontalfieldofview',['setHorizontalFieldOfView',['../classqglviewer_1_1Camera.html#a10db68788d45cf5e901358413bcde87d',1,'qglviewer::Camera']]],
   ['setinterpolationperiod',['setInterpolationPeriod',['../classqglviewer_1_1KeyFrameInterpolator.html#a9763e647346a8bee885517d9985173fd',1,'qglviewer::KeyFrameInterpolator']]],
-  ['setinterpolationspeed',['setInterpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#a3cc64e95e1b8dfda110bcf3d033ecf2d',1,'qglviewer::KeyFrameInterpolator']]],
-  ['setinterpolationtime',['setInterpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ab860af88ea46ecedb2a648157bb68dc3',1,'qglviewer::KeyFrameInterpolator']]],
-  ['setiodistance',['setIODistance',['../classqglviewer_1_1Camera.html#a6cd81fe74a9dfe5c7124d00341ad0234',1,'qglviewer::Camera']]],
-  ['setkeydescription',['setKeyDescription',['../classQGLViewer.html#a9e97204faca448653fad94a37024a488',1,'QGLViewer']]],
-  ['setkeyframeinterpolator',['setKeyFrameInterpolator',['../classqglviewer_1_1Camera.html#a049b63c8c9ef48e24446ce44a3bd32b5',1,'qglviewer::Camera']]],
+  ['setinterpolationspeed',['setInterpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#a045bc0124754973cec8b24eacabd851f',1,'qglviewer::KeyFrameInterpolator']]],
+  ['setinterpolationtime',['setInterpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a59c9040c5ffe58920e9dbc521c1407c7',1,'qglviewer::KeyFrameInterpolator']]],
+  ['setiodistance',['setIODistance',['../classqglviewer_1_1Camera.html#a90329d0edd2bdf789ca22ccee1a2d6f7',1,'qglviewer::Camera']]],
+  ['setkeydescription',['setKeyDescription',['../classQGLViewer.html#ae33368bc379da582a3d26df18a6df16c',1,'QGLViewer']]],
+  ['setkeyframeinterpolator',['setKeyFrameInterpolator',['../classqglviewer_1_1Camera.html#a1dc08d932d63661cfdaea0c13e13d38a',1,'qglviewer::Camera']]],
   ['setloopinterpolation',['setLoopInterpolation',['../classqglviewer_1_1KeyFrameInterpolator.html#a31a491ac2ac016298cbd1c66f07be6dd',1,'qglviewer::KeyFrameInterpolator']]],
   ['setmanipulatedframe',['setManipulatedFrame',['../classQGLViewer.html#ac6964ec1ebb2f42464313e0c43e767a3',1,'QGLViewer']]],
   ['setmousebinding',['setMouseBinding',['../classQGLViewer.html#a98e3c0b956c3fea7dc804e7a7a7dd295',1,'QGLViewer::setMouseBinding(Qt::KeyboardModifiers modifiers, Qt::MouseButton buttons, MouseHandler handler, MouseAction action, bool withConstraint=true)'],['../classQGLViewer.html#af60ec98df1af2309ef1d16644e9791ef',1,'QGLViewer::setMouseBinding(Qt::KeyboardModifiers modifiers, Qt::MouseButton button, ClickAction action, bool doubleClick=false, Qt::MouseButtons buttonsBefore=Qt::NoButton [...]
@@ -53,29 +53,29 @@ var searchData=
   ['setmousegrabber',['setMouseGrabber',['../classQGLViewer.html#a993285ef8a16ccbdc5d57a1264212712',1,'QGLViewer']]],
   ['setmousegrabberisenabled',['setMouseGrabberIsEnabled',['../classQGLViewer.html#a3f0b956f948f469c095ff3c2c1b73494',1,'QGLViewer']]],
   ['setmousetracking',['setMouseTracking',['../classQGLViewer.html#acf0a4ee197fe91b8c07dd74cad1aafaa',1,'QGLViewer']]],
-  ['setorientation',['setOrientation',['../classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868',1,'qglviewer::Camera::setOrientation(const Quaternion &q)'],['../classqglviewer_1_1Camera.html#a1842836742cf1ed8a33f32a863a5a05e',1,'qglviewer::Camera::setOrientation(float theta, float phi)'],['../classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b',1,'qglviewer::Frame::setOrientation(const Quaternion &orientation)'],['../classqglviewer_1_1Frame.html#ae3ac2bf6dc [...]
+  ['setorientation',['setOrientation',['../classqglviewer_1_1Camera.html#a3862c502f5afc626af2ff582390bc868',1,'qglviewer::Camera::setOrientation(const Quaternion &q)'],['../classqglviewer_1_1Camera.html#a9baa87dc31e9b37ed73a2fab09d64b41',1,'qglviewer::Camera::setOrientation(qreal theta, qreal phi)'],['../classqglviewer_1_1Frame.html#a6733704520780505759efdef38a68b8b',1,'qglviewer::Frame::setOrientation(const Quaternion &orientation)'],['../classqglviewer_1_1Frame.html#a63727a742d [...]
   ['setorientationwithconstraint',['setOrientationWithConstraint',['../classqglviewer_1_1Frame.html#a8b69106a268d78daf27d32854d455da4',1,'qglviewer::Frame']]],
-  ['setpathkey',['setPathKey',['../classQGLViewer.html#ada7e68536b6593f8a8bde9a746c99c13',1,'QGLViewer']]],
-  ['setphysicalscreenwidth',['setPhysicalScreenWidth',['../classqglviewer_1_1Camera.html#a34911cda1cc1bc13336024c844ff4401',1,'qglviewer::Camera']]],
+  ['setpathkey',['setPathKey',['../classQGLViewer.html#a5542c73a9c2c62be3cde9144d950fd13',1,'QGLViewer']]],
+  ['setphysicalscreenwidth',['setPhysicalScreenWidth',['../classqglviewer_1_1Camera.html#a98d2a2c7d32f5088203e010f7e563f8f',1,'qglviewer::Camera']]],
   ['setpivotpoint',['setPivotPoint',['../classqglviewer_1_1Camera.html#ad0d493c3e540ec42a480e03d249b5a56',1,'qglviewer::Camera::setPivotPoint()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#ad0d493c3e540ec42a480e03d249b5a56',1,'qglviewer::ManipulatedCameraFrame::setPivotPoint()']]],
   ['setpivotpointfrompixel',['setPivotPointFromPixel',['../classqglviewer_1_1Camera.html#abc3e131745649e6b18693c466f10382f',1,'qglviewer::Camera']]],
   ['setplaypathkeyboardmodifiers',['setPlayPathKeyboardModifiers',['../classQGLViewer.html#ab8e16934baadfe8db4f68dedc98075a1',1,'QGLViewer']]],
-  ['setposition',['setPosition',['../classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821',1,'qglviewer::Camera::setPosition()'],['../classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52',1,'qglviewer::Frame::setPosition(const Vec &position)'],['../classqglviewer_1_1Frame.html#aff7308b903966afc6c87b5cd766a9083',1,'qglviewer::Frame::setPosition(float x, float y, float z)']]],
+  ['setposition',['setPosition',['../classqglviewer_1_1Camera.html#a212edb01759f542f356c5d62e4a3f821',1,'qglviewer::Camera::setPosition()'],['../classqglviewer_1_1Frame.html#a24f5da9b3f4bf4e71dfad7a74a932e52',1,'qglviewer::Frame::setPosition(const Vec &position)'],['../classqglviewer_1_1Frame.html#aeef87a7ad6aa43c19399347d49d2c27e',1,'qglviewer::Frame::setPosition(qreal x, qreal y, qreal z)']]],
   ['setpositionandorientation',['setPositionAndOrientation',['../classqglviewer_1_1Frame.html#a47912d16be51eb85d68d3dcb4a4fb087',1,'qglviewer::Frame']]],
   ['setpositionandorientationwithconstraint',['setPositionAndOrientationWithConstraint',['../classqglviewer_1_1Frame.html#a8501c5582c1aa2a82a929ce36439ab3a',1,'qglviewer::Frame']]],
   ['setpositionwithconstraint',['setPositionWithConstraint',['../classqglviewer_1_1Frame.html#a5081403cb47f1324edae5278d5438a38',1,'qglviewer::Frame']]],
   ['setreferenceframe',['setReferenceFrame',['../classqglviewer_1_1Frame.html#abca9e0c2e40957fffeee4a52139facd8',1,'qglviewer::Frame']]],
   ['setrotatesaroundupvector',['setRotatesAroundUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#a1d1e56d55fdbd1906a230392e2f7eedb',1,'qglviewer::ManipulatedCameraFrame']]],
-  ['setrotation',['setRotation',['../classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e',1,'qglviewer::Frame::setRotation(const Quaternion &rotation)'],['../classqglviewer_1_1Frame.html#a26c462ecae655fa82c4d2efa42f9cd2e',1,'qglviewer::Frame::setRotation(double q0, double q1, double q2, double q3)']]],
+  ['setrotation',['setRotation',['../classqglviewer_1_1Frame.html#a857aacdb88a574ec4a363335f6152a1e',1,'qglviewer::Frame::setRotation(const Quaternion &rotation)'],['../classqglviewer_1_1Frame.html#afc95a5b7bbbb2e6d0df552a1df1b78b6',1,'qglviewer::Frame::setRotation(qreal q0, qreal q1, qreal q2, qreal q3)']]],
   ['setrotationconstraint',['setRotationConstraint',['../classqglviewer_1_1AxisPlaneConstraint.html#a116f0f394030f165b031287c1e1cf5ea',1,'qglviewer::AxisPlaneConstraint']]],
   ['setrotationconstraintdirection',['setRotationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#a7cb6055005e69d6edac8fbb0d14dd0fa',1,'qglviewer::AxisPlaneConstraint']]],
   ['setrotationconstrainttype',['setRotationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a7c0dc83d6a770742719c8d3ffa67c4e5',1,'qglviewer::AxisPlaneConstraint']]],
-  ['setrotationsensitivity',['setRotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a239ba71eaf212e169fe31918ed2d9c11',1,'qglviewer::ManipulatedFrame']]],
+  ['setrotationsensitivity',['setRotationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ac4124167e4ec2a468c5bfe15ae2235ef',1,'qglviewer::ManipulatedFrame']]],
   ['setrotationwithconstraint',['setRotationWithConstraint',['../classqglviewer_1_1Frame.html#a9d4ab1388820d002d44304c5463fbfbd',1,'qglviewer::Frame']]],
   ['setsceneboundingbox',['setSceneBoundingBox',['../classqglviewer_1_1Camera.html#af3a1c2682cba52d6339d2f565ea1d0ee',1,'qglviewer::Camera::setSceneBoundingBox()'],['../classQGLViewer.html#aa8339148d876e633c27e5df826f06c9c',1,'QGLViewer::setSceneBoundingBox()']]],
   ['setscenecenter',['setSceneCenter',['../classqglviewer_1_1Camera.html#a9185df6d9e8fbc108f83c5355f5e7b33',1,'qglviewer::Camera::setSceneCenter()'],['../classQGLViewer.html#a6712acd05f9d518d6babfe96e537d06d',1,'QGLViewer::setSceneCenter()']]],
   ['setscenecenterfrompixel',['setSceneCenterFromPixel',['../classqglviewer_1_1Camera.html#a338c3360223f5fb20e2248208d2f32bf',1,'qglviewer::Camera']]],
-  ['setsceneradius',['setSceneRadius',['../classqglviewer_1_1Camera.html#a33c70507fea15c3ea49a561b743ed822',1,'qglviewer::Camera::setSceneRadius()'],['../classQGLViewer.html#aef99f105486d457f0199fcc35181fa83',1,'QGLViewer::setSceneRadius()']]],
+  ['setsceneradius',['setSceneRadius',['../classqglviewer_1_1Camera.html#afda9d0eccbfea770f911886c2b63cd5f',1,'qglviewer::Camera::setSceneRadius()'],['../classQGLViewer.html#ad5138140e12f0fdcf7370b9c6d85eedd',1,'QGLViewer::setSceneRadius()']]],
   ['setsceneupvector',['setSceneUpVector',['../classqglviewer_1_1ManipulatedCameraFrame.html#af5a6d06d2ee74cc7fb365ed15f29132a',1,'qglviewer::ManipulatedCameraFrame']]],
   ['setscreenwidthandheight',['setScreenWidthAndHeight',['../classqglviewer_1_1Camera.html#a504c573cdd26be8b717a6da9fdb41812',1,'qglviewer::Camera']]],
   ['setselectbuffersize',['setSelectBufferSize',['../classQGLViewer.html#ae8af6dc4a89202211b764647caf3d1f3',1,'QGLViewer']]],
@@ -88,33 +88,33 @@ var searchData=
   ['setsnapshotformat',['setSnapshotFormat',['../classQGLViewer.html#a82043998256d08163f79ceee83278e14',1,'QGLViewer']]],
   ['setsnapshotquality',['setSnapshotQuality',['../classQGLViewer.html#ab64b04b76b1f35ee1b3f07fa747dc9a0',1,'QGLViewer']]],
   ['setspinningquaternion',['setSpinningQuaternion',['../classqglviewer_1_1ManipulatedFrame.html#aaa23ed0375ee472156f439eaee070ec9',1,'qglviewer::ManipulatedFrame']]],
-  ['setspinningsensitivity',['setSpinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#aa319d217b34f0a861e30d90b78a5c39b',1,'qglviewer::ManipulatedFrame']]],
+  ['setspinningsensitivity',['setSpinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a96662e9b865bc8b689a5a49e6fc2ab02',1,'qglviewer::ManipulatedFrame']]],
   ['setstatefilename',['setStateFileName',['../classQGLViewer.html#a68737cce3d7301701bca6e4270a5a34e',1,'QGLViewer']]],
   ['setstereodisplay',['setStereoDisplay',['../classQGLViewer.html#afe362ba5c3851a93f23fb833b2479f08',1,'QGLViewer']]],
   ['settextisenabled',['setTextIsEnabled',['../classQGLViewer.html#a73d76caa402acd217e504d0bcd13e421',1,'QGLViewer']]],
   ['settingasreferenceframewillcreatealoop',['settingAsReferenceFrameWillCreateALoop',['../classqglviewer_1_1Frame.html#aa4891a91c825effc65b73f1329ae49c7',1,'qglviewer::Frame']]],
-  ['settranslation',['setTranslation',['../classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704',1,'qglviewer::Frame::setTranslation(const Vec &translation)'],['../classqglviewer_1_1Frame.html#aeafb612e3ad0d6a81de91884eb4bdef1',1,'qglviewer::Frame::setTranslation(float x, float y, float z)']]],
+  ['settranslation',['setTranslation',['../classqglviewer_1_1Frame.html#ae5495cd791858225ba7c85ce39329704',1,'qglviewer::Frame::setTranslation(const Vec &translation)'],['../classqglviewer_1_1Frame.html#a033c48217e7dfccb3e88ae099e0f35c8',1,'qglviewer::Frame::setTranslation(qreal x, qreal y, qreal z)']]],
   ['settranslationandrotation',['setTranslationAndRotation',['../classqglviewer_1_1Frame.html#a0fbfd129a52b36b6753cc1589ff87a48',1,'qglviewer::Frame']]],
   ['settranslationandrotationwithconstraint',['setTranslationAndRotationWithConstraint',['../classqglviewer_1_1Frame.html#a3a08480e8de4a36536ff95e0f05303db',1,'qglviewer::Frame']]],
   ['settranslationconstraint',['setTranslationConstraint',['../classqglviewer_1_1AxisPlaneConstraint.html#a722c30f7303a078681fbf516499579de',1,'qglviewer::AxisPlaneConstraint']]],
   ['settranslationconstraintdirection',['setTranslationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#a2b676c088af158a52724bbbab15d1a65',1,'qglviewer::AxisPlaneConstraint']]],
   ['settranslationconstrainttype',['setTranslationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a0cee03d4db5722e992c20f042601eaa5',1,'qglviewer::AxisPlaneConstraint']]],
-  ['settranslationsensitivity',['setTranslationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ac0cdf6be7c1443e2e984012490569871',1,'qglviewer::ManipulatedFrame']]],
+  ['settranslationsensitivity',['setTranslationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ae5939728e6d9883ac4854c29cf380a20',1,'qglviewer::ManipulatedFrame']]],
   ['settranslationwithconstraint',['setTranslationWithConstraint',['../classqglviewer_1_1Frame.html#a7f3395d24d164a7af9a8b99e4e6bafc0',1,'qglviewer::Frame']]],
   ['settype',['setType',['../classqglviewer_1_1Camera.html#a608e58a2f9fb7e497f91662a6e9ae4cc',1,'qglviewer::Camera']]],
   ['setupvector',['setUpVector',['../classqglviewer_1_1Camera.html#ab442b71a46297223ae12b163653eeb7e',1,'qglviewer::Camera']]],
-  ['setvalue',['setValue',['../classqglviewer_1_1Quaternion.html#abe7dd94e4fb48e0c8e0d994cac84064a',1,'qglviewer::Quaternion::setValue()'],['../classqglviewer_1_1Vec.html#ab4794e5d9a45a51ab239593116c480aa',1,'qglviewer::Vec::setValue()']]],
+  ['setvalue',['setValue',['../classqglviewer_1_1Quaternion.html#a9d93de4b634adf83674a3528a02f76db',1,'qglviewer::Quaternion::setValue()'],['../classqglviewer_1_1Vec.html#a117fec7daec0df5a1c794d942ad08cb5',1,'qglviewer::Vec::setValue()']]],
   ['setviewdirection',['setViewDirection',['../classqglviewer_1_1Camera.html#a066c4058970a008d0d0a8ff442d117f6',1,'qglviewer::Camera']]],
   ['setwheelbinding',['setWheelBinding',['../classQGLViewer.html#a277f432be05de69ae2df05eac8951ad2',1,'QGLViewer::setWheelBinding(Qt::KeyboardModifiers modifiers, MouseHandler handler, MouseAction action, bool withConstraint=true)'],['../classQGLViewer.html#ac418dcff525e4236ebd4e8324fb725b1',1,'QGLViewer::setWheelBinding(Qt::Key key, Qt::KeyboardModifiers modifiers, MouseHandler handler, MouseAction action, bool withConstraint=true)']]],
-  ['setwheelsensitivity',['setWheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#afd6cb097279239492a3401893d317499',1,'qglviewer::ManipulatedFrame']]],
-  ['setzclippingcoefficient',['setZClippingCoefficient',['../classqglviewer_1_1Camera.html#a62ab18396bd8c212ec7b90dc156b59d7',1,'qglviewer::Camera']]],
-  ['setznearcoefficient',['setZNearCoefficient',['../classqglviewer_1_1Camera.html#a1d478610f928ecc4597c56d677d908b5',1,'qglviewer::Camera']]],
-  ['setzoomsensitivity',['setZoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a534fd19189851c5615da58621dfd32b0',1,'qglviewer::ManipulatedFrame']]],
+  ['setwheelsensitivity',['setWheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ac55cd5aa877eb32543e90eb6236ccd5f',1,'qglviewer::ManipulatedFrame']]],
+  ['setzclippingcoefficient',['setZClippingCoefficient',['../classqglviewer_1_1Camera.html#a0c33a4fefeb54c41eebffb4dd4080198',1,'qglviewer::Camera']]],
+  ['setznearcoefficient',['setZNearCoefficient',['../classqglviewer_1_1Camera.html#a8c7b68fdc4a06c76e623a7c4eafcef95',1,'qglviewer::Camera']]],
+  ['setzoomsensitivity',['setZoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a27e3095dda06896f7f121bcd242f64ed',1,'qglviewer::ManipulatedFrame']]],
   ['setzoomsonpivotpoint',['setZoomsOnPivotPoint',['../classqglviewer_1_1ManipulatedCameraFrame.html#aa715ac66a29d06ce3e86e241ae322813',1,'qglviewer::ManipulatedCameraFrame']]],
   ['shortcut',['shortcut',['../classQGLViewer.html#af8f502daf9ffa61c8904f891c843e994',1,'QGLViewer']]],
   ['showentirescene',['showEntireScene',['../classqglviewer_1_1Camera.html#ada8dd7d2346ebf46ed1f9822a8418df2',1,'qglviewer::Camera::showEntireScene()'],['../classQGLViewer.html#ada8dd7d2346ebf46ed1f9822a8418df2',1,'QGLViewer::showEntireScene()']]],
   ['sizehint',['sizeHint',['../classQGLViewer.html#ad8288a17cf54658f1ce1c0db9e97dc8a',1,'QGLViewer']]],
-  ['slerp',['slerp',['../classqglviewer_1_1Quaternion.html#a755201c9a752fd892a3656a517b190e4',1,'qglviewer::Quaternion']]],
+  ['slerp',['slerp',['../classqglviewer_1_1Quaternion.html#acb4a39b01841afcc686e81c0a4a375a6',1,'qglviewer::Quaternion']]],
   ['snapshotcounter',['snapshotCounter',['../classQGLViewer.html#a4de825bb96eba2c5f6a55facb9dc4cef',1,'QGLViewer']]],
   ['snapshotfilename',['snapshotFileName',['../classQGLViewer.html#a00f2094711c7349fe1f74b6fc0b5530f',1,'QGLViewer']]],
   ['snapshotformat',['snapshotFormat',['../classQGLViewer.html#abbb1add55632dced395e2f1b78ef491c',1,'QGLViewer']]],
@@ -122,11 +122,11 @@ var searchData=
   ['snapshottoclipboard',['snapshotToClipboard',['../classQGLViewer.html#a6054c5da7cfd763db7c0b214026a50ec',1,'QGLViewer']]],
   ['spin',['spin',['../classqglviewer_1_1ManipulatedCameraFrame.html#af87828117d0582d0031f563933f97bfd',1,'qglviewer::ManipulatedCameraFrame::spin()'],['../classqglviewer_1_1ManipulatedFrame.html#af87828117d0582d0031f563933f97bfd',1,'qglviewer::ManipulatedFrame::spin()']]],
   ['spinningquaternion',['spinningQuaternion',['../classqglviewer_1_1ManipulatedFrame.html#a7b8b14da64c84fed1cbdb8d98191d276',1,'qglviewer::ManipulatedFrame']]],
-  ['spinningsensitivity',['spinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a1025480797d5dd046d6d717de59ffbca',1,'qglviewer::ManipulatedFrame']]],
+  ['spinningsensitivity',['spinningSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a756fe0c7a6cad46ab5fdd3c268ec2cd7',1,'qglviewer::ManipulatedFrame']]],
   ['spun',['spun',['../classqglviewer_1_1ManipulatedFrame.html#a8e3a52ff9f948f42269cab711bb92b5c',1,'qglviewer::ManipulatedFrame']]],
-  ['squad',['squad',['../classqglviewer_1_1Quaternion.html#a4b218b205d88a4dd50c8de38522b5812',1,'qglviewer::Quaternion']]],
+  ['squad',['squad',['../classqglviewer_1_1Quaternion.html#a00d67192e2f29685ebcd08502465c0bf',1,'qglviewer::Quaternion']]],
   ['squadtangent',['squadTangent',['../classqglviewer_1_1Quaternion.html#a2a27d43a68da6c7c5243fe81e5a9d005',1,'qglviewer::Quaternion']]],
-  ['squarednorm',['squaredNorm',['../classqglviewer_1_1Vec.html#a7dcf0710a7514d91ab4ba6aaefde110e',1,'qglviewer::Vec']]],
+  ['squarednorm',['squaredNorm',['../classqglviewer_1_1Vec.html#a6840b3e560838c49775c0ec52ac27153',1,'qglviewer::Vec']]],
   ['startanimation',['startAnimation',['../classQGLViewer.html#ad5344a5f702678f309fafa0c699b2cf3',1,'QGLViewer']]],
   ['startinterpolation',['startInterpolation',['../classqglviewer_1_1KeyFrameInterpolator.html#a3c0098b2307d04e904c1f64f505e5819',1,'qglviewer::KeyFrameInterpolator']]],
   ['startscreencoordinatessystem',['startScreenCoordinatesSystem',['../classQGLViewer.html#a5825ac26bdef13ae5ddd021e318aaf15',1,'QGLViewer']]],
diff --git a/doc/refManual/search/functions_12.js b/doc/refManual/search/functions_12.js
index 267ce51..d30bda4 100644
--- a/doc/refManual/search/functions_12.js
+++ b/doc/refManual/search/functions_12.js
@@ -16,10 +16,10 @@ var searchData=
   ['transformof',['transformOf',['../classqglviewer_1_1Frame.html#a05a3e18419f02427366a95b1e299f12e',1,'qglviewer::Frame']]],
   ['transformoffrom',['transformOfFrom',['../classqglviewer_1_1Frame.html#a3416ca5a53c1f2d932fca1906ec1c6c7',1,'qglviewer::Frame']]],
   ['transformofin',['transformOfIn',['../classqglviewer_1_1Frame.html#a01636f93c09d6fd9fca90cb671afdda0',1,'qglviewer::Frame']]],
-  ['translate',['translate',['../classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a',1,'qglviewer::Frame::translate(Vec &t)'],['../classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b',1,'qglviewer::Frame::translate(const Vec &t)'],['../classqglviewer_1_1Frame.html#a9081ed23141a5980f028b21d58fa3290',1,'qglviewer::Frame::translate(float x, float y, float z)'],['../classqglviewer_1_1Frame.html#a2ae644799a164d7519769ba393565c5d',1,'qglviewer::Frame::translate(f [...]
+  ['translate',['translate',['../classqglviewer_1_1Frame.html#a4cb0cf5ff79e1acf0755befdaceb6f4a',1,'qglviewer::Frame::translate(Vec &t)'],['../classqglviewer_1_1Frame.html#ac774331eeae8d29acc94f5653b2f2c3b',1,'qglviewer::Frame::translate(const Vec &t)'],['../classqglviewer_1_1Frame.html#aa1abe660fa5c640c01a33d29dd7acca5',1,'qglviewer::Frame::translate(qreal x, qreal y, qreal z)'],['../classqglviewer_1_1Frame.html#a1148e82d06e6c4ad4a9baedc9893cd11',1,'qglviewer::Frame::translate(q [...]
   ['translation',['translation',['../classqglviewer_1_1Frame.html#a388a5f38140104323aa51fc207fde642',1,'qglviewer::Frame']]],
   ['translationconstraintdirection',['translationConstraintDirection',['../classqglviewer_1_1AxisPlaneConstraint.html#a431b0d36842122de9db3b4e4f00b8d7c',1,'qglviewer::AxisPlaneConstraint']]],
   ['translationconstrainttype',['translationConstraintType',['../classqglviewer_1_1AxisPlaneConstraint.html#a12ad675910ffa86fbabefff2cd6a594a',1,'qglviewer::AxisPlaneConstraint']]],
-  ['translationsensitivity',['translationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a28fd6b0ca560be97bb899e1a7e3c821a',1,'qglviewer::ManipulatedFrame']]],
+  ['translationsensitivity',['translationSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a9fd3f92f20a5aa3a1930d891a0b6c841',1,'qglviewer::ManipulatedFrame']]],
   ['type',['type',['../classqglviewer_1_1Camera.html#afbd0fa31db28593e9669c3c56711c0a7',1,'qglviewer::Camera']]]
 ];
diff --git a/doc/refManual/search/functions_14.js b/doc/refManual/search/functions_14.js
index c615968..8d7e006 100644
--- a/doc/refManual/search/functions_14.js
+++ b/doc/refManual/search/functions_14.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['vec',['Vec',['../classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0',1,'qglviewer::Vec::Vec()'],['../classqglviewer_1_1Vec.html#a3ce512deca2281c1d19ac001ed44f7c6',1,'qglviewer::Vec::Vec(double X, double Y, double Z)'],['../classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592',1,'qglviewer::Vec::Vec(const C &c)'],['../classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a',1,'qglviewer::Vec::Vec(const QDomElement &element)']]],
+  ['vec',['Vec',['../classqglviewer_1_1Vec.html#a82cf7e1c93ee9188fefb25b86fc6c5b0',1,'qglviewer::Vec::Vec()'],['../classqglviewer_1_1Vec.html#a19dbb15aecdc359210d94912edeec911',1,'qglviewer::Vec::Vec(qreal X, qreal Y, qreal Z)'],['../classqglviewer_1_1Vec.html#a87fee74d73a2a9228715567c445c3592',1,'qglviewer::Vec::Vec(const C &c)'],['../classqglviewer_1_1Vec.html#ae789c3b0b8e39895b96f417a36db4b8a',1,'qglviewer::Vec::Vec(const QDomElement &element)']]],
   ['viewdirection',['viewDirection',['../classqglviewer_1_1Camera.html#aac10e453c166209b4e6c14c0266651c7',1,'qglviewer::Camera']]],
   ['viewerinitialized',['viewerInitialized',['../classQGLViewer.html#a252b68caec768d882a3fa78ecd1499db',1,'QGLViewer']]]
 ];
diff --git a/doc/refManual/search/functions_15.js b/doc/refManual/search/functions_15.js
index e0c1392..0ddd32b 100644
--- a/doc/refManual/search/functions_15.js
+++ b/doc/refManual/search/functions_15.js
@@ -3,7 +3,7 @@ var searchData=
   ['wheelaction',['wheelAction',['../classQGLViewer.html#a8d3605551bb140ab0c38c78c55722621',1,'QGLViewer']]],
   ['wheelevent',['wheelEvent',['../classqglviewer_1_1ManipulatedCameraFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36',1,'qglviewer::ManipulatedCameraFrame::wheelEvent()'],['../classqglviewer_1_1ManipulatedFrame.html#ae5e5914dbdcba274fc9f58c558ba6a36',1,'qglviewer::ManipulatedFrame::wheelEvent()'],['../classqglviewer_1_1MouseGrabber.html#a07a7d880d107f0b532ef779b29884e08',1,'qglviewer::MouseGrabber::wheelEvent()'],['../classQGLViewer.html#abc61c05ed30a94d66ab715c718532c03',1,'QGLViewer::whe [...]
   ['wheelhandler',['wheelHandler',['../classQGLViewer.html#a783e829b316bac1cb3c7baaff46797e7',1,'QGLViewer']]],
-  ['wheelsensitivity',['wheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#ad9e7fc4134c9733e8cfecf8bf80dbd44',1,'qglviewer::ManipulatedFrame']]],
+  ['wheelsensitivity',['wheelSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#af72fc88ca2addd06420528ea5de9d182',1,'qglviewer::ManipulatedFrame']]],
   ['width',['width',['../classQGLViewer.html#a369399896761e31ae71db57fdd0ba431',1,'QGLViewer']]],
   ['worldcoordinatesof',['worldCoordinatesOf',['../classqglviewer_1_1Camera.html#a123ad9bda6d715b5370650c2514896ab',1,'qglviewer::Camera']]],
   ['worldinverse',['worldInverse',['../classqglviewer_1_1Frame.html#a37d4da8cfd297273e7bb55538debaa3e',1,'qglviewer::Frame']]],
diff --git a/doc/refManual/search/functions_16.js b/doc/refManual/search/functions_16.js
index 27ddd1b..4c872e0 100644
--- a/doc/refManual/search/functions_16.js
+++ b/doc/refManual/search/functions_16.js
@@ -1,9 +1,9 @@
 var searchData=
 [
-  ['zclippingcoefficient',['zClippingCoefficient',['../classqglviewer_1_1Camera.html#acd07c1b9464b935ad21bb38b7c27afca',1,'qglviewer::Camera']]],
-  ['zfar',['zFar',['../classqglviewer_1_1Camera.html#aa7461df81c1ea0384d4c64723eb7b949',1,'qglviewer::Camera']]],
-  ['znear',['zNear',['../classqglviewer_1_1Camera.html#a419a57556a6681c3a0489c847d687ea5',1,'qglviewer::Camera']]],
-  ['znearcoefficient',['zNearCoefficient',['../classqglviewer_1_1Camera.html#a4c29c26071ddbe8512d478511e04a93e',1,'qglviewer::Camera']]],
-  ['zoomsensitivity',['zoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a8dd27ae910bfa43026fc8657dff46d4d',1,'qglviewer::ManipulatedFrame']]],
+  ['zclippingcoefficient',['zClippingCoefficient',['../classqglviewer_1_1Camera.html#abcfab7ec0ef378eaafe3f0948b91d392',1,'qglviewer::Camera']]],
+  ['zfar',['zFar',['../classqglviewer_1_1Camera.html#a75932dd1002e31ca5f205c3ada493391',1,'qglviewer::Camera']]],
+  ['znear',['zNear',['../classqglviewer_1_1Camera.html#a41c0dcedcae5b5d5d326f67fc0126ec0',1,'qglviewer::Camera']]],
+  ['znearcoefficient',['zNearCoefficient',['../classqglviewer_1_1Camera.html#a94611fb4d218f627fd21af0376044e14',1,'qglviewer::Camera']]],
+  ['zoomsensitivity',['zoomSensitivity',['../classqglviewer_1_1ManipulatedFrame.html#a726bf4f1e12571999d7573fe018f1d59',1,'qglviewer::ManipulatedFrame']]],
   ['zoomsonpivotpoint',['zoomsOnPivotPoint',['../classqglviewer_1_1ManipulatedCameraFrame.html#ad9e5f408288e0c02c64b712a8b2ce589',1,'qglviewer::ManipulatedCameraFrame']]]
 ];
diff --git a/doc/refManual/search/functions_2.js b/doc/refManual/search/functions_2.js
index a0441da..1096c64 100644
--- a/doc/refManual/search/functions_2.js
+++ b/doc/refManual/search/functions_2.js
@@ -23,6 +23,6 @@ var searchData=
   ['coordinatesoffrom',['coordinatesOfFrom',['../classqglviewer_1_1Frame.html#aadad46a46365f6977e4aac6dc18318ce',1,'qglviewer::Frame']]],
   ['coordinatesofin',['coordinatesOfIn',['../classqglviewer_1_1Frame.html#a8c3c1e66b248a0f29e304e6c786b9391',1,'qglviewer::Frame']]],
   ['copybuffertotexture',['copyBufferToTexture',['../classQGLViewer.html#aeb1721bfb1c032ae68665808bb2f4453',1,'QGLViewer']]],
-  ['currentfps',['currentFPS',['../classQGLViewer.html#a6fde4d85dfc5338aa237ba1eb505e975',1,'QGLViewer']]],
+  ['currentfps',['currentFPS',['../classQGLViewer.html#a6d52227793dba3e2f87f07acec26fd56',1,'QGLViewer']]],
   ['currentmouseaction',['currentMouseAction',['../classqglviewer_1_1ManipulatedFrame.html#aff4f89e6418df47cf2b269cf23c76ed4',1,'qglviewer::ManipulatedFrame']]]
 ];
diff --git a/doc/refManual/search/functions_3.js b/doc/refManual/search/functions_3.js
index 370171c..d4e36c7 100644
--- a/doc/refManual/search/functions_3.js
+++ b/doc/refManual/search/functions_3.js
@@ -1,22 +1,22 @@
 var searchData=
 [
-  ['deletepath',['deletePath',['../classqglviewer_1_1Camera.html#a8a75fa050d365ba249e8dcd439670aac',1,'qglviewer::Camera::deletePath()'],['../classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34',1,'qglviewer::KeyFrameInterpolator::deletePath()']]],
+  ['deletepath',['deletePath',['../classqglviewer_1_1Camera.html#afd30e89271866821e57126847a85f35f',1,'qglviewer::Camera::deletePath()'],['../classqglviewer_1_1KeyFrameInterpolator.html#ae343912505ce83d62bea580a83c7bc34',1,'qglviewer::KeyFrameInterpolator::deletePath()']]],
   ['displaymessage',['displayMessage',['../classQGLViewer.html#a61336516f9771ac6aef90875f848add4',1,'QGLViewer']]],
   ['displaysinstereo',['displaysInStereo',['../classQGLViewer.html#a2fc4c62e317a0f64c2a943ed11faa337',1,'QGLViewer']]],
-  ['distancetoscenecenter',['distanceToSceneCenter',['../classqglviewer_1_1Camera.html#a253932bd8634348f9c189ab4c9b280b5',1,'qglviewer::Camera']]],
+  ['distancetoscenecenter',['distanceToSceneCenter',['../classqglviewer_1_1Camera.html#a1d9313d5a2f8ac1ccff7555a94909639',1,'qglviewer::Camera']]],
   ['domelement',['domElement',['../classqglviewer_1_1Camera.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::Camera::domElement()'],['../classqglviewer_1_1Frame.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::Frame::domElement()'],['../classqglviewer_1_1KeyFrameInterpolator.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::KeyFrameInterpolator::domElement()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a48e0e2dd26cd96418c8b889ceabe80f6',1,'qglviewer::ManipulatedCame [...]
-  ['dot',['dot',['../classqglviewer_1_1Quaternion.html#a80d06247e39abf2980e56d2fe8c4bb83',1,'qglviewer::Quaternion']]],
-  ['draw',['draw',['../classqglviewer_1_1Camera.html#a1636e20e6910ded1c9a5860ba91f397e',1,'qglviewer::Camera::draw()'],['../classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0',1,'QGLViewer::draw()']]],
+  ['dot',['dot',['../classqglviewer_1_1Quaternion.html#a2d9c582375307cb4b41f29007130a2eb',1,'qglviewer::Quaternion']]],
+  ['draw',['draw',['../classqglviewer_1_1Camera.html#a569004264ba94a5bc05bd50943ff366b',1,'qglviewer::Camera::draw()'],['../classQGLViewer.html#abc45d04e5f5ce1fbd68f920fcdb2d0e0',1,'QGLViewer::draw()']]],
   ['drawallpaths',['drawAllPaths',['../classqglviewer_1_1Camera.html#aeea4caff561e6b1d8fe4b3d8efe4ae87',1,'qglviewer::Camera']]],
-  ['drawarrow',['drawArrow',['../classQGLViewer.html#a14fc47f313bbb65c38d2a8ae754215e0',1,'QGLViewer::drawArrow(float length=1.0f, float radius=-1.0f, int nbSubdivisions=12)'],['../classQGLViewer.html#a27edb1331c7bf373d126487e9547969f',1,'QGLViewer::drawArrow(const qglviewer::Vec &from, const qglviewer::Vec &to, float radius=-1.0f, int nbSubdivisions=12)']]],
-  ['drawaxis',['drawAxis',['../classQGLViewer.html#af18c0661b9a86e6b07ae344e05979c4c',1,'QGLViewer']]],
+  ['drawarrow',['drawArrow',['../classQGLViewer.html#a3ee5a2d40e4613eb6c824311e01ce150',1,'QGLViewer::drawArrow(qreal length=1.0, qreal radius=-1.0, int nbSubdivisions=12)'],['../classQGLViewer.html#a4d3e50e3881dca15e1b9641afa0054dc',1,'QGLViewer::drawArrow(const qglviewer::Vec &from, const qglviewer::Vec &to, qreal radius=-1.0, int nbSubdivisions=12)']]],
+  ['drawaxis',['drawAxis',['../classQGLViewer.html#a3072ee7495b54d48d1a11a5bd02a25cc',1,'QGLViewer']]],
   ['drawfinished',['drawFinished',['../classQGLViewer.html#afc74e28548768da157f2fe75bced2803',1,'QGLViewer']]],
-  ['drawgrid',['drawGrid',['../classQGLViewer.html#ad4a4d99fabe53083099c70439bc3564d',1,'QGLViewer']]],
-  ['drawlight',['drawLight',['../classQGLViewer.html#a2a3b971fe826a90efaffcb7c68fdcc53',1,'QGLViewer']]],
+  ['drawgrid',['drawGrid',['../classQGLViewer.html#a86a359ff8c78755fca0900321293da8f',1,'QGLViewer']]],
+  ['drawlight',['drawLight',['../classQGLViewer.html#ae8f54947331c56ea1a2de82ecba70b07',1,'QGLViewer']]],
   ['drawneeded',['drawNeeded',['../classQGLViewer.html#a7a712ca70a0b1c22af51363b786fc86e',1,'QGLViewer']]],
-  ['drawpath',['drawPath',['../classqglviewer_1_1KeyFrameInterpolator.html#aca0ce46b39ad4093450019d77fd247f2',1,'qglviewer::KeyFrameInterpolator']]],
+  ['drawpath',['drawPath',['../classqglviewer_1_1KeyFrameInterpolator.html#a72eb61459856747e751eaf750168577e',1,'qglviewer::KeyFrameInterpolator']]],
   ['drawtext',['drawText',['../classQGLViewer.html#ad604ec747b161c869877fcb647a3c775',1,'QGLViewer']]],
   ['drawvectorial',['drawVectorial',['../saveSnapshot_8cpp.html#a17f76156bf2b7616d55305d1cbbf3227',1,'saveSnapshot.cpp']]],
   ['drawwithnames',['drawWithNames',['../classQGLViewer.html#a528b238068a87472df8ac3a5b2481c55',1,'QGLViewer']]],
-  ['duration',['duration',['../classqglviewer_1_1KeyFrameInterpolator.html#a80c858ec25677a47d066e0900f4e1980',1,'qglviewer::KeyFrameInterpolator']]]
+  ['duration',['duration',['../classqglviewer_1_1KeyFrameInterpolator.html#aaf7e5f37f8400275afa7c3eb891f4166',1,'qglviewer::KeyFrameInterpolator']]]
 ];
diff --git a/doc/refManual/search/functions_5.js b/doc/refManual/search/functions_5.js
index 834e1f5..9255e78 100644
--- a/doc/refManual/search/functions_5.js
+++ b/doc/refManual/search/functions_5.js
@@ -1,13 +1,13 @@
 var searchData=
 [
   ['fastdraw',['fastDraw',['../classQGLViewer.html#a8b6601997fe7a83e7cd041104d4b21d2',1,'QGLViewer']]],
-  ['fieldofview',['fieldOfView',['../classqglviewer_1_1Camera.html#a89f1a2e62f7edf51de2d1c077ea5d330',1,'qglviewer::Camera']]],
-  ['firsttime',['firstTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a5335f8bedcb11c4e9cc06cbbab838477',1,'qglviewer::KeyFrameInterpolator']]],
+  ['fieldofview',['fieldOfView',['../classqglviewer_1_1Camera.html#ad95d16a8e25e191a351a1c8c66433b23',1,'qglviewer::Camera']]],
+  ['firsttime',['firstTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ad75cb46e1d9ab4458c563b20c77e25c0',1,'qglviewer::KeyFrameInterpolator']]],
   ['fitboundingbox',['fitBoundingBox',['../classqglviewer_1_1Camera.html#a65a284702aab36f853d59ce6c7a082b9',1,'qglviewer::Camera']]],
   ['fitscreenregion',['fitScreenRegion',['../classqglviewer_1_1Camera.html#ac49a71148d1d501310026f6f6f76d471',1,'qglviewer::Camera']]],
-  ['fitsphere',['fitSphere',['../classqglviewer_1_1Camera.html#a424fbe98af0ca295c692d8d4ae73ceec',1,'qglviewer::Camera']]],
-  ['flyspeed',['flySpeed',['../classqglviewer_1_1Camera.html#ac1758b72dab0895b9340fa833e62b802',1,'qglviewer::Camera::flySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#ac1758b72dab0895b9340fa833e62b802',1,'qglviewer::ManipulatedCameraFrame::flySpeed()']]],
-  ['focusdistance',['focusDistance',['../classqglviewer_1_1Camera.html#af201ce62f669c8944a276a2615951379',1,'qglviewer::Camera']]],
+  ['fitsphere',['fitSphere',['../classqglviewer_1_1Camera.html#a402db5615edf1375851ca817ddbb9c10',1,'qglviewer::Camera']]],
+  ['flyspeed',['flySpeed',['../classqglviewer_1_1Camera.html#a906c1998f29453838417d8ce80cf3ebe',1,'qglviewer::Camera::flySpeed()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a906c1998f29453838417d8ce80cf3ebe',1,'qglviewer::ManipulatedCameraFrame::flySpeed()']]],
+  ['focusdistance',['focusDistance',['../classqglviewer_1_1Camera.html#a3e93c356c617acdc3287b1e68b6578f8',1,'qglviewer::Camera']]],
   ['foregroundcolor',['foregroundColor',['../classQGLViewer.html#aa2f726def3615050a9c816c0ca32171d',1,'QGLViewer']]],
   ['fpsisdisplayed',['FPSIsDisplayed',['../classQGLViewer.html#a4b8985b86aca5584d9869c8ac868984a',1,'QGLViewer']]],
   ['fpsisdisplayedchanged',['FPSIsDisplayedChanged',['../classQGLViewer.html#a4b005fb3bda4582ce4ab7aeda6692699',1,'QGLViewer']]],
diff --git a/doc/refManual/search/functions_6.js b/doc/refManual/search/functions_6.js
index e0a1505..151cd48 100644
--- a/doc/refManual/search/functions_6.js
+++ b/doc/refManual/search/functions_6.js
@@ -1,39 +1,39 @@
 var searchData=
 [
-  ['getaxisangle',['getAxisAngle',['../classqglviewer_1_1Quaternion.html#a46b7892fe36e140862b9c71e5cfe8292',1,'qglviewer::Quaternion']]],
-  ['getcameracoordinatesof',['getCameraCoordinatesOf',['../classqglviewer_1_1Camera.html#abadd060aa34d51a940575b58d256dca4',1,'qglviewer::Camera']]],
+  ['getaxisangle',['getAxisAngle',['../classqglviewer_1_1Quaternion.html#a82c00b9faae5d64038f913b08fda8af5',1,'qglviewer::Quaternion']]],
+  ['getcameracoordinatesof',['getCameraCoordinatesOf',['../classqglviewer_1_1Camera.html#a31ad7293f39e9d1a738f84068191b878',1,'qglviewer::Camera']]],
   ['getclickactionbinding',['getClickActionBinding',['../classQGLViewer.html#ae57d9efa984795d6cfbe85ad594f660f',1,'QGLViewer']]],
-  ['getcoordinatesof',['getCoordinatesOf',['../classqglviewer_1_1Frame.html#a3718dc9cc825c674c8da3576b1448764',1,'qglviewer::Frame']]],
-  ['getcoordinatesoffrom',['getCoordinatesOfFrom',['../classqglviewer_1_1Frame.html#a36a2d7b27ab27bcff37ab9cbfab20a17',1,'qglviewer::Frame']]],
-  ['getcoordinatesofin',['getCoordinatesOfIn',['../classqglviewer_1_1Frame.html#af2748e8dd6a4edad38d195132a8c8b30',1,'qglviewer::Frame']]],
+  ['getcoordinatesof',['getCoordinatesOf',['../classqglviewer_1_1Frame.html#a01f92194a37542283173ddd9c4be30ce',1,'qglviewer::Frame']]],
+  ['getcoordinatesoffrom',['getCoordinatesOfFrom',['../classqglviewer_1_1Frame.html#aa7f3dee34349894871a47007e5b2ea00',1,'qglviewer::Frame']]],
+  ['getcoordinatesofin',['getCoordinatesOfIn',['../classqglviewer_1_1Frame.html#a767a4c18a613077afd82ec4813c6f71b',1,'qglviewer::Frame']]],
   ['getfrustumplanescoefficients',['getFrustumPlanesCoefficients',['../classqglviewer_1_1Camera.html#a1450258d117908a71908a72184136e41',1,'qglviewer::Camera']]],
-  ['getinversecoordinatesof',['getInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#aede4243bfe48e6d870a2417bbfc711a8',1,'qglviewer::Frame']]],
+  ['getinversecoordinatesof',['getInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#a5cff28c3db707b06cc2510b207b0d010',1,'qglviewer::Frame']]],
   ['getinversematrix',['getInverseMatrix',['../classqglviewer_1_1Quaternion.html#aee97ea226e31ac805a2245e7c73dac7b',1,'qglviewer::Quaternion::getInverseMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Quaternion.html#a315cf039df621a101a953df20acc7155',1,'qglviewer::Quaternion::getInverseMatrix(GLdouble m[16]) const ']]],
-  ['getinverserotationmatrix',['getInverseRotationMatrix',['../classqglviewer_1_1Quaternion.html#ae1455acb1cbf59befe65295734d48c4a',1,'qglviewer::Quaternion']]],
-  ['getinversetransformof',['getInverseTransformOf',['../classqglviewer_1_1Frame.html#a6a2eb1467ca31f7db460a2d6b7166a07',1,'qglviewer::Frame']]],
-  ['getlocalcoordinatesof',['getLocalCoordinatesOf',['../classqglviewer_1_1Frame.html#abe456b2ee906b9def0d2ec0c949a9497',1,'qglviewer::Frame']]],
-  ['getlocalinversecoordinatesof',['getLocalInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#adbd3252d2089f077e23e78345b3723c2',1,'qglviewer::Frame']]],
-  ['getlocalinversetransformof',['getLocalInverseTransformOf',['../classqglviewer_1_1Frame.html#a62b201feca5e0ebecc03a71b9566d97c',1,'qglviewer::Frame']]],
-  ['getlocaltransformof',['getLocalTransformOf',['../classqglviewer_1_1Frame.html#a6e4aeb1d5aafee31442cc3c82a6ee215',1,'qglviewer::Frame']]],
+  ['getinverserotationmatrix',['getInverseRotationMatrix',['../classqglviewer_1_1Quaternion.html#a62b8b94f4ac51fa4321689636e9ebd1d',1,'qglviewer::Quaternion']]],
+  ['getinversetransformof',['getInverseTransformOf',['../classqglviewer_1_1Frame.html#ac3e418af121c82f130d75c3d94f422f2',1,'qglviewer::Frame']]],
+  ['getlocalcoordinatesof',['getLocalCoordinatesOf',['../classqglviewer_1_1Frame.html#a80027fe347d2c4a184d948a532ddfbf1',1,'qglviewer::Frame']]],
+  ['getlocalinversecoordinatesof',['getLocalInverseCoordinatesOf',['../classqglviewer_1_1Frame.html#a7514220133add8a16ec6b839e9e2d96a',1,'qglviewer::Frame']]],
+  ['getlocalinversetransformof',['getLocalInverseTransformOf',['../classqglviewer_1_1Frame.html#a456964b8cfaa1c5e64ef18199c763854',1,'qglviewer::Frame']]],
+  ['getlocaltransformof',['getLocalTransformOf',['../classqglviewer_1_1Frame.html#a8d70454adf39301d5c6ad4281c51d6f2',1,'qglviewer::Frame']]],
   ['getmatrix',['getMatrix',['../classqglviewer_1_1Frame.html#a4915640a54a6b48a99cbdd0cd42fec48',1,'qglviewer::Frame::getMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Frame.html#a15f0dc7596dc78437154302466ac3c0a',1,'qglviewer::Frame::getMatrix(GLdouble m[16]) const '],['../classqglviewer_1_1Quaternion.html#a4915640a54a6b48a99cbdd0cd42fec48',1,'qglviewer::Quaternion::getMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Quaternion.html#a15f0dc7596dc78437154302466ac3c0a',1 [...]
   ['getmodelviewmatrix',['getModelViewMatrix',['../classqglviewer_1_1Camera.html#a59b053ad156f704a61f134572068cf20',1,'qglviewer::Camera::getModelViewMatrix(GLfloat m[16]) const '],['../classqglviewer_1_1Camera.html#aa1d631d6e368a7aa14656b7511787786',1,'qglviewer::Camera::getModelViewMatrix(GLdouble m[16]) const ']]],
   ['getmodelviewprojectionmatrix',['getModelViewProjectionMatrix',['../classqglviewer_1_1Camera.html#a7df308e69b599f00c27107530c2a6765',1,'qglviewer::Camera::getModelViewProjectionMatrix(GLfloat m[16]) const '],['../classqglviewer_1_1Camera.html#adeb5e39686b9fcb3db090dff84c13be4',1,'qglviewer::Camera::getModelViewProjectionMatrix(GLdouble m[16]) const ']]],
   ['getmouseactionbinding',['getMouseActionBinding',['../classQGLViewer.html#abcad615739f9ce3e857b94ca945deb5e',1,'QGLViewer']]],
-  ['getorientation',['getOrientation',['../classqglviewer_1_1Frame.html#ac47c3b7fd6023734ba40249bea1fd253',1,'qglviewer::Frame']]],
+  ['getorientation',['getOrientation',['../classqglviewer_1_1Frame.html#ad3f291e22719a35e8f8a4f3d244bf088',1,'qglviewer::Frame']]],
   ['getorthowidthheight',['getOrthoWidthHeight',['../classqglviewer_1_1Camera.html#affe84ed52b08d5d1d3dfdb87fe9242fa',1,'qglviewer::Camera']]],
-  ['getposition',['getPosition',['../classqglviewer_1_1Frame.html#ab3ca600424074ccaf5ee078c8d3149c3',1,'qglviewer::Frame']]],
-  ['getprojectedcoordinatesof',['getProjectedCoordinatesOf',['../classqglviewer_1_1Camera.html#ae167e3b955401e11bbbf0fc25f52e3ee',1,'qglviewer::Camera']]],
+  ['getposition',['getPosition',['../classqglviewer_1_1Frame.html#a8e2607c9b0e6d98e84cf3c9d467259b5',1,'qglviewer::Frame']]],
+  ['getprojectedcoordinatesof',['getProjectedCoordinatesOf',['../classqglviewer_1_1Camera.html#a2d47092c9cb14040b5e07dc37fca9b4c',1,'qglviewer::Camera']]],
   ['getprojectionmatrix',['getProjectionMatrix',['../classqglviewer_1_1Camera.html#a71e1308b2a851ff9a6b051ad882391b7',1,'qglviewer::Camera::getProjectionMatrix(GLfloat m[16]) const '],['../classqglviewer_1_1Camera.html#a97ff5cf330a6c24d6d49308aedd638bc',1,'qglviewer::Camera::getProjectionMatrix(GLdouble m[16]) const ']]],
-  ['getrotation',['getRotation',['../classqglviewer_1_1Frame.html#a475a20f772ff87508b673a586fc50bbb',1,'qglviewer::Frame']]],
-  ['getrotationmatrix',['getRotationMatrix',['../classqglviewer_1_1Quaternion.html#aad37aa66da74be6fb8d9d66f059f0872',1,'qglviewer::Quaternion']]],
-  ['gettransformof',['getTransformOf',['../classqglviewer_1_1Frame.html#aac70b883f8e3635d88356cb08b1abae3',1,'qglviewer::Frame']]],
-  ['gettransformoffrom',['getTransformOfFrom',['../classqglviewer_1_1Frame.html#a4eed4b2770a62e5ebb32d3dcee642c52',1,'qglviewer::Frame']]],
-  ['gettransformofin',['getTransformOfIn',['../classqglviewer_1_1Frame.html#a7d36c3c2d4b004b3e5d296aa58541f9f',1,'qglviewer::Frame']]],
-  ['gettranslation',['getTranslation',['../classqglviewer_1_1Frame.html#a39804059e5c4e694a6cb13b71347da97',1,'qglviewer::Frame']]],
-  ['getunprojectedcoordinatesof',['getUnprojectedCoordinatesOf',['../classqglviewer_1_1Camera.html#a222deedc6fa32ab78d0a338eaa312f1f',1,'qglviewer::Camera']]],
+  ['getrotation',['getRotation',['../classqglviewer_1_1Frame.html#a3778316610c7d32db8477ace730227c7',1,'qglviewer::Frame']]],
+  ['getrotationmatrix',['getRotationMatrix',['../classqglviewer_1_1Quaternion.html#a397ec5b8092565ae981a458adf8fe7c1',1,'qglviewer::Quaternion']]],
+  ['gettransformof',['getTransformOf',['../classqglviewer_1_1Frame.html#a09224521fa56b13fa92ea023b48ef493',1,'qglviewer::Frame']]],
+  ['gettransformoffrom',['getTransformOfFrom',['../classqglviewer_1_1Frame.html#a6eff9a03091546b0982840ad60e8a2f1',1,'qglviewer::Frame']]],
+  ['gettransformofin',['getTransformOfIn',['../classqglviewer_1_1Frame.html#a2404f140d0a2754323c119592d267aca',1,'qglviewer::Frame']]],
+  ['gettranslation',['getTranslation',['../classqglviewer_1_1Frame.html#a97dd37882acc09d7b5a9246dfd4a9ad1',1,'qglviewer::Frame']]],
+  ['getunprojectedcoordinatesof',['getUnprojectedCoordinatesOf',['../classqglviewer_1_1Camera.html#a006cbbe3fa0207c3b7609358772b457a',1,'qglviewer::Camera']]],
   ['getviewport',['getViewport',['../classqglviewer_1_1Camera.html#a5034f21055f864c1ade7d86fec209348',1,'qglviewer::Camera']]],
   ['getwheelactionbinding',['getWheelActionBinding',['../classQGLViewer.html#a0f5b32b9880a9f32d590871663713b78',1,'QGLViewer']]],
-  ['getworldcoordinatesof',['getWorldCoordinatesOf',['../classqglviewer_1_1Camera.html#ae1b0a45b7cd3a071c4ef88ed608511fd',1,'qglviewer::Camera']]],
+  ['getworldcoordinatesof',['getWorldCoordinatesOf',['../classqglviewer_1_1Camera.html#ae07fc4d1649590ae48a4c591077440e1',1,'qglviewer::Camera']]],
   ['getworldmatrix',['getWorldMatrix',['../classqglviewer_1_1Frame.html#a45358fae434b3912ce81577dc7cf4fc9',1,'qglviewer::Frame::getWorldMatrix(GLdouble m[4][4]) const '],['../classqglviewer_1_1Frame.html#ac808850371649942726dd474aba29ead',1,'qglviewer::Frame::getWorldMatrix(GLdouble m[16]) const ']]],
   ['grabsmouse',['grabsMouse',['../classqglviewer_1_1MouseGrabber.html#a4eb7e14d035ae255b77ac1711aef039e',1,'qglviewer::MouseGrabber']]],
   ['gridisdrawn',['gridIsDrawn',['../classQGLViewer.html#aee18c56a8321a60771b085a5fe798ee7',1,'QGLViewer']]],
diff --git a/doc/refManual/search/functions_7.js b/doc/refManual/search/functions_7.js
index dcfad13..ce172b1 100644
--- a/doc/refManual/search/functions_7.js
+++ b/doc/refManual/search/functions_7.js
@@ -6,5 +6,5 @@ var searchData=
   ['helprequired',['helpRequired',['../classQGLViewer.html#a64f461121859dc0c19e7af2d413935e0',1,'QGLViewer']]],
   ['helpstring',['helpString',['../classQGLViewer.html#a38ddb3cdf15e24de824a2d7a170ec915',1,'QGLViewer']]],
   ['helpwidget',['helpWidget',['../classQGLViewer.html#af3af989be04f1d45b6ff3f748c2e9d4a',1,'QGLViewer']]],
-  ['horizontalfieldofview',['horizontalFieldOfView',['../classqglviewer_1_1Camera.html#a957cf1049788f7aba3dd16f20f565960',1,'qglviewer::Camera']]]
+  ['horizontalfieldofview',['horizontalFieldOfView',['../classqglviewer_1_1Camera.html#aaafe19f81fb44272ce2b3b285f965e66',1,'qglviewer::Camera']]]
 ];
diff --git a/doc/refManual/search/functions_8.js b/doc/refManual/search/functions_8.js
index 52cc040..1b646c5 100644
--- a/doc/refManual/search/functions_8.js
+++ b/doc/refManual/search/functions_8.js
@@ -3,22 +3,22 @@ var searchData=
   ['init',['init',['../classQGLViewer.html#a9339772ec5ac9fa929938109207f2863',1,'QGLViewer']]],
   ['initfromdomelement',['initFromDOMElement',['../classqglviewer_1_1Camera.html#acd13d2ddeca530cb9f26ead47f7d25d3',1,'qglviewer::Camera::initFromDOMElement()'],['../classqglviewer_1_1Frame.html#acd13d2ddeca530cb9f26ead47f7d25d3',1,'qglviewer::Frame::initFromDOMElement()'],['../classqglviewer_1_1KeyFrameInterpolator.html#acd13d2ddeca530cb9f26ead47f7d25d3',1,'qglviewer::KeyFrameInterpolator::initFromDOMElement()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#acd13d2ddeca530cb9f26ead [...]
   ['initializegl',['initializeGL',['../classQGLViewer.html#a2d3d45239c78255c23a70ca558b4d4f1',1,'QGLViewer']]],
-  ['interpolateattime',['interpolateAtTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ad5393783e1768b6d688a8c49ddea56ae',1,'qglviewer::KeyFrameInterpolator']]],
+  ['interpolateattime',['interpolateAtTime',['../classqglviewer_1_1KeyFrameInterpolator.html#aa661a38cfc0fe1a3ac5f1e63fdc4918a',1,'qglviewer::KeyFrameInterpolator']]],
   ['interpolated',['interpolated',['../classqglviewer_1_1Frame.html#ab55c2a4f1732b90057fae4b6037399de',1,'qglviewer::Frame::interpolated()'],['../classqglviewer_1_1KeyFrameInterpolator.html#ab55c2a4f1732b90057fae4b6037399de',1,'qglviewer::KeyFrameInterpolator::interpolated()']]],
-  ['interpolateto',['interpolateTo',['../classqglviewer_1_1Camera.html#a37dee575e0fdf56909e1779e20383e97',1,'qglviewer::Camera']]],
+  ['interpolateto',['interpolateTo',['../classqglviewer_1_1Camera.html#a81fbcef421a84c4b6eb588ff94882ac1',1,'qglviewer::Camera']]],
   ['interpolatetofitscene',['interpolateToFitScene',['../classqglviewer_1_1Camera.html#a8a6201a1c2deca60a917e5351e549bb0',1,'qglviewer::Camera']]],
   ['interpolatetozoomonpixel',['interpolateToZoomOnPixel',['../classqglviewer_1_1Camera.html#a9e2b0c2d37f9176629d737faf431b51c',1,'qglviewer::Camera']]],
   ['interpolationisstarted',['interpolationIsStarted',['../classqglviewer_1_1KeyFrameInterpolator.html#a8cc0fa56ba7b6da71226cc191cc18e70',1,'qglviewer::KeyFrameInterpolator']]],
   ['interpolationperiod',['interpolationPeriod',['../classqglviewer_1_1KeyFrameInterpolator.html#a21bf6165ea3a6be2fd854e9be5105b1e',1,'qglviewer::KeyFrameInterpolator']]],
-  ['interpolationspeed',['interpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#a7e468c84c27d896e341563c83e102aad',1,'qglviewer::KeyFrameInterpolator']]],
-  ['interpolationtime',['interpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a58326b7948e78c1d2861ca659492207a',1,'qglviewer::KeyFrameInterpolator']]],
+  ['interpolationspeed',['interpolationSpeed',['../classqglviewer_1_1KeyFrameInterpolator.html#af28fcfef8565e889da536728c7b81393',1,'qglviewer::KeyFrameInterpolator']]],
+  ['interpolationtime',['interpolationTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a9fe6b6595ce11b6eae4e6cf9d3a9d7c0',1,'qglviewer::KeyFrameInterpolator']]],
   ['inverse',['inverse',['../classqglviewer_1_1Frame.html#a4534c3188c217feb8d21465d4cefd4ad',1,'qglviewer::Frame::inverse()'],['../classqglviewer_1_1Quaternion.html#ac378ebc684d691dc25336b895f24a82e',1,'qglviewer::Quaternion::inverse()']]],
   ['inversecoordinatesof',['inverseCoordinatesOf',['../classqglviewer_1_1Frame.html#a5bcb22a3f2e11e42e7469602b75b3c1e',1,'qglviewer::Frame']]],
   ['inversematrix',['inverseMatrix',['../classqglviewer_1_1Quaternion.html#a32992f152b7377da431c69f15384ed22',1,'qglviewer::Quaternion']]],
   ['inverserotate',['inverseRotate',['../classqglviewer_1_1Quaternion.html#a74d79bc1afcc02fdbfe0eb390c3546f5',1,'qglviewer::Quaternion']]],
   ['inversetransformof',['inverseTransformOf',['../classqglviewer_1_1Frame.html#aba2c6c46c1825a81f09d22322b03d9b5',1,'qglviewer::Frame']]],
   ['invert',['invert',['../classqglviewer_1_1Quaternion.html#a7fa1616cc61c19a5efcc863c950f7f30',1,'qglviewer::Quaternion']]],
-  ['iodistance',['IODistance',['../classqglviewer_1_1Camera.html#ad36e74de9c4020f951ea1a04e53a192d',1,'qglviewer::Camera']]],
+  ['iodistance',['IODistance',['../classqglviewer_1_1Camera.html#a1fe9adbc9faf97dce7b292d96a40c2a7',1,'qglviewer::Camera']]],
   ['isfullscreen',['isFullScreen',['../classQGLViewer.html#a129c439f36bb669672148192abc8ffed',1,'QGLViewer']]],
   ['isinmousegrabberpool',['isInMouseGrabberPool',['../classqglviewer_1_1MouseGrabber.html#a958abc8c9ae9ea339f9765fddfc7dbdd',1,'qglviewer::MouseGrabber']]],
   ['ismanipulated',['isManipulated',['../classqglviewer_1_1ManipulatedFrame.html#a032c48e2e7cdced01dea0cb7eca14022',1,'qglviewer::ManipulatedFrame']]],
diff --git a/doc/refManual/search/functions_9.js b/doc/refManual/search/functions_9.js
index a63e86c..e46a9e4 100644
--- a/doc/refManual/search/functions_9.js
+++ b/doc/refManual/search/functions_9.js
@@ -2,8 +2,8 @@ var searchData=
 [
   ['keyboardstring',['keyboardString',['../classQGLViewer.html#a0e20e13c1170d50b46b6fe2a49377690',1,'QGLViewer']]],
   ['keyframe',['keyFrame',['../classqglviewer_1_1KeyFrameInterpolator.html#a2437eecf340817ad1a3f86c822b111e8',1,'qglviewer::KeyFrameInterpolator']]],
-  ['keyframeinterpolator',['KeyFrameInterpolator',['../classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e',1,'qglviewer::KeyFrameInterpolator::KeyFrameInterpolator()'],['../classqglviewer_1_1Camera.html#abfbef567a6bbb9163b31c6f46238e4de',1,'qglviewer::Camera::keyFrameInterpolator()']]],
-  ['keyframetime',['keyFrameTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a976ec792d48ccd7e53b55bb91b49d473',1,'qglviewer::KeyFrameInterpolator']]],
+  ['keyframeinterpolator',['KeyFrameInterpolator',['../classqglviewer_1_1KeyFrameInterpolator.html#a2a78bc183af3ac92802cbe605e2a878e',1,'qglviewer::KeyFrameInterpolator::KeyFrameInterpolator()'],['../classqglviewer_1_1Camera.html#ad4acc41f907360dc96eaa219728948b7',1,'qglviewer::Camera::keyFrameInterpolator()']]],
+  ['keyframetime',['keyFrameTime',['../classqglviewer_1_1KeyFrameInterpolator.html#ab9e37b00f956270a5f76127f47390bbe',1,'qglviewer::KeyFrameInterpolator']]],
   ['keypressevent',['keyPressEvent',['../classQGLViewer.html#a2cc4c898ca007c7cc0ebb7791aa3e5b3',1,'QGLViewer']]],
   ['keyreleaseevent',['keyReleaseEvent',['../classQGLViewer.html#a3bbb1d9848e9f0625bd0a7252e86de94',1,'QGLViewer']]]
 ];
diff --git a/doc/refManual/search/functions_a.js b/doc/refManual/search/functions_a.js
index 4e4b3c6..62379ed 100644
--- a/doc/refManual/search/functions_a.js
+++ b/doc/refManual/search/functions_a.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['lasttime',['lastTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a3e953e6c813baa461389c132c9509e30',1,'qglviewer::KeyFrameInterpolator']]],
+  ['lasttime',['lastTime',['../classqglviewer_1_1KeyFrameInterpolator.html#a18f3d03feb42cfc90779e39b118e3f7c',1,'qglviewer::KeyFrameInterpolator']]],
   ['lndif',['lnDif',['../classqglviewer_1_1Quaternion.html#af4c74176967acca6e3947977351e1c68',1,'qglviewer::Quaternion']]],
   ['loadmodelviewmatrix',['loadModelViewMatrix',['../classqglviewer_1_1Camera.html#a81053f822008b76bff7b1a41dceedf53',1,'qglviewer::Camera']]],
   ['loadmodelviewmatrixstereo',['loadModelViewMatrixStereo',['../classqglviewer_1_1Camera.html#a47c0f19a566d045a2872b44014be8392',1,'qglviewer::Camera']]],
diff --git a/doc/refManual/search/functions_c.js b/doc/refManual/search/functions_c.js
index 246f707..1da68c1 100644
--- a/doc/refManual/search/functions_c.js
+++ b/doc/refManual/search/functions_c.js
@@ -1,8 +1,8 @@
 var searchData=
 [
   ['negate',['negate',['../classqglviewer_1_1Quaternion.html#abcdb1512395327f8236a4f4a4d4ff648',1,'qglviewer::Quaternion']]],
-  ['norm',['norm',['../classqglviewer_1_1Vec.html#a0c08e460a130fd3b8eff7eb7484e878a',1,'qglviewer::Vec']]],
-  ['normalize',['normalize',['../classqglviewer_1_1Quaternion.html#a05826e509c686f39baaec4656f1a7231',1,'qglviewer::Quaternion::normalize()'],['../classqglviewer_1_1Vec.html#a05826e509c686f39baaec4656f1a7231',1,'qglviewer::Vec::normalize()']]],
+  ['norm',['norm',['../classqglviewer_1_1Vec.html#ad9e3919ecb07829c2ca53303f2d10d4b',1,'qglviewer::Vec']]],
+  ['normalize',['normalize',['../classqglviewer_1_1Quaternion.html#a5d64fc0ded287d65bf6e4fce7bbee639',1,'qglviewer::Quaternion::normalize()'],['../classqglviewer_1_1Vec.html#a5d64fc0ded287d65bf6e4fce7bbee639',1,'qglviewer::Vec::normalize()']]],
   ['normalized',['normalized',['../classqglviewer_1_1Quaternion.html#ae347ecf6e0a78618e8fd1a3b9107df32',1,'qglviewer::Quaternion']]],
   ['numberofkeyframes',['numberOfKeyFrames',['../classqglviewer_1_1KeyFrameInterpolator.html#aba3744250d9cd01ec848f81151a62273',1,'qglviewer::KeyFrameInterpolator']]]
 ];
diff --git a/doc/refManual/search/functions_d.js b/doc/refManual/search/functions_d.js
index 0c97601..3421d0d 100644
--- a/doc/refManual/search/functions_d.js
+++ b/doc/refManual/search/functions_d.js
@@ -4,13 +4,13 @@ var searchData=
   ['operator_20const_20double_20_2a',['operator const double *',['../classqglviewer_1_1Vec.html#ad8df949331fe927b4cb5d9bf4685ed35',1,'qglviewer::Vec']]],
   ['operator_20const_20float_20_2a',['operator const float *',['../classqglviewer_1_1Vec.html#a54795c57f1d998af73b630d786de2932',1,'qglviewer::Vec']]],
   ['operator_20double_20_2a',['operator double *',['../classqglviewer_1_1Vec.html#a028d1a021933d2f2a576efd9b7c4a7e9',1,'qglviewer::Vec']]],
-  ['operator_2a_3d',['operator*=',['../classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d',1,'qglviewer::Quaternion::operator*=()'],['../classqglviewer_1_1Vec.html#a60ede4c4ea0d28e41335732ee7500fe9',1,'qglviewer::Vec::operator*=()']]],
+  ['operator_2a_3d',['operator*=',['../classqglviewer_1_1Quaternion.html#a0caef8e6e702101a45fdc0af3920c49d',1,'qglviewer::Quaternion::operator*=()'],['../classqglviewer_1_1Vec.html#aac886f0c513c5ae07bdc9af149658dba',1,'qglviewer::Vec::operator*=()']]],
   ['operator_2b_3d',['operator+=',['../classqglviewer_1_1Vec.html#a3be0b4bc904d39b75329eae40177240e',1,'qglviewer::Vec']]],
   ['operator_2d_3d',['operator-=',['../classqglviewer_1_1Vec.html#afa0c39c7dfe9db8b942f01f330925571',1,'qglviewer::Vec']]],
-  ['operator_2f_3d',['operator/=',['../classqglviewer_1_1Vec.html#a9909f96f977d8d0bfabeb0331f6a69e4',1,'qglviewer::Vec']]],
+  ['operator_2f_3d',['operator/=',['../classqglviewer_1_1Vec.html#a0fb079a45fba8116b30717d048c94b22',1,'qglviewer::Vec']]],
   ['operator_3c_3c',['operator<<',['../classqglviewer_1_1Quaternion.html#a16d5f2f021103b05006b0c58fbd48796',1,'qglviewer::Quaternion::operator<<()'],['../classqglviewer_1_1Vec.html#a16d5f2f021103b05006b0c58fbd48796',1,'qglviewer::Vec::operator<<()'],['../quaternion_8cpp.html#ae1a0b3a657fdb3e0408f441598b79d2b',1,'operator<<(ostream &o, const Quaternion &Q): quaternion.cpp'],['../quaternion_8h.html#aea447317fdd00191332378fd132feffd',1,'operator<<( [...]
   ['operator_3d',['operator=',['../classqglviewer_1_1Camera.html#a0f87e84ad3356493738d4fc8331c7362',1,'qglviewer::Camera::operator=()'],['../classqglviewer_1_1Frame.html#aeb0f5ceffbb62f990b89b200d6ce728c',1,'qglviewer::Frame::operator=()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#a51ccf29ba558394424cf08ce21bd4e73',1,'qglviewer::ManipulatedCameraFrame::operator=()'],['../classqglviewer_1_1ManipulatedFrame.html#ad6d13eba8611869fe824da2dab500f50',1,'qglviewer::ManipulatedFrame::op [...]
-  ['operator_5b_5d',['operator[]',['../classqglviewer_1_1Quaternion.html#a605b34d1fc87b2ccaf49a45419c2e46f',1,'qglviewer::Quaternion::operator[](int i) const '],['../classqglviewer_1_1Quaternion.html#af1a8c9c4769161714a5a1a2c7fad446b',1,'qglviewer::Quaternion::operator[](int i)'],['../classqglviewer_1_1Vec.html#a605b34d1fc87b2ccaf49a45419c2e46f',1,'qglviewer::Vec::operator[](int i) const '],['../classqglviewer_1_1Vec.html#af1a8c9c4769161714a5a1a2c7fad446b',1,'qglviewer::Vec::operator[](i [...]
+  ['operator_5b_5d',['operator[]',['../classqglviewer_1_1Quaternion.html#afe97b7787c6981248d1117c5fd14619a',1,'qglviewer::Quaternion::operator[](int i) const '],['../classqglviewer_1_1Quaternion.html#a9e7f720c3b3b086f7aac81e480ea778e',1,'qglviewer::Quaternion::operator[](int i)'],['../classqglviewer_1_1Vec.html#afe97b7787c6981248d1117c5fd14619a',1,'qglviewer::Vec::operator[](int i) const '],['../classqglviewer_1_1Vec.html#a9e7f720c3b3b086f7aac81e480ea778e',1,'qglviewer::Vec::operator[](i [...]
   ['orientation',['orientation',['../classqglviewer_1_1Camera.html#a691af39b54669fad8b4e73599de22094',1,'qglviewer::Camera::orientation()'],['../classqglviewer_1_1Frame.html#a691af39b54669fad8b4e73599de22094',1,'qglviewer::Frame::orientation()']]],
   ['orthogonalvec',['orthogonalVec',['../classqglviewer_1_1Vec.html#a30d49f3d3753a7111fc67cdde253a43d',1,'qglviewer::Vec']]]
 ];
diff --git a/doc/refManual/search/functions_e.js b/doc/refManual/search/functions_e.js
index 6e1b6c0..67dabb4 100644
--- a/doc/refManual/search/functions_e.js
+++ b/doc/refManual/search/functions_e.js
@@ -1,12 +1,12 @@
 var searchData=
 [
   ['paintgl',['paintGL',['../classQGLViewer.html#ac5cbfafb28ef4c0474ae96437294f547',1,'QGLViewer']]],
-  ['pathkey',['pathKey',['../classQGLViewer.html#adfe21e109b45f8c79f2c360bf35fb835',1,'QGLViewer']]],
-  ['physicaldistancetoscreen',['physicalDistanceToScreen',['../classqglviewer_1_1Camera.html#a2cbb7d182c56732a6129936c5dd19d64',1,'qglviewer::Camera']]],
-  ['physicalscreenwidth',['physicalScreenWidth',['../classqglviewer_1_1Camera.html#a8418799b4eeb22cbc1a157d488dcf09c',1,'qglviewer::Camera']]],
+  ['pathkey',['pathKey',['../classQGLViewer.html#aab5d27e632d4a2116e602bc67005b0e5',1,'QGLViewer']]],
+  ['physicaldistancetoscreen',['physicalDistanceToScreen',['../classqglviewer_1_1Camera.html#a6a402ce251ce223f9137e4c116403291',1,'qglviewer::Camera']]],
+  ['physicalscreenwidth',['physicalScreenWidth',['../classqglviewer_1_1Camera.html#a2f43dea16a80f1683baa16c1fbf9ca64',1,'qglviewer::Camera']]],
   ['pivotpoint',['pivotPoint',['../classqglviewer_1_1Camera.html#adc85bef2e09f3d874e0de957b107a8fa',1,'qglviewer::Camera::pivotPoint()'],['../classqglviewer_1_1ManipulatedCameraFrame.html#adc85bef2e09f3d874e0de957b107a8fa',1,'qglviewer::ManipulatedCameraFrame::pivotPoint()']]],
-  ['pixelglratio',['pixelGLRatio',['../classqglviewer_1_1Camera.html#a27f2dfd157643704c48630515a7f811f',1,'qglviewer::Camera']]],
-  ['playpath',['playPath',['../classqglviewer_1_1Camera.html#a4eb47bb1cf02f806f1f355f63b445818',1,'qglviewer::Camera']]],
+  ['pixelglratio',['pixelGLRatio',['../classqglviewer_1_1Camera.html#a741302a202c8ed668844c9669dadb41c',1,'qglviewer::Camera']]],
+  ['playpath',['playPath',['../classqglviewer_1_1Camera.html#a4299db38c4e04020738e39cfa99d91a0',1,'qglviewer::Camera']]],
   ['playpathkeyboardmodifiers',['playPathKeyboardModifiers',['../classQGLViewer.html#a53cd07399d3ed7b88cdf69d9cd17488d',1,'QGLViewer']]],
   ['pointselected',['pointSelected',['../classQGLViewer.html#ab78f96913c9aede4854b0efccf53f983',1,'QGLViewer']]],
   ['pointunderpixel',['pointUnderPixel',['../classqglviewer_1_1Camera.html#a90459767f782c80086ad7cff90a40b5a',1,'qglviewer::Camera']]],
diff --git a/doc/refManual/search/functions_f.js b/doc/refManual/search/functions_f.js
index f2fea0d..b366279 100644
--- a/doc/refManual/search/functions_f.js
+++ b/doc/refManual/search/functions_f.js
@@ -5,5 +5,5 @@ var searchData=
   ['qglviewer',['QGLViewer',['../classQGLViewer.html#a5cfffe102b268c9af761c5d82a694dcc',1,'QGLViewer::QGLViewer(QWidget *parent=0, const QGLWidget *shareWidget=0, Qt::WindowFlags flags=0)'],['../classQGLViewer.html#a4724b62429d2ecd9049bc41a562901b6',1,'QGLViewer::QGLViewer(QGLContext *context, QWidget *parent=0, const QGLWidget *shareWidget=0, Qt::WindowFlags flags=0)'],['../classQGLViewer.html#a5b655fa44abb36439e4f7ef3ad2cd649',1,'QGLViewer::QGLViewer(const QGLFormat &format, QWidge [...]
   ['qglviewerindex',['QGLViewerIndex',['../classQGLViewer.html#a9570ddcbaab08bce6f121e69db4fb903',1,'QGLViewer']]],
   ['qglviewerpool',['QGLViewerPool',['../classQGLViewer.html#a32d7a506084c50fd97a24f94d9ca4864',1,'QGLViewer']]],
-  ['quaternion',['Quaternion',['../classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66',1,'qglviewer::Quaternion::Quaternion()'],['../classqglviewer_1_1Quaternion.html#ad0347716e801bcdeab909493817edc85',1,'qglviewer::Quaternion::Quaternion(const Vec &axis, double angle)'],['../classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634',1,'qglviewer::Quaternion::Quaternion(const Vec &from, const Vec &to)'],['../classqglviewer_1_1Quaternion.html#a81ba24 [...]
+  ['quaternion',['Quaternion',['../classqglviewer_1_1Quaternion.html#a65ed15cc19af958b5933b5c522f10e66',1,'qglviewer::Quaternion::Quaternion()'],['../classqglviewer_1_1Quaternion.html#a248f1a85b48c0fe32fb8ac7e3ef84659',1,'qglviewer::Quaternion::Quaternion(const Vec &axis, qreal angle)'],['../classqglviewer_1_1Quaternion.html#a1b60be34a715145efc3b91e6dfba1634',1,'qglviewer::Quaternion::Quaternion(const Vec &from, const Vec &to)'],['../classqglviewer_1_1Quaternion.html#aa277d38 [...]
 ];
diff --git a/doc/refManual/search/related_1.js b/doc/refManual/search/related_1.js
index 628f1cb..1f529e2 100644
--- a/doc/refManual/search/related_1.js
+++ b/doc/refManual/search/related_1.js
@@ -1,10 +1,10 @@
 var searchData=
 [
   ['operator_21_3d',['operator!=',['../classqglviewer_1_1Vec.html#aa694f4dad59f93a8b8364d1b9cbdfd54',1,'qglviewer::Vec']]],
-  ['operator_2a',['operator*',['../classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Quaternion.html#a19ce6efe5ef2744c8293e8ba1a39b9e4',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Vec.html#ae579ff9811fb814a1c19526300feba52',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#ab1a8646ebc64cad8c3b98af9c33c16a9',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#ae [...]
+  ['operator_2a',['operator*',['../classqglviewer_1_1Quaternion.html#a76b3ffdb188246ff6559069cb3f5b919',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Quaternion.html#a19ce6efe5ef2744c8293e8ba1a39b9e4',1,'qglviewer::Quaternion::operator*()'],['../classqglviewer_1_1Vec.html#a902b74d17f4fd5ff37bfd81f0304300d',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#ab31a7e0c3cbca5395eb59cb45236cce5',1,'qglviewer::Vec::operator*()'],['../classqglviewer_1_1Vec.html#a9 [...]
   ['operator_2b',['operator+',['../classqglviewer_1_1Vec.html#abc7a7829beaefabef78bbf1aa8aa69f7',1,'qglviewer::Vec']]],
   ['operator_2d',['operator-',['../classqglviewer_1_1Vec.html#a84bd051b693ee420203ae5947ac38bdc',1,'qglviewer::Vec::operator-()'],['../classqglviewer_1_1Vec.html#a780b6fbbee93774c986eb645dc5c6373',1,'qglviewer::Vec::operator-()']]],
-  ['operator_2f',['operator/',['../classqglviewer_1_1Vec.html#aea982cdbaafc94cc70f99f176f431206',1,'qglviewer::Vec']]],
+  ['operator_2f',['operator/',['../classqglviewer_1_1Vec.html#a0b311e215c03e4c4a2ee856255849270',1,'qglviewer::Vec']]],
   ['operator_3d_3d',['operator==',['../classqglviewer_1_1Vec.html#aa36a8f02bb5bd8f5ab8532a79ceb4e9f',1,'qglviewer::Vec']]],
   ['operator_5e',['operator^',['../classqglviewer_1_1Vec.html#af521e6619361cc97fff70ae3115e0317',1,'qglviewer::Vec']]]
 ];
diff --git a/doc/refManual/search/variables_0.js b/doc/refManual/search/variables_0.js
index 975859b..3085c50 100644
--- a/doc/refManual/search/variables_0.js
+++ b/doc/refManual/search/variables_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['x',['x',['../classqglviewer_1_1Vec.html#af88b946fb90d5f08b5fb740c70e98c10',1,'qglviewer::Vec']]]
+  ['x',['x',['../classqglviewer_1_1Vec.html#af5d08234e79004c62c1be19bf4471580',1,'qglviewer::Vec']]]
 ];
diff --git a/doc/refManual/search/variables_1.js b/doc/refManual/search/variables_1.js
index d3edcbf..3254ebe 100644
--- a/doc/refManual/search/variables_1.js
+++ b/doc/refManual/search/variables_1.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['y',['y',['../classqglviewer_1_1Vec.html#ab927965981178aa1fba979a37168db2a',1,'qglviewer::Vec']]]
+  ['y',['y',['../classqglviewer_1_1Vec.html#aa73e2d855b90eb2152e249a594362b10',1,'qglviewer::Vec']]]
 ];
diff --git a/doc/refManual/search/variables_2.js b/doc/refManual/search/variables_2.js
index 174559f..7db7175 100644
--- a/doc/refManual/search/variables_2.js
+++ b/doc/refManual/search/variables_2.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['z',['z',['../classqglviewer_1_1Vec.html#ab3e6ed577a7c669c19de1f9c1b46c872',1,'qglviewer::Vec']]]
+  ['z',['z',['../classqglviewer_1_1Vec.html#a27c6cea8c416bf2e88f7b9065ef02ded',1,'qglviewer::Vec']]]
 ];
diff --git a/doc/refManual/vec_8cpp.html b/doc/refManual/vec_8cpp.html
index 3198ff5..a18cad2 100644
--- a/doc/refManual/vec_8cpp.html
+++ b/doc/refManual/vec_8cpp.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -129,7 +129,7 @@ Functions</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/refManual/vec_8h.html b/doc/refManual/vec_8h.html
index 5cbb745..01d6f0b 100644
--- a/doc/refManual/vec_8h.html
+++ b/doc/refManual/vec_8h.html
@@ -25,7 +25,7 @@
  <tr style="height: 56px;">
   <td style="padding-left: 0.5em;">
    <div id="projectname">libQGLViewer
-    <span id="projectnumber">Version 2.5.3</span>
+    <span id="projectnumber">Version 2.6.1</span>
    </div>
   </td>
  </tr>
@@ -142,7 +142,7 @@ Functions</h2></td></tr>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
-Generated on Tue Sep 2 2014 09:56:49 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
+Generated on Thu Jan 22 2015 16:15:38 for libQGLViewer by  <a href="http://www.doxygen.org/index.html">
 doxygen
 </a> 1.8.8
 </small></address>
diff --git a/doc/techFaq.html b/doc/techFaq.html
index 9375c30..1ed2e16 100644
--- a/doc/techFaq.html
+++ b/doc/techFaq.html
@@ -224,7 +224,7 @@ and will be added to this page. See also the <a href="faq.html">General FAQ</a>.
 <p>
   <a href="http://validator.w3.org/check/referer"><img src="images/xhtml.png" alt="Valid XHTML 1.0!" height="31" width="88"/></a>
   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="images/css.gif" alt="Valid CSS!" width="88" height="31"/></a>
-  <i>Last modified on Tuesday, September 02, 2014.</i>
+  <i>Last modified on Thursday, January 22, 2015.</i>
 </p>
 
 </body></html>
diff --git a/examples/animation/animation.cpp b/examples/animation/animation.cpp
index 871f918..a1ba6a9 100644
--- a/examples/animation/animation.cpp
+++ b/examples/animation/animation.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/animation/animation.h b/examples/animation/animation.h
index 4ab7b2e..ac225be 100644
--- a/examples/animation/animation.h
+++ b/examples/animation/animation.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/animation/animation.pro b/examples/animation/animation.pro
index 4838845..1977346 100644
--- a/examples/animation/animation.pro
+++ b/examples/animation/animation.pro
@@ -22,8 +22,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -165,9 +165,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -306,6 +303,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/animation/main.cpp b/examples/animation/main.cpp
index 8386062..1a9b972 100644
--- a/examples/animation/main.cpp
+++ b/examples/animation/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/callback/callback.cpp b/examples/callback/callback.cpp
index d103b05..b2f34f1 100644
--- a/examples/callback/callback.cpp
+++ b/examples/callback/callback.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/callback/callback.h b/examples/callback/callback.h
index 05c3827..7c43796 100644
--- a/examples/callback/callback.h
+++ b/examples/callback/callback.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/callback/callback.pro b/examples/callback/callback.pro
index 3fe31f3..293ff3a 100644
--- a/examples/callback/callback.pro
+++ b/examples/callback/callback.pro
@@ -19,8 +19,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -162,9 +162,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -303,6 +300,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/callback/main.cpp b/examples/callback/main.cpp
index 32ed7a5..f846d7a 100644
--- a/examples/callback/main.cpp
+++ b/examples/callback/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/cameraLight/cameraLight.cpp b/examples/cameraLight/cameraLight.cpp
index 7857908..c99b82d 100644
--- a/examples/cameraLight/cameraLight.cpp
+++ b/examples/cameraLight/cameraLight.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/cameraLight/cameraLight.h b/examples/cameraLight/cameraLight.h
index 489436e..374ed36 100644
--- a/examples/cameraLight/cameraLight.h
+++ b/examples/cameraLight/cameraLight.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/cameraLight/cameraLight.pro b/examples/cameraLight/cameraLight.pro
index 7b5136a..265ff54 100644
--- a/examples/cameraLight/cameraLight.pro
+++ b/examples/cameraLight/cameraLight.pro
@@ -21,8 +21,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -164,9 +164,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -305,6 +302,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/cameraLight/main.cpp b/examples/cameraLight/main.cpp
index da9f7aa..637da24 100644
--- a/examples/cameraLight/main.cpp
+++ b/examples/cameraLight/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/clippingPlane/clippingPlane.cpp b/examples/clippingPlane/clippingPlane.cpp
index c582b99..b1d9cc0 100644
--- a/examples/clippingPlane/clippingPlane.cpp
+++ b/examples/clippingPlane/clippingPlane.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/clippingPlane/clippingPlane.h b/examples/clippingPlane/clippingPlane.h
index ad20a57..09f3405 100644
--- a/examples/clippingPlane/clippingPlane.h
+++ b/examples/clippingPlane/clippingPlane.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/clippingPlane/clippingPlane.pro b/examples/clippingPlane/clippingPlane.pro
index eed58d9..6b409fb 100644
--- a/examples/clippingPlane/clippingPlane.pro
+++ b/examples/clippingPlane/clippingPlane.pro
@@ -24,8 +24,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -167,9 +167,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -308,6 +305,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/clippingPlane/main.cpp b/examples/clippingPlane/main.cpp
index 0f83128..b1eeac7 100644
--- a/examples/clippingPlane/main.cpp
+++ b/examples/clippingPlane/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/constrainedCamera/constrainedCamera.cpp b/examples/constrainedCamera/constrainedCamera.cpp
index 4ffd16d..3d23d0e 100644
--- a/examples/constrainedCamera/constrainedCamera.cpp
+++ b/examples/constrainedCamera/constrainedCamera.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/constrainedCamera/constrainedCamera.h b/examples/constrainedCamera/constrainedCamera.h
index be10538..82b8cee 100644
--- a/examples/constrainedCamera/constrainedCamera.h
+++ b/examples/constrainedCamera/constrainedCamera.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/constrainedCamera/constrainedCamera.pro b/examples/constrainedCamera/constrainedCamera.pro
index 3553c52..e90bef1 100644
--- a/examples/constrainedCamera/constrainedCamera.pro
+++ b/examples/constrainedCamera/constrainedCamera.pro
@@ -21,8 +21,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -164,9 +164,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -305,6 +302,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/constrainedCamera/main.cpp b/examples/constrainedCamera/main.cpp
index 763e8cf..b5705e3 100644
--- a/examples/constrainedCamera/main.cpp
+++ b/examples/constrainedCamera/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/constrainedFrame/constrainedFrame.cpp b/examples/constrainedFrame/constrainedFrame.cpp
index d14b1c6..1a0523e 100644
--- a/examples/constrainedFrame/constrainedFrame.cpp
+++ b/examples/constrainedFrame/constrainedFrame.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/constrainedFrame/constrainedFrame.h b/examples/constrainedFrame/constrainedFrame.h
index 2fbf74d..3ccd420 100644
--- a/examples/constrainedFrame/constrainedFrame.h
+++ b/examples/constrainedFrame/constrainedFrame.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/constrainedFrame/constrainedFrame.pro b/examples/constrainedFrame/constrainedFrame.pro
index 58e51a4..06bd9c4 100644
--- a/examples/constrainedFrame/constrainedFrame.pro
+++ b/examples/constrainedFrame/constrainedFrame.pro
@@ -21,8 +21,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -164,9 +164,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -305,6 +302,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/constrainedFrame/main.cpp b/examples/constrainedFrame/main.cpp
index 5f1440c..47e49bb 100644
--- a/examples/constrainedFrame/main.cpp
+++ b/examples/constrainedFrame/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/3dsViewer/3dsViewer.cpp b/examples/contribs/3dsViewer/3dsViewer.cpp
index 3fbbe22..8d7cb0e 100644
--- a/examples/contribs/3dsViewer/3dsViewer.cpp
+++ b/examples/contribs/3dsViewer/3dsViewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/3dsViewer/3dsViewer.h b/examples/contribs/3dsViewer/3dsViewer.h
index f3fe8a7..ace1abc 100644
--- a/examples/contribs/3dsViewer/3dsViewer.h
+++ b/examples/contribs/3dsViewer/3dsViewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/3dsViewer/3dsViewer.pro b/examples/contribs/3dsViewer/3dsViewer.pro
index fb5d130..9d1ba17 100644
--- a/examples/contribs/3dsViewer/3dsViewer.pro
+++ b/examples/contribs/3dsViewer/3dsViewer.pro
@@ -50,8 +50,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -193,9 +193,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -334,6 +331,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/3dsViewer/main.cpp b/examples/contribs/3dsViewer/main.cpp
index 898e495..051f674 100644
--- a/examples/contribs/3dsViewer/main.cpp
+++ b/examples/contribs/3dsViewer/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/AI/AI.pro b/examples/contribs/agora/AI/AI.pro
index cb0e8c4..6ef79dc 100644
--- a/examples/contribs/agora/AI/AI.pro
+++ b/examples/contribs/agora/AI/AI.pro
@@ -13,8 +13,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -156,9 +156,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -297,6 +294,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../../qglviewer.rc
+      exists( ../../../qglviewer.rc ) {
+	     RC_FILE = ../../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/agora/AI/ai.cpp b/examples/contribs/agora/AI/ai.cpp
index cc34a55..f1f209d 100644
--- a/examples/contribs/agora/AI/ai.cpp
+++ b/examples/contribs/agora/AI/ai.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/Viewer.pro b/examples/contribs/agora/Viewer/Viewer.pro
index 4758eb0..d90142c 100644
--- a/examples/contribs/agora/Viewer/Viewer.pro
+++ b/examples/contribs/agora/Viewer/Viewer.pro
@@ -28,8 +28,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -171,9 +171,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -312,6 +309,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../../qglviewer.rc
+      exists( ../../../qglviewer.rc ) {
+	     RC_FILE = ../../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/agora/Viewer/agoraViewer.cpp b/examples/contribs/agora/Viewer/agoraViewer.cpp
index d976f5f..4d04a04 100644
--- a/examples/contribs/agora/Viewer/agoraViewer.cpp
+++ b/examples/contribs/agora/Viewer/agoraViewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/agoraViewer.h b/examples/contribs/agora/Viewer/agoraViewer.h
index 3f2addc..31cae7c 100644
--- a/examples/contribs/agora/Viewer/agoraViewer.h
+++ b/examples/contribs/agora/Viewer/agoraViewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/board.cpp b/examples/contribs/agora/Viewer/board.cpp
index 88112ce..3c6659c 100644
--- a/examples/contribs/agora/Viewer/board.cpp
+++ b/examples/contribs/agora/Viewer/board.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/board.h b/examples/contribs/agora/Viewer/board.h
index 76ac2a8..bf83637 100644
--- a/examples/contribs/agora/Viewer/board.h
+++ b/examples/contribs/agora/Viewer/board.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/case.cpp b/examples/contribs/agora/Viewer/case.cpp
index d69696e..069a9c2 100644
--- a/examples/contribs/agora/Viewer/case.cpp
+++ b/examples/contribs/agora/Viewer/case.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/case.h b/examples/contribs/agora/Viewer/case.h
index 9395a81..f830887 100644
--- a/examples/contribs/agora/Viewer/case.h
+++ b/examples/contribs/agora/Viewer/case.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/computerPlayer.cpp b/examples/contribs/agora/Viewer/computerPlayer.cpp
index 2860bfd..6f8b2f0 100644
--- a/examples/contribs/agora/Viewer/computerPlayer.cpp
+++ b/examples/contribs/agora/Viewer/computerPlayer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/computerPlayer.h b/examples/contribs/agora/Viewer/computerPlayer.h
index d5062e5..362032a 100644
--- a/examples/contribs/agora/Viewer/computerPlayer.h
+++ b/examples/contribs/agora/Viewer/computerPlayer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/main.cpp b/examples/contribs/agora/Viewer/main.cpp
index 2aab78e..e68355e 100644
--- a/examples/contribs/agora/Viewer/main.cpp
+++ b/examples/contribs/agora/Viewer/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/move.cpp b/examples/contribs/agora/Viewer/move.cpp
index 437a4b2..c9717fb 100644
--- a/examples/contribs/agora/Viewer/move.cpp
+++ b/examples/contribs/agora/Viewer/move.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/move.h b/examples/contribs/agora/Viewer/move.h
index 3238983..8f8ca02 100644
--- a/examples/contribs/agora/Viewer/move.h
+++ b/examples/contribs/agora/Viewer/move.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/undo.cpp b/examples/contribs/agora/Viewer/undo.cpp
index fddb545..43a01bc 100644
--- a/examples/contribs/agora/Viewer/undo.cpp
+++ b/examples/contribs/agora/Viewer/undo.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/agora/Viewer/undo.h b/examples/contribs/agora/Viewer/undo.h
index 580d509..3925a44 100644
--- a/examples/contribs/agora/Viewer/undo.h
+++ b/examples/contribs/agora/Viewer/undo.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/anaglyph/anaglyph.cpp b/examples/contribs/anaglyph/anaglyph.cpp
index bbc5c60..e0be8d8 100644
--- a/examples/contribs/anaglyph/anaglyph.cpp
+++ b/examples/contribs/anaglyph/anaglyph.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/anaglyph/anaglyph.h b/examples/contribs/anaglyph/anaglyph.h
index c5d03bd..e55b86e 100644
--- a/examples/contribs/anaglyph/anaglyph.h
+++ b/examples/contribs/anaglyph/anaglyph.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/anaglyph/anaglyph.pro b/examples/contribs/anaglyph/anaglyph.pro
index eff3475..2b3c426 100644
--- a/examples/contribs/anaglyph/anaglyph.pro
+++ b/examples/contribs/anaglyph/anaglyph.pro
@@ -24,8 +24,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -167,9 +167,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -308,6 +305,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/anaglyph/main.cpp b/examples/contribs/anaglyph/main.cpp
index 623c4da..dc4c441 100644
--- a/examples/contribs/anaglyph/main.cpp
+++ b/examples/contribs/anaglyph/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/backgroundImage/backgroundImage.cpp b/examples/contribs/backgroundImage/backgroundImage.cpp
index 97df5dd..b9c5f86 100644
--- a/examples/contribs/backgroundImage/backgroundImage.cpp
+++ b/examples/contribs/backgroundImage/backgroundImage.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/backgroundImage/backgroundImage.h b/examples/contribs/backgroundImage/backgroundImage.h
index 11665aa..cf934d9 100644
--- a/examples/contribs/backgroundImage/backgroundImage.h
+++ b/examples/contribs/backgroundImage/backgroundImage.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/backgroundImage/backgroundImage.pro b/examples/contribs/backgroundImage/backgroundImage.pro
index 53ebe5f..f5b9b82 100644
--- a/examples/contribs/backgroundImage/backgroundImage.pro
+++ b/examples/contribs/backgroundImage/backgroundImage.pro
@@ -25,8 +25,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -168,9 +168,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -309,6 +306,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/backgroundImage/main.cpp b/examples/contribs/backgroundImage/main.cpp
index 90c25ce..38f2678 100644
--- a/examples/contribs/backgroundImage/main.cpp
+++ b/examples/contribs/backgroundImage/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/AI/AI.pro b/examples/contribs/blobWar/AI/AI.pro
index d216781..57d66be 100644
--- a/examples/contribs/blobWar/AI/AI.pro
+++ b/examples/contribs/blobWar/AI/AI.pro
@@ -13,8 +13,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -156,9 +156,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -297,6 +294,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../../qglviewer.rc
+      exists( ../../../qglviewer.rc ) {
+	     RC_FILE = ../../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/blobWar/AI/ai.cpp b/examples/contribs/blobWar/AI/ai.cpp
index f0add86..b98eae1 100644
--- a/examples/contribs/blobWar/AI/ai.cpp
+++ b/examples/contribs/blobWar/AI/ai.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/Viewer.pro b/examples/contribs/blobWar/Viewer/Viewer.pro
index fd4f802..8b4186f 100644
--- a/examples/contribs/blobWar/Viewer/Viewer.pro
+++ b/examples/contribs/blobWar/Viewer/Viewer.pro
@@ -34,8 +34,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -177,9 +177,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -318,6 +315,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../../qglviewer.rc
+      exists( ../../../qglviewer.rc ) {
+	     RC_FILE = ../../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/blobWar/Viewer/blobWarViewer.cpp b/examples/contribs/blobWar/Viewer/blobWarViewer.cpp
index e3f5840..9bee840 100644
--- a/examples/contribs/blobWar/Viewer/blobWarViewer.cpp
+++ b/examples/contribs/blobWar/Viewer/blobWarViewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/blobWarViewer.h b/examples/contribs/blobWar/Viewer/blobWarViewer.h
index f2010a5..fff2680 100644
--- a/examples/contribs/blobWar/Viewer/blobWarViewer.h
+++ b/examples/contribs/blobWar/Viewer/blobWarViewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/board.cpp b/examples/contribs/blobWar/Viewer/board.cpp
index c33e8c0..c927bec 100644
--- a/examples/contribs/blobWar/Viewer/board.cpp
+++ b/examples/contribs/blobWar/Viewer/board.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/board.h b/examples/contribs/blobWar/Viewer/board.h
index aefb533..82c97c6 100644
--- a/examples/contribs/blobWar/Viewer/board.h
+++ b/examples/contribs/blobWar/Viewer/board.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/boardDraw.cpp b/examples/contribs/blobWar/Viewer/boardDraw.cpp
index b57a151..ac674fd 100644
--- a/examples/contribs/blobWar/Viewer/boardDraw.cpp
+++ b/examples/contribs/blobWar/Viewer/boardDraw.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/computerPlayer.cpp b/examples/contribs/blobWar/Viewer/computerPlayer.cpp
index 1b2a663..edbf88c 100644
--- a/examples/contribs/blobWar/Viewer/computerPlayer.cpp
+++ b/examples/contribs/blobWar/Viewer/computerPlayer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/computerPlayer.h b/examples/contribs/blobWar/Viewer/computerPlayer.h
index bd8e2c8..a313e54 100644
--- a/examples/contribs/blobWar/Viewer/computerPlayer.h
+++ b/examples/contribs/blobWar/Viewer/computerPlayer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/main.cpp b/examples/contribs/blobWar/Viewer/main.cpp
index f50125a..4c301a3 100644
--- a/examples/contribs/blobWar/Viewer/main.cpp
+++ b/examples/contribs/blobWar/Viewer/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/move.cpp b/examples/contribs/blobWar/Viewer/move.cpp
index 89e924b..6414409 100644
--- a/examples/contribs/blobWar/Viewer/move.cpp
+++ b/examples/contribs/blobWar/Viewer/move.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/move.h b/examples/contribs/blobWar/Viewer/move.h
index 3174efd..5c03a69 100644
--- a/examples/contribs/blobWar/Viewer/move.h
+++ b/examples/contribs/blobWar/Viewer/move.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/undo.cpp b/examples/contribs/blobWar/Viewer/undo.cpp
index fddb545..43a01bc 100644
--- a/examples/contribs/blobWar/Viewer/undo.cpp
+++ b/examples/contribs/blobWar/Viewer/undo.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/blobWar/Viewer/undo.h b/examples/contribs/blobWar/Viewer/undo.h
index 580d509..3925a44 100644
--- a/examples/contribs/blobWar/Viewer/undo.h
+++ b/examples/contribs/blobWar/Viewer/undo.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/contribs.pro b/examples/contribs/contribs.pro
index 45b6af1..8722c83 100644
--- a/examples/contribs/contribs.pro
+++ b/examples/contribs/contribs.pro
@@ -5,7 +5,6 @@ SUBDIRS       = agora \
 		blobWar \
 		cornerAxis \
 		dvonn \
-		terrain \
 		textureViewer \
 		thumbnail
 
@@ -13,3 +12,4 @@ SUBDIRS       = agora \
 # 3dsViewer
 # eventRecorder
 # quarto
+# terrain
diff --git a/examples/contribs/cornerAxis/cornerAxis.cpp b/examples/contribs/cornerAxis/cornerAxis.cpp
index 57d1ee1..22c8321 100644
--- a/examples/contribs/cornerAxis/cornerAxis.cpp
+++ b/examples/contribs/cornerAxis/cornerAxis.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/cornerAxis/cornerAxis.h b/examples/contribs/cornerAxis/cornerAxis.h
index 10ec47e..81d55e0 100644
--- a/examples/contribs/cornerAxis/cornerAxis.h
+++ b/examples/contribs/cornerAxis/cornerAxis.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/cornerAxis/cornerAxis.pro b/examples/contribs/cornerAxis/cornerAxis.pro
index 7407bf7..13eb99d 100644
--- a/examples/contribs/cornerAxis/cornerAxis.pro
+++ b/examples/contribs/cornerAxis/cornerAxis.pro
@@ -23,8 +23,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -166,9 +166,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -307,6 +304,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/cornerAxis/main.cpp b/examples/contribs/cornerAxis/main.cpp
index e0d2069..2a802be 100644
--- a/examples/contribs/cornerAxis/main.cpp
+++ b/examples/contribs/cornerAxis/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/board.cpp b/examples/contribs/dvonn/board.cpp
index 0466a6c..e942225 100644
--- a/examples/contribs/dvonn/board.cpp
+++ b/examples/contribs/dvonn/board.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -23,6 +23,7 @@
 #include "board.h"
 #include <algorithm>
 #include <sstream>
+#include <functional>
 
 using namespace std;
 using namespace dvonn;
diff --git a/examples/contribs/dvonn/board.h b/examples/contribs/dvonn/board.h
index 41fbc87..c6ec414 100644
--- a/examples/contribs/dvonn/board.h
+++ b/examples/contribs/dvonn/board.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/drawer.cpp b/examples/contribs/dvonn/drawer.cpp
index ed73d6d..2700654 100644
--- a/examples/contribs/dvonn/drawer.cpp
+++ b/examples/contribs/dvonn/drawer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/drawer.h b/examples/contribs/dvonn/drawer.h
index 082c4f4..f8b7a5b 100644
--- a/examples/contribs/dvonn/drawer.h
+++ b/examples/contribs/dvonn/drawer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/dvonn.pro b/examples/contribs/dvonn/dvonn.pro
index cc94968..29765d9 100644
--- a/examples/contribs/dvonn/dvonn.pro
+++ b/examples/contribs/dvonn/dvonn.pro
@@ -33,8 +33,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -176,9 +176,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -317,6 +314,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/dvonn/dvonnviewer.cpp b/examples/contribs/dvonn/dvonnviewer.cpp
index 8c0de39..61943dc 100644
--- a/examples/contribs/dvonn/dvonnviewer.cpp
+++ b/examples/contribs/dvonn/dvonnviewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/dvonnviewer.h b/examples/contribs/dvonn/dvonnviewer.h
index caef282..42512cb 100644
--- a/examples/contribs/dvonn/dvonnviewer.h
+++ b/examples/contribs/dvonn/dvonnviewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/dvonnwindowimpl.cpp b/examples/contribs/dvonn/dvonnwindowimpl.cpp
index 9e3cb6e..b2e9b19 100644
--- a/examples/contribs/dvonn/dvonnwindowimpl.cpp
+++ b/examples/contribs/dvonn/dvonnwindowimpl.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/dvonnwindowimpl.h b/examples/contribs/dvonn/dvonnwindowimpl.h
index 84dc5b3..98c59a4 100644
--- a/examples/contribs/dvonn/dvonnwindowimpl.h
+++ b/examples/contribs/dvonn/dvonnwindowimpl.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/game.cpp b/examples/contribs/dvonn/game.cpp
index 45e11e2..71d51c8 100644
--- a/examples/contribs/dvonn/game.cpp
+++ b/examples/contribs/dvonn/game.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/game.h b/examples/contribs/dvonn/game.h
index 4df08eb..7555766 100644
--- a/examples/contribs/dvonn/game.h
+++ b/examples/contribs/dvonn/game.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/dvonn/main.cpp b/examples/contribs/dvonn/main.cpp
index b989c0d..f5eff57 100644
--- a/examples/contribs/dvonn/main.cpp
+++ b/examples/contribs/dvonn/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/eventRecorder/eventRecorder.cpp b/examples/contribs/eventRecorder/eventRecorder.cpp
index 76b98ed..c83474c 100644
--- a/examples/contribs/eventRecorder/eventRecorder.cpp
+++ b/examples/contribs/eventRecorder/eventRecorder.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/eventRecorder/eventRecorder.h b/examples/contribs/eventRecorder/eventRecorder.h
index 8959e05..fb4f615 100644
--- a/examples/contribs/eventRecorder/eventRecorder.h
+++ b/examples/contribs/eventRecorder/eventRecorder.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/eventRecorder/eventRecorder.pro b/examples/contribs/eventRecorder/eventRecorder.pro
index 1f81d4b..36cb029 100644
--- a/examples/contribs/eventRecorder/eventRecorder.pro
+++ b/examples/contribs/eventRecorder/eventRecorder.pro
@@ -30,8 +30,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -173,9 +173,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -314,6 +311,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/eventRecorder/main.cpp b/examples/contribs/eventRecorder/main.cpp
index 8962c94..a3366d2 100644
--- a/examples/contribs/eventRecorder/main.cpp
+++ b/examples/contribs/eventRecorder/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/eventRecorder/viewer.cpp b/examples/contribs/eventRecorder/viewer.cpp
index f481edf..5cc2455 100644
--- a/examples/contribs/eventRecorder/viewer.cpp
+++ b/examples/contribs/eventRecorder/viewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/eventRecorder/viewer.h b/examples/contribs/eventRecorder/viewer.h
index 71d7e88..a961a16 100644
--- a/examples/contribs/eventRecorder/viewer.h
+++ b/examples/contribs/eventRecorder/viewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/glview.cpp b/examples/contribs/quarto/glview.cpp
index f919c5b..112e066 100644
--- a/examples/contribs/quarto/glview.cpp
+++ b/examples/contribs/quarto/glview.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/glview.h b/examples/contribs/quarto/glview.h
index 792094f..256f92d 100644
--- a/examples/contribs/quarto/glview.h
+++ b/examples/contribs/quarto/glview.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/jeu.cpp b/examples/contribs/quarto/jeu.cpp
index c835281..e9eee92 100644
--- a/examples/contribs/quarto/jeu.cpp
+++ b/examples/contribs/quarto/jeu.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/jeu.h b/examples/contribs/quarto/jeu.h
index ca32fc4..4414b32 100644
--- a/examples/contribs/quarto/jeu.h
+++ b/examples/contribs/quarto/jeu.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/main.cpp b/examples/contribs/quarto/main.cpp
index 516490b..a811c45 100644
--- a/examples/contribs/quarto/main.cpp
+++ b/examples/contribs/quarto/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/piece.cpp b/examples/contribs/quarto/piece.cpp
index 3841f10..6ec8311 100644
--- a/examples/contribs/quarto/piece.cpp
+++ b/examples/contribs/quarto/piece.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/piece.h b/examples/contribs/quarto/piece.h
index af4eadf..96c19a0 100644
--- a/examples/contribs/quarto/piece.h
+++ b/examples/contribs/quarto/piece.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/quarto.cpp b/examples/contribs/quarto/quarto.cpp
index aa31b7d..3456ce5 100644
--- a/examples/contribs/quarto/quarto.cpp
+++ b/examples/contribs/quarto/quarto.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/quarto.h b/examples/contribs/quarto/quarto.h
index ba01b78..b4cc561 100644
--- a/examples/contribs/quarto/quarto.h
+++ b/examples/contribs/quarto/quarto.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/quarto/quarto.pro b/examples/contribs/quarto/quarto.pro
index 06deb45..7ba45dd 100644
--- a/examples/contribs/quarto/quarto.pro
+++ b/examples/contribs/quarto/quarto.pro
@@ -27,8 +27,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -170,9 +170,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -311,6 +308,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/terrain/main.cpp b/examples/contribs/terrain/main.cpp
index 76ad02d..578e3ec 100644
--- a/examples/contribs/terrain/main.cpp
+++ b/examples/contribs/terrain/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/quadtree.cpp b/examples/contribs/terrain/quadtree.cpp
index 1ee8e64..2ee3e73 100644
--- a/examples/contribs/terrain/quadtree.cpp
+++ b/examples/contribs/terrain/quadtree.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/quadtree.h b/examples/contribs/terrain/quadtree.h
index 299ae31..30e520a 100644
--- a/examples/contribs/terrain/quadtree.h
+++ b/examples/contribs/terrain/quadtree.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/sky.cpp b/examples/contribs/terrain/sky.cpp
index 816810a..3f18bc1 100644
--- a/examples/contribs/terrain/sky.cpp
+++ b/examples/contribs/terrain/sky.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/sky.h b/examples/contribs/terrain/sky.h
index 030f8a3..bf17e88 100644
--- a/examples/contribs/terrain/sky.h
+++ b/examples/contribs/terrain/sky.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/terrain.cpp b/examples/contribs/terrain/terrain.cpp
index 20b2fae..664362c 100644
--- a/examples/contribs/terrain/terrain.cpp
+++ b/examples/contribs/terrain/terrain.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/terrain.h b/examples/contribs/terrain/terrain.h
index 49a1220..de913fc 100644
--- a/examples/contribs/terrain/terrain.h
+++ b/examples/contribs/terrain/terrain.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/terrain.pro b/examples/contribs/terrain/terrain.pro
index 4952679..6ec8f8d 100644
--- a/examples/contribs/terrain/terrain.pro
+++ b/examples/contribs/terrain/terrain.pro
@@ -23,8 +23,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -166,9 +166,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -307,6 +304,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/terrain/tree.cpp b/examples/contribs/terrain/tree.cpp
index e915c52..63b5e76 100644
--- a/examples/contribs/terrain/tree.cpp
+++ b/examples/contribs/terrain/tree.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/tree.h b/examples/contribs/terrain/tree.h
index 88132b7..7aced22 100644
--- a/examples/contribs/terrain/tree.h
+++ b/examples/contribs/terrain/tree.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/viewer.cpp b/examples/contribs/terrain/viewer.cpp
index 69186d2..bf5da32 100644
--- a/examples/contribs/terrain/viewer.cpp
+++ b/examples/contribs/terrain/viewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/viewer.h b/examples/contribs/terrain/viewer.h
index 237ae60..447f7fc 100644
--- a/examples/contribs/terrain/viewer.h
+++ b/examples/contribs/terrain/viewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/water.cpp b/examples/contribs/terrain/water.cpp
index cf339d6..a877ea9 100644
--- a/examples/contribs/terrain/water.cpp
+++ b/examples/contribs/terrain/water.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/terrain/water.h b/examples/contribs/terrain/water.h
index 24e5705..20de2db 100644
--- a/examples/contribs/terrain/water.h
+++ b/examples/contribs/terrain/water.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/textureViewer/main.cpp b/examples/contribs/textureViewer/main.cpp
index 66c4eef..dd56322 100644
--- a/examples/contribs/textureViewer/main.cpp
+++ b/examples/contribs/textureViewer/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/textureViewer/textureViewer.cpp b/examples/contribs/textureViewer/textureViewer.cpp
index 5f5527f..efcfb21 100644
--- a/examples/contribs/textureViewer/textureViewer.cpp
+++ b/examples/contribs/textureViewer/textureViewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/textureViewer/textureViewer.h b/examples/contribs/textureViewer/textureViewer.h
index 66542df..c799965 100644
--- a/examples/contribs/textureViewer/textureViewer.h
+++ b/examples/contribs/textureViewer/textureViewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/textureViewer/textureViewer.pro b/examples/contribs/textureViewer/textureViewer.pro
index d8749d8..f50f74a 100644
--- a/examples/contribs/textureViewer/textureViewer.pro
+++ b/examples/contribs/textureViewer/textureViewer.pro
@@ -25,8 +25,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -168,9 +168,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -309,6 +306,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/contribs/thumbnail/main.cpp b/examples/contribs/thumbnail/main.cpp
index 62ee7f2..cc0f121 100644
--- a/examples/contribs/thumbnail/main.cpp
+++ b/examples/contribs/thumbnail/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/thumbnail/thumbnail.cpp b/examples/contribs/thumbnail/thumbnail.cpp
index a1d7cdf..c175ae8 100644
--- a/examples/contribs/thumbnail/thumbnail.cpp
+++ b/examples/contribs/thumbnail/thumbnail.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/thumbnail/thumbnail.h b/examples/contribs/thumbnail/thumbnail.h
index ab46dae..5dfc296 100644
--- a/examples/contribs/thumbnail/thumbnail.h
+++ b/examples/contribs/thumbnail/thumbnail.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/contribs/thumbnail/thumbnail.pro b/examples/contribs/thumbnail/thumbnail.pro
index 3b72531..8fd7db6 100644
--- a/examples/contribs/thumbnail/thumbnail.pro
+++ b/examples/contribs/thumbnail/thumbnail.pro
@@ -24,8 +24,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -167,9 +167,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -308,6 +305,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../../qglviewer.rc
+      exists( ../../qglviewer.rc ) {
+	     RC_FILE = ../../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/drawLight/drawLight.cpp b/examples/drawLight/drawLight.cpp
index a6b478c..f7af4f6 100644
--- a/examples/drawLight/drawLight.cpp
+++ b/examples/drawLight/drawLight.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -36,12 +36,18 @@ void Viewer::draw()
 
   pos[3] = 1.0;
   // Spot light
-  light1->getPosition(pos[0], pos[1], pos[2]);
+  Vec pos1 = light1->position();
+  pos[0] = float(pos1.x);
+  pos[1] = float(pos1.y);
+  pos[2] = float(pos1.z);
   glLightfv(GL_LIGHT1, GL_POSITION, pos);
   glLightfv(GL_LIGHT1, GL_SPOT_DIRECTION, light1->inverseTransformOf(Vec(0,0,1)));
 
   // Point light
-  light2->getPosition(pos[0], pos[1], pos[2]);
+  Vec pos2 = light2->position();
+  pos[0] = float(pos2.x);
+  pos[1] = float(pos2.y);
+  pos[2] = float(pos2.z);
   glLightfv(GL_LIGHT2, GL_POSITION, pos);
 
   // Draws the spiral
diff --git a/examples/drawLight/drawLight.h b/examples/drawLight/drawLight.h
index 20b9d74..0456d60 100644
--- a/examples/drawLight/drawLight.h
+++ b/examples/drawLight/drawLight.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/drawLight/drawLight.pro b/examples/drawLight/drawLight.pro
index 0be29bc..f2a999b 100644
--- a/examples/drawLight/drawLight.pro
+++ b/examples/drawLight/drawLight.pro
@@ -18,8 +18,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -161,9 +161,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -302,6 +299,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/drawLight/main.cpp b/examples/drawLight/main.cpp
index dbb6078..7f6e5c8 100644
--- a/examples/drawLight/main.cpp
+++ b/examples/drawLight/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/fastDraw/fastDraw.cpp b/examples/fastDraw/fastDraw.cpp
index 54c36d7..633cd81 100644
--- a/examples/fastDraw/fastDraw.cpp
+++ b/examples/fastDraw/fastDraw.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/fastDraw/fastDraw.h b/examples/fastDraw/fastDraw.h
index 95479c8..a41b6c3 100644
--- a/examples/fastDraw/fastDraw.h
+++ b/examples/fastDraw/fastDraw.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/fastDraw/fastDraw.pro b/examples/fastDraw/fastDraw.pro
index 3ea0a78..c896298 100644
--- a/examples/fastDraw/fastDraw.pro
+++ b/examples/fastDraw/fastDraw.pro
@@ -20,8 +20,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -163,9 +163,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -304,6 +301,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/fastDraw/main.cpp b/examples/fastDraw/main.cpp
index af151ce..e4b81d6 100644
--- a/examples/fastDraw/main.cpp
+++ b/examples/fastDraw/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frameTransform/frameTransform.cpp b/examples/frameTransform/frameTransform.cpp
index c563593..c5224c1 100644
--- a/examples/frameTransform/frameTransform.cpp
+++ b/examples/frameTransform/frameTransform.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frameTransform/frameTransform.h b/examples/frameTransform/frameTransform.h
index ad20a57..09f3405 100644
--- a/examples/frameTransform/frameTransform.h
+++ b/examples/frameTransform/frameTransform.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frameTransform/frameTransform.pro b/examples/frameTransform/frameTransform.pro
index 5cecd43..54cea32 100644
--- a/examples/frameTransform/frameTransform.pro
+++ b/examples/frameTransform/frameTransform.pro
@@ -35,8 +35,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -178,9 +178,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -319,6 +316,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/frameTransform/main.cpp b/examples/frameTransform/main.cpp
index 693ccd5..b13a7f4 100644
--- a/examples/frameTransform/main.cpp
+++ b/examples/frameTransform/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frustumCulling/box.cpp b/examples/frustumCulling/box.cpp
index 190a7d5..a9f6b0d 100644
--- a/examples/frustumCulling/box.cpp
+++ b/examples/frustumCulling/box.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frustumCulling/box.h b/examples/frustumCulling/box.h
index 5b90b01..bc6ab22 100644
--- a/examples/frustumCulling/box.h
+++ b/examples/frustumCulling/box.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frustumCulling/cullingCamera.cpp b/examples/frustumCulling/cullingCamera.cpp
index d3b5266..9ad2059 100644
--- a/examples/frustumCulling/cullingCamera.cpp
+++ b/examples/frustumCulling/cullingCamera.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frustumCulling/cullingCamera.h b/examples/frustumCulling/cullingCamera.h
index 6d87f27..20c37ab 100644
--- a/examples/frustumCulling/cullingCamera.h
+++ b/examples/frustumCulling/cullingCamera.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frustumCulling/frustumCulling.cpp b/examples/frustumCulling/frustumCulling.cpp
index 8ed89b5..e3b8615 100644
--- a/examples/frustumCulling/frustumCulling.cpp
+++ b/examples/frustumCulling/frustumCulling.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frustumCulling/frustumCulling.h b/examples/frustumCulling/frustumCulling.h
index 90610bb..8a26627 100644
--- a/examples/frustumCulling/frustumCulling.h
+++ b/examples/frustumCulling/frustumCulling.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/frustumCulling/frustumCulling.pro b/examples/frustumCulling/frustumCulling.pro
index eec684d..e7cafe6 100644
--- a/examples/frustumCulling/frustumCulling.pro
+++ b/examples/frustumCulling/frustumCulling.pro
@@ -22,8 +22,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -165,9 +165,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -306,6 +303,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/frustumCulling/main.cpp b/examples/frustumCulling/main.cpp
index 1434f33..d9cad24 100644
--- a/examples/frustumCulling/main.cpp
+++ b/examples/frustumCulling/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/interface/interface.cpp b/examples/interface/interface.cpp
index ef43e86..9b54a3d 100644
--- a/examples/interface/interface.cpp
+++ b/examples/interface/interface.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/interface/interface.h b/examples/interface/interface.h
index 947561b..852b8bf 100644
--- a/examples/interface/interface.h
+++ b/examples/interface/interface.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/interface/interface.pro b/examples/interface/interface.pro
index b420f61..74953d9 100644
--- a/examples/interface/interface.pro
+++ b/examples/interface/interface.pro
@@ -32,8 +32,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -175,9 +175,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -316,6 +313,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/interface/main.cpp b/examples/interface/main.cpp
index 4ced9e2..d49a679 100644
--- a/examples/interface/main.cpp
+++ b/examples/interface/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/keyFrames/keyFrames.cpp b/examples/keyFrames/keyFrames.cpp
index 59134d6..6fda582 100644
--- a/examples/keyFrames/keyFrames.cpp
+++ b/examples/keyFrames/keyFrames.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/keyFrames/keyFrames.h b/examples/keyFrames/keyFrames.h
index b88291c..6f4adc5 100644
--- a/examples/keyFrames/keyFrames.h
+++ b/examples/keyFrames/keyFrames.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/keyFrames/keyFrames.pro b/examples/keyFrames/keyFrames.pro
index 5d5105a..2132c1f 100644
--- a/examples/keyFrames/keyFrames.pro
+++ b/examples/keyFrames/keyFrames.pro
@@ -28,8 +28,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -171,9 +171,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -312,6 +309,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/keyFrames/main.cpp b/examples/keyFrames/main.cpp
index 9f3f818..36d8317 100644
--- a/examples/keyFrames/main.cpp
+++ b/examples/keyFrames/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/keyboardAndMouse/keyboardAndMouse.cpp b/examples/keyboardAndMouse/keyboardAndMouse.cpp
index b81b0a6..421c3d2 100644
--- a/examples/keyboardAndMouse/keyboardAndMouse.cpp
+++ b/examples/keyboardAndMouse/keyboardAndMouse.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/keyboardAndMouse/keyboardAndMouse.h b/examples/keyboardAndMouse/keyboardAndMouse.h
index 7321a18..d06ebe1 100644
--- a/examples/keyboardAndMouse/keyboardAndMouse.h
+++ b/examples/keyboardAndMouse/keyboardAndMouse.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/keyboardAndMouse/keyboardAndMouse.pro b/examples/keyboardAndMouse/keyboardAndMouse.pro
index a67f0c6..844f831 100644
--- a/examples/keyboardAndMouse/keyboardAndMouse.pro
+++ b/examples/keyboardAndMouse/keyboardAndMouse.pro
@@ -28,8 +28,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -171,9 +171,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -312,6 +309,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/keyboardAndMouse/main.cpp b/examples/keyboardAndMouse/main.cpp
index daf02f1..7488d74 100644
--- a/examples/keyboardAndMouse/main.cpp
+++ b/examples/keyboardAndMouse/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/luxo/luxo.cpp b/examples/luxo/luxo.cpp
index e27ba10..4717bc9 100644
--- a/examples/luxo/luxo.cpp
+++ b/examples/luxo/luxo.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/luxo/luxo.h b/examples/luxo/luxo.h
index ff95e0d..7e04ef8 100644
--- a/examples/luxo/luxo.h
+++ b/examples/luxo/luxo.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/luxo/luxo.pro b/examples/luxo/luxo.pro
index 1863779..4d4ff13 100644
--- a/examples/luxo/luxo.pro
+++ b/examples/luxo/luxo.pro
@@ -26,8 +26,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -169,9 +169,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -310,6 +307,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/luxo/main.cpp b/examples/luxo/main.cpp
index 9d5ed17..f1615e9 100644
--- a/examples/luxo/main.cpp
+++ b/examples/luxo/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/manipulatedFrame/main.cpp b/examples/manipulatedFrame/main.cpp
index 8cecc7f..b9d15a8 100644
--- a/examples/manipulatedFrame/main.cpp
+++ b/examples/manipulatedFrame/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/manipulatedFrame/manipulatedFrame.cpp b/examples/manipulatedFrame/manipulatedFrame.cpp
index e090123..3601300 100644
--- a/examples/manipulatedFrame/manipulatedFrame.cpp
+++ b/examples/manipulatedFrame/manipulatedFrame.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/manipulatedFrame/manipulatedFrame.h b/examples/manipulatedFrame/manipulatedFrame.h
index 8d85bbf..58aba9b 100644
--- a/examples/manipulatedFrame/manipulatedFrame.h
+++ b/examples/manipulatedFrame/manipulatedFrame.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/manipulatedFrame/manipulatedFrame.pro b/examples/manipulatedFrame/manipulatedFrame.pro
index 4bcb0d1..985222f 100644
--- a/examples/manipulatedFrame/manipulatedFrame.pro
+++ b/examples/manipulatedFrame/manipulatedFrame.pro
@@ -22,8 +22,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -165,9 +165,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -306,6 +303,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/mouseGrabber/main.cpp b/examples/mouseGrabber/main.cpp
index ed55da1..181ad63 100644
--- a/examples/mouseGrabber/main.cpp
+++ b/examples/mouseGrabber/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/mouseGrabber/mouseGrabber.cpp b/examples/mouseGrabber/mouseGrabber.cpp
index dda9d26..37c60c9 100644
--- a/examples/mouseGrabber/mouseGrabber.cpp
+++ b/examples/mouseGrabber/mouseGrabber.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/mouseGrabber/mouseGrabber.h b/examples/mouseGrabber/mouseGrabber.h
index d1a21fa..ad7dde6 100644
--- a/examples/mouseGrabber/mouseGrabber.h
+++ b/examples/mouseGrabber/mouseGrabber.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/mouseGrabber/mouseGrabber.pro b/examples/mouseGrabber/mouseGrabber.pro
index 40807be..c3c8d15 100644
--- a/examples/mouseGrabber/mouseGrabber.pro
+++ b/examples/mouseGrabber/mouseGrabber.pro
@@ -32,8 +32,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -175,9 +175,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -316,6 +313,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/multiSelect/main.cpp b/examples/multiSelect/main.cpp
index 1222eda..d8b8eb5 100644
--- a/examples/multiSelect/main.cpp
+++ b/examples/multiSelect/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiSelect/manipulatedFrameSetConstraint.cpp b/examples/multiSelect/manipulatedFrameSetConstraint.cpp
index a6f6039..13106ac 100644
--- a/examples/multiSelect/manipulatedFrameSetConstraint.cpp
+++ b/examples/multiSelect/manipulatedFrameSetConstraint.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiSelect/manipulatedFrameSetConstraint.h b/examples/multiSelect/manipulatedFrameSetConstraint.h
index 23da8f1..c1b70c5 100644
--- a/examples/multiSelect/manipulatedFrameSetConstraint.h
+++ b/examples/multiSelect/manipulatedFrameSetConstraint.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiSelect/multiSelect.cpp b/examples/multiSelect/multiSelect.cpp
index 04faade..eb3c838 100644
--- a/examples/multiSelect/multiSelect.cpp
+++ b/examples/multiSelect/multiSelect.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiSelect/multiSelect.h b/examples/multiSelect/multiSelect.h
index 70de52b..5eff606 100644
--- a/examples/multiSelect/multiSelect.h
+++ b/examples/multiSelect/multiSelect.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiSelect/multiSelect.pro b/examples/multiSelect/multiSelect.pro
index e354177..82c6a20 100644
--- a/examples/multiSelect/multiSelect.pro
+++ b/examples/multiSelect/multiSelect.pro
@@ -26,8 +26,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -169,9 +169,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -310,6 +307,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/multiSelect/object.cpp b/examples/multiSelect/object.cpp
index afc83a6..b3ba2b3 100644
--- a/examples/multiSelect/object.cpp
+++ b/examples/multiSelect/object.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiSelect/object.h b/examples/multiSelect/object.h
index bf2d9bf..fe2e371 100644
--- a/examples/multiSelect/object.h
+++ b/examples/multiSelect/object.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiView/main.cpp b/examples/multiView/main.cpp
index fa6467d..c9246d6 100644
--- a/examples/multiView/main.cpp
+++ b/examples/multiView/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiView/multiView.cpp b/examples/multiView/multiView.cpp
index 00b68b0..a9c4524 100644
--- a/examples/multiView/multiView.cpp
+++ b/examples/multiView/multiView.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiView/multiView.h b/examples/multiView/multiView.h
index 5523025..42a3ff0 100644
--- a/examples/multiView/multiView.h
+++ b/examples/multiView/multiView.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/multiView/multiView.pro b/examples/multiView/multiView.pro
index cfa3b45..4bd4f53 100644
--- a/examples/multiView/multiView.pro
+++ b/examples/multiView/multiView.pro
@@ -21,8 +21,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -164,9 +164,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -305,6 +302,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/overpainting/main.cpp b/examples/overpainting/main.cpp
index 429016a..72732d4 100644
--- a/examples/overpainting/main.cpp
+++ b/examples/overpainting/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/overpainting/overpainting.pro b/examples/overpainting/overpainting.pro
index c3bd442..75e854b 100644
--- a/examples/overpainting/overpainting.pro
+++ b/examples/overpainting/overpainting.pro
@@ -20,8 +20,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -163,9 +163,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -304,6 +301,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/overpainting/viewer.cpp b/examples/overpainting/viewer.cpp
index 3fe33a9..2b5c66d 100644
--- a/examples/overpainting/viewer.cpp
+++ b/examples/overpainting/viewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/overpainting/viewer.h b/examples/overpainting/viewer.h
index 4fef744..29f5c18 100644
--- a/examples/overpainting/viewer.h
+++ b/examples/overpainting/viewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/screenCoordSystem/main.cpp b/examples/screenCoordSystem/main.cpp
index 766dfd5..f75689a 100644
--- a/examples/screenCoordSystem/main.cpp
+++ b/examples/screenCoordSystem/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/screenCoordSystem/screenCoordSystem.cpp b/examples/screenCoordSystem/screenCoordSystem.cpp
index e4223f7..d606338 100644
--- a/examples/screenCoordSystem/screenCoordSystem.cpp
+++ b/examples/screenCoordSystem/screenCoordSystem.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/screenCoordSystem/screenCoordSystem.h b/examples/screenCoordSystem/screenCoordSystem.h
index 0d8752a..368e3b6 100644
--- a/examples/screenCoordSystem/screenCoordSystem.h
+++ b/examples/screenCoordSystem/screenCoordSystem.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/screenCoordSystem/screenCoordSystem.pro b/examples/screenCoordSystem/screenCoordSystem.pro
index 6058f44..4086ded 100644
--- a/examples/screenCoordSystem/screenCoordSystem.pro
+++ b/examples/screenCoordSystem/screenCoordSystem.pro
@@ -24,8 +24,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -167,9 +167,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -308,6 +305,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/select/main.cpp b/examples/select/main.cpp
index 0543d9f..da076ab 100644
--- a/examples/select/main.cpp
+++ b/examples/select/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/select/select.cpp b/examples/select/select.cpp
index 85079b3..797b8af 100644
--- a/examples/select/select.cpp
+++ b/examples/select/select.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/select/select.h b/examples/select/select.h
index 7d82748..155d611 100644
--- a/examples/select/select.h
+++ b/examples/select/select.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/select/select.pro b/examples/select/select.pro
index 3dd3f2f..da57ec7 100644
--- a/examples/select/select.pro
+++ b/examples/select/select.pro
@@ -23,8 +23,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -166,9 +166,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -307,6 +304,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/simpleViewer/main.cpp b/examples/simpleViewer/main.cpp
index 2408483..ac2f0d4 100644
--- a/examples/simpleViewer/main.cpp
+++ b/examples/simpleViewer/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/simpleViewer/simpleViewer.cpp b/examples/simpleViewer/simpleViewer.cpp
index cc1b4a9..184f68b 100644
--- a/examples/simpleViewer/simpleViewer.cpp
+++ b/examples/simpleViewer/simpleViewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/simpleViewer/simpleViewer.h b/examples/simpleViewer/simpleViewer.h
index ad20a57..09f3405 100644
--- a/examples/simpleViewer/simpleViewer.h
+++ b/examples/simpleViewer/simpleViewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/simpleViewer/simpleViewer.pro b/examples/simpleViewer/simpleViewer.pro
index 837fc1e..b00ef1b 100644
--- a/examples/simpleViewer/simpleViewer.pro
+++ b/examples/simpleViewer/simpleViewer.pro
@@ -23,8 +23,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -166,9 +166,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -307,6 +304,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/standardCamera/cameraViewer.cpp b/examples/standardCamera/cameraViewer.cpp
index 5ae8d0c..9a1c0b4 100644
--- a/examples/standardCamera/cameraViewer.cpp
+++ b/examples/standardCamera/cameraViewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/standardCamera/cameraViewer.h b/examples/standardCamera/cameraViewer.h
index 5aa0342..619d5f8 100644
--- a/examples/standardCamera/cameraViewer.h
+++ b/examples/standardCamera/cameraViewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/standardCamera/main.cpp b/examples/standardCamera/main.cpp
index 5875142..58d4179 100644
--- a/examples/standardCamera/main.cpp
+++ b/examples/standardCamera/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/standardCamera/standardCamera.cpp b/examples/standardCamera/standardCamera.cpp
index 6a3a085..43e8cc2 100644
--- a/examples/standardCamera/standardCamera.cpp
+++ b/examples/standardCamera/standardCamera.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -32,15 +32,15 @@ StandardCamera::StandardCamera()
   orthoSize = 1.0;
 }
 
-float StandardCamera::zNear() const
+qreal StandardCamera::zNear() const
 {
   if (standard)
-	return 0.001f;
+	return 0.001;
   else
 	return Camera::zNear();
 }
 
-float StandardCamera::zFar() const
+qreal StandardCamera::zFar() const
 {
   if (standard)
 	return 1000.0;
@@ -51,9 +51,9 @@ float StandardCamera::zFar() const
 void StandardCamera::changeOrthoFrustumSize(int delta)
 {
   if (delta > 0)
-	orthoSize *= 1.1f;
+	orthoSize *= 1.1;
   else
-	orthoSize /= 1.1f;
+	orthoSize /= 1.1;
 }
 
 void StandardCamera::getOrthoWidthHeight(GLdouble &halfWidth, GLdouble &halfHeight) const
diff --git a/examples/standardCamera/standardCamera.h b/examples/standardCamera/standardCamera.h
index fa8ee4f..18b3400 100644
--- a/examples/standardCamera/standardCamera.h
+++ b/examples/standardCamera/standardCamera.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
@@ -27,8 +27,8 @@ class StandardCamera : public qglviewer::Camera
 public :
   StandardCamera();
 
-  virtual float zNear() const;
-  virtual float zFar() const;
+  virtual qreal zNear() const;
+  virtual qreal zFar() const;
 
   void toggleMode() { standard = !standard; }
   bool isStandard() { return standard; }
diff --git a/examples/standardCamera/standardCamera.pro b/examples/standardCamera/standardCamera.pro
index 197c48d..6b3d7c1 100644
--- a/examples/standardCamera/standardCamera.pro
+++ b/examples/standardCamera/standardCamera.pro
@@ -23,8 +23,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -166,9 +166,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -307,6 +304,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/examples/standardCamera/viewer.cpp b/examples/standardCamera/viewer.cpp
index 6e3d889..8cabdbe 100644
--- a/examples/standardCamera/viewer.cpp
+++ b/examples/standardCamera/viewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/standardCamera/viewer.h b/examples/standardCamera/viewer.h
index 8211d1b..bb7ecae 100644
--- a/examples/standardCamera/viewer.h
+++ b/examples/standardCamera/viewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/stereoViewer/main.cpp b/examples/stereoViewer/main.cpp
index 62fbbda..81c30d2 100644
--- a/examples/stereoViewer/main.cpp
+++ b/examples/stereoViewer/main.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/stereoViewer/stereoViewer.cpp b/examples/stereoViewer/stereoViewer.cpp
index a89d5b8..35350af 100644
--- a/examples/stereoViewer/stereoViewer.cpp
+++ b/examples/stereoViewer/stereoViewer.cpp
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/stereoViewer/stereoViewer.h b/examples/stereoViewer/stereoViewer.h
index ad20a57..09f3405 100644
--- a/examples/stereoViewer/stereoViewer.h
+++ b/examples/stereoViewer/stereoViewer.h
@@ -2,7 +2,7 @@
 
  Copyright (C) 2002-2014 Gilles Debunne. All rights reserved.
 
- This file is part of the QGLViewer library version 2.5.3.
+ This file is part of the QGLViewer library version 2.6.1.
 
  http://www.libqglviewer.com - contact at libqglviewer.com
 
diff --git a/examples/stereoViewer/stereoViewer.pro b/examples/stereoViewer/stereoViewer.pro
index 960ec13..075d3bf 100644
--- a/examples/stereoViewer/stereoViewer.pro
+++ b/examples/stereoViewer/stereoViewer.pro
@@ -19,8 +19,8 @@ CONFIG += qt opengl warn_on thread rtti console embed_manifest_exe no_keywords
 # The remaining of this configuration tries to automatically detect the library paths.
 # In your applications, you can probably simply use (see doc/compilation.html for details) :
 
-#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.5.3
-#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.5.3/QGLViewer -lQGLViewer2
+#INCLUDEPATH *= C:/Users/debunne/Documents/libQGLViewer-2.6.1
+#LIBS *= -LC:/Users/debunne/Documents/libQGLViewer-2.6.1/QGLViewer -lQGLViewer2
 
 # Change these paths according to your configuration.
 
@@ -162,9 +162,6 @@ unix {
   release:QMAKE_CFLAGS_RELEASE -= -g
   release:QMAKE_CXXFLAGS_RELEASE -= -g
 
-  # Qt 4.8 removed the GLU dependency
-  QMAKE_LIBS_OPENGL *= -lGLU
-
   # Intermediate files are created in an hidden folder
   MOC_DIR = .moc
   OBJECTS_DIR = .obj
@@ -303,6 +300,11 @@ macx|darwin-g++ {
 
 win32 {
    !designer {
-	   RC_FILE = ../qglviewer.rc
+      exists( ../qglviewer.rc ) {
+	     RC_FILE = ../qglviewer.rc
+	  }
+      exists( ../examples/qglviewer.rc ) {
+	     RC_FILE = ../examples/qglviewer.rc
+	  }
    }
 }
diff --git a/libQGLViewer-2.5.3.pro b/libQGLViewer-2.6.1.pro
similarity index 100%
rename from libQGLViewer-2.5.3.pro
rename to libQGLViewer-2.6.1.pro

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/libqglviewer.git



More information about the debian-science-commits mailing list