|
orca-robotics INTRODUCTION Overview Download and Install Quick Start Documentation Publications REPOSITORY Interfaces Components Libraries Utilities Software Map DEVELOPER Tutorials Examples Dev Guide Dashboard Wiki login/pass: orca/orca PEOPLE Contributors Users Project Download Mailing lists
|
viewhandler.h00001 #ifndef ORCAVIEW3D_VIEWHANDLER_H 00002 #define ORCAVIEW3D_VIEWHANDLER_H 00003 00004 #include <QMouseEvent> 00005 #include <cmath> 00006 #include <assert.h> 00007 #include <orcaqgui3d/coordinateframe.h> 00008 00009 namespace orcaview3d { 00010 00016 class ViewHandler 00017 { 00018 00019 public: 00020 00021 ViewHandler(); 00022 00023 // event handlers: these aren't actually hooked up to Qt, 00024 // they have to be called explicitly. 00025 void mousePressEvent( QMouseEvent* ); 00026 // Returns true if the viewpoint has been modified 00027 bool mouseMoveEvent( QMouseEvent* ); 00028 // Returns true if the viewpoint has been modified. 00029 // Sets 'needResize' if the eindow needs a resizeEvent (eg due to a zoom operation) 00030 bool keyPressEvent(QKeyEvent *e, bool &needResize); 00031 00032 const orcaqgui3d::CoordinateFrame &pose() const { return cameraPose_; } 00033 double zoomFactor() const { return zoomFactor_; } 00034 00035 std::string keyDescription() const; 00036 00037 private: 00038 00039 void reset(); 00040 00041 QPointF mouseDownPnt_; 00042 QPoint prevDragPos_; 00043 00044 // Current viewpoint 00045 orcaqgui3d::CoordinateFrame cameraPose_; 00046 00047 double zoomFactor_; 00048 }; 00049 00050 } 00051 00052 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)
1.4.5