Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
rviz::BillboardLine Class Reference

An object that displays a multi-segment line strip rendered as billboards. More...

#include <billboard_line.h>

Inheritance diagram for rviz::BillboardLine:
Inheritance graph
[legend]

Public Member Functions

void addPoint (const Ogre::Vector3 &point)
 
void addPoint (const Ogre::Vector3 &point, const Ogre::ColourValue &color)
 
 BillboardLine (Ogre::SceneManager *manager, Ogre::SceneNode *parent_node=nullptr)
 Constructor. More...
 
void clear ()
 
Ogre::MaterialPtr getMaterial ()
 
const Ogre::Quaternion & getOrientation () override
 Get the local orientation of this object. More...
 
const Ogre::Vector3 & getPosition () override
 Get the local position of this object. More...
 
Ogre::SceneNode * getSceneNode ()
 Get the scene node associated with this object. More...
 
void newLine ()
 
void setColor (float r, float g, float b, float a) override
 Set the color of the object. Values are in the range [0, 1]. More...
 
void setLineWidth (float width)
 
void setMaxPointsPerLine (uint32_t max)
 
void setNumLines (uint32_t num)
 
void setOrientation (const Ogre::Quaternion &orientation) override
 Set the orientation of the object. More...
 
void setPosition (const Ogre::Vector3 &position) override
 Set the position of this object. More...
 
void setScale (const Ogre::Vector3 &scale) override
 Set the scale of the object. Always relative to the identity orientation of the object. More...
 
void setUserData (const Ogre::Any &) override
 We have no objects that we can set user data on. More...
 
 ~BillboardLine () override
 
- Public Member Functions inherited from rviz::Object
 Object (Ogre::SceneManager *scene_manager)
 
virtual ~Object ()
 

Private Types

typedef std::vector< Ogre::BillboardChain * > V_Chain
 
typedef std::vector< uint32_t > V_uint32
 

Private Member Functions

Ogre::BillboardChain * createChain ()
 
void setupChains ()
 

Private Attributes

V_Chain chains_
 
Ogre::ColourValue color_
 
uint32_t current_chain_
 
uint32_t current_line_
 
uint32_t elements_in_current_chain_
 
uint32_t lines_per_chain_
 
Ogre::MaterialPtr material_
 
uint32_t max_points_per_line_
 
V_uint32 num_elements_
 
uint32_t num_lines_
 
Ogre::SceneNode * scene_node_
 
uint32_t total_elements_
 
float width_
 

Additional Inherited Members

- Protected Attributes inherited from rviz::Object
Ogre::SceneManager * scene_manager_
 Ogre scene manager this object is part of. More...
 

Detailed Description

An object that displays a multi-segment line strip rendered as billboards.

Definition at line 58 of file billboard_line.h.

Member Typedef Documentation

◆ V_Chain

typedef std::vector<Ogre::BillboardChain*> rviz::BillboardLine::V_Chain
private

Definition at line 115 of file billboard_line.h.

◆ V_uint32

typedef std::vector<uint32_t> rviz::BillboardLine::V_uint32
private

Definition at line 125 of file billboard_line.h.

Constructor & Destructor Documentation

◆ BillboardLine()

rviz::BillboardLine::BillboardLine ( Ogre::SceneManager *  manager,
Ogre::SceneNode *  parent_node = nullptr 
)

Constructor.

Parameters
managerScene manager this object is a part of
parent_nodeA scene node to use as the parent of this object. If NULL, uses the root scene node.

Definition at line 48 of file billboard_line.cpp.

◆ ~BillboardLine()

rviz::BillboardLine::~BillboardLine ( )
override

Definition at line 77 of file billboard_line.cpp.

Member Function Documentation

◆ addPoint() [1/2]

void rviz::BillboardLine::addPoint ( const Ogre::Vector3 &  point)

Definition at line 208 of file billboard_line.cpp.

◆ addPoint() [2/2]

void rviz::BillboardLine::addPoint ( const Ogre::Vector3 &  point,
const Ogre::ColourValue &  color 
)

Definition at line 213 of file billboard_line.cpp.

◆ clear()

void rviz::BillboardLine::clear ( )

Definition at line 105 of file billboard_line.cpp.

◆ createChain()

Ogre::BillboardChain * rviz::BillboardLine::createChain ( )
private

Definition at line 91 of file billboard_line.cpp.

◆ getMaterial()

Ogre::MaterialPtr rviz::BillboardLine::getMaterial ( )
inline

Definition at line 104 of file billboard_line.h.

◆ getOrientation()

const Ogre::Quaternion & rviz::BillboardLine::getOrientation ( )
overridevirtual

Get the local orientation of this object.

