Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
ion::Scene::CSimpleMesh Class Reference

#include <CSimpleMesh.h>

Collaboration diagram for ion::Scene::CSimpleMesh:
Collaboration graph
[legend]

Classes

struct  STriangle
 
struct  SVertex
 

Public Member Functions

SBoundingBox3f GetBoundingBox () const
 
void Clear ()
 
CSimpleMeshResizeMesh (vec3f const &Scale)
 
CSimpleMeshApplyScaleFactor (vec3f const &Scale)
 
CSimpleMeshApplyOffset (vec3f const &Offset)
 
CSimpleMeshApplyTransformation (glm::mat4 const &Transform)
 
CSimpleMeshIntersect (CSimpleMesh const *Other, vec3f const &Offset=0)
 
void ReverseFaces ()
 
void SeparateTriangles ()
 
void CalculateNormalsPerFace ()
 
void CalculateNormalsPerVertex (bool CombineNear=true, float const NearTolerance=0.0001f)
 
void WriteOBJ (string const &FileName) const
 
box3f CalculateBoundingBox () const
 
SharedPointer< Graphics::IIndexBufferCreateIndexBuffer ()
 
SharedPointer< Graphics::IVertexBufferCreateVertexBuffer ()
 

Static Public Member Functions

static CSimpleMeshFromAttributes (vector< uint > Indices, vector< float > const &Positions, vector< float > const &Normals=vector< float >(), vector< float > const &TexCoords=vector< float >())
 

Public Attributes

vector< SVertexVertices
 
vector< STriangleTriangles
 
SSimpleMaterial Material
 

Member Function Documentation

CSimpleMesh * ion::Scene::CSimpleMesh::ApplyOffset ( vec3f const &  Offset)
CSimpleMesh * ion::Scene::CSimpleMesh::ApplyScaleFactor ( vec3f const &  Scale)
CSimpleMesh * ion::Scene::CSimpleMesh::ApplyTransformation ( glm::mat4 const &  Transform)
box3f ion::Scene::CSimpleMesh::CalculateBoundingBox ( ) const
void ion::Scene::CSimpleMesh::CalculateNormalsPerFace ( )
void ion::Scene::CSimpleMesh::CalculateNormalsPerVertex ( bool  CombineNear = true,
float const  NearTolerance = 0.0001f 
)
void ion::Scene::CSimpleMesh::Clear ( )
SharedPointer< Graphics::IIndexBuffer > ion::Scene::CSimpleMesh::CreateIndexBuffer ( )
SharedPointer< Graphics::IVertexBuffer > ion::Scene::CSimpleMesh::CreateVertexBuffer ( )
CSimpleMesh * ion::Scene::CSimpleMesh::FromAttributes ( vector< uint Indices,
vector< float > const &  Positions,
vector< float > const &  Normals = vector<float>(),
vector< float > const &  TexCoords = vector<float>() 
)
static
SBoundingBox3f ion::Scene::CSimpleMesh::GetBoundingBox ( ) const
CSimpleMesh * ion::Scene::CSimpleMesh::Intersect ( CSimpleMesh const *  Other,
vec3f const &  Offset = 0 
)
CSimpleMesh * ion::Scene::CSimpleMesh::ResizeMesh ( vec3f const &  Scale)
void ion::Scene::CSimpleMesh::ReverseFaces ( )
void ion::Scene::CSimpleMesh::SeparateTriangles ( )
void ion::Scene::CSimpleMesh::WriteOBJ ( string const &  FileName) const

Member Data Documentation

SSimpleMaterial ion::Scene::CSimpleMesh::Material
vector<STriangle> ion::Scene::CSimpleMesh::Triangles
vector<SVertex> ion::Scene::CSimpleMesh::Vertices

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