#include <waldtrianglemesh.h>

Public Member Functions | |
| WaldTriangleMesh (const Transform &o2w, bool ro, int ntris, int nverts, const int *vptr, const Point *P, const Normal *N, const Vector *S, const float *uv) | |
| ~WaldTriangleMesh () | |
| BBox | ObjectBound () const |
| BBox | WorldBound () const |
| bool | CanIntersect () const |
| void | Refine (vector< boost::shared_ptr< Shape > > &refined) const |
Static Public Member Functions | |
| static Shape * | CreateShape (const Transform &o2w, bool reverseOrientation, const ParamSet ¶ms) |
Protected Attributes | |
| int | ntris |
| int | nverts |
| int * | vertexIndex |
| Point * | p |
| Normal * | n |
| Vector * | s |
| float * | uvs |
| vector< boost::shared_ptr < Shape > > | triPtrs |
Friends | |
| class | WaldTriangle |
| class | VertexTexture |
Definition at line 32 of file waldtrianglemesh.h.
| WaldTriangleMesh::WaldTriangleMesh | ( | 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 waldtrianglemesh.cpp.
References memcpy(), n, ntris, nverts, lux::Shape::ObjectToWorld, p, s, uvs, and vertexIndex.
Referenced by CreateShape().
| WaldTriangleMesh::~WaldTriangleMesh | ( | ) |
| bool lux::WaldTriangleMesh::CanIntersect | ( | ) | const [inline, virtual] |
| Shape * WaldTriangleMesh::CreateShape | ( | const Transform & | o2w, | |
| bool | reverseOrientation, | |||
| const ParamSet & | params | |||
| ) | [static] |
Definition at line 673 of file waldtrianglemesh.cpp.
References lux::Cross(), lux::ParamSet::FindFloat(), lux::ParamSet::FindInt(), lux::ParamSet::FindNormal(), lux::ParamSet::FindPoint(), lux::ParamSet::FindVector(), lux::Vector::Length(), LUX_CONSISTENCY, LUX_ERROR, luxError, N, uvs, and WaldTriangleMesh().
Referenced by lux::MakeShape().
| BBox WaldTriangleMesh::ObjectBound | ( | ) | const [virtual] |
Implements lux::Shape.
Definition at line 73 of file waldtrianglemesh.cpp.
References nverts, p, lux::Union(), and lux::Shape::WorldToObject.
| void WaldTriangleMesh::Refine | ( | vector< boost::shared_ptr< Shape > > & | refined | ) | const [virtual] |
Reimplemented from lux::Shape.
Definition at line 88 of file waldtrianglemesh.cpp.
References ntris, lux::Shape::ObjectToWorld, lux::Shape::reverseOrientation, and WaldTriangle.
| BBox WaldTriangleMesh::WorldBound | ( | ) | const [virtual] |
Reimplemented from lux::Shape.
Definition at line 80 of file waldtrianglemesh.cpp.
References nverts, p, and lux::Union().
friend class VertexTexture [friend] |
Definition at line 45 of file waldtrianglemesh.h.
friend class WaldTriangle [friend] |
Normal* lux::WaldTriangleMesh::n [protected] |
Definition at line 54 of file waldtrianglemesh.h.
Referenced by lux::WaldTriangle::GetShadingGeometry(), lux::WaldTriangle::WaldTriangle(), WaldTriangleMesh(), and ~WaldTriangleMesh().
int lux::WaldTriangleMesh::ntris [protected] |
int lux::WaldTriangleMesh::nverts [protected] |
Definition at line 51 of file waldtrianglemesh.h.
Referenced by ObjectBound(), WaldTriangleMesh(), and WorldBound().
Point* lux::WaldTriangleMesh::p [protected] |
Definition at line 53 of file waldtrianglemesh.h.
Referenced by lux::WaldTriangle::Area(), lux::WaldTriangle::GetUVs(), lux::WaldTriangle::ObjectBound(), ObjectBound(), lux::WaldTriangle::Sample(), lux::WaldTriangle::WaldTriangle(), WaldTriangleMesh(), lux::WaldTriangle::WorldBound(), WorldBound(), and ~WaldTriangleMesh().
Vector* lux::WaldTriangleMesh::s [protected] |
Definition at line 55 of file waldtrianglemesh.h.
Referenced by lux::WaldTriangle::GetShadingGeometry(), WaldTriangleMesh(), and ~WaldTriangleMesh().
vector<boost::shared_ptr<Shape> > lux::WaldTriangleMesh::triPtrs [protected] |
Definition at line 57 of file waldtrianglemesh.h.
float* lux::WaldTriangleMesh::uvs [protected] |
Definition at line 56 of file waldtrianglemesh.h.
Referenced by CreateShape(), lux::WaldTriangle::GetUVs(), WaldTriangleMesh(), and ~WaldTriangleMesh().
int* lux::WaldTriangleMesh::vertexIndex [protected] |
Definition at line 52 of file waldtrianglemesh.h.
Referenced by lux::WaldTriangle::WaldTriangle(), WaldTriangleMesh(), and ~WaldTriangleMesh().
1.5.9