Returns
The orientation

Implements rviz::Object.

Definition at line 306 of file billboard_line.cpp.

◆ getPosition()

const Ogre::Vector3 & rviz::BillboardLine::getPosition ( )
overridevirtual

Get the local position of this object.

Returns
The position

Implements rviz::Object.

Definition at line 301 of file billboard_line.cpp.

◆ getSceneNode()

Ogre::SceneNode* rviz::BillboardLine::getSceneNode ( )
inline

Get the scene node associated with this object.

Returns
The scene node associated with this object

Definition at line 92 of file billboard_line.h.

◆ newLine()

void rviz::BillboardLine::newLine ( )

Definition at line 201 of file billboard_line.cpp.

◆ setColor()

void rviz::BillboardLine::setColor ( float  r,
float  g,
float  b,
float  a 
)
overridevirtual

Set the color of the object. Values are in the range [0, 1].

Parameters
rRed component
gGreen component
bBlue component

Implements rviz::Object.

Definition at line 271 of file billboard_line.cpp.

◆ setLineWidth()

void rviz::BillboardLine::setLineWidth ( float  width)

Definition at line 237 of file billboard_line.cpp.

◆ setMaxPointsPerLine()

void rviz::BillboardLine::setMaxPointsPerLine ( uint32_t  max)

Definition at line 169 of file billboard_line.cpp.

◆ setNumLines()

void rviz::BillboardLine::setNumLines ( uint32_t  num)

Definition at line 187 of file billboard_line.cpp.

◆ setOrientation()

void rviz::BillboardLine::setOrientation ( const Ogre::Quaternion &  orientation)
overridevirtual

Set the orientation of the object.

Parameters
Orientationquaternion orientation to set to.

Implements rviz::Object.

Definition at line 261 of file billboard_line.cpp.

◆ setPosition()

void rviz::BillboardLine::setPosition ( const Ogre::Vector3 &  position)
overridevirtual

Set the position of this object.

Parameters
Positionvector position to set to.

Implements rviz::Object.

Definition at line 256 of file billboard_line.cpp.

◆ setScale()

void rviz::BillboardLine::setScale ( const Ogre::Vector3 &  scale)
overridevirtual

Set the scale of the object. Always relative to the identity orientation of the object.

Parameters
Scalevector scale to set to.

Implements rviz::Object.

Definition at line 266 of file billboard_line.cpp.

◆ setupChains()

void rviz::BillboardLine::setupChains ( )
private

Definition at line 125 of file billboard_line.cpp.

◆ setUserData()

void rviz::BillboardLine::setUserData ( const Ogre::Any &  )
inlineoverridevirtual

We have no objects that we can set user data on.

Implements rviz::Object.

Definition at line 100 of file billboard_line.h.

Member Data Documentation

◆ chains_

V_Chain rviz::BillboardLine::chains_
private

Definition at line 116 of file billboard_line.h.

◆ color_

Ogre::ColourValue rviz::BillboardLine::color_
private

Definition at line 119 of file billboard_line.h.

◆ current_chain_

uint32_t rviz::BillboardLine::current_chain_
private

Definition at line 133 of file billboard_line.h.

◆ current_line_

uint32_t rviz::BillboardLine::current_line_
private

Definition at line 122 of file billboard_line.h.

◆ elements_in_current_chain_

uint32_t rviz::BillboardLine::elements_in_current_chain_
private

Definition at line 134 of file billboard_line.h.

◆ lines_per_chain_

uint32_t rviz::BillboardLine::lines_per_chain_
private

Definition at line 131 of file billboard_line.h.

◆ material_

Ogre::MaterialPtr rviz::BillboardLine::material_
private

Definition at line 117 of file billboard_line.h.

◆ max_points_per_line_

uint32_t rviz::BillboardLine::max_points_per_line_
private

Definition at line 130 of file billboard_line.h.

◆ num_elements_

V_uint32 rviz::BillboardLine::num_elements_
private

Definition at line 126 of file billboard_line.h.

◆ num_lines_

uint32_t rviz::BillboardLine::num_lines_
private

Definition at line 129 of file billboard_line.h.

◆ scene_node_

Ogre::SceneNode* rviz::BillboardLine::scene_node_
private

Definition at line 113 of file billboard_line.h.

◆ total_elements_

uint32_t rviz::BillboardLine::total_elements_
private

Definition at line 127 of file billboard_line.h.

◆ width_

float rviz::BillboardLine::width_
private

Definition at line 120 of file billboard_line.h.


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


rviz
Author(s): Dave Hershberger, David Gossow, Josh Faust, William Woodall
autogenerated on Fri Dec 13 2024 03:31:03