TriangleMesh Class Reference

#include <trianglemesh.h>

Inheritance diagram for TriangleMesh:
Shape ReferenceCounted

List of all members.

Public Member Functions

 TriangleMesh (const Transform *o2w, const Transform *w2o, bool ro, int ntris, int nverts, const int *vptr, const Point *P, const Normal *N, const Vector *S, const float *uv, const Reference< Texture< float > > &atex)
 ~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
Reference< Texture< float > > alphaTexture

Friends

class Triangle
class VertexTexture

Detailed Description

Definition at line 37 of file trianglemesh.h.


Constructor & Destructor Documentation

TriangleMesh::TriangleMesh ( const Transform o2w,
const Transform w2o,
bool  ro,
int  ntris,
int  nverts,
const int *  vptr,
const Point P,
const Normal N,
const Vector S,
const float *  uv,
const Reference< Texture< float > > &  atex 
)

Definition at line 34 of file trianglemesh.cpp.

References n, ntris, nverts, Shape::ObjectToWorld, p, s, uvs, and vertexIndex.

TriangleMesh::~TriangleMesh (  ) 

Definition at line 67 of file trianglemesh.cpp.

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


Member Function Documentation

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

Reimplemented from Shape.

Definition at line 47 of file trianglemesh.h.

BBox TriangleMesh::ObjectBound (  )  const [virtual]

Implements Shape.

Definition at line 76 of file trianglemesh.cpp.

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

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

Reimplemented from Shape.

Definition at line 92 of file trianglemesh.cpp.

References ntris, Shape::ObjectToWorld, Shape::ReverseOrientation, and Shape::WorldToObject.

BBox TriangleMesh::WorldBound (  )  const [virtual]

Reimplemented from Shape.

Definition at line 84 of file trianglemesh.cpp.

References nverts, p, and Union().


Friends And Related Function Documentation

friend class Triangle [friend]

Definition at line 49 of file trianglemesh.h.

friend class VertexTexture [friend]

Definition at line 50 of file trianglemesh.h.


Member Data Documentation

Definition at line 59 of file trianglemesh.h.

Normal* TriangleMesh::n [protected]

Definition at line 56 of file trianglemesh.h.

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

int TriangleMesh::ntris [protected]

Definition at line 53 of file trianglemesh.h.

Referenced by Refine(), and TriangleMesh().

int TriangleMesh::nverts [protected]

Definition at line 53 of file trianglemesh.h.

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

Point* TriangleMesh::p [protected]

Definition at line 55 of file trianglemesh.h.

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

Vector* TriangleMesh::s [protected]

Definition at line 57 of file trianglemesh.h.

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

float* TriangleMesh::uvs [protected]

Definition at line 58 of file trianglemesh.h.

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

int* TriangleMesh::vertexIndex [protected]

Definition at line 54 of file trianglemesh.h.

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


The documentation for this class was generated from the following files:
Generated on Sat Aug 28 20:00:15 2010 for pbrt by  doxygen 1.6.3