Template class that implements the data structure and algorithms for Octree-based efficient rendering.
Definition at line 65 of file COctreePointRenderer.h.
#include <mrpt/opengl/COctreePointRenderer.h>

Classes | |
| struct | TNode |
| The structure for each octree spatial node. More... | |
| struct | TRenderQueueElement |
Public Types | |
| enum | { OCTREE_ROOT_NODE = 0 } |
Public Member Functions | |
| COctreePointRenderer () | |
| Default ctor. | |
| COctreePointRenderer (const COctreePointRenderer &) | |
| Copy ctor. | |
| size_t | octree_get_node_count () const |
| Return the number of octree nodes (all of them, including the empty ones) | |
| size_t | octree_get_visible_nodes () const |
| Return the number of visible octree nodes in the last render event. | |
| void | octree_mark_as_outdated () |
| Called from the derived class (or the user) to indicate we have/want to rebuild the entire node tree (for example, after modifying the point cloud or any global octree parameter) | |
| void | octree_get_graphics_boundingboxes (mrpt::opengl::CSetOfObjects &gl_bb, const double lines_width=1, const TColorf lines_color=TColorf(1, 1, 1)) const |
| Returns a graphical representation of all the bounding boxes of the octree (leaf) nodes. | |
| void | octree_debug_dump_tree (std::ostream &o) const |
| Used for debug only. | |
Protected Member Functions | |
| Derived & | octree_derived () |
| const Derived & | octree_derived () const |
| void | octree_assure_uptodate () const |
| Must be called at children class' render() previously to octree_render() | |
| void | octree_render (const mrpt::opengl::gl_utils::TRenderInfo &ri) const |
| Render the entire octree recursively. | |
Private Member Functions | |
| void | octree_recursive_render (size_t node_idx, const mrpt::opengl::gl_utils::TRenderInfo &ri, TPixelCoordf cr_px[8], float cr_z[8], bool corners_are_all_computed=true, bool trust_me_youre_visible=false, float approx_area_sqpixels=0) const |
| Render a given node. | |
| void | internal_octree_assure_uptodate () |
| void | internal_recursive_split (const size_t node_id, const bool all_pts=false) |
Private Attributes | |
| std::vector< TRenderQueueElement > | m_render_queue |
| The list of elements that really are visible and will be rendered. | |
| bool | m_octree_has_to_rebuild_all |
| std::deque< TNode > | m_octree_nodes |
| First one [0] is always the root node. | |
| volatile size_t | m_visible_octree_nodes |
| volatile size_t | m_visible_octree_nodes_ongoing |
| anonymous enum |
| Enumerator | |
|---|---|
| OCTREE_ROOT_NODE | |
Definition at line 81 of file COctreePointRenderer.h.
|
inline |
Default ctor.
Definition at line 69 of file COctreePointRenderer.h.
|
inline |
Copy ctor.
Definition at line 76 of file COctreePointRenderer.h.
|
inlineprivate |
Definition at line 415 of file COctreePointRenderer.h.
|
inlineprivate |
Definition at line 430 of file COctreePointRenderer.h.
|
inlineprotected |
Must be called at children class' render() previously to octree_render()
Definition at line 89 of file COctreePointRenderer.h.
|
inline |
Used for debug only.
Definition at line 570 of file COctreePointRenderer.h.
|
inlineprotected |
Definition at line 85 of file COctreePointRenderer.h.
|
inlineprotected |
Definition at line 86 of file COctreePointRenderer.h.
|
inline |
Returns a graphical representation of all the bounding boxes of the octree (leaf) nodes.
Definition at line 548 of file COctreePointRenderer.h.
|
inline |
Return the number of octree nodes (all of them, including the empty ones)
Definition at line 538 of file COctreePointRenderer.h.
|
inline |
Return the number of visible octree nodes in the last render event.
Definition at line 541 of file COctreePointRenderer.h.
|
inline |
Called from the derived class (or the user) to indicate we have/want to rebuild the entire node tree (for example, after modifying the point cloud or any global octree parameter)
Definition at line 544 of file COctreePointRenderer.h.
|
inlineprivate |
Render a given node.
Definition at line 220 of file COctreePointRenderer.h.
|
inlineprotected |
Render the entire octree recursively.
Should be called from children's render() method.
Definition at line 97 of file COctreePointRenderer.h.
|
private |
Definition at line 213 of file COctreePointRenderer.h.
|
private |
First one [0] is always the root node.
Definition at line 214 of file COctreePointRenderer.h.
|
mutableprivate |
The list of elements that really are visible and will be rendered.
Definition at line 210 of file COctreePointRenderer.h.
|
mutableprivate |
Definition at line 217 of file COctreePointRenderer.h.
|
mutableprivate |
Definition at line 217 of file COctreePointRenderer.h.
| Page generated by Doxygen 1.8.3 for MRPT 0.9.6 SVN: at Fri Feb 15 22:05:02 EST 2013 |