Does the bulk of the work that that the Mezzanine::LineGroup performs. More...
Public Member Functions | |
Line3D (World *ParentWorld) | |
Default Constructor. More... | |
~Line3D () | |
Destructor. More... | |
void | AddPoint (const Vector3 &NewPoint, const ColourValue &Colour) |
This adds a point to the list of what should be rendered. More... | |
void | ClearPoints () |
Clears all data pertaining to points in this line group. | |
void | DrawLine (const Vector3 &Start, const Vector3 &End, const ColourValue &Colour) |
This adds Two points to the list. More... | |
void | DrawLines () |
Updates the internal buffers as necessary for rendering. More... | |
Real | getBoundingRadius (void) const |
How big would a circle need to be to encapsulate this. More... | |
Ogre::SceneNode * | GetNode () const |
Retrieves the scene node that will be used to attach this object to the scenegraph. More... | |
Whole | GetNumPoints () const |
How many points are in this Line3D. More... | |
const Vector3 & | GetPoint (const Whole Index) const |
Access a specific point by index. More... | |
Real | getSquaredViewDepth (const Ogre::Camera *Cam) const |
Not Used. More... | |
void | UpdatePoint (const Whole Index, const Vector3 &NewValue) |
This changes a specific point. More... | |
Protected Member Functions | |
const Ogre::Quaternion | getWorldOrientation (void) const |
Gets how rotated this is currently. More... | |
const Ogre::Vector3 | getWorldPosition (void) const |
Get the position of this Line3d. More... | |
void | ResizeVertexBuffer (const Whole RequestedSize) |
Resizes the Vertex Buffer. More... | |
Protected Attributes | |
World * | ParentWorld |
Parent World to locate SceneManager. | |
std::vector< LineVertex > | Points |
This is a vector which stores the point data. More... | |
Ogre::SceneNode * | SelfNode |
Pointer to the node that will be used exclusively for this renderable. More... | |
Ogre::HardwareVertexBufferSharedPtr | VertexBuffer |
Internal pointer to the vertex buffer for this object. More... | |
Does the bulk of the work that that the Mezzanine::LineGroup performs.
Mezzanine::LineGroup is a simple wrapper around this to perform precise low level interactions with Ogre, the rendering subsystem. This uses too much stuff from ogre to use publicly. so we need to hide it here in the Mezzanine::internal namespace.
Definition at line 88 of file linegroup.cpp.
Mezzanine::Internal::Line3D::Line3D | ( | World * | ParentWorld | ) |
Default Constructor.
Definition at line 175 of file linegroup.cpp.
Mezzanine::Internal::Line3D::~Line3D | ( | ) |
Destructor.
Definition at line 211 of file linegroup.cpp.
void Mezzanine::Internal::Line3D::AddPoint | ( | const Vector3 & | NewPoint, |
const ColourValue & | Colour | ||
) |
This adds a point to the list of what should be rendered.
NewPoint | The point to be added. |
Definition at line 242 of file linegroup.cpp.
void Mezzanine::Internal::Line3D::DrawLine | ( | const Vector3 & | Start, |
const Vector3 & | End, | ||
const ColourValue & | Colour | ||
) |
This adds Two points to the list.
Start | The first point to be added. |
End | The second point to be added. |
Colour | The colour of the line being added. |
Definition at line 271 of file linegroup.cpp.
void Mezzanine::Internal::Line3D::DrawLines | ( | ) |
Updates the internal buffers as necessary for rendering.
Definition at line 277 of file linegroup.cpp.
Real Mezzanine::Internal::Line3D::getBoundingRadius | ( | void | ) | const |
How big would a circle need to be to encapsulate this.
This returns the radius the a circle would need to have to surround this line group.
Definition at line 350 of file linegroup.cpp.
Ogre::SceneNode * Mezzanine::Internal::Line3D::GetNode | ( | ) | const |
Retrieves the scene node that will be used to attach this object to the scenegraph.
Definition at line 353 of file linegroup.cpp.
Whole Mezzanine::Internal::Line3D::GetNumPoints | ( | ) | const |
How many points are in this Line3D.
Definition at line 254 of file linegroup.cpp.
Access a specific point by index.
index | The index. |
This really does just access the underlying vector.
Definition at line 247 of file linegroup.cpp.
Real Mezzanine::Internal::Line3D::getSquaredViewDepth | ( | const Ogre::Camera * | Cam | ) | const |
Not Used.
Cam | Not Used |
Definition at line 339 of file linegroup.cpp.
|
protected |
Gets how rotated this is currently.
Returns a quaternion with the rotation
Definition at line 217 of file linegroup.cpp.
|
protected |
Get the position of this Line3d.
Definition at line 220 of file linegroup.cpp.
|
protected |
Resizes the Vertex Buffer.
RequestedSize | The new size for the existing buffer. |
Definition at line 223 of file linegroup.cpp.
This changes a specific point.
This replaces a point specified by index with a new point.
Index | The index of the point to replace. |
NewValue | A point to replace the existing point with. |
Definition at line 259 of file linegroup.cpp.
|
protected |
This is a vector which stores the point data.
Definition at line 108 of file linegroup.cpp.
|
protected |
Pointer to the node that will be used exclusively for this renderable.
Definition at line 114 of file linegroup.cpp.
|
protected |
Internal pointer to the vertex buffer for this object.
Definition at line 111 of file linegroup.cpp.