#include <exttrianglemesh.h>
Public Member Functions | |
| ExtInstanceTriangleMesh (ExtTriangleMesh *m, const Transform &t) | |
| ~ExtInstanceTriangleMesh () | |
| void | Delete () |
| virtual MeshType | GetType () const |
| Point | GetVertex (const unsigned index) const |
| float | GetTriangleArea (const unsigned int triIndex) const |
| unsigned int | GetTotalVertexCount () const |
| unsigned int | GetTotalTriangleCount () const |
| BBox | GetBBox () const |
| bool | HasNormals () const |
| bool | HasColors () const |
| bool | HasUVs () const |
| Normal | GetNormal (const unsigned index) const |
| Normal | GetNormal (const unsigned int triIndex, const unsigned int vertIndex) const |
| Spectrum | GetColor (const unsigned index) const |
| UV | GetUV (const unsigned index) const |
| Normal | InterpolateTriNormal (const unsigned int index, const float b1, const float b2) const |
| Spectrum | InterpolateTriColor (const unsigned int index, const float b0, const float b1, const float b2) const |
| Spectrum | InterpolateTriColor (const unsigned int index, const float b1, const float b2) const |
| UV | InterpolateTriUV (const unsigned int index, const float b1, const float b2) const |
| void | Sample (const unsigned int index, const float u0, const float u1, Point *p, float *b0, float *b1, float *b2) const |
| const Transform & | GetTransformation () const |
| const Transform & | GetInvTransformation () const |
| void | SetTransformation (const Transform &t) |
| Point * | GetVertices () const |
| Triangle * | GetTriangles () const |
| ExtTriangleMesh * | GetExtTriangleMesh () const |
Private Attributes | |
| Transform | trans |
| Transform | invTrans |
| ExtTriangleMesh * | mesh |
Definition at line 156 of file exttrianglemesh.h.
| luxrays::ExtInstanceTriangleMesh::ExtInstanceTriangleMesh | ( | ExtTriangleMesh * | m, | |
| const Transform & | t | |||
| ) | [inline] |
Definition at line 158 of file exttrianglemesh.h.
References luxrays::Transform::GetInverse(), invTrans, mesh, and trans.
| luxrays::ExtInstanceTriangleMesh::~ExtInstanceTriangleMesh | ( | ) | [inline] |
Definition at line 165 of file exttrianglemesh.h.
| void luxrays::ExtInstanceTriangleMesh::Delete | ( | ) | [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 166 of file exttrianglemesh.h.
| BBox luxrays::ExtInstanceTriangleMesh::GetBBox | ( | ) | const [inline, virtual] |
Implements luxrays::Mesh.
Definition at line 179 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetBBox(), mesh, and trans.
| Spectrum luxrays::ExtInstanceTriangleMesh::GetColor | ( | const unsigned | index | ) | const [inline] |
Definition at line 189 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetColor(), and mesh.
| ExtTriangleMesh* luxrays::ExtInstanceTriangleMesh::GetExtTriangleMesh | ( | ) | const [inline] |
Definition at line 221 of file exttrianglemesh.h.
Referenced by luxrays::MQBVHAccel::Init().
| const Transform& luxrays::ExtInstanceTriangleMesh::GetInvTransformation | ( | ) | const [inline] |
Definition at line 214 of file exttrianglemesh.h.
References invTrans.
Referenced by luxrays::MQBVHAccel::Init().
| Normal luxrays::ExtInstanceTriangleMesh::GetNormal | ( | const unsigned int | triIndex, | |
| const unsigned int | vertIndex | |||
| ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 188 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetNormal(), mesh, luxrays::Normalize(), and trans.
| Normal luxrays::ExtInstanceTriangleMesh::GetNormal | ( | const unsigned | index | ) | const [inline] |
Definition at line 187 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetNormal(), mesh, luxrays::Normalize(), and trans.
| unsigned int luxrays::ExtInstanceTriangleMesh::GetTotalTriangleCount | ( | ) | const [inline, virtual] |
Implements luxrays::Mesh.
Definition at line 177 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetTotalTriangleCount(), and mesh.
| unsigned int luxrays::ExtInstanceTriangleMesh::GetTotalVertexCount | ( | ) | const [inline, virtual] |
Implements luxrays::Mesh.
Definition at line 176 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetTotalVertexCount(), and mesh.
Referenced by luxrays::TriangleMesh::Merge().
| const Transform& luxrays::ExtInstanceTriangleMesh::GetTransformation | ( | ) | const [inline] |
Definition at line 213 of file exttrianglemesh.h.
References trans.
| float luxrays::ExtInstanceTriangleMesh::GetTriangleArea | ( | const unsigned int | triIndex | ) | const [inline, virtual] |
Implements luxrays::Mesh.
Definition at line 171 of file exttrianglemesh.h.
References luxrays::Triangle::Area(), luxrays::ExtTriangleMesh::GetTriangles(), GetVertex(), mesh, and luxrays::Triangle::v.
| Triangle* luxrays::ExtInstanceTriangleMesh::GetTriangles | ( | ) | const [inline, virtual] |
Implements luxrays::Mesh.
Definition at line 220 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetTriangles(), and mesh.
Referenced by luxrays::TriangleMesh::Merge().
| virtual MeshType luxrays::ExtInstanceTriangleMesh::GetType | ( | ) | const [inline, virtual] |
Implements luxrays::Mesh.
Definition at line 168 of file exttrianglemesh.h.
References luxrays::TYPE_EXT_TRIANGLE_INSTANCE.
| UV luxrays::ExtInstanceTriangleMesh::GetUV | ( | const unsigned | index | ) | const [inline] |
Definition at line 190 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetUV(), and mesh.
| Point luxrays::ExtInstanceTriangleMesh::GetVertex | ( | const unsigned | index | ) | const [inline] |
Definition at line 170 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetVertex(), mesh, and trans.
Referenced by GetTriangleArea(), and luxrays::TriangleMesh::Merge().
| Point* luxrays::ExtInstanceTriangleMesh::GetVertices | ( | ) | const [inline, virtual] |
Implements luxrays::Mesh.
Definition at line 219 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::GetVertices(), and mesh.
| bool luxrays::ExtInstanceTriangleMesh::HasColors | ( | ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 184 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::HasColors(), and mesh.
| bool luxrays::ExtInstanceTriangleMesh::HasNormals | ( | ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 183 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::HasNormals(), and mesh.
| bool luxrays::ExtInstanceTriangleMesh::HasUVs | ( | ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 185 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::HasUVs(), and mesh.
| Spectrum luxrays::ExtInstanceTriangleMesh::InterpolateTriColor | ( | const unsigned int | index, | |
| const float | b1, | |||
| const float | b2 | |||
| ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 200 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::InterpolateTriColor(), and mesh.
| Spectrum luxrays::ExtInstanceTriangleMesh::InterpolateTriColor | ( | const unsigned int | index, | |
| const float | b0, | |||
| const float | b1, | |||
| const float | b2 | |||
| ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 196 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::InterpolateTriColor(), and mesh.
| Normal luxrays::ExtInstanceTriangleMesh::InterpolateTriNormal | ( | const unsigned int | index, | |
| const float | b1, | |||
| const float | b2 | |||
| ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 192 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::InterpolateTriNormal(), mesh, luxrays::Normalize(), and trans.
| UV luxrays::ExtInstanceTriangleMesh::InterpolateTriUV | ( | const unsigned int | index, | |
| const float | b1, | |||
| const float | b2 | |||
| ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 204 of file exttrianglemesh.h.
References luxrays::ExtTriangleMesh::InterpolateTriUV(), and mesh.
| void luxrays::ExtInstanceTriangleMesh::Sample | ( | const unsigned int | index, | |
| const float | u0, | |||
| const float | u1, | |||
| Point * | p, | |||
| float * | b0, | |||
| float * | b1, | |||
| float * | b2 | |||
| ) | const [inline, virtual] |
Implements luxrays::ExtMesh.
Definition at line 208 of file exttrianglemesh.h.
References mesh, luxrays::ExtTriangleMesh::Sample(), and trans.
| void luxrays::ExtInstanceTriangleMesh::SetTransformation | ( | const Transform & | t | ) | [inline] |
Definition at line 215 of file exttrianglemesh.h.
References luxrays::Transform::GetInverse(), invTrans, and trans.
Definition at line 221 of file exttrianglemesh.h.
Referenced by ExtInstanceTriangleMesh(), GetInvTransformation(), and SetTransformation().
Definition at line 225 of file exttrianglemesh.h.
Referenced by ExtInstanceTriangleMesh(), GetBBox(), GetColor(), GetNormal(), GetTotalTriangleCount(), GetTotalVertexCount(), GetTriangleArea(), GetTriangles(), GetUV(), GetVertex(), GetVertices(), HasColors(), HasNormals(), HasUVs(), InterpolateTriColor(), InterpolateTriNormal(), InterpolateTriUV(), and Sample().
Definition at line 221 of file exttrianglemesh.h.
Referenced by ExtInstanceTriangleMesh(), GetBBox(), GetNormal(), GetTransformation(), GetVertex(), InterpolateTriNormal(), Sample(), and SetTransformation().
1.6.3