35 #ifndef ROBOT_NAV_RVIZ_PLUGINS_OGRE_PANEL_H 36 #define ROBOT_NAV_RVIZ_PLUGINS_OGRE_PANEL_H 38 #include <OgreManualObject.h> 39 #include <OgreSceneManager.h> 67 Ogre::SceneManager& scene_manager, Ogre::SceneNode& scene_node);
92 void setPalette(
const std::string& palette_name);
113 using Ptr = std::shared_ptr<OgrePanel>;
122 PartialOgrePanel(Ogre::SceneManager& scene_manager, Ogre::SceneNode& parent_scene_node,
132 void updateData(std::vector<unsigned char>& pixels);
135 void setTexture(
const std::string& texture_name,
int index);
137 Ogre::Renderable::Visitor* alpha_setter);
140 using Ptr = std::shared_ptr<PartialOgrePanel>;
162 #endif // ROBOT_NAV_RVIZ_PLUGINS_OGRE_PANEL_H Portion of the larger OgrePanel....see above.
Ogre::SceneManager & scene_manager_
std::string current_palette_
Ogre::ManualObject * manual_object_
std::map< std::string, bool > palette_transparency_
void updateInfo(const nav_grid::NavGridInfo &info)
Update the location/shape of the grid.
Ogre::SceneNode * scene_node_
OgrePanel(nav_grid::VectorNavGrid< unsigned char > &data, Ogre::SceneManager &scene_manager, Ogre::SceneNode &scene_node)
void updateAlphaRendering(Ogre::SceneBlendType scene_blending, bool depth_write, int group, Ogre::Renderable::Visitor *alpha_setter)
std::shared_ptr< PartialOgrePanel > Ptr
Ogre::MaterialPtr material_
std::shared_ptr< OgrePanel > Ptr
PartialOgrePanel(Ogre::SceneManager &scene_manager, Ogre::SceneNode &parent_scene_node, const nav_core2::UIntBounds &bounds, float resolution)
Ogre::SceneManager & scene_manager_
nav_grid::VectorNavGrid< unsigned char > & data_
void setTexture(const std::string &texture_name, int index)
void updateData(std::vector< unsigned char > &pixels)
Update the data for this Partial Panel.
void clear()
Clear the panel from the visualization by making it invisible.
Several reusable pieces for displaying polygons.
A collection of Ogre objects for rendering a two-dimensional rectangular plane (such as a map) in rvi...
void addPalette(const NavGridPalette &palette)
Add a palette with the given name.
const nav_core2::UIntBounds & getBounds() const
Ogre::TexturePtr texture_
nav_core2::UIntBounds bounds_
std::map< std::string, Ogre::TexturePtr > palettes_
Ogre::SceneNode & scene_node_
bool transformMap(rviz::FrameManager &fm)
Move the map to its proper position and orientation.
void updateData(const nav_core2::UIntBounds &updated_bounds)
Update the panel data within the given bounds.
void updateAlpha(float alpha, bool draw_behind)
Sets the alpha/draw_behind properties.
std::vector< PartialOgrePanel::Ptr > swatches_
void setPalette(const std::string &palette_name)
Set the palette to use.
A simple datastructure representing a palette of up to 256 24-bit colors.