lux::BaryTriangleMesh Class Reference

#include <barytrianglemesh.h>

Inheritance diagram for lux::BaryTriangleMesh:

lux::Shape

List of all members.

Public Member Functions

 BaryTriangleMesh (const Transform &o2w, bool ro, int ntris, int nverts, const int *vptr, const Point *P, const Normal *N, const Vector *S, const float *uv)
 ~BaryTriangleMesh ()
BBox ObjectBound () const
BBox WorldBound () const
bool CanIntersect () const
void Refine (vector< boost::shared_ptr< Shape > > &refined) const

Static Public Member Functions

static ShapeCreateShape (const Transform &o2w, bool reverseOrientation, const ParamSet &params)

Protected Attributes

int ntris
int nverts
int * vertexIndex
Pointp
Normaln
Vectors
float * uvs
vector< boost::shared_ptr
< Shape > > 
triPtrs

Friends

class BaryTriangle
class VertexTexture


Detailed Description

Definition at line 31 of file barytrianglemesh.h.


Constructor & Destructor Documentation

BaryTriangleMesh::BaryTriangleMesh ( 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 31 of file barytrianglemesh.cpp.

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

Referenced by CreateShape().

BaryTriangleMesh::~BaryTriangleMesh (  ) 

Definition at line 60 of file barytrianglemesh.cpp.

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


Member Function Documentation

bool lux::BaryTriangleMesh::CanIntersect (  )  const [inline, virtual]

Reimplemented from lux::Shape.

Definition at line 41 of file barytrianglemesh.h.

Shape * BaryTriangleMesh::CreateShape ( const Transform o2w,
bool  reverseOrientation,
const ParamSet params 
) [static]

BBox BaryTriangleMesh::ObjectBound (  )  const [virtual]

Implements lux::Shape.

Definition at line 67 of file barytrianglemesh.cpp.

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

void BaryTriangleMesh::Refine ( vector< boost::shared_ptr< Shape > > &  refined  )  const [virtual]

Reimplemented from lux::Shape.

Definition at line 81 of file barytrianglemesh.cpp.

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

BBox BaryTriangleMesh::WorldBound (  )  const [virtual]

Reimplemented from lux::Shape.

Definition at line 73 of file barytrianglemesh.cpp.

References nverts, p, and lux::Union().


Friends And Related Function Documentation

friend class BaryTriangle [friend]

Definition at line 43 of file barytrianglemesh.h.

Referenced by Refine().

friend class VertexTexture [friend]

Definition at line 44 of file barytrianglemesh.h.


Member Data Documentation

Definition at line 49 of file barytrianglemesh.h.

Referenced by BaryTriangleMesh(), and Refine().

Definition at line 49 of file barytrianglemesh.h.

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

vector<boost::shared_ptr<Shape> > lux::BaryTriangleMesh::triPtrs [protected]

Definition at line 55 of file barytrianglemesh.h.

float* lux::BaryTriangleMesh::uvs [protected]


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

Generated on Mon May 18 07:13:52 2009 for lux by  doxygen 1.5.8