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

A generator class for performing boolean operations on two buffers. More...

#include <booleanmeshgenerator.h>

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

Public Member Functions

 BooleanGenerator ()
 Blank constructor.
 
 BooleanGenerator (const BooleanOperation Op)
 Operation constructor. More...
 
 BooleanGenerator (TriangleBuffer *First, TriangleBuffer *Second, const BooleanOperation Op)
 Descriptive constructor. More...
 
virtual ~BooleanGenerator ()
 Class destructor.
 
virtual void AddToTriangleBuffer (TriangleBuffer &Buffer) const
 Adds the vertices and indices as configured in this generator to a triangle buffer. More...
 
BooleanGeneratorSetBooleanOperation (const BooleanOperation Op)
 Sets the boolean operation to be performed. More...
 
BooleanGeneratorSetFirstBuffer (TriangleBuffer *First)
 Sets the first buffers to operate on. More...
 
BooleanGeneratorSetSecondBuffer (TriangleBuffer *Second)
 Sets the second buffers to operate on. More...
 
- Public Member Functions inherited from Mezzanine::Graphics::Procedural::MeshGenerator< BooleanGenerator >
 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...
 
BooleanGeneratorResetTransforms ()
 Resets all transforms (orientation, position and scale) that would have been applied to the mesh to their default values. More...
 
BooleanGeneratorSetEnableNormals (Boole EnableNormals)
 Sets whether normals are enabled or not. More...
 
BooleanGeneratorSetNumTexCoordSet (const UInt8 NumSets)
 Sets the number of texture coordintate sets. More...
 
BooleanGeneratorSetOrientation (const Quaternion &Ori)
 Sets an orientation baked into the resulting mesh. More...
 
BooleanGeneratorSetOrientation (const Real X, const Real Y, const Real Z, const Real W)
 Sets an orientation baked into the resulting mesh. More...
 
BooleanGeneratorSetPosition (const Vector3 &Loc)
 Sets a translation baked into the resulting mesh. More...
 
BooleanGeneratorSetPosition (const Real X, const Real Y, const Real Z)
 Sets a translation baked into the resulting mesh. More...
 
BooleanGeneratorSetScale (const Vector3 &Scaling)
 Sets a scale baked into the resulting mesh. More...
 
BooleanGeneratorSetScale (const Real Scaling)
 Sets a uniform scale baked into the resulting mesh. More...
 
BooleanGeneratorSetScale (const Real X, const Real Y, const Real Z)
 Sets a scale baked into the resulting mesh. More...
 
BooleanGeneratorSetSwitchUV (Boole SwitchUV)
 Sets whether to switch U and V texture coordinates. More...
 
BooleanGeneratorSetTextureRectangle (const Real RectLeft, const Real RectRight, const Real RectTop, const Real RectBottom)
 Sets the texture rectangle. More...
 
BooleanGeneratorSetUTile (const Real uTile)
 Sets the U Tile. More...
 
BooleanGeneratorSetVTile (const Real vTile)
 Sets the V Tile. More...
 

Protected Attributes

BooleanOperation BoolOp
 The operation to be performed on the two buffers. More...
 
TriangleBufferFirstBuffer
 The first of the two buffers to operate on. More...
 
TriangleBufferSecondBuffer
 The second of the two buffers to operate on. More...
 
- Protected Attributes inherited from Mezzanine::Graphics::Procedural::MeshGenerator< BooleanGenerator >
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< BooleanGenerator >
enum  GeneratorOptions
 A convenience enum used to describe boolean options for a generator.
 
- Protected Member Functions inherited from Mezzanine::Graphics::Procedural::MeshGenerator< BooleanGenerator >
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 performing boolean operations on two buffers.

Definition at line 83 of file booleanmeshgenerator.h.

Constructor & Destructor Documentation

Mezzanine::Graphics::Procedural::BooleanGenerator::BooleanGenerator ( const BooleanOperation  Op)

Operation constructor.

Parameters
OpThe operation to be performed on the two buffers.

Definition at line 338 of file booleanmeshgenerator.cpp.

Mezzanine::Graphics::Procedural::BooleanGenerator::BooleanGenerator ( TriangleBuffer First,
TriangleBuffer Second,
const BooleanOperation  Op 
)

Descriptive constructor.

Parameters
FirstThe first of the two buffers to operate on.
SecondThe second of the two buffers to operate on.
OpThe operation to be performed on the two buffers.

Definition at line 344 of file booleanmeshgenerator.cpp.

Member Function Documentation

void Mezzanine::Graphics::Procedural::BooleanGenerator::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< BooleanGenerator >.

Definition at line 356 of file booleanmeshgenerator.cpp.

BooleanGenerator & Mezzanine::Graphics::Procedural::BooleanGenerator::SetBooleanOperation ( const BooleanOperation  Op)

Sets the boolean operation to be performed.

Parameters
OpThe operation to be performed on the two buffers.
Returns
Returns a reference to this.

Definition at line 536 of file booleanmeshgenerator.cpp.

BooleanGenerator & Mezzanine::Graphics::Procedural::BooleanGenerator::SetFirstBuffer ( TriangleBuffer First)

Sets the first buffers to operate on.

Parameters
FirstThe first of the two buffers to operate on.
Returns
Returns a reference to this.

Definition at line 524 of file booleanmeshgenerator.cpp.

BooleanGenerator & Mezzanine::Graphics::Procedural::BooleanGenerator::SetSecondBuffer ( TriangleBuffer Second)

Sets the second buffers to operate on.

Parameters
SecondThe second of the two buffers to operate on.
Returns
Returns a reference to this.

Definition at line 530 of file booleanmeshgenerator.cpp.

Member Data Documentation

BooleanOperation Mezzanine::Graphics::Procedural::BooleanGenerator::BoolOp
protected

The operation to be performed on the two buffers.

Definition at line 88 of file booleanmeshgenerator.h.

TriangleBuffer* Mezzanine::Graphics::Procedural::BooleanGenerator::FirstBuffer
protected

The first of the two buffers to operate on.

Definition at line 91 of file booleanmeshgenerator.h.

TriangleBuffer* Mezzanine::Graphics::Procedural::BooleanGenerator::SecondBuffer
protected

The second of the two buffers to operate on.

Definition at line 94 of file booleanmeshgenerator.h.


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