Gazebo Gui

API Reference

6.8.0

Ign-rendering renderer. All ign-rendering calls should be performed inside this class as it makes sure that opengl calls in the underlying render engine do not interfere with QtQuick's opengl render operations. The main Render function will render to an offscreen texture and notify via signal and slots when it's ready to be displayed. More...

#include <MinimalScene.hh>

Public Member Functions

 IgnRenderer ()
 Constructor. More...
 
 IgnRenderer ()
 Constructor. More...
 
 ~IgnRenderer ()
 Destructor. More...
 
void Destroy ()
 Destroy camera associated with this renderer. More...
 
void Destroy ()
 Destroy camera associated with this renderer. More...
 
void HandleKeyPress (const common::KeyEvent &_e)
 Handle key press event for snapping. More...
 
void HandleKeyPress (QKeyEvent *_e)
 Handle key press event for snapping. More...
 
void HandleKeyRelease (const common::KeyEvent &_e)
 Handle key release event for snapping. More...
 
void HandleKeyRelease (QKeyEvent *_e)
 Handle key release event for snapping. More...
 
std::string Initialize ()
 Initialize the render engine. More...
 
std::string Initialize ()
 Initialize the render engine. More...
 
void NewDropEvent (const std::string &_dropText, const math::Vector2i &_dropPos)
 New hover event triggered. More...
 
void NewHoverEvent (const math::Vector2i &_hoverPos)
 New hover event triggered. More...
 
void NewHoverEvent (const math::Vector2i &_hoverPos)
 New hover event triggered. More...
 
void NewMouseEvent (const common::MouseEvent &_e)
 New mouse event triggered. More...
 
void NewMouseEvent (const common::MouseEvent &_e, const math::Vector2d &_drag=math::Vector2d::Zero)
 New mouse event triggered. More...
 
void Render ()
 Main render function. More...
 
void Render (RenderSync *_renderSync)
 

Public Attributes

math::Color ambientLight = math::Color(0.3f, 0.3f, 0.3f, 1.0f)
 Ambient color. More...
 
math::Color backgroundColor = math::Color::Black
 Scene background color. More...
 
double cameraFarClip = 1000.0
 Default camera far clipping plane distance. More...
 
math::Angle cameraHFOV = math::Angle(M_PI * 0.5)
 Horizontal FOV of the camera;. More...
 
double cameraNearClip = 0.01
 Default camera near clipping plane distance. More...
 
math::Pose3d cameraPose = math::Pose3d(0, 0, 2, 0, 0.4, 0)
 Initial Camera pose. More...
 
std::string cameraViewController {""}
 View controller type. More...
 
std::string deletionTopic
 Ign-transport deletion topic name. More...
 
std::string engineName = "ogre"
 Render engine to use. More...
 
bool initialized = false
 True if engine has been initialized;. More...
 
std::string poseTopic
 Scene pose topic. If not empty, a node will subcribe to this topic to get pose updates of objects in the scene. More...
 
std::string sceneName = "scene"
 Unique scene name. More...
 
std::string sceneService
 Scene service. If not empty, a request will be made to get the scene information using this service and the renderer will populate the scene based on the response data. More...
 
std::string sceneTopic
 Ign-transport scene topic name New scene messages will be published to this topic when an entities are added. More...
 
bool skyEnable = false
 True if sky is enabled;. More...
 
bool textureDirty = false
 Flag to indicate texture size has changed. More...
 
GLuint textureId = 0u
 Render texture id. More...
 
QSize textureSize = QSize(1024, 1024)
 Render texture size. More...
 

Detailed Description

Ign-rendering renderer. All ign-rendering calls should be performed inside this class as it makes sure that opengl calls in the underlying render engine do not interfere with QtQuick's opengl render operations. The main Render function will render to an offscreen texture and notify via signal and slots when it's ready to be displayed.

Constructor & Destructor Documentation

◆ IgnRenderer() [1/2]

Constructor.

◆ IgnRenderer() [2/2]

Constructor.

◆ ~IgnRenderer()

Destructor.

Member Function Documentation

◆ Destroy() [1/2]

void Destroy ( )

Destroy camera associated with this renderer.

◆ Destroy() [2/2]

void Destroy ( )

Destroy camera associated with this renderer.

◆ HandleKeyPress() [1/2]

