class mrpt::gui::internal::NanoGUICanvasHeadless
Overview
Specialization of CGlCanvasBaseHeadless for nanogui events.
Used to keep track of mouse events and update camera parameters.
See also:
#include <mrpt/gui/internal/NanoGUICanvasHeadless.h> class NanoGUICanvasHeadless: public mrpt::gui::CGlCanvasBaseHeadless { public: // fields static float SENSIBILITY_DEG_PER_PIXEL = 0.1f; // methods void mouseMotionEvent( const nanogui::Vector2i& p, const nanogui::Vector2i& rel, int button, int modifiers ); void mouseButtonEvent( const nanogui::Vector2i& p, int button, bool down, int modifiers ); void scrollEvent( const nanogui::Vector2i& p, const nanogui::Vector2f& rel ); float getRollDegrees() const; virtual void setCameraProjective(bool is); bool isCameraProjective() const; virtual void setCameraFOV(float FOV); float cameraFOV() const; void getLastMousePosition( int& x, int& y ) const; void setOpenGLSceneRef(mrpt::opengl::Scene::Ptr scene); };
Inherited Members
public: // structs struct CamaraParams; // methods void setMinimumZoom(float zoom); void setMaximumZoom(float zoom); void setMousePos(int x, int y); void setMouseClicked(bool is); void updateLastPos(int x, int y); void resizeViewport(int w, int h); void updateZoom(CamaraParams& params, int x, int y) const; void updateZoom(CamaraParams& params, float delta) const; void updateRotate(CamaraParams& params, int x, int y) const; void updateOrbitCamera(CamaraParams& params, int x, int y) const; void updatePan(CamaraParams& params, int x, int y) const; void updateRoll(CamaraParams& params, int x, int y, float scale = 0.15f) const; CamaraParams cameraParams() const; const CamaraParams& getRefCameraParams() const; virtual void setCameraParams(const CamaraParams& params); mrpt::opengl::CCamera& updateCameraParams(mrpt::opengl::CCamera& cam) const; void setUseCameraFromScene(bool is); bool getUseCameraFromScene() const; virtual void setCameraPointing(float pointX, float pointY, float pointZ); float getCameraPointingX() const; float getCameraPointingY() const; float getCameraPointingZ() const; virtual void setZoomDistance(float zoom); float getZoomDistance() const; virtual void setAzimuthDegrees(float ang); float getAzimuthDegrees() const; virtual void setElevationDegrees(float ang); float getElevationDegrees() const; virtual void OnUserManuallyMovesCamera( float new_cameraPointingX, float new_cameraPointingY, float new_cameraPointingZ, float new_cameraZoomDistance, float new_cameraElevationDeg, float new_cameraAzimuthDeg ); mrpt::opengl::Scene::Ptr& getOpenGLSceneRef();