Gazebo Rendering

API Reference

9.0.0

Ogre 2.x implementation of a Lidar Visual. More...

#include <Ogre2LidarVisual.hh>

Public Member Functions

virtual ~Ogre2LidarVisual ()
 Destructor.
 
virtual void ClearPoints () override
 Clear the points of the lidar visual.
 
virtual void Destroy () override
 Destroy any resources associated with this object. Invoking any other functions after destroying an object will result in undefined behavior.
 
virtual void Init () override
 Initialize the visual.
 
virtual unsigned int PointCount () const override
 Get number of points in laser data.
 
virtual std::vector< double > Points () const override
 Get the points in laser data.
 
virtual void PreRender () override
 Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender.
 
virtual void SetPoints (const std::vector< double > &_points) override
 Set lidar points to be visualised.
 
virtual void SetVisible (bool _visible) override
 Specify if this visual is visible.
 
virtual void Update () override
 Update the Visual.
 
- Public Member Functions inherited from BaseLidarVisual< Ogre2Visual >
virtual ~BaseLidarVisual ()
 
virtual void CreateMaterials ()
 Create predefined materials for lidar visual.
 
virtual bool DisplayNonHitting () const override
 Get if non-hitting rays will be displayed.
 
virtual unsigned int HorizontalRayCount () const override
 Get number of horizontal rays.
 
virtual double MaxHorizontalAngle () const override
 Get maximum horizontal angle.
 
virtual double MaxRange () const override
 Get maximum range of lidar rays.
 
virtual double MaxVerticalAngle () const override
 Get minimum vertical angle.
 
virtual double MinHorizontalAngle () const override
 Get minimum horizontal angle.
 
virtual double MinRange () const override
 Get minimum range of lidar rays.
 
virtual double MinVerticalAngle () const override
 Get minimum vertical angle.
 
virtual gz::math::Pose3d Offset () const override
 Get offset of visual.
 
virtual void SetDisplayNonHitting (bool _display) override
 Set if non-hitting rays will be displayed (this does not work for TRIANGLE_STRIPS visual)
 
virtual void SetHorizontalRayCount (unsigned int _horizontalRayCount) override
 Set number of horizontal rays.
 
virtual void SetMaxHorizontalAngle (double _maxHorizontalAngle) override
 Set maximum horizontal angle.
 
virtual void SetMaxRange (double _maxRange) override
 Set maximum range of lidar rays.
 
virtual void SetMaxVerticalAngle (double _maxVerticalAngle) override
 Set maximum vertical angle.
 
virtual void SetMinHorizontalAngle (double _minHorizontalAngle) override
 Set minimum horizontal angle.
 
virtual void SetMinRange (double _minRange) override
 Set minimum range of lidar rays.
 
virtual void SetMinVerticalAngle (double _minVerticalAngle) override
 Set minimum vertical angle.
 
virtual void SetOffset (const gz::math::Pose3d _offset) override
 Set offset of visual.
 
virtual void SetPoints (const std::vector< double > &_points, const std::vector< gz::math::Color > &_colors) override
 Set lidar points to be visualised.
 
virtual void SetSize (double _size) override
 Set size of the lidar visualization, e.g. size of rasterized lidar points in pixels.
 
virtual void SetType (const LidarVisualType _type) override
 Set type for lidar visual.
 
virtual void SetVerticalRayCount (unsigned int _verticalRayCount) override
 Set number of vertical rays.
 
virtual double Size () const override
 Get size of the lidar visualization.
 
virtual LidarVisualType Type () const override
 Get the type for lidar visual.
 
virtual unsigned int VerticalRayCount () const override
 Get number of vertical rays.
 
- Public Member Functions inherited from LidarVisual
virtual ~LidarVisual ()
 Destructor.
 
- Public Member Functions inherited from Visual
virtual ~Visual ()
 Destructor.
 
- Public Member Functions inherited from Node
virtual ~Node ()
 Destructor.
 
- Public Member Functions inherited from Object
virtual ~Object ()
 Destructor.
 
virtual unsigned int Id () const =0
 Get the object ID. This ID will be unique across all objects inside a given scene, but necessarily true for objects across different scenes.
 
