Ocean
|
This class is the base for all triangles objects. More...
Public Member Functions | |
virtual TriangleFaces | faces () const |
Returns the faces of this triangles object. More... | |
virtual unsigned int | numberFaces () const |
Returns the number of triangle faces defined in this primitive. More... | |
virtual void | setFaces (const TriangleFaces &faces) |
Sets the faces of this triangles object. More... | |
virtual void | setFaces (const unsigned int numberImplicitTriangleFaces) |
Sets the faces of this triangles object. More... | |
ObjectType | type () const override |
Returns the type of this object. More... | |
Public Member Functions inherited from Ocean::Rendering::Primitive | |
const VertexSetRef & | vertexSet () const |
Returns the vertex set of this primitive object. More... | |
virtual void | setVertexSet (const VertexSetRef &vertexSet) |
Sets the vertex set of this primitive object. More... | |
Public Member Functions inherited from Ocean::Rendering::Object | |
ObjectId | id () const |
Returns the unique object id of this object. More... | |
const std::string & | name () const |
Returns the name of this object. More... | |
virtual void | setName (const std::string &name) |
Sets or changes the name of this object. More... | |
virtual const std::string & | engineName () const =0 |
Returns the name of the owner engine. More... | |
ObjectRefs | parentObjects () const |
Returns all parent objects. More... | |
ObjectRefSet | parentNodes () const |
Returns all parent nodes. More... | |
virtual std::string | descriptiveInformation () const |
Returns descriptive information about the object as string. More... | |
Static Public Member Functions | |
static bool | createTriangleMesh (const Vertices &vertices, const TriangleFaces &faces, Vertices &triangleVertices, Normals &triangleNormals, TriangleFaces &triangleFaces, const bool skipIrregularTriangles=true) |
Creates a new set of triangles with face normals out of a given set of vertices and corresponding triangle faces. More... | |
Static Public Member Functions inherited from Ocean::Rendering::Object | |
static std::string | translateObjectType (const ObjectType objectType) |
Translates an object type to a readable string. More... | |
Protected Member Functions | |
Triangles () | |
Creates a new triangles object. More... | |
~Triangles () override | |
Destructs a triangles object. More... | |
Protected Member Functions inherited from Ocean::Rendering::IndependentPrimitive | |
IndependentPrimitive () | |
Creates a new independent primitive object. More... | |
~IndependentPrimitive () override | |
Destructs an independent primitive object. More... | |
Protected Member Functions inherited from Ocean::Rendering::Primitive | |
Primitive () | |
Creates a new primitive object. More... | |
~Primitive () override | |
Destructs a primitive object. More... | |
Protected Member Functions inherited from Ocean::Rendering::Renderable | |
Renderable () | |
Creates a new renderable object. More... | |
~Renderable () override | |
Destructs a renderable object. More... | |
Protected Member Functions inherited from Ocean::Rendering::Object | |
Object () | |
Creates a new object. More... | |
Object (const Object &object)=delete | |
Disabled copy constructor. More... | |
virtual | ~Object () |
Destructs an object. More... | |
Engine & | engine () const |
Returns the render engine which is owner of this object. More... | |
void | registerParent (const ObjectId parentId) |
Registers a parent node for this (child) node. More... | |
void | unregisterParent (const ObjectId parentId) |
Unregisters a parent node for this (child) node. More... | |
void | registerThisObjectAsParent (const ObjectRef &child) |
Registers this object at a child as parent object. More... | |
void | unregisterThisObjectAsParent (const ObjectRef &child) |
Unregisters this object from a child as parent. More... | |
Object & | operator= (const Object &object)=delete |
Disabled copy operator. More... | |
This class is the base for all triangles objects.
A triangles object defines a mesh using a vertex set and triangle faces.
The mesh is composed by several independent triangles.
The vertices of all triangles are given by the vertex set, the mesh topology is given by triangle faces.
Each triangle can hold a normal, a texture coordinate or/and a color value for ech triangle vertex.
Different triangles objects can use the same vertex set to share common vertices and to reduce memory usage.
|
protected |
Creates a new triangles object.
|
overrideprotected |
Destructs a triangles object.
|
static |
Creates a new set of triangles with face normals out of a given set of vertices and corresponding triangle faces.
vertices | The existing set of vertices out of which the new mesh will be created |
faces | The set of existing triangles for which the new mesh will be created, corresponding to the set of existing vertices |
triangleVertices | The resulting new triangle vertices |
triangleNormals | The resulting (new) triangle normals, one normal for each resulting vertex |
triangleFaces | The resulting triangle faces, corresponding to the resulting vertices |
skipIrregularTriangles | True, to skip an irregular triangle and to proceed with the next one; False, to stop the creating immediately if an irregular triangle occurs |
NotSupportedException | Is thrown if this function is not supported |
|
virtual |
Returns the faces of this triangles object.
NotSupportedException | Is thrown if this function is not supported |
Reimplemented in Ocean::Rendering::GlobalIllumination::GITriangles, and Ocean::Rendering::GLESceneGraph::GLESTriangles.
|
virtual |
Returns the number of triangle faces defined in this primitive.
NotSupportedException | Is thrown if this function is not supported |
Reimplemented in Ocean::Rendering::GlobalIllumination::GITriangles, and Ocean::Rendering::GLESceneGraph::GLESTriangles.
|
virtual |
Sets the faces of this triangles object.
faces | The vertex indices of the individual triangles to set |
NotSupportedException | Is thrown if this function is not supported |
Reimplemented in Ocean::Rendering::GlobalIllumination::GITriangles, and Ocean::Rendering::GLESceneGraph::GLESTriangles.
|
virtual |
Sets the faces of this triangles object.
numberImplicitTriangleFaces | The number of triangle faces based on vertices with consecutive indices, with range [0, infinity) |
NotSupportedException | Is thrown if this function is not supported |
Reimplemented in Ocean::Rendering::GLESceneGraph::GLESTriangles.
|
overridevirtual |
Returns the type of this object.
Reimplemented from Ocean::Rendering::IndependentPrimitive.