MezzanineEngine 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
Mezzanine::LineGroup Class Reference

This is a group of consectutive line segments to be rendered together. More...

#include <linegroup.h>

Public Member Functions

 LineGroup ()
 Basic Constructor. More...
 
 ~LineGroup ()
 Default Destructor.
 
void AddPoint (const Vector3 &NewPoint, const ColourValue &Colour)
 This add Either a start pointing, or a line segment to the next point. More...
 
void AddToWorld ()
 Configures this LineGroup to render in the scene.
 
void ClearLines ()
 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 render buffers with the needed data to draw the lines in this LineGroup.
 
Real GetBoundingRadius () const
 How big would a circle need to be to encapsulate this. More...
 
Whole GetNumPoints () const
 Get the amount of points used to define Line Segments. More...
 
const Vector3 GetPoint (const Whole Index) const
 Access points by order they were added. More...
 
void RemoveFromWorld ()
 Unhooks this LineGroup from the scene, stopping it from rendering.
 
void UpdatePoint (const Whole Index, const Vector3 &NewValue)
 This changes a specific point. More...
 

Detailed Description

This is a group of consectutive line segments to be rendered together.

This class stores a listing of points and renders thems as one object into the world provided.

Definition at line 63 of file linegroup.h.

Constructor & Destructor Documentation

Mezzanine::LineGroup::LineGroup ( )

Basic Constructor.

Todo:
TODO: This class really should support rotation, the underlying implementation does.

Definition at line 343 of file linegroup.cpp.

Member Function Documentation

void Mezzanine::LineGroup::AddPoint ( const Vector3 NewPoint,
const ColourValue Colour 
)

This add Either a start pointing, or a line segment to the next point.

This adds a point that will be rendered as the endpoint of a line.

Parameters
NewPointThe Point to be added.
ColourThe colour to be given to the new point.

Definition at line 354 of file linegroup.cpp.

void Mezzanine::LineGroup::DrawLine ( const Vector3 Start,
const Vector3 End,
const ColourValue Colour 
)

This adds Two points to the list.

Parameters
StartThe first point to be added.
EndThe second point to be added.
ColourThe colour of the line being added.

Definition at line 380 of file linegroup.cpp.

Real Mezzanine::LineGroup::GetBoundingRadius ( ) const

How big would a circle need to be to encapsulate this.

Returns
This returns a real number which indicates the radius.

Definition at line 402 of file linegroup.cpp.

Whole Mezzanine::LineGroup::GetNumPoints ( void  ) const

Get the amount of points used to define Line Segments.

Returns
A Whole Number which indicates the amount of points used to make the lines in this LineGroup.

Definition at line 365 of file linegroup.cpp.

const Vector3 Mezzanine::LineGroup::GetPoint ( const Whole  Index) const

Access points by order they were added.

This returns the point indicated by index. They start at 0, and increment from there.

Parameters
IndexA Whole number which indicates which point to retrieve.

Definition at line 359 of file linegroup.cpp.

void Mezzanine::LineGroup::UpdatePoint ( const Whole  Index,
const Vector3 NewValue 
)

This changes a specific point.

This replaces a point specified by index with a new point.

Parameters
IndexThe index of the point to replace.
NewValueA point to replace the existing point with.

Definition at line 370 of file linegroup.cpp.


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