|
OpenWalnut 1.3.1
|
Class implements a hierarchical tree and provides helper functions for selection and navigation. More...
#include <WHierarchicalTreeVoxels.h>
Inheritance diagram for WHierarchicalTreeVoxels:Public Member Functions | |
| WHierarchicalTreeVoxels () | |
| standard constructor | |
| ~WHierarchicalTreeVoxels () | |
| destructor | |
| std::vector< size_t > | getVoxelsForCluster (size_t cluster) |
| getter | |
| void | addLeaf (size_t voxelnum) |
| A leaf is at the very bottom of the tree, it represents a single fiber or voxel, for several purposes a leaf also counts as a cluster. | |
| void | addCluster (size_t cluster1, size_t cluster2, float customData) |
| adds a cluster to the set, it combines 2 already existing clusters | |
| size_t | getVoxelNum (size_t leaf) |
| getter | |
| std::vector< size_t > | findClustersForValue (float value) |
| finds the clusters for a given similarity value | |
| std::vector< size_t > | findClustersForBranchLength (float value, size_t minSize=100) |
| finds the clusters for a given similarity value | |
| std::vector< size_t > | findXClusters (size_t root, size_t number) |
| finds a number of clusters, the algorithm travers down the tree and will always split the cluster with the highest energy level. | |
Private Member Functions | |
| void | addLeaf () |
| A leaf is at the very bottom of the tree, it represents a single fiber or voxel, for several purposes a leaf also counts as a cluster. | |
Private Attributes | |
| std::vector< size_t > | m_voxelnums |
| stores the voxel id of each leaf node | |
Class implements a hierarchical tree and provides helper functions for selection and navigation.
Definition at line 43 of file WHierarchicalTreeVoxels.h.
| WHierarchicalTreeVoxels::WHierarchicalTreeVoxels | ( | ) |
standard constructor
Definition at line 34 of file WHierarchicalTreeVoxels.cpp.
| WHierarchicalTreeVoxels::~WHierarchicalTreeVoxels | ( | ) |
destructor
Definition at line 39 of file WHierarchicalTreeVoxels.cpp.
| void WHierarchicalTreeVoxels::addCluster | ( | size_t | cluster1, |
| size_t | cluster2, | ||
| float | customData | ||
| ) |
adds a cluster to the set, it combines 2 already existing clusters
| cluster1 | first cluster to add |
| cluster2 | second cluster to add |
| customData | some arbitrary data stored with the cluster |
Definition at line 68 of file WHierarchicalTreeVoxels.cpp.
References WHierarchicalTree::m_children, WHierarchicalTree::m_clusterCount, WHierarchicalTree::m_colors, WHierarchicalTree::m_containsLeafes, WHierarchicalTree::m_customData, WHierarchicalTree::m_leafesLocked, WHierarchicalTree::m_level, WHierarchicalTree::m_maxLevel, WHierarchicalTree::m_parents, and WHierarchicalTree::size().
| void WHierarchicalTreeVoxels::addLeaf | ( | ) | [private, virtual] |
A leaf is at the very bottom of the tree, it represents a single fiber or voxel, for several purposes a leaf also counts as a cluster.
Implements WHierarchicalTree.
Definition at line 43 of file WHierarchicalTreeVoxels.cpp.
| void WHierarchicalTreeVoxels::addLeaf | ( | size_t | voxelnum | ) |
A leaf is at the very bottom of the tree, it represents a single fiber or voxel, for several purposes a leaf also counts as a cluster.
| voxelnum | the voxel id for this leaf |
Definition at line 47 of file WHierarchicalTreeVoxels.cpp.
References WHierarchicalTree::m_children, WHierarchicalTree::m_clusterCount, WHierarchicalTree::m_colors, WHierarchicalTree::m_containsLeafes, WHierarchicalTree::m_customData, WHierarchicalTree::m_leafCount, WHierarchicalTree::m_leafesLocked, WHierarchicalTree::m_level, WHierarchicalTree::m_parents, and m_voxelnums.
| std::vector< size_t > WHierarchicalTreeVoxels::findClustersForBranchLength | ( | float | value, |
| size_t | minSize = 100 |
||
| ) |
finds the clusters for a given similarity value
| value | only return clusters where the distance in energy level to its parent is large than this value |
| minSize | only return clusters with a number of voxels large than minSize |
Definition at line 148 of file WHierarchicalTreeVoxels.cpp.
References WHierarchicalTree::m_children, WHierarchicalTree::m_clusterCount, WHierarchicalTree::m_containsLeafes, WHierarchicalTree::m_customData, WHierarchicalTree::m_leafCount, WHierarchicalTree::m_parents, and WHierarchicalTree::size().
| std::vector< size_t > WHierarchicalTreeVoxels::findClustersForValue | ( | float | value | ) |
finds the clusters for a given similarity value
| value |
Definition at line 107 of file WHierarchicalTreeVoxels.cpp.
References WHierarchicalTree::getCustomData(), WHierarchicalTree::m_children, WHierarchicalTree::m_clusterCount, WHierarchicalTree::m_containsLeafes, and WHierarchicalTree::size().
| std::vector< size_t > WHierarchicalTreeVoxels::findXClusters | ( | size_t | root, |
| size_t | number | ||
| ) |
finds a number of clusters, the algorithm travers down the tree and will always split the cluster with the highest energy level.
| root | the cluster to start traversing the tree from |
| number | the number of cluster we want to find |
Definition at line 171 of file WHierarchicalTreeVoxels.cpp.
References WHierarchicalTree::m_children, and WHierarchicalTree::m_customData.
| size_t WHierarchicalTreeVoxels::getVoxelNum | ( | size_t | leaf | ) | [inline] |
getter
| leaf |
Definition at line 121 of file WHierarchicalTreeVoxels.h.
References m_voxelnums.
| std::vector< size_t > WHierarchicalTreeVoxels::getVoxelsForCluster | ( | size_t | cluster | ) |
getter
| cluster | the cluster to work on |
Definition at line 96 of file WHierarchicalTreeVoxels.cpp.
References WHierarchicalTree::getLeafesForCluster(), and m_voxelnums.
std::vector<size_t> WHierarchicalTreeVoxels::m_voxelnums [private] |
stores the voxel id of each leaf node
Definition at line 118 of file WHierarchicalTreeVoxels.h.
Referenced by addLeaf(), getVoxelNum(), and getVoxelsForCluster().
1.7.4