virtual std::string Name () const =0
 Get the object name. This name will be unique across all objects inside a given scene, but necessarily true for objects across different scenes.
 
virtual void PostRender ()=0
 Post process this object and any of its children after rendering.
 
virtual ScenePtr Scene () const =0
 Get the Scene that created this object.
 
- Public Member Functions inherited from Ogre2Visual
virtual ~Ogre2Visual ()
 Destructor.
 
virtual gz::math::AxisAlignedBox BoundingBox () const override
 Get the bounding box in world frame coordinates.
 
virtual gz::math::AxisAlignedBox LocalBoundingBox () const override
 Get the local bounding box of the visual.
 
virtual void SetStatic (bool _static) override
 Tells Render Engine this Visual will be static (i.e. won't move, rotate or scale) You can still move, rotate or scale the Visual; however doing so has a performance impact. How much of an impact will depend on the rendering backend being used.
 
virtual void SetVisibilityFlags (uint32_t _flags) override
 Set visibility flags.
 
virtual void SetWireframe (bool _show) override
 Enable or disable wireframe.
 
virtual bool Static () const override
 Get whether the visual is static.
 
virtual bool Wireframe () const override
 Get whether wireframe is enabled for this visual.
 
- Public Member Functions inherited from BaseVisual< Ogre2Node >
virtual ~BaseVisual ()
 
virtual void AddGeometry (GeometryPtr _geometry) override
 Add the given geometry to this visual. If the given node is already attached, no work will be done.
 
virtual void AddVisibilityFlags (uint32_t _flags) override
 Add visibility flags.
 
virtual VisualPtr Clone (const std::string &_name, NodePtr _newParent) const override
 Clone the visual (and its children) with a new name.
 
virtual GeometryPtr GeometryByIndex (unsigned int _index) const override
 Get geometry at given index. If no geometry exists at given index, NULL will be returned.
 
virtual unsigned int GeometryCount () const override
 Get the number of geometries attached to this visual.
 
virtual bool HasGeometry (ConstGeometryPtr _geometry) const override
 Determine if given geometry is attached to this visual.
 
virtual math::Pose3d LocalPose () const override
 Get the local pose.
 
virtual MaterialPtr Material () const override
 Get the material assigned to attached visuals and geometries.
 
virtual void RemoveGeometries () override
 Remove all attached geometries from this visual.
 
virtual GeometryPtr RemoveGeometry (GeometryPtr _geometry) override
 Remove the given geometry from this visual. If the given node is not a child of this visual, no work will be done.
 
virtual GeometryPtr RemoveGeometryByIndex (unsigned int _index) override
 Remove the geometry at the given index from this visual. If the specified node is not attached this visual, no work will be done.
 
virtual void RemoveVisibilityFlags (uint32_t _flags) override
 Remove visibility flags.
 
virtual void SetChildMaterial (MaterialPtr _material, bool _unique=true) override
 Set the material for all attached visuals only.
 
virtual void SetGeometryMaterial (MaterialPtr _material, bool _unique=true) override
 Set the material for all attached geometries only.
 
virtual void SetLocalPose (const math::Pose3d &_pose) override
 Set the local pose.
 
virtual void SetMaterial (const std::string &_name, bool _unique=true) override
 Set the material for all attached visuals and geometries. The specified material will be retrieved from Scene::Material using the given material name. If no material is registered with the given name, no work will be done.
 
virtual void SetMaterial (MaterialPtr _material, bool _unique=true) override
 Set the material for all attached visuals and geometries.
 
virtual uint32_t VisibilityFlags () const override
 Get visibility flags.
 
- Public Member Functions inherited from Ogre2Node
virtual ~Ogre2Node ()
 Destructor.
 
virtual bool HasParent () const override
 Determine if this Node is attached to another Node.
 
virtual bool InheritScale () const override
 Determine if this node inherits scale from this parent.
 
virtual math::Vector3d LocalScale () const override
 Get the local scale.
 
virtual Ogre::SceneNode * Node () const
 Get a pointer to the underlying scene node.
 
virtual NodePtr Parent () const override
 Get the parent Node.
 
virtual void SetInheritScale (bool _inherit) override
 Specify if this node inherits scale from its parent.
 
- Public Member Functions inherited from BaseNode< Ogre2Object >
virtual ~BaseNode ()
 
virtual void AddChild (NodePtr _child) override
 Add the given node to this node. If the given node is already a child, no work will be done.
 
virtual NodePtr ChildById (unsigned int _id) const override
 Get node with given ID. If no child exists with given ID, NULL will be returned.
 
virtual NodePtr ChildByIndex (unsigned int _index) const override
 Get node at given index. If no child exists at given index, NULL will be returned.
 
virtual NodePtr ChildByName (const std::string &_name) const override
 Get node with given name. If no child exists with given name, NULL will be returned.
 
virtual unsigned int ChildCount () const override
 Get number of child nodes.
 
virtual bool HasChild (ConstNodePtr _child) const override
 Determine if given node is an attached child.
 
virtual bool HasChildId (unsigned int _id) const override
 Determine if node with given ID is an attached child.
 
virtual bool HasChildName (const std::string &_name) const override
 Determine if node with given name is an attached child.
 
virtual bool HasUserData (const std::string &_key) const override
 Check if node has custom data.
 
virtual math::Pose3d InitialLocalPose () const override
 Get the initial local pose.
 
virtual math::Vector3d LocalPosition () const override
 Get the local position.
 
virtual math::Quaterniond LocalRotation () const override
 Get the local rotation.
 
virtual math::Vector3d Origin () const override
 Get position of origin.
 
virtual NodePtr RemoveChild (NodePtr _child) override
 Remove (detach) the given node from this node. If the given node is not a child of this node, no work will be done.
 
virtual NodePtr RemoveChildById (unsigned int _id) override
 Remove (detach) the node with the given ID from this node. If the specified node is not a child of this node, no work will be done.
 
virtual NodePtr RemoveChildByIndex (unsigned int _index) override
 Remove (detach) the node at the given index from this node. If the specified node is not a child of this node, no work will be done.
 
virtual NodePtr RemoveChildByName (const std::string &_name) override
 Remove (detach) the node with the given name from this node. If the specified node is not a child of this node, no work will be done.
 
virtual void RemoveChildren () override
 Remove all child nodes from this node This detaches all the child nodes but does not destroy them.
 
virtual void RemoveParent () override
 Detach this Node from its parent. If this Node does not have a parent, no work will be done.
 
virtual void Scale (const math::Vector3d &_scale) override
 Scale the current scale by the given scalars.
 
virtual void Scale (double _scale) override
 Scale the current scale by the given scalar. The given scalar will be assigned to the x, y, and z coordinates.
 
virtual void Scale (double _x, double _y, double _z) override
 Scale the current scale by the given scalars.
 
virtual void SetLocalPosition (const math::Vector3d &_position) override
 Set the local position.
 
virtual void SetLocalPosition (double _x, double _y, double _z) override
 Set the local position.
 
virtual void SetLocalRotation (const math::Quaterniond &_rotation) override
 Set the local rotation.
 
virtual void SetLocalRotation (double _r, double _p, double _y) override
 Set the local rotation.
 
virtual void SetLocalRotation (double _w, double _x, double _y, double _z) override
 Set the local rotation.
 
virtual void SetLocalScale (const math::Vector3d &_scale) override
 Set the local scale.
 
virtual void SetLocalScale (double _scale) override
 Set the local scale. The given scale will be assigned to the x, y, and z coordinates.
 
virtual void SetLocalScale (double _x, double _y, double _z) override
 Set the local scale.
 
virtual void SetOrigin (const math::Vector3d &_origin) override
 Set position of origin. The position should be relative to the original origin of the geometry.
 
virtual void SetOrigin (double _x, double _y, double _z) override
 Set position of origin. The position should be relative to the original origin of the geometry.
 
virtual void SetUserData (const std::string &_key, Variant _value) override
 Store any custom data associated with this node.
 
virtual void SetWorldPose (const math::Pose3d &_pose) override
 Set the world pose.
 
virtual void SetWorldPosition (const math::Vector3d &_position) override
 Set the world position.
 
virtual void SetWorldPosition (double _x, double _y, double _z) override
 Set the world position.
 
virtual void SetWorldRotation (const math::Quaterniond &_rotation) override
 Set the world rotation.
 
virtual void SetWorldRotation (double _r, double _p, double _y) override
 Set the world rotation.
 
virtual void SetWorldRotation (double _w, double _x, double _y, double _z) override
 Set the world rotation.
 
virtual void SetWorldScale (const math::Vector3d &_scale) override
 Set the world scale.
 
virtual void SetWorldScale (double _scale) override
 Set the world scale. The given scale will be assigned to the x, y, and z coordinates.
 
virtual void SetWorldScale (double _x, double _y, double _z) override
 Set the world scale.
 
virtual Variant UserData (const std::string &_key) const override
 Get custom data stored in this node.
 
virtual math::Pose3d WorldPose () const override
 Get the world pose.
 
virtual math::Vector3d WorldPosition () const override
 Get the world position.
 
virtual math::Quaterniond WorldRotation () const override
 Get the world rotation.
 
virtual math::Vector3d WorldScale () const override
 Get the world scale.
 
virtual math::Pose3d WorldToLocal (const math::Pose3d &_pose) const override
 Convert given world pose to local pose.
 
- Public Member Functions inherited from Ogre2Object
virtual ~Ogre2Object ()
 Destructor.
 
virtual ScenePtr Scene () const override
 
- Public Member Functions inherited from BaseObject
virtual ~BaseObject ()
 
virtual unsigned int Id () const override
 
virtual std::string Name () const override
 
virtual void PostRender () override
 

Protected Member Functions

 Ogre2LidarVisual ()
 Constructor.
 
- Protected Member Functions inherited from BaseLidarVisual< Ogre2Visual >
 BaseLidarVisual ()
 
- Protected Member Functions inherited from LidarVisual
 LidarVisual ()
 
- Protected Member Functions inherited from Ogre2Visual
 Ogre2Visual ()
 Constructor.
 
virtual bool AttachGeometry (GeometryPtr _geometry) override
 
virtual bool DetachGeometry (GeometryPtr _geometry) override
 
virtual GeometryStorePtr Geometries () const override
 
- Protected Member Functions inherited from BaseVisual< Ogre2Node >
 BaseVisual ()
 
virtual void PreRenderChildren () override
 
virtual void PreRenderGeometries ()
 
- Protected Member Functions inherited from Ogre2Node
 Ogre2Node ()
 Constructor.
 
virtual bool AttachChild (NodePtr _child) override
 
virtual NodeStorePtr Children () const override
 
virtual bool DetachChild (NodePtr _child) override
 
virtual void Load () override
 
virtual math::Pose3d RawLocalPose () const override
 
virtual math::Vector3d RawLocalPosition () const
 Get the raw local position of the node.
 
virtual math::Quaterniond RawLocalRotation () const
 Get the raw local rotation of the node.
 
virtual void SetLocalScaleImpl (const math::Vector3d &_scale) override
 Implementation of the SetLocalScale function.
 
virtual void SetParent (Ogre2NodePtr _parent)
 Set the parent node.
 
virtual void SetRawLocalPose (const math::Pose3d &_Pose3d) override
 
virtual void SetRawLocalPosition (const math::Vector3d &_position)
 Set the raw local position of the node.
 
virtual void SetRawLocalRotation (const math::Quaterniond &_rotation)
 Set the raw local rotation of the node.
 
- Protected Member Functions inherited from BaseNode< Ogre2Object >
 BaseNode ()
 
- Protected Member Functions inherited from Ogre2Object
 Ogre2Object ()
 Constructor.
 
- Protected Member Functions inherited from BaseObject
 BaseObject ()
 

Additional Inherited Members

- Protected Attributes inherited from BaseLidarVisual< Ogre2Visual >
bool displayNonHitting
 Option to display non-hitting rays.
 
double horizontalAngleStep
 Angle between two horizontal rays.
 
unsigned int horizontalCount
 Horizontal laser count.
 
LidarVisualType lidarVisualType
 Type of lidar visualisation.
 
double maxHorizontalAngle
 Horizontal maximum angle.
 
double maxRange
 Maximum Range.
 
double maxVerticalAngle
 Vertical maximum angle.
 
double minHorizontalAngle
 Horizontal minimal angle.
 
double minRange
 Minimum Range.
 
double minVerticalAngle
 Vertical minimal angle.
 
gz::math::Pose3d offset
 Offset of visual.
 
double size
 Size of lidar visualisation.
 
double verticalAngleStep
 Angle between two vertical rays.
 
unsigned int verticalCount
 Vertical laser count.
 
- Protected Attributes inherited from Ogre2Visual
Ogre2GeometryStorePtr geometries
 Pointer to the attached geometries.
 
- Protected Attributes inherited from BaseVisual< Ogre2Node >
gz::math::AxisAlignedBox boundingBox
 The bounding box of the visual.
 
MaterialPtr material
 Pointer to material assigned to this visual.
 
uint32_t visibilityFlags
 Visual's visibility flags.
 
bool wireframe
 True if wireframe mode is enabled else false.
 
- Protected Attributes inherited from Ogre2Node
Ogre2NodeStorePtr children
 A list of child nodes.
 
Ogre::SceneNode * ogreNode = nullptr
 The underlying ogre scene node.
 
Ogre2NodePtr parent
 Pointer to the parent ogre node.
 
- Protected Attributes inherited from BaseNode< Ogre2Object >
gz::math::Pose3d initialLocalPose
 Initial local pose for this node.
 
bool initialLocalPoseSet
 Flag to indicate whether initial local pose is set for this node.
 
math::Vector3d origin
 
std::map< std::string, VariantuserData
 A map of custom key value data.
 
- Protected Attributes inherited from Ogre2Object
Ogre2ScenePtr scene
 Pointer to the ogre scene.
 
- Protected Attributes inherited from BaseObject
unsigned int id
 
std::string name
 

Detailed Description

Ogre 2.x implementation of a Lidar Visual.

Constructor & Destructor Documentation

◆ Ogre2LidarVisual()

Ogre2LidarVisual ( )
protected

Constructor.

◆ ~Ogre2LidarVisual()

virtual ~Ogre2LidarVisual ( )
virtual

Destructor.

Member Function Documentation

◆ ClearPoints()

virtual void ClearPoints ( )
overridevirtual

Clear the points of the lidar visual.

Reimplemented from BaseLidarVisual< Ogre2Visual >.

◆ Destroy()

virtual void Destroy ( )
overridevirtual

Destroy any resources associated with this object. Invoking any other functions after destroying an object will result in undefined behavior.

Reimplemented from BaseLidarVisual< Ogre2Visual >.

◆ Init()

virtual void Init ( )
overridevirtual

Initialize the visual.

Reimplemented from BaseLidarVisual< Ogre2Visual >.

◆ PointCount()

virtual unsigned int PointCount ( ) const
overridevirtual

Get number of points in laser data.

Returns
The number of points in the laser data

Reimplemented from BaseLidarVisual< Ogre2Visual >.

◆ Points()

virtual std::vector< double > Points ( ) const
overridevirtual

Get the points in laser data.

Returns
The points in the laser data

Reimplemented from BaseLidarVisual< Ogre2Visual >.

◆ PreRender()

virtual void PreRender ( )
overridevirtual

Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender.

Reimplemented from BaseLidarVisual< Ogre2Visual >.

◆ SetPoints()

virtual void SetPoints ( const std::vector< double > &  _points)
overridevirtual

Set lidar points to be visualised.

Parameters
[in]_pointsVector of points representing distance of the ray

Reimplemented from BaseLidarVisual< Ogre2Visual >.

◆ SetVisible()

virtual void SetVisible ( bool  _visible)
overridevirtual

Specify if this visual is visible.

Parameters
[in]_visibleTrue if this visual should be made visible

Implements Visual.

◆ Update()

virtual void Update ( )
overridevirtual

Update the Visual.

Reimplemented from BaseLidarVisual< Ogre2Visual >.


The documentation for this class was generated from the following file: