Main MRPT website > C++ reference for MRPT 1.9.9
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 136 of file COctreePointRenderer.h.

Public Member Functions

 TNode ()
 
void update_bb (const mrpt::math::TPoint3Df &p)
 update bounding box with a new point: More...
 
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. More...
 
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. More...
 
bool all
 true: All elements in the reference object; false: only those in pts More...
 
mrpt::math::TPoint3Df center
 [is_leaf=false] The center of the node, whose coordinates are used to decide between the 8 children nodes. More...
 
size_t child_id [8]
 [is_leaf=false] The indices in m_octree_nodes of the 8 children. More...
 

Constructor & Destructor Documentation

◆ TNode()

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

Definition at line 138 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

true: All elements in the reference object; false: only those in pts

Definition at line 164 of file COctreePointRenderer.h.

◆ 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

[is_leaf=false] The center of the node, whose coordinates are used to decide between the 8 children nodes.

Definition at line 169 of file COctreePointRenderer.h.

Referenced by mrpt::opengl::COctreePointRenderer< Derived >::TNode::setBBFromOrderInParent().

◆ child_id

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

[is_leaf=false] The indices in m_octree_nodes of the 8 children.

Definition at line 172 of file COctreePointRenderer.h.

◆ is_leaf

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

true: it's a leaf and pts has valid indices; false: children is valid.

Definition at line 154 of file COctreePointRenderer.h.

◆ pts

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

Point indices in the derived class that fall into this node.

Definition at line 161 of file COctreePointRenderer.h.




Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST