public |
Inheritance Graph
graph BT
SolidTree
click SolidTree "classMinSG_1_1TriangleTrees_1_1SolidTree"
Description
Tree directly storing triangles only.
In contrast to the TriangleTree , the triangles are stored directly in the tree and all references to the original mesh are dropped. Only the positions of the vertices are stored without further information that might be available in the original mesh. The tree is implemented in a way that it is meant to build the tree once and never modify it.
Parameters
- bound_t
- Type used to describe the bounds of a tree node
- triangle_t
- Type of triangles stored in the tree
Author: Benjamin Eikel
Date: 2013-03-19
Public Types
typedef std::vector< SolidTree > | children_t |
typedef std::vector< triangle_t > | triangles_t |
Public Functions
SolidTree() Create a new, empty tree node (no children, no triangles). |
|
template< class other_bound_t , class other_children_t , class other_triangles_t , typename > | |
SolidTree(other_bound_t && newBound, other_children_t && newChildren, other_triangles_t && newTriangles) Create a new tree node storing the given data. |
|
const bound_t & | getBound() const |
bool | isLeaf() const |
const children_t & | getChildren() const |
void | setChildren(const children_t & newChildren) |
const triangles_t & | getTriangles() const |
void | setTriangles(const triangles_t & newTriangles) |
Documentation
typedef
MinSG::TriangleTrees::SolidTree::children_t
public |
typedef std::vector< SolidTree > children_t |
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:38
typedef
MinSG::TriangleTrees::SolidTree::triangles_t
public |
typedef std::vector< triangle_t > triangles_t |
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:39
function
MinSG::TriangleTrees::SolidTree::SolidTree
public | inline |
SolidTree( | ) |
Create a new, empty tree node (no children, no triangles).
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:42
function
MinSG::TriangleTrees::SolidTree::SolidTree
public | inline |
template< class other_bound_t , class other_children_t , class other_triangles_t , typename = typename std::enable_if< std::is_convertible<other_bound_t, bound_t>::value && std::is_convertible<other_children_t, children_t >::value && std::is_convertible<other_triangles_t, triangles_t >::value >::type > | ||
SolidTree( | other_bound_t && | newBound, |
other_children_t && | newChildren, | |
other_triangles_t && | newTriangles | |
) |
Create a new tree node storing the given data.
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:57
function
MinSG::TriangleTrees::SolidTree::getBound
public | const | inline |
const bound_t & getBound( | ) const |
Return the bound of this node.
Returns
Bound
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:70
function
MinSG::TriangleTrees::SolidTree::isLeaf
public | const | inline |
bool isLeaf( | ) const |
Tell if the node is a leaf node.
Returns
true
if the node is a leaf andfalse
if it is an inner node.
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:80
function
MinSG::TriangleTrees::SolidTree::getChildren
public | const | inline |
const children_t & getChildren( | ) const |
Access the child nodes.
Returns
Array of children
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:89
function
MinSG::TriangleTrees::SolidTree::setChildren
public | inline |
void setChildren( | const children_t & | newChildren ) |
Set new child nodes.
Parameters
- newChildren
- Array of children
Note: The bounds of the children are not checked to be inside the bounds of this node.
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:100
function
MinSG::TriangleTrees::SolidTree::getTriangles
public | const | inline |
const triangles_t & getTriangles( | ) const |
Access the triangles stored in this node.
Returns
Array of triangles
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:109
function
MinSG::TriangleTrees::SolidTree::setTriangles
public | inline |
void setTriangles( | const triangles_t & | newTriangles ) |
Store triangles in this node.
Parameters
- newTriangles
- Array of triangles
Note: The triangles are not checked to be inside the bounds of this node.
Defined in MinSG/Ext/TriangleTrees/SolidTree.h:120