28 GeomTree(
const int numVerts,
const int numTris,
const std::vector<vector3f> &vertices,
const std::vector<Uint32> indices,
const std::vector<Uint32> triFlags);
41 Uint32
GetTriFlag(
int triIdx)
const {
return m_triFlags[triIdx]; }
64 const std::vector<vector3f> &
GetVertices()
const {
return m_vertices; }
65 const Uint32 *
GetIndices()
const {
return &m_indices[0]; }
71 void RayTriIntersect(
int numRays,
const vector3f &origin,
const vector3f *dirs,
int triIdx,
isect_t *isects)
const;
79 std::vector<Aabb> m_aabbs;
81 std::unique_ptr<BVHTree> m_triTree;
82 std::unique_ptr<BVHTree> m_edgeTree;
84 std::vector<Edge> m_edges;
86 std::vector<vector3f> m_vertices;
87 std::vector<Uint32> m_indices;
88 std::vector<Uint32> m_triFlags;
Definition: GeomTree.h:26
const Edge * GetEdges() const
Definition: GeomTree.h:55
BVHTree * GetEdgeTree() const
Definition: GeomTree.h:62
const Uint32 * GetIndices() const
Definition: GeomTree.h:65
int GetNumTris() const
Definition: GeomTree.h:68
~GeomTree()
Definition: GeomTree.cpp:15
void Save(Serializer::Writer &wr) const
Definition: GeomTree.cpp:319
const Uint32 * GetTriFlags() const
Definition: GeomTree.h:66
BVHTree * GetTriTree() const
Definition: GeomTree.h:61
int GetNumEdges() const
Definition: GeomTree.h:59
void TraceRay(const vector3f &start, const vector3f &dir, isect_t *isect) const
Definition: GeomTree.cpp:245
const std::vector< vector3f > & GetVertices() const
Definition: GeomTree.h:64
double GetRadius() const
Definition: GeomTree.h:42
Uint32 GetTriFlag(int triIdx) const
Definition: GeomTree.h:41
vector3f GetTriNormal(int triIdx) const
Definition: GeomTree.cpp:309
const Aabb & GetAabb() const
Definition: GeomTree.h:34
int GetNumVertices() const
Definition: GeomTree.h:67
Definition: Serializer.h:111
Definition: Serializer.h:36
Definition: GeomTree.h:12
Definition: GeomTree.h:45
int v1i
Definition: GeomTree.h:46
int v2i
Definition: GeomTree.h:46
int triFlag
Definition: GeomTree.h:51
float len
Definition: GeomTree.h:47
vector3f dir
Definition: GeomTree.h:48
Definition: GeomTree.h:17
float dist
Definition: GeomTree.h:20
int triIdx
Definition: GeomTree.h:19