Spinning Topp Logo BlackTopp Studios
inc
Public Member Functions | Protected Attributes | List of all members
Mezzanine::Graphics::Procedural::BoxCornerGenerator Class Reference

A generator class for a mesh composed of boxes that outline the corner edges of a larger box. More...

#include <boxcornergenerator.h>

+ Inheritance diagram for Mezzanine::Graphics::Procedural::BoxCornerGenerator:
+ Collaboration diagram for Mezzanine::Graphics::Procedural::BoxCornerGenerator:

Public Member Functions

 BoxCornerGenerator (const Vector3 &HalfExtents, const Real CornerThickness)
 Vector constructor. More...
 
 BoxCornerGenerator (const Real HalfSizeX, const Real HalfSizeY, const Real HalfSizeZ, const Real CornerThickness)
 Real constructor. More...
 
virtual ~BoxCornerGenerator ()
 Class destructor.
 
virtual void AddToTriangleBuffer (TriangleBuffer &Buffer) const
 Adds the vertices and indices as configured in this generator to a triangle buffer. More...
 
BoxCornerGeneratorSetCornerThickness (const Real CornerThickness)
 Sets how far into the box from the edge for each axis the corner component will be sized for.

Exceptions
Ifthe thickness is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.
More...
 
BoxCornerGeneratorSetHalfExtents (const Vector3 &HalfExtents)
 Sets the half size of the box. More...
 
BoxCornerGeneratorSetHalfSizeX (const Real HalfSizeX)
 Sets the half size along the X axis.

Exceptions
Ifthe size is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.
More...
 
BoxCornerGeneratorSetHalfSizeY (const Real HalfSizeY)
 Sets the half size along the Y axis.

Exceptions
Ifthe size is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.
More...
 
BoxCornerGeneratorSetHalfSizeZ (const Real HalfSizeZ)
 Sets the half size along the Z axis.

Exceptions
Ifthe size is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.
More...
 
- Public Member Functions inherited from Mezzanine::Graphics::Procedural::MeshGenerator< BoxCornerGenerator >
 MeshGenerator ()
 Class constructor.
 
virtual ~MeshGenerator ()
 Class destructor.
 
TriangleBuffer BuildTriangleBuffer () const
 Creates a TriangleBuffer with the the vertices and indices as configured in this generator. More...
 
MeshGenerateMesh (const String &MeshName, const String &MeshGroup, const String &MatName, const String &MatGroup) const
 Generates the mesh. More...
 
BoxCornerGeneratorResetTransforms ()
 Resets all transforms (orientation, position and scale) that would have been applied to the mesh to their default values. More...
 
BoxCornerGeneratorSetEnableNormals (Boole EnableNormals)
 Sets whether normals are enabled or not. More...
 
BoxCornerGeneratorSetNumTexCoordSet (const UInt8 NumSets)
 Sets the number of texture coordintate sets. More...
 
BoxCornerGeneratorSetOrientation (const Quaternion &Ori)
 Sets an orientation baked into the resulting mesh. More...
 
BoxCornerGeneratorSetOrientation (const Real X, const Real Y, const Real Z, const Real W)
 Sets an orientation baked into the resulting mesh. More...
 
BoxCornerGeneratorSetPosition (const Vector3 &Loc)
 Sets a translation baked into the resulting mesh. More...
 
BoxCornerGeneratorSetPosition (const Real X, const Real Y, const Real Z)
 Sets a translation baked into the resulting mesh. More...
 
BoxCornerGeneratorSetScale (const Vector3 &Scaling)
 Sets a scale baked into the resulting mesh. More...
 
BoxCornerGeneratorSetScale (const Real Scaling)
 Sets a uniform scale baked into the resulting mesh. More...
 
BoxCornerGeneratorSetScale (const Real X, const Real Y, const Real Z)
 Sets a scale baked into the resulting mesh. More...
 
BoxCornerGeneratorSetSwitchUV (Boole SwitchUV)
 Sets whether to switch U and V texture coordinates. More...
 
BoxCornerGeneratorSetTextureRectangle (const Real RectLeft, const Real RectRight, const Real RectTop, const Real RectBottom)
 Sets the texture rectangle. More...
 
BoxCornerGeneratorSetUTile (const Real uTile)
 Sets the U Tile. More...
 
BoxCornerGeneratorSetVTile (const Real vTile)
 Sets the V Tile. More...
 

Protected Attributes

Vector3 BoxHalf
 The size of the box to generate. More...
 
Real BoxThick
 The thickness of boxes that will be generated in each corner for each axis. More...
 
- Protected Attributes inherited from Mezzanine::Graphics::Procedural::MeshGenerator< BoxCornerGenerator >
UInt8 GeneratorOpts
 Storage for the boolean options to be used by this generator. More...
 
UInt8 NumTexCoordSet
 The number of texture coordinate sets to include. More...
 
Quaternion Orientation
 Orientation to apply the mesh. More...
 
Vector3 Position
 Position to apply to the mesh. More...
 
