TriangleMesh Class Reference

Inheritance diagram for TriangleMesh:

Shape ReferenceCounted List of all members.

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
Pointp
Normaln
Vectors
float * uvs

Friends

class Triangle
class VertexTexture

Detailed Description

Definition at line 15 of file trianglemesh.cpp.


Constructor & Destructor Documentation

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 128 of file trianglemesh.cpp.

References memcpy(), n, N, ntris, nverts, Shape::ObjectToWorld, p, s, uvs, and vertexIndex.

TriangleMesh::~TriangleMesh (  ) 

Definition at line 157 of file trianglemesh.cpp.

References n, p, s, uvs, and vertexIndex.


Member Function Documentation

BBox TriangleMesh::ObjectBound (  )  const [virtual]

Implements Shape.

Definition at line 164 of file trianglemesh.cpp.

References nverts, p, Union(), and Shape::WorldToObject.

BBox TriangleMesh::WorldBound (  )  const [virtual]

Reimplemented from Shape.

Definition at line 170 of file trianglemesh.cpp.

References nverts, p, and Union().

bool TriangleMesh::CanIntersect (  )  const [inline, virtual]

Reimplemented from Shape.

Definition at line 25 of file trianglemesh.cpp.

void TriangleMesh::Refine ( vector< Reference< Shape > > &  refined  )  const [virtual]

Reimplemented from Shape.

Definition at line 177 of file trianglemesh.cpp.

References ntris, Shape::ObjectToWorld, and Shape::reverseOrientation.


Friends And Related Function Documentation

friend class Triangle [friend]

Definition at line 27 of file trianglemesh.cpp.

friend class VertexTexture [friend]

Definition at line 28 of file trianglemesh.cpp.


Member Data Documentation

int TriangleMesh::ntris [protected]

Definition at line 31 of file trianglemesh.cpp.

Referenced by Refine(), and TriangleMesh().

int TriangleMesh::nverts [protected]

Definition at line 31 of file trianglemesh.cpp.

Referenced by ObjectBound(), TriangleMesh(), and WorldBound().

int* TriangleMesh::vertexIndex [protected]

Definition at line 32 of file trianglemesh.cpp.

Referenced by TriangleMesh(), and ~TriangleMesh().

Point* TriangleMesh::p [protected]

Definition at line 33 of file trianglemesh.cpp.

Referenced by ObjectBound(), TriangleMesh(), WorldBound(), and ~TriangleMesh().

Normal* TriangleMesh::n [protected]

Definition at line 34 of file trianglemesh.cpp.

Referenced by TriangleMesh(), and ~TriangleMesh().

Vector* TriangleMesh::s [protected]

Definition at line 35 of file trianglemesh.cpp.

Referenced by TriangleMesh(), and ~TriangleMesh().

float* TriangleMesh::uvs [protected]

Definition at line 36 of file trianglemesh.cpp.

Referenced by TriangleMesh(), and ~TriangleMesh().


The documentation for this class was generated from the following file:
Generated on Wed Sep 26 14:01:28 2007 for pbrt by  doxygen 1.5.1