void HandleKeyPress ( const common::KeyEvent _e)

Handle key press event for snapping.

Parameters
[in]_eThe key event to process.

◆ HandleKeyPress() [2/2]

void HandleKeyPress ( QKeyEvent _e)

Handle key press event for snapping.

Parameters
[in]_eThe key event to process.

◆ HandleKeyRelease() [1/2]

void HandleKeyRelease ( const common::KeyEvent _e)

Handle key release event for snapping.

Parameters
[in]_eThe key event to process.

◆ HandleKeyRelease() [2/2]

void HandleKeyRelease ( QKeyEvent _e)

Handle key release event for snapping.

Parameters
[in]_eThe key event to process.

◆ Initialize() [1/2]

std::string Initialize ( )

Initialize the render engine.

Returns
Error message if initialization failed. If empty, no errors occurred.

◆ Initialize() [2/2]

std::string Initialize ( )

Initialize the render engine.

Returns
Error message if initialization failed. If empty, no errors occurred.

◆ NewDropEvent()

void NewDropEvent ( const std::string _dropText,
const math::Vector2i _dropPos 
)

New hover event triggered.

Parameters
[in]_dropTextText dropped on the scene
[in]_dropPosMouse drop screen position

◆ NewHoverEvent() [1/2]

void NewHoverEvent ( const math::Vector2i _hoverPos)

New hover event triggered.

Parameters
[in]_hoverPosMouse hover screen position

◆ NewHoverEvent() [2/2]

void NewHoverEvent ( const math::Vector2i _hoverPos)

New hover event triggered.

Parameters
[in]_hoverPosMouse hover screen position

◆ NewMouseEvent() [1/2]

void NewMouseEvent ( const common::MouseEvent _e)

New mouse event triggered.

Parameters
[in]_eNew mouse event

◆ NewMouseEvent() [2/2]

void NewMouseEvent ( const common::MouseEvent _e,
const math::Vector2d _drag = math::Vector2d::Zero 
)

New mouse event triggered.

Parameters
[in]_eNew mouse event
[in]_dragMouse move distance

◆ Render() [1/2]

void Render ( )

Main render function.

◆ Render() [2/2]

void Render ( RenderSync *  _renderSync)
Parameters
[in]_renderSyncRenderSync to safely synchronize Qt and worker thread (this)

Member Data Documentation

◆ ambientLight

math::Color ambientLight = math::Color(0.3f, 0.3f, 0.3f, 1.0f)

Ambient color.

◆ backgroundColor

math::Color backgroundColor = math::Color::Black

Scene background color.

◆ cameraFarClip

double cameraFarClip = 1000.0

Default camera far clipping plane distance.

◆ cameraHFOV

math::Angle cameraHFOV = math::Angle(M_PI * 0.5)

Horizontal FOV of the camera;.

◆ cameraNearClip

double cameraNearClip = 0.01

Default camera near clipping plane distance.

◆ cameraPose

math::Pose3d cameraPose = math::Pose3d(0, 0, 2, 0, 0.4, 0)

Initial Camera pose.

◆ cameraViewController

std::string cameraViewController {""}

View controller type.

◆ deletionTopic

std::string deletionTopic

Ign-transport deletion topic name.

◆ engineName

std::string engineName = "ogre"

Render engine to use.

◆ initialized

bool initialized = false

True if engine has been initialized;.

◆ poseTopic

std::string poseTopic

Scene pose topic. If not empty, a node will subcribe to this topic to get pose updates of objects in the scene.

◆ sceneName

std::string sceneName = "scene"

Unique scene name.

◆ sceneService

std::string sceneService

Scene service. If not empty, a request will be made to get the scene information using this service and the renderer will populate the scene based on the response data.

◆ sceneTopic

std::string sceneTopic

Ign-transport scene topic name New scene messages will be published to this topic when an entities are added.

◆ skyEnable

bool skyEnable = false

True if sky is enabled;.

◆ textureDirty

bool textureDirty = false

Flag to indicate texture size has changed.

◆ textureId

GLuint textureId = 0u

Render texture id.

Values is constantly constantly cycled/swapped/changed from a worker thread Don't read this directly

◆ textureSize

QSize textureSize = QSize(1024, 1024)

Render texture size.


The documentation for this class was generated from the following files: