211 float new_cameraPointingX,
float new_cameraPointingY,
212 float new_cameraPointingZ,
float new_cameraZoomDistance,
213 float new_cameraElevationDeg,
float new_cameraAzimuthDeg)
252 mrpt::make_aligned_shared<mrpt::opengl::COpenGLScene>();
This base class implements a working with opengl::Camera and a OpenGL canvas, and it's used in gui::C...
virtual void setAzimuthDegrees(float ang)
Saves the degrees of the azimuth camera See also getAzimuthDegrees()
const CamaraParams & getRefCameraParams() const
Returns a reference to CamaraParams See also cameraParams(), setCameraParams(const CamaraParams &)
virtual void postRender()=0
void setMaximumZoom(float zoom)
Sets the maximum of the zoom See also setMinimumZoom(float)
void clearColors()
Calls the glClearColor function See also setClearColors(float, float, float, float)
float getClearColorA() const
float getCameraPointingX() const
Returns the x pointing of the camera See also setCameraPointing(float, float, float)
float getAzimuthDegrees() const
Returns a azimuth degrees See also setAzimuthDegrees(float)
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 ...
virtual double renderCanvas(int width=-1, int height=-1)
mrpt::opengl::COpenGLScene::Ptr m_openGLScene
float getElevationDegrees() const
Returns a elevation degrees See also setElevationDegrees(float)
void setMousePos(int x, int y)
Saves the click position of the mouse See also setMouseClicked(bool)
float getCameraPointingY() const
Returns the y pointing of the camera See also setCameraPointing(float, float, float)
CamaraParams m_cameraParams
mrpt::opengl::COpenGLScene::Ptr & getOpenGLSceneRef()
At constructor an empty scene is created.
void setClearColors(float r, float g, float b, float a=1.0f)
Sets the RGBA colors for glClearColor See also clearColors(), getClearColorR(), getClearColorG(),...
virtual void setCameraParams(const CamaraParams ¶ms)
Sets the CamaraParams See also cameraParams(), getRefCameraParams()
void setOpenGLSceneRef(mrpt::opengl::COpenGLScene::Ptr scene)
virtual void setCameraFOV(float FOV)
virtual void setZoomDistance(float zoom)
Saves camera zooming See also getZoomDistance()
virtual void setCameraProjective(bool is)
virtual void renderError(const std::string &err_msg)=0
virtual void swapBuffers()=0
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 t...
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...
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 ...
float getClearColorR() const
mrpt::opengl::CCamera & updateCameraParams(mrpt::opengl::CCamera &cam) const
This function gets a reference to mrpt::opengl::CCamera and updates the camera parameters(pointing,...
virtual void setElevationDegrees(float ang)
Saves the degrees of the elevation camera See also getElevationDegrees()
void updateLastPos(int x, int y)
Sets the last mouse position.
virtual void setCameraPointing(float pointX, float pointY, float pointZ)
Saves the pointing of the camera See also getCameraPointingX(), getCameraPointingY(),...
void getLastMousePosition(int &x, int &y) const
virtual void preRender()=0
bool getUseCameraFromScene() const
See also void setUseCameraFromScene(bool)
float getZoomDistance() const
Returns a zoom See also setZoomDistance(float)
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...
float getClearColorG() const
float getClearColorB() const
void setUseCameraFromScene(bool is)
If set to true (default=false), the cameraPointingX,...
static float SENSIBILITY_DEG_PER_PIXEL
void setMinimumZoom(float zoom)
Sets the minimum of the zoom See also setMaximumZoom(float)
bool isCameraProjective() 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.
void resizeViewport(int w, int h)
Calls the glViewport function.
float getCameraPointingZ() const
Returns the z pointing of the camera See also setCameraPointing(float, float, float)
CamaraParams cameraParams() const
Returns a copy of CamaraParams See also getRefCameraParams(), setCameraParams(const CamaraParams &)
void setMouseClicked(bool is)
Sets the property mouseClicked By default, this property is false.
A camera: if added to a scene, the viewpoint defined by this camera will be used instead of the camer...
std::shared_ptr< COpenGLScene > Ptr
GLubyte GLubyte GLubyte GLubyte w
GLdouble GLdouble GLdouble r
GLubyte GLubyte GLubyte a
GLenum GLsizei GLsizei height
GLenum const GLfloat * params
GLsizei const GLchar ** string
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
void setElevationDeg(float deg)