diff --git a/src/image_display.cc b/src/image_display.cc index 3ce88b5a35636206a928bf7d911cea3258689a84..aa6746889d8f4a4eff9acb062a9bc499cce1b102 100644 --- a/src/image_display.cc +++ b/src/image_display.cc @@ -1,6 +1,8 @@ #include <OGRE/OgreSceneNode.h> #include <OGRE/OgreSceneManager.h> +#include <cstdlib> + #include <tf/transform_listener.h> #include <rviz/visualization_manager.h> @@ -11,6 +13,8 @@ #include <rviz/properties/property.h> #include <rviz/frame_manager.h> +#include "ros/package.h" + #include "image_visual.h" #include "image_display.h" @@ -54,8 +58,20 @@ namespace lrs_rviz { if ((image_filename == "") || (dx <= 0) || (dy <= 0)) { return; } + + + std::string path = ros::package::getPath("lrs_kdb_base_knowledge"); + if (path == "") { + path = std::string(std::getenv("HOME")); + } else { + path = path + "/data/orthos"; + } + std::string full_image_filename = path + "/" + image_filename; + + ROS_ERROR("full_image_filename: %s", full_image_filename.c_str()); + image_visual = new ImageVisual(scene_node_, context_, - image_filename, dx, dy, + full_image_filename, dx, dy, x_offset, y_offset, z_offset, this); updateVisualVisible(); @@ -154,14 +170,14 @@ namespace lrs_rviz { } -void ImageDisplay::onEnable() { - load(); - image_visual->setVisualVisible( true ); -} + void ImageDisplay::onEnable() { + load(); + image_visual->setVisualVisible( true ); + } -void ImageDisplay::onDisable() { - image_visual->setVisualVisible( false ); -} + void ImageDisplay::onDisable() { + image_visual->setVisualVisible( false ); + } }