Main MRPT website > C++ reference for MRPT 1.4.0
List of all members | Public Member Functions | Public Attributes
mrpt::opengl::COctreePointRenderer< Derived >::TNode Struct Reference

Detailed Description

template<class Derived>
struct mrpt::opengl::COctreePointRenderer< Derived >::TNode

The structure for each octree spatial node.

Each node can either be a leaf of has 8 children nodes. Instead of pointers, children are referenced by their indices in m_octree_nodes

Definition at line 117 of file COctreePointRenderer.h.

Public Member Functions

 TNode ()
 
void update_bb (const mrpt::math::TPoint3Df &p)
 update bounding box with a new point:
 
float getCornerX (int i) const
 
float getCornerY (int i) const
 
float getCornerZ (int i) const
 
void setBBFromOrderInParent (const TNode &parent, int my_child_index)
 

Public Attributes

bool is_leaf
 true: it's a leaf and pts has valid indices; false: children is valid.
 
mrpt::math::TPoint3Df bb_min
 
mrpt::math::TPoint3Df bb_max
 
std::vector< size_t > pts
 Point indices in the derived class that fall into this node.
 
bool all
 true: All elements in the reference object; false: only those in pts
 
mrpt::math::TPoint3Df center
 [is_leaf=false] The center of the node, whose coordinates are used to decide between the 8 children nodes.
 
size_t child_id [8]
 [is_leaf=false] The indices in m_octree_nodes of the 8 children.
 

Constructor & Destructor Documentation

◆ TNode()

template<class Derived >
mrpt::opengl::COctreePointRenderer< Derived >::TNode::TNode ( )
inline

Definition at line 119 of file COctreePointRenderer.h.

Member Function Documentation

◆ getCornerX()

template<class Derived >
float mrpt::opengl::COctreePointRenderer< Derived >::TNode::getCornerX ( int  i) const
inline

◆ getCornerY()

template<class Derived >
float mrpt::opengl::COctreePointRenderer< Derived >::TNode::getCornerY ( int  i) const
inline

◆ getCornerZ()

template<class Derived >
float mrpt::opengl::COctreePointRenderer< Derived >::TNode::getCornerZ ( int  i) const
inline

◆ setBBFromOrderInParent()

template<class Derived >
void mrpt::opengl::COctreePointRenderer< Derived >::TNode::setBBFromOrderInParent ( const TNode parent,
int  my_child_index 
)
inline

◆ update_bb()

template<class Derived >
void mrpt::opengl::COctreePointRenderer< Derived >::TNode::update_bb ( const mrpt::math::TPoint3Df p)
inline

Member Data Documentation

◆ all

template<class Derived >
bool mrpt::opengl::COctreePointRenderer< Derived >::TNode::all

◆ bb_max

template<class Derived >
mrpt::math::TPoint3Df mrpt::opengl::COctreePointRenderer< Derived >::TNode::bb_max

◆ bb_min

template<class Derived >
mrpt::math::TPoint3Df mrpt::opengl::COctreePointRenderer< Derived >::TNode::bb_min

◆ center

template<class Derived >
mrpt::math::TPoint3Df mrpt::opengl::COctreePointRenderer< Derived >::TNode::center

◆ child_id

template<class Derived >
size_t mrpt::opengl::COctreePointRenderer< Derived >::TNode::child_id[8]

◆ is_leaf

template<class Derived >
bool mrpt::opengl::COctreePointRenderer< Derived >::TNode::is_leaf

◆ pts

template<class Derived >
std::vector<size_t> mrpt::opengl::COctreePointRenderer< Derived >::TNode::pts



Page generated by Doxygen 1.9.8 for MRPT 1.4.0 SVN: at Thu Dec 14 16:41:50 UTC 2023