An object that displays a multi-segment line strip rendered as billboards. More...
#include <billboard_line.h>
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=NULL) | |
Constructor. | |
void | clear () |
Ogre::MaterialPtr | getMaterial () |
virtual const Ogre::Quaternion & | getOrientation () |
Get the local orientation of this object. | |
virtual const Ogre::Vector3 & | getPosition () |
Get the local position of this object. | |
Ogre::SceneNode * | getSceneNode () |
Get the scene node associated with this object. | |
void | newLine () |
virtual void | setColor (float r, float g, float b, float a) |
Set the color of the object. Values are in the range [0, 1]. | |
void | setLineWidth (float width) |
void | setMaxPointsPerLine (uint32_t max) |
void | setNumLines (uint32_t num) |
virtual void | setOrientation (const Ogre::Quaternion &orientation) |
Set the orientation of the object. | |
virtual void | setPosition (const Ogre::Vector3 &position) |
Set the position of this object. | |
virtual void | setScale (const Ogre::Vector3 &scale) |
Set the scale of the object. Always relative to the identity orientation of the object. | |
void | setUserData (const Ogre::Any &data) |
We have no objects that we can set user data on. | |
virtual | ~BillboardLine () |
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_ |
An object that displays a multi-segment line strip rendered as billboards.
Definition at line 58 of file billboard_line.h.
typedef std::vector<Ogre::BillboardChain*> ogre_tools::BillboardLine::V_Chain [private] |
Definition at line 106 of file billboard_line.h.
typedef std::vector<uint32_t> ogre_tools::BillboardLine::V_uint32 [private] |
Definition at line 116 of file billboard_line.h.
ogre_tools::BillboardLine::BillboardLine | ( | Ogre::SceneManager * | manager, |
Ogre::SceneNode * | parent_node = NULL |
||
) |
Constructor.
manager | Scene manager this object is a part of |
parent_node | A 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.
ogre_tools::BillboardLine::~BillboardLine | ( | ) | [virtual] |
Definition at line 77 of file billboard_line.cpp.
void ogre_tools::BillboardLine::addPoint | ( | const Ogre::Vector3 & | point | ) |
Definition at line 188 of file billboard_line.cpp.
void ogre_tools::BillboardLine::addPoint | ( | const Ogre::Vector3 & | point, |
const Ogre::ColourValue & | color | ||
) |
Definition at line 193 of file billboard_line.cpp.
void ogre_tools::BillboardLine::clear | ( | void | ) |
Definition at line 105 of file billboard_line.cpp.
Ogre::BillboardChain * ogre_tools::BillboardLine::createChain | ( | ) | [private] |
Definition at line 91 of file billboard_line.cpp.
Ogre::MaterialPtr ogre_tools::BillboardLine::getMaterial | ( | void | ) | [inline] |
Definition at line 98 of file billboard_line.h.
const Ogre::Quaternion & ogre_tools::BillboardLine::getOrientation | ( | ) | [virtual] |
Get the local orientation of this object.
Implements ogre_tools::Object.
Definition at line 283 of file billboard_line.cpp.
const Ogre::Vector3 & ogre_tools::BillboardLine::getPosition | ( | ) | [virtual] |
Get the local position of this object.
Implements ogre_tools::Object.
Definition at line 278 of file billboard_line.cpp.
Ogre::SceneNode* ogre_tools::BillboardLine::getSceneNode | ( | ) | [inline] |
Get the scene node associated with this object.
Definition at line 91 of file billboard_line.h.
void ogre_tools::BillboardLine::newLine | ( | ) |
Definition at line 181 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setColor | ( | float | r, |
float | g, | ||
float | b, | ||
float | a | ||
) | [virtual] |
Set the color of the object. Values are in the range [0, 1].
r | Red component |
g | Green component |
b | Blue component |
Implements ogre_tools::Object.
Definition at line 248 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setLineWidth | ( | float | width | ) |
Definition at line 214 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setMaxPointsPerLine | ( | uint32_t | max | ) |
Definition at line 160 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setNumLines | ( | uint32_t | num | ) |
Definition at line 167 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setOrientation | ( | const Ogre::Quaternion & | orientation | ) | [virtual] |
Set the orientation of the object.
Orientation | quaternion orientation to set to. |
Implements ogre_tools::Object.
Definition at line 238 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setPosition | ( | const Ogre::Vector3 & | position | ) | [virtual] |
Set the position of this object.
Position | vector position to set to. |
Implements ogre_tools::Object.
Definition at line 233 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setScale | ( | const Ogre::Vector3 & | scale | ) | [virtual] |
Set the scale of the object. Always relative to the identity orientation of the object.
Scale | vector scale to set to. |
Implements ogre_tools::Object.
Definition at line 243 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setupChains | ( | ) | [private] |
Definition at line 125 of file billboard_line.cpp.
void ogre_tools::BillboardLine::setUserData | ( | const Ogre::Any & | data | ) | [inline, virtual] |
We have no objects that we can set user data on.
Implements ogre_tools::Object.
Definition at line 96 of file billboard_line.h.
V_Chain ogre_tools::BillboardLine::chains_ [private] |
Definition at line 107 of file billboard_line.h.
Ogre::ColourValue ogre_tools::BillboardLine::color_ [private] |
Definition at line 110 of file billboard_line.h.
uint32_t ogre_tools::BillboardLine::current_chain_ [private] |
Definition at line 124 of file billboard_line.h.
uint32_t ogre_tools::BillboardLine::current_line_ [private] |
Definition at line 113 of file billboard_line.h.
uint32_t ogre_tools::BillboardLine::elements_in_current_chain_ [private] |
Definition at line 125 of file billboard_line.h.
uint32_t ogre_tools::BillboardLine::lines_per_chain_ [private] |
Definition at line 122 of file billboard_line.h.
Ogre::MaterialPtr ogre_tools::BillboardLine::material_ [private] |
Definition at line 108 of file billboard_line.h.
uint32_t ogre_tools::BillboardLine::max_points_per_line_ [private] |
Definition at line 121 of file billboard_line.h.
Definition at line 117 of file billboard_line.h.
uint32_t ogre_tools::BillboardLine::num_lines_ [private] |
Definition at line 120 of file billboard_line.h.
Ogre::SceneNode* ogre_tools::BillboardLine::scene_node_ [private] |
Definition at line 104 of file billboard_line.h.
uint32_t ogre_tools::BillboardLine::total_elements_ [private] |
Definition at line 118 of file billboard_line.h.
float ogre_tools::BillboardLine::width_ [private] |
Definition at line 111 of file billboard_line.h.