#include <rtcVertexOctree.h>
Public Member Functions | |
Vec3f | center () |
void | getCubeCenters (std::vector< Vec3f > ¢ers) |
void | getCubes (std::vector< Vec3f > &points, std::vector< int > &edges) |
void | getLeaves (std::vector< VertexOctree * > &leafes) |
void | getPoints (std::vector< Vec3f > &points) |
void | getVertices (std::vector< VertexHandle > &vertices) |
bool | isLeaf () |
float | radius () |
void | refineTree () |
bool | searchNearest (const Vec3f &p, VertexHandle &vertex, float &distance) |
VertexOctree (const TriMesh *mesh, unsigned int maximum_depth, unsigned int min_entries) | |
VertexOctree (const TriMesh *mesh, Vec3f center, float radius, unsigned int maximum_depth, unsigned int min_entries) | |
VertexOctree (const TriMesh *mesh, Vec3f center, float radius, unsigned int current_depth, std::vector< VertexHandle > &vertices, unsigned int maximum_depth, unsigned int min_entries, int parentIndex=0, VertexOctree *parentTree=NULL) | |
~VertexOctree (void) | |
Private Member Functions | |
bool | closerToVertex (const Vec3f &p, const VertexHandle &vertex_handle, float &distance) |
void | initialize (std::vector< VertexHandle > &faces) |
Private Attributes | |
Vec3f | m_center |
VertexOctree * | m_child [8] |
unsigned int | m_current_depth |
bool | m_isLeaf |
unsigned int | m_maximum_depth |
const TriMesh * | m_mesh |
unsigned int | m_min_entries |
int | m_parentIndex |
VertexOctree * | m_parentTree |
float | m_radius |
std::vector< VertexHandle > | m_vertices |
Definition at line 31 of file rtcVertexOctree.h.
puma::VertexOctree::VertexOctree | ( | const TriMesh * | mesh, |
unsigned int | maximum_depth, | ||
unsigned int | min_entries | ||
) |
Definition at line 29 of file rtcVertexOctree.cpp.
puma::VertexOctree::VertexOctree | ( | const TriMesh * | mesh, |
Vec3f | center, | ||
float | radius, | ||
unsigned int | maximum_depth, | ||
unsigned int | min_entries | ||
) |
Definition at line 60 of file rtcVertexOctree.cpp.
puma::VertexOctree::VertexOctree | ( | const TriMesh * | mesh, |
Vec3f | center, | ||
float | radius, | ||
unsigned int | current_depth, | ||
std::vector< VertexHandle > & | vertices, | ||
unsigned int | maximum_depth, | ||
unsigned int | min_entries, | ||
int | parentIndex = 0 , |
||
VertexOctree * | parentTree = NULL |
||
) |
Definition at line 85 of file rtcVertexOctree.cpp.
puma::VertexOctree::~VertexOctree | ( | void | ) | [inline] |
Definition at line 58 of file rtcVertexOctree.h.
Vec3f puma::VertexOctree::center | ( | ) | [inline] |
Definition at line 68 of file rtcVertexOctree.h.
bool puma::VertexOctree::closerToVertex | ( | const Vec3f & | p, |
const VertexHandle & | vertex_handle, | ||
float & | distance | ||
) | [private] |
Definition at line 263 of file rtcVertexOctree.cpp.
void puma::VertexOctree::getCubeCenters | ( | std::vector< Vec3f > & | centers | ) |
Definition at line 328 of file rtcVertexOctree.cpp.
void puma::VertexOctree::getCubes | ( | std::vector< Vec3f > & | points, |
std::vector< int > & | edges | ||
) |
Definition at line 295 of file rtcVertexOctree.cpp.
void puma::VertexOctree::getLeaves | ( | std::vector< VertexOctree * > & | leafes | ) |
Definition at line 354 of file rtcVertexOctree.cpp.
void puma::VertexOctree::getPoints | ( | std::vector< Vec3f > & | points | ) |
Definition at line 275 of file rtcVertexOctree.cpp.
void puma::VertexOctree::getVertices | ( | std::vector< VertexHandle > & | vertices | ) |
Definition at line 340 of file rtcVertexOctree.cpp.
void puma::VertexOctree::initialize | ( | std::vector< VertexHandle > & | faces | ) | [private] |
Definition at line 102 of file rtcVertexOctree.cpp.
bool puma::VertexOctree::isLeaf | ( | ) | [inline] |
Definition at line 70 of file rtcVertexOctree.h.
float puma::VertexOctree::radius | ( | ) | [inline] |
Definition at line 69 of file rtcVertexOctree.h.
void puma::VertexOctree::refineTree | ( | ) |
Definition at line 211 of file rtcVertexOctree.cpp.
bool puma::VertexOctree::searchNearest | ( | const Vec3f & | p, |
VertexHandle & | vertex, | ||
float & | distance | ||
) |
Definition at line 231 of file rtcVertexOctree.cpp.
Vec3f puma::VertexOctree::m_center [private] |
Definition at line 79 of file rtcVertexOctree.h.
VertexOctree* puma::VertexOctree::m_child[8] [private] |
Definition at line 83 of file rtcVertexOctree.h.
unsigned int puma::VertexOctree::m_current_depth [private] |
Definition at line 84 of file rtcVertexOctree.h.
bool puma::VertexOctree::m_isLeaf [private] |
Definition at line 90 of file rtcVertexOctree.h.
unsigned int puma::VertexOctree::m_maximum_depth [private] |
Definition at line 87 of file rtcVertexOctree.h.
const TriMesh* puma::VertexOctree::m_mesh [private] |
Definition at line 78 of file rtcVertexOctree.h.
unsigned int puma::VertexOctree::m_min_entries [private] |
Definition at line 88 of file rtcVertexOctree.h.
int puma::VertexOctree::m_parentIndex [private] |
Definition at line 81 of file rtcVertexOctree.h.
VertexOctree* puma::VertexOctree::m_parentTree [private] |
Definition at line 82 of file rtcVertexOctree.h.
float puma::VertexOctree::m_radius [private] |
Definition at line 80 of file rtcVertexOctree.h.
std::vector<VertexHandle> puma::VertexOctree::m_vertices [private] |
Definition at line 91 of file rtcVertexOctree.h.