Vector3 Scale
 Scale to apply to the mesh. More...
 
Real UTile
 U tile for texture coords generation. More...
 
Vector2 UVOrigin
 Rectangle in which the texture coordinates will be placed. More...
 
Real VTile
 V tile for texture coords generation. More...
 

Additional Inherited Members

- Public Types inherited from Mezzanine::Graphics::Procedural::MeshGenerator< BoxCornerGenerator >
enum  GeneratorOptions
 A convenience enum used to describe boolean options for a generator.
 
- Protected Member Functions inherited from Mezzanine::Graphics::Procedural::MeshGenerator< BoxCornerGenerator >
void AddPoint (TriangleBuffer &Buffer, const Vector3 &Loc, const Vector3 &Norm, const Vector2 &UV) const
 Adds a new point to a triangle buffer, using the format defined for that MeshGenerator. More...
 

Detailed Description

A generator class for a mesh composed of boxes that outline the corner edges of a larger box.

Definition at line 82 of file boxcornergenerator.h.

Constructor & Destructor Documentation

Mezzanine::Graphics::Procedural::BoxCornerGenerator::BoxCornerGenerator ( const Vector3 HalfExtents,
const Real  CornerThickness 
)

Vector constructor.

Parameters
HalfExtentsThe half size of the box to generate.
CornerThicknessThe thickness of boxes that will be generated in each corner for each axis.

Definition at line 80 of file boxcornergenerator.cpp.

Mezzanine::Graphics::Procedural::BoxCornerGenerator::BoxCornerGenerator ( const Real  HalfSizeX,
const Real  HalfSizeY,
const Real  HalfSizeZ,
const Real  CornerThickness 
)

Real constructor.

Parameters
HalfSizeXThe half size of the box to generate on the X axis.
HalfSizeYThe half size of the box to generate on the Y axis.
HalfSizeZThe half size of the box to generate on the Z axis.
CornerThicknessThe thickness of boxes that will be generated in each corner for each axis.

Definition at line 86 of file boxcornergenerator.cpp.

Member Function Documentation

void Mezzanine::Graphics::Procedural::BoxCornerGenerator::AddToTriangleBuffer ( TriangleBuffer Buffer) const
virtual

Adds the vertices and indices as configured in this generator to a triangle buffer.

Parameters
BufferThe buffer to append this generators vertices and indices to.

Implements Mezzanine::Graphics::Procedural::MeshGenerator< BoxCornerGenerator >.

Definition at line 100 of file boxcornergenerator.cpp.

BoxCornerGenerator & Mezzanine::Graphics::Procedural::BoxCornerGenerator::SetCornerThickness ( const Real  CornerThickness)

Sets how far into the box from the edge for each axis the corner component will be sized for.

Exceptions
Ifthe thickness is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.

Parameters
CornerThicknessThe thickness of boxes that will be generated in each corner for each axis.
Returns
Returns a reference to this.

Definition at line 334 of file boxcornergenerator.cpp.

BoxCornerGenerator & Mezzanine::Graphics::Procedural::BoxCornerGenerator::SetHalfExtents ( const Vector3 HalfExtents)

Sets the half size of the box.

Parameters
SizeThe half size of the box that will be generated.
Returns
Returns a reference to this.

Definition at line 326 of file boxcornergenerator.cpp.

BoxCornerGenerator & Mezzanine::Graphics::Procedural::BoxCornerGenerator::SetHalfSizeX ( const Real  HalfSizeX)

Sets the half size along the X axis.

Exceptions
Ifthe size is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.

Parameters
SizeXThe size to set for the generated box on the X axis.
Returns
Returns a reference to this.

Definition at line 299 of file boxcornergenerator.cpp.

BoxCornerGenerator & Mezzanine::Graphics::Procedural::BoxCornerGenerator::SetHalfSizeY ( const Real  HalfSizeY)

Sets the half size along the Y axis.

Exceptions
Ifthe size is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.

Parameters
SizeYThe size to set for the generated box on the Y axis.
Returns
Returns a reference to this.

Definition at line 308 of file boxcornergenerator.cpp.

BoxCornerGenerator & Mezzanine::Graphics::Procedural::BoxCornerGenerator::SetHalfSizeZ ( const Real  HalfSizeZ)

Sets the half size along the Z axis.

Exceptions
Ifthe size is set to 0 or less, a PARAMETERS_EXCEPTION will be thrown.

Parameters
SizeZThe size to set for the generated box on the Z axis.
Returns
Returns a reference to this.

Definition at line 317 of file boxcornergenerator.cpp.

Member Data Documentation

Vector3 Mezzanine::Graphics::Procedural::BoxCornerGenerator::BoxHalf
protected

The size of the box to generate.

Definition at line 87 of file boxcornergenerator.h.

Real Mezzanine::Graphics::Procedural::BoxCornerGenerator::BoxThick
protected

The thickness of boxes that will be generated in each corner for each axis.

Definition at line 90 of file boxcornergenerator.h.


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