A generator class for performing boolean operations on two buffers. More...
#include <booleanmeshgenerator.h>
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... | |
BooleanGenerator & | SetBooleanOperation (const BooleanOperation Op) |
Sets the boolean operation to be performed. More... | |
BooleanGenerator & | SetFirstBuffer (TriangleBuffer *First) |
Sets the first buffers to operate on. More... | |
BooleanGenerator & | SetSecondBuffer (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... | |
Mesh * | GenerateMesh (const String &MeshName, const String &MeshGroup, const String &MatName, const String &MatGroup) const |
Generates the mesh. More... | |
BooleanGenerator & | ResetTransforms () |
Resets all transforms (orientation, position and scale) that would have been applied to the mesh to their default values. More... | |
BooleanGenerator & | SetEnableNormals (Boole EnableNormals) |
Sets whether normals are enabled or not. More... | |
BooleanGenerator & | SetNumTexCoordSet (const UInt8 NumSets) |
Sets the number of texture coordintate sets. More... | |
BooleanGenerator & | SetOrientation (const Quaternion &Ori) |
Sets an orientation baked into the resulting mesh. More... | |
BooleanGenerator & | SetOrientation (const Real X, const Real Y, const Real Z, const Real W) |
Sets an orientation baked into the resulting mesh. More... | |
BooleanGenerator & | SetPosition (const Vector3 &Loc) |
Sets a translation baked into the resulting mesh. More... | |
BooleanGenerator & | SetPosition (const Real X, const Real Y, const Real Z) |
Sets a translation baked into the resulting mesh. More... | |
BooleanGenerator & | SetScale (const Vector3 &Scaling) |
Sets a scale baked into the resulting mesh. More... | |
BooleanGenerator & | SetScale (const Real Scaling) |
Sets a uniform scale baked into the resulting mesh. More... | |
BooleanGenerator & | SetScale (const Real X, const Real Y, const Real Z) |
Sets a scale baked into the resulting mesh. More... | |
BooleanGenerator & | SetSwitchUV (Boole SwitchUV) |
Sets whether to switch U and V texture coordinates. More... | |
BooleanGenerator & | SetTextureRectangle (const Real RectLeft, const Real RectRight, const Real RectTop, const Real RectBottom) |
Sets the texture rectangle. More... | |
BooleanGenerator & | SetUTile (const Real uTile) |
Sets the U Tile. More... | |
BooleanGenerator & | SetVTile (const Real vTile) |
Sets the V Tile. More... | |
Protected Attributes | |
BooleanOperation | BoolOp |
The operation to be performed on the two buffers. More... | |
TriangleBuffer * | FirstBuffer |
The first of the two buffers to operate on. More... | |
TriangleBuffer * | SecondBuffer |
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... | |
A generator class for performing boolean operations on two buffers.
Definition at line 83 of file booleanmeshgenerator.h.
Mezzanine::Graphics::Procedural::BooleanGenerator::BooleanGenerator | ( | const BooleanOperation | Op | ) |
Operation constructor.
Op | The 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.
First | The first of the two buffers to operate on. |
Second | The second of the two buffers to operate on. |
Op | The operation to be performed on the two buffers. |
Definition at line 344 of file booleanmeshgenerator.cpp.
|
virtual |
Adds the vertices and indices as configured in this generator to a triangle buffer.
Buffer | The 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.
Op | The operation to be performed on the two buffers. |
Definition at line 536 of file booleanmeshgenerator.cpp.
BooleanGenerator & Mezzanine::Graphics::Procedural::BooleanGenerator::SetFirstBuffer | ( | TriangleBuffer * | First | ) |
Sets the first buffers to operate on.
First | The first of the two buffers to operate on. |
Definition at line 524 of file booleanmeshgenerator.cpp.
BooleanGenerator & Mezzanine::Graphics::Procedural::BooleanGenerator::SetSecondBuffer | ( | TriangleBuffer * | Second | ) |
Sets the second buffers to operate on.
Second | The second of the two buffers to operate on. |
Definition at line 530 of file booleanmeshgenerator.cpp.
|
protected |
The operation to be performed on the two buffers.
Definition at line 88 of file booleanmeshgenerator.h.
|
protected |
The first of the two buffers to operate on.
Definition at line 91 of file booleanmeshgenerator.h.
|
protected |
The second of the two buffers to operate on.
Definition at line 94 of file booleanmeshgenerator.h.