Skip to content

Commit 7f15f79

Browse files
Fix camera display overlay (#1151) (#1158)
Signed-off-by: Alejandro Hernández Cordero <[email protected]> (cherry picked from commit c7bf4c9) Co-authored-by: Alejandro Hernández Cordero <[email protected]>
1 parent 4eec15d commit 7f15f79

File tree

5 files changed

+22
-1
lines changed

5 files changed

+22
-1
lines changed

rviz_common/src/rviz_common/render_panel.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ void RenderPanel::initialize(DisplayContext * context, bool use_main_scene)
116116
camera_node->attachObject(default_camera);
117117
camera_node->setPosition(default_camera_pose_);
118118
camera_node->lookAt(Ogre::Vector3(0, 0, 0), Ogre::Node::TS_WORLD);
119-
119+
rviz_rendering::RenderWindowOgreAdapter::setSceneNodeCamera(render_window_, camera_node);
120120
rviz_rendering::RenderWindowOgreAdapter::setOgreCamera(render_window_, default_camera);
121121
}
122122
// scene_manager_ = scene_manager;

rviz_rendering/include/rviz_rendering/render_window.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,10 @@ class RVIZ_RENDERING_PUBLIC RenderWindowOgreAdapter
158158
void
159159
setOgreCamera(RenderWindow * render_window, Ogre::Camera * ogre_camera);
160160

161+
static
162+
void
163+
setSceneNodeCamera(RenderWindow * render_window, Ogre::SceneNode * ogre_camera);
164+
161165
static
162166
Ogre::Camera *
163167
getOgreCamera(RenderWindow * render_window);

rviz_rendering/src/rviz_rendering/ogre_render_window_impl.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,13 @@ void RenderWindowImpl::setCamera(Ogre::Camera * ogre_camera)
429429
}
430430
}
431431

432+
void RenderWindowImpl::setSceneNodeCamera(Ogre::SceneNode * ogre_camera)
433+
{
434+
if (ogre_camera) {
435+
ogre_camera_node_ = ogre_camera;
436+
}
437+
}
438+
432439
Ogre::Camera * RenderWindowImpl::getCamera() const
433440
{
434441
return ogre_camera_;

rviz_rendering/src/rviz_rendering/ogre_render_window_impl.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,8 @@ class RenderWindowImpl
119119
/// Set the camera associated with this render window's viewport.
120120
void setCamera(Ogre::Camera * camera);
121121

122+
void setSceneNodeCamera(Ogre::SceneNode * ogre_camera);
123+
122124
/// Get the camera.
123125
Ogre::Camera * getCamera() const;
124126

rviz_rendering/src/rviz_rendering/render_window.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,14 @@ RenderWindowOgreAdapter::setOgreCamera(RenderWindow * render_window, Ogre::Camer
229229
render_window->impl_->setCamera(ogre_camera);
230230
}
231231

232+
void
233+
RenderWindowOgreAdapter::setSceneNodeCamera(
234+
RenderWindow * render_window,
235+
Ogre::SceneNode * ogre_camera)
236+
{
237+
render_window->impl_->setSceneNodeCamera(ogre_camera);
238+
}
239+
232240
Ogre::Camera *
233241
RenderWindowOgreAdapter::getOgreCamera(RenderWindow * render_window)
234242
{

0 commit comments

Comments
 (0)