Public Member Functions | |
TriangleMesh (const Transform &o2w, bool ro, int ntris, int nverts, const int *vptr, const Point *P, const Normal *N, const Vector *S, const float *uv) | |
~TriangleMesh () | |
BBox | ObjectBound () const |
BBox | WorldBound () const |
bool | CanIntersect () const |
void | Refine (vector< Reference< Shape > > &refined) const |
Protected Attributes | |
int | ntris |
int | nverts |
int * | vertexIndex |
Point * | p |
Normal * | n |
Vector * | s |
float * | uvs |
Friends | |
class | Triangle |
class | VertexTexture |
Definition at line 28 of file trianglemesh.cpp.
TriangleMesh::TriangleMesh | ( | const Transform & | o2w, | |
bool | ro, | |||
int | ntris, | |||
int | nverts, | |||
const int * | vptr, | |||
const Point * | P, | |||
const Normal * | N, | |||
const Vector * | S, | |||
const float * | uv | |||
) |
Definition at line 141 of file trianglemesh.cpp.
References memcpy(), n, ntris, nverts, Shape::ObjectToWorld, p, s, uvs, and vertexIndex.
TriangleMesh::~TriangleMesh | ( | ) |
BBox TriangleMesh::ObjectBound | ( | ) | const [virtual] |
Implements Shape.
Definition at line 177 of file trianglemesh.cpp.
References nverts, p, Union(), and Shape::WorldToObject.
BBox TriangleMesh::WorldBound | ( | ) | const [virtual] |
bool TriangleMesh::CanIntersect | ( | ) | const [inline, virtual] |
Reimplemented from Shape.
Definition at line 190 of file trianglemesh.cpp.
References ntris, Shape::ObjectToWorld, and Shape::reverseOrientation.
friend class Triangle [friend] |
Definition at line 40 of file trianglemesh.cpp.
friend class VertexTexture [friend] |
Definition at line 41 of file trianglemesh.cpp.
int TriangleMesh::ntris [protected] |
int TriangleMesh::nverts [protected] |
Definition at line 44 of file trianglemesh.cpp.
Referenced by ObjectBound(), TriangleMesh(), and WorldBound().
int* TriangleMesh::vertexIndex [protected] |
Point* TriangleMesh::p [protected] |
Definition at line 46 of file trianglemesh.cpp.
Referenced by ObjectBound(), TriangleMesh(), WorldBound(), and ~TriangleMesh().
Normal* TriangleMesh::n [protected] |
Vector* TriangleMesh::s [protected] |
float* TriangleMesh::uvs [protected] |