MRPT
1.9.9
|
A headless dummy implementation of CGlCanvasBase: can be used to keep track of user UI mouse events and update the camera parameters, with actual rendering being delegated to someone else.
Definition at line 261 of file CGlCanvasBase.h.
#include <mrpt/gui/CGlCanvasBase.h>
Public Member Functions | |
CGlCanvasBaseHeadless ()=default | |
virtual | ~CGlCanvasBaseHeadless () override=default |
void | setMinimumZoom (float zoom) |
Sets the minimum of the zoom See also setMaximumZoom(float) More... | |
void | setMaximumZoom (float zoom) |
Sets the maximum of the zoom See also setMinimumZoom(float) More... | |
void | setMousePos (int x, int y) |
Saves the click position of the mouse See also setMouseClicked(bool) More... | |
void | setMouseClicked (bool is) |
Sets the property mouseClicked By default, this property is false. More... | |
void | updateLastPos (int x, int y) |
Sets the last mouse position. More... | |
void | resizeViewport (int w, int h) |
Calls the glViewport function. More... | |
void | clearColors () |
Calls the glClearColor function See also setClearColors(float, float, float, float) More... | |
void | updateZoom (CamaraParams ¶ms, int x, int y) const |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the zoom of the CameraParams. More... | |
void | updateZoom (CamaraParams ¶ms, float delta) const |
This function for the wheel event It gets a reference to CamaraParams, delta and updates the zoom of the CameraParams. More... | |
void | updateRotate (CamaraParams ¶ms, int x, int y) const |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the elevation and azimuth. More... | |
void | updateOrbitCamera (CamaraParams ¶ms, int x, int y) const |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the elevation and azimuth. More... | |
void | updatePan (CamaraParams ¶ms, int x, int y) const |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the pointing of the camera. More... | |
CamaraParams | cameraParams () const |
Returns a copy of CamaraParams See also getRefCameraParams(), setCameraParams(const CamaraParams &) More... | |
const CamaraParams & | getRefCameraParams () const |
Returns a reference to CamaraParams See also cameraParams(), setCameraParams(const CamaraParams &) More... | |
virtual void | setCameraParams (const CamaraParams ¶ms) |
Sets the CamaraParams See also cameraParams(), getRefCameraParams() More... | |
mrpt::opengl::CCamera & | updateCameraParams (mrpt::opengl::CCamera &cam) const |
This function gets a reference to mrpt::opengl::CCamera and updates the camera parameters(pointing, zoom, azimuth, elevation, IsProjective, FOV) More... | |
void | setUseCameraFromScene (bool is) |
If set to true (default=false), the cameraPointingX,... More... | |
bool | getUseCameraFromScene () const |
See also void setUseCameraFromScene(bool) More... | |
virtual void | setCameraPointing (float pointX, float pointY, float pointZ) |
Saves the pointing of the camera See also getCameraPointingX(), getCameraPointingY(), getCameraPointingZ() More... | |
float | getCameraPointingX () const |
Returns the x pointing of the camera See also setCameraPointing(float, float, float) More... | |
float | getCameraPointingY () const |
Returns the y pointing of the camera See also setCameraPointing(float, float, float) More... | |
float | getCameraPointingZ () const |
Returns the z pointing of the camera See also setCameraPointing(float, float, float) More... | |
virtual void | setZoomDistance (float zoom) |
Saves camera zooming See also getZoomDistance() More... | |
float | getZoomDistance () const |
Returns a zoom See also setZoomDistance(float) More... | |
virtual void | setAzimuthDegrees (float ang) |
Saves the degrees of the azimuth camera See also getAzimuthDegrees() More... | |
float | getAzimuthDegrees () const |
Returns a azimuth degrees See also setAzimuthDegrees(float) More... | |
virtual void | setElevationDegrees (float ang) |
Saves the degrees of the elevation camera See also getElevationDegrees() More... | |
float | getElevationDegrees () const |
Returns a elevation degrees See also setElevationDegrees(float) More... | |
virtual void | setCameraProjective (bool is) |
bool | isCameraProjective () const |
virtual void | setCameraFOV (float FOV) |
float | cameraFOV () const |
void | setClearColors (float r, float g, float b, float a=1.0f) |
Sets the RGBA colors for glClearColor See also clearColors(), getClearColorR(), getClearColorG(),getClearColorB(), getClearColorA() More... | |
float | getClearColorR () const |
float | getClearColorG () const |
float | getClearColorB () const |
float | getClearColorA () const |
virtual void | OnUserManuallyMovesCamera (float new_cameraPointingX, float new_cameraPointingY, float new_cameraPointingZ, float new_cameraZoomDistance, float new_cameraElevationDeg, float new_cameraAzimuthDeg) |
Overload this method to limit the capabilities of the user to move the camera using the mouse. More... | |
void | getLastMousePosition (int &x, int &y) const |
mrpt::opengl::COpenGLScene::Ptr & | getOpenGLSceneRef () |
At constructor an empty scene is created. More... | |
void | setOpenGLSceneRef (mrpt::opengl::COpenGLScene::Ptr scene) |
Static Public Attributes | |
static float | SENSIBILITY_DEG_PER_PIXEL = 0.1f |
Protected Member Functions | |
virtual void | swapBuffers () override |
virtual void | preRender () override |
virtual void | postRender () override |
virtual void | renderError (const std::string &e) override |
virtual double | renderCanvas (int width=-1, int height=-1) |
|
default |
|
overridevirtualdefault |
|
inherited |
Definition at line 234 of file CGlCanvasBase.cpp.
|
inherited |
Returns a copy of CamaraParams See also getRefCameraParams(), setCameraParams(const CamaraParams &)
Definition at line 162 of file CGlCanvasBase.cpp.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent(), and mrpt::gui::internal::NanoGUICanvasHeadless::scrollEvent().
|
inherited |
Calls the glClearColor function See also setClearColors(float, float, float, float)
Definition at line 144 of file CGlCanvasBase.cpp.
|
inherited |
Returns a azimuth degrees See also setAzimuthDegrees(float)
Definition at line 213 of file CGlCanvasBase.cpp.
|
inherited |
Returns the x pointing of the camera See also setCameraPointing(float, float, float)
Definition at line 259 of file CGlCanvasBase.cpp.
|
inherited |
Returns the y pointing of the camera See also setCameraPointing(float, float, float)
Definition at line 264 of file CGlCanvasBase.cpp.
|
inherited |
Returns the z pointing of the camera See also setCameraPointing(float, float, float)
Definition at line 269 of file CGlCanvasBase.cpp.
|
inherited |
Definition at line 246 of file CGlCanvasBase.cpp.
|
inherited |
Definition at line 245 of file CGlCanvasBase.cpp.
|
inherited |
Definition at line 244 of file CGlCanvasBase.cpp.
|
inherited |
Definition at line 243 of file CGlCanvasBase.cpp.
|
inherited |
Returns a elevation degrees See also setElevationDegrees(float)
Definition at line 218 of file CGlCanvasBase.cpp.
|
inlineinherited |
Definition at line 219 of file CGlCanvasBase.h.
References mrpt::gui::CGlCanvasBase::m_mouseLastX, and mrpt::gui::CGlCanvasBase::m_mouseLastY.
|
inlineinherited |
At constructor an empty scene is created.
The object is freed at GL canvas destructor. This function returns a smart pointer to the opengl scene getOpenGLSceneRef
Definition at line 229 of file CGlCanvasBase.h.
References mrpt::gui::CGlCanvasBase::m_openGLScene.
|
inherited |
Returns a reference to CamaraParams See also cameraParams(), setCameraParams(const CamaraParams &)
Definition at line 167 of file CGlCanvasBase.cpp.
|
inherited |
See also void setUseCameraFromScene(bool)
Definition at line 202 of file CGlCanvasBase.cpp.
|
inherited |
Returns a zoom See also setZoomDistance(float)
Definition at line 177 of file CGlCanvasBase.cpp.
|
inherited |
Definition at line 228 of file CGlCanvasBase.cpp.
|
inlinevirtualinherited |
Overload this method to limit the capabilities of the user to move the camera using the mouse.
For all these variables:
A "new_NAME" variable will be passed with the temptative new value after the user action. The default behavior should be to copy all the new variables to the variables listed above but in the middle any find of user-defined filter can be implemented.
Definition at line 206 of file CGlCanvasBase.h.
References mrpt::gui::CGlCanvasBase::CamaraParams::cameraAzimuthDeg, mrpt::gui::CGlCanvasBase::CamaraParams::cameraElevationDeg, mrpt::gui::CGlCanvasBase::CamaraParams::cameraPointingX, mrpt::gui::CGlCanvasBase::CamaraParams::cameraPointingY, mrpt::gui::CGlCanvasBase::CamaraParams::cameraPointingZ, mrpt::gui::CGlCanvasBase::CamaraParams::cameraZoomDistance, and mrpt::gui::CGlCanvasBase::m_cameraParams.
|
inlineoverrideprotectedvirtual |
Implements mrpt::gui::CGlCanvasBase.
Definition at line 270 of file CGlCanvasBase.h.
|
inlineoverrideprotectedvirtual |
Implements mrpt::gui::CGlCanvasBase.
Definition at line 269 of file CGlCanvasBase.h.
|
protectedvirtualinherited |
Definition at line 274 of file CGlCanvasBase.cpp.
References mrpt::exception_to_str(), mrpt::system::CTicTac::Tac(), THROW_EXCEPTION, and mrpt::system::CTicTac::Tic().
|
overrideprotectedvirtual |
Implements mrpt::gui::CGlCanvasBase.
Definition at line 354 of file CGlCanvasBase.cpp.
|
inherited |
Calls the glViewport function.
Definition at line 135 of file CGlCanvasBase.cpp.
|
virtualinherited |
Saves the degrees of the azimuth camera See also getAzimuthDegrees()
Definition at line 203 of file CGlCanvasBase.cpp.
|
virtualinherited |
Definition at line 233 of file CGlCanvasBase.cpp.
|
virtualinherited |
Sets the CamaraParams See also cameraParams(), getRefCameraParams()
Definition at line 172 of file CGlCanvasBase.cpp.
References params.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent(), and mrpt::gui::internal::NanoGUICanvasHeadless::scrollEvent().
|
virtualinherited |
Saves the pointing of the camera See also getCameraPointingX(), getCameraPointingY(), getCameraPointingZ()
Definition at line 252 of file CGlCanvasBase.cpp.
|
virtualinherited |
Definition at line 223 of file CGlCanvasBase.cpp.
|
inherited |
Sets the RGBA colors for glClearColor See also clearColors(), getClearColorR(), getClearColorG(),getClearColorB(), getClearColorA()
Definition at line 235 of file CGlCanvasBase.cpp.
|
virtualinherited |
Saves the degrees of the elevation camera See also getElevationDegrees()
Definition at line 208 of file CGlCanvasBase.cpp.
|
inherited |
Sets the maximum of the zoom See also setMinimumZoom(float)
Definition at line 64 of file CGlCanvasBase.cpp.
|
inherited |
Sets the minimum of the zoom See also setMaximumZoom(float)
Definition at line 63 of file CGlCanvasBase.cpp.
|
inherited |
Sets the property mouseClicked By default, this property is false.
See also setMousePos(int, int)
Definition at line 71 of file CGlCanvasBase.cpp.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseButtonEvent().
|
inherited |
Saves the click position of the mouse See also setMouseClicked(bool)
Definition at line 65 of file CGlCanvasBase.cpp.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseButtonEvent(), and mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent().
|
inherited |
Definition at line 247 of file CGlCanvasBase.cpp.
|
inherited |
If set to true (default=false), the cameraPointingX,...
parameters are ignored and the camera stored in the 3D scene is used instead. See also void bool getUseCameraFromScene()
Definition at line 201 of file CGlCanvasBase.cpp.
|
virtualinherited |
Saves camera zooming See also getZoomDistance()
Definition at line 182 of file CGlCanvasBase.cpp.
|
inlineoverrideprotectedvirtual |
Implements mrpt::gui::CGlCanvasBase.
Definition at line 268 of file CGlCanvasBase.h.
|
inherited |
This function gets a reference to mrpt::opengl::CCamera and updates the camera parameters(pointing, zoom, azimuth, elevation, IsProjective, FOV)
Definition at line 187 of file CGlCanvasBase.cpp.
References mrpt::opengl::CCamera::setAzimuthDegrees(), mrpt::opengl::CCamera::setElevationDegrees(), mrpt::opengl::CCamera::setPointingAt(), mrpt::opengl::CCamera::setProjectiveFOVdeg(), mrpt::opengl::CCamera::setProjectiveModel(), and mrpt::opengl::CCamera::setZoomDistance().
Referenced by mrpt::gui::CDisplayWindowGUI::drawContents(), and mrpt::gui::MRPT2NanoguiGLCanvas::drawGL().
|
inherited |
Sets the last mouse position.
Definition at line 129 of file CGlCanvasBase.cpp.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent().
|
inherited |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the elevation and azimuth.
See also getElevationDegrees(), getAzimuthDegrees()
Definition at line 122 of file CGlCanvasBase.cpp.
References params.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent().
|
inherited |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the pointing of the camera.
See also getCameraPointingX(), getCameraPointingY(), getCameraPointingZ()
Definition at line 151 of file CGlCanvasBase.cpp.
References mrpt::DEG2RAD(), and params.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent().
|
inherited |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the elevation and azimuth.
See also getElevationDegrees(), getAzimuthDegrees()
Definition at line 92 of file CGlCanvasBase.cpp.
References mrpt::DEG2RAD(), and params.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent().
|
inherited |
This function for the mouse event It gets a reference to CamaraParams, x, y and updates the zoom of the CameraParams.
See also updateZoom(CamaraParams &, float)
Definition at line 72 of file CGlCanvasBase.cpp.
References params.
Referenced by mrpt::gui::internal::NanoGUICanvasHeadless::mouseMotionEvent(), and mrpt::gui::internal::NanoGUICanvasHeadless::scrollEvent().
|
inherited |
This function for the wheel event It gets a reference to CamaraParams, delta and updates the zoom of the CameraParams.
See also updateZoom(CamaraParams &, int, int)
Definition at line 84 of file CGlCanvasBase.cpp.
References params.
|
staticinherited |
Definition at line 187 of file CGlCanvasBase.h.
Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 3a26b90fd Wed Mar 25 20:17:03 2020 +0100 at miƩ mar 25 23:05:41 CET 2020 |