Go to the documentation of this file.
49 #ifndef CLUSTER_LABEL_DISPLAY_HPP
50 #define CLUSTER_LABEL_DISPLAY_HPP
57 #include <boost/lexical_cast.hpp>
58 #include <boost/shared_ptr.hpp>
59 #include <boost/filesystem.hpp>
60 #include <boost/algorithm/string.hpp>
66 #include <QMessageBox>
67 #include <QApplication>
85 #include <std_msgs/Int32.h>
86 #include <geometry_msgs/Point32.h>
87 #include <geometry_msgs/PoseStamped.h>
88 #include <mesh_msgs/MeshGeometryStamped.h>
89 #include <mesh_msgs/MeshGeometry.h>
90 #include <mesh_msgs/GetGeometry.h>
91 #include <mesh_msgs/GetLabeledClusters.h>
96 #include <OGRE/OgreManualObject.h>
97 #include <OGRE/OgreSceneNode.h>
98 #include <OGRE/OgreSceneManager.h>
99 #include <OGRE/OgreEntity.h>
100 #include <OGRE/OgreStringConverter.h>
101 #include <OGRE/OgreMaterialManager.h>
102 #include <OGRE/OgreRay.h>
103 #include <OGRE/OgreSceneQuery.h>
104 #include <OGRE/OgreColourValue.h>
116 class StringProperty;
123 using std::shared_ptr;
125 using std::unique_ptr;
157 void addLabel(
string label, vector<uint32_t> faces);
195 void setData(shared_ptr<Geometry> geometry, vector<Cluster> clusters);
void onInitialize()
RViz callback on initialize.
void onDisable()
RViz callback on disable.
bool has_data
A variable that will be set to true, once the initial data has arrived.
~ClusterLabelDisplay()
Destructor.
void onEnable()
RViz callback on enable.
shared_ptr< Geometry > getGeometry()
Getter for the current geometry.
uint32_t m_activeVisualId
ID of the current active visual.
rviz::FloatProperty * m_sphereSizeProperty
Property to set the brushsize of the sphere brush of the label tool from this package.
ClusterLabelTool * m_tool
Label tool.
Display class for the map plugin.
void fillPropertyOptions()
Dynamically fills the dropdown menus of those properties.
void signalAddLabel(Cluster cluster)
This signal is used for delegating new label data to the master display.
void notifyLabelTool()
Refreshes the tool's current visual.
rviz::Property * m_colorsProperty
Property for selecting colors (menu)
void addLabel(string label, vector< uint32_t > faces)
The tool will call this function and emit the signal below to the master display to create the label.
vector< shared_ptr< ClusterLabelVisual > > m_visuals
Visuals.
int m_labelToolVisualIndex
Index for the visuals.
void updateSphereSize()
Updates the sphere size for the brush tool.
void updateMap()
Update the map, based on newly loaded data since the last update.
void createVisualsFromClusterList()
Create visuals for each cluster in the list.
void setData(shared_ptr< Geometry > geometry, vector< Cluster > clusters)
Setter for the geometry and cluster data.
ClusterLabelDisplay()
Constructor.
unique_ptr< ClusterLabelVisual > m_phantomVisual
Additional visual to help with labeling without a TexturedMesh.
rviz::BoolProperty * m_phantomVisualProperty
Property to hide or show a phantom visual.
Visual to show a labeled cluster.
rviz::EnumProperty * m_activeVisualProperty
Property for the current active visual.
void updateColors()
Updates the colors, based on newly loaded data since the last update.
void createPhantomVisual()
Creates a phantom visual.
void updatePhantomVisual()
Updates the phantom visual, based on newly loaded data since the last update.
std::vector< rviz::ColorProperty * > m_colorProperties
Properties for selecting colors (menu-items)
vector< Cluster > m_clusterList
Cluster data.
shared_ptr< Geometry > m_geometry
Geometry.
rviz::FloatProperty * m_alphaProperty
Property to set transparency.
void changeVisual()
Slot for changing the visual to the selected visual from the dropdown menu.
void initializeLabelTool()
Programmatically create an instance of the label tool from this package.
rviz_map_plugin
Author(s): Sebastian Pütz
, Kristin Schmidt , Jan Philipp Vogtherr , Malte kleine Piening
autogenerated on Sun Jan 21 2024 04:06:25