119 Ogre::Vector3 position;
120 Ogre::Quaternion orientation;
123 ROS_DEBUG(
"Error transforming from frame '%s' to frame '%s'",
124 polygon2d.header.frame_id.c_str(), qPrintable(
fixed_frame_));
129 bool empty = polygon2d.polygon.points.empty();
virtual QColor getColor() const
void setPolygon(const nav_2d_msgs::Polygon2D &polygon, const Ogre::ColourValue &color, double z_offset)
Set the object to display the outline of the given polygon, in a specific color, possibly offset in z...
PolygonOutline * outline_object_
virtual void onInitialize()
PolygonFill * filler_object_
DisplayContext * context_
void onInitialize() override
Constructs a manual ogre object to display the polygon area as a triangle mesh.
virtual float getFloat() const
PolygonMaterial polygon_material_
Constructs a manual ogre object to display the polygon outline as a line strip.
std_msgs::ColorRGBA getColor(rviz::ColorProperty *color_property, rviz::FloatProperty *alpha_property=nullptr)
Given a Color Property and an optional Float property, return a ROS Color message.
const std::string & getName() const
Ogre::SceneNode * scene_node_
Ogre::ColourValue qtToOgre(const QColor &c)
bool shouldDrawOutlines() const
rviz::FloatProperty * filler_alpha_property_
Several reusable pieces for displaying polygons.
rviz::ColorProperty * outline_color_property_
virtual FrameManager * getFrameManager() const =0
bool shouldDrawFiller() const
void setPolygon(const nav_2d_msgs::Polygon2D &polygon, const std_msgs::ColorRGBA &color, double z_offset)
Set the object to display the area of the given polygon, in a specific color, possibly offset in z...
Ogre::SceneManager * scene_manager_
rviz::FloatProperty * zoffset_property_
bool getTransform(const Header &header, Ogre::Vector3 &position, Ogre::Quaternion &orientation)
PolygonDisplayModeProperty * mode_property_
Wrapper for EnumProperty + enum for whether to display the outline, area, or both.
nav_2d_msgs::Polygon2D polygon3Dto2D(const geometry_msgs::Polygon &polygon_3d)
rviz::ColorProperty * filler_color_property_
bool validateFloats(const nav_grid::NavGridInfo &info)
#define PLUGINLIB_EXPORT_CLASS(class_type, base_class_type)
virtual void setStatus(StatusProperty::Level level, const QString &name, const QString &text)
void processMessage(const geometry_msgs::PolygonStamped::ConstPtr &msg) override
virtual ~Polygon3DDisplay()
Displays a geometry_msgs::PolygonStamped message in Rviz.