#include <bvh_default_priority_bottom_up_policy.h>
List of all members.
Detailed Description
template<typename bvh_type>
class OpenTissue::bvh::DefaultPriorityBottomUpPolicy< bvh_type >
Default Priority Bottom Up Policy. This class implements a default bottom-up consruction policy. The order edges are collapsed in is based on increasing priority.
A collapse results in an update of the priorities of all edges topologically affected by the change in the graph.
Member Typedef Documentation
template<typename bvh_type >
template<typename bvh_type >
template<typename bvh_type >
template<typename bvh_type >
template<typename bvh_type >
template<typename bvh_type >
template<typename bvh_type >
template<typename bvh_type >
Constructor & Destructor Documentation
template<typename bvh_type >
Member Function Documentation
template<typename bvh_type >
The degree (or branching factor) of BVH. This method is used to decide the maximum branching factor of the generated BVH.
Note this is a virtual-method, this means it can be overriden by inhertance, such that end-user can define a genric branching factor.
See method create_bv(node_type*) for example of usage.
- Returns:
- The branching factor.
template<typename bvh_type >
template<typename geometry_iterator , typename volume_iterator >
Volume Fitting Method.
- Parameters:
-
| g0 | An iterator to the first geometric primitive that should be covered by the fitted volume. |
| g1 | An iterator to one position pass the last geometric primitive that should be covered by the fitted volume. |
| v0 | An iterator to the first volume that should be covered by the fitted volume. |
| v1 | An iterator to one position pass the last volume that should be covered by the fitted volume. |
- Returns:
- The fitted volume.
template<typename bvh_type >
Retrive next edge that should be collapsed.
- Returns:
- A pointer to the graph edge that should be collapsed.
template<typename bvh_type >
More Edges to Collapse Query.
- Returns:
- If the graph contains more edges that should be collapsed then the return value is true otherwise it is false.
template<typename bvh_type >
Initialization Method. This method sets up internal data structures, needed for picking edges etc..
- Parameters:
-
| graph | A reference to the graph that the policiy is working on. |
template<typename bvh_type >
Edge Priority Computation. This method is used to assign priorities to edges in the graph.
Note this is a virtual-method, this means it can be overriden by inhertance, such that end-user can define genric priorty strategies.
Default stategy, tries to favor a balanced BVH.
See method update(node_type*) and init(graph_type&) for examples of usage.
- Parameters:
-
| edge | A pointer to the edge, from which a priority should be computed. |
- Returns:
- The priority of the specified edge.
template<typename bvh_type >
Create BV Decision Method. This method is used by the Bottom-Up-Construction algorithm to determine if an edge-collapse should result in a new BV in the BVH, or if more sub-nodes are merged into the same region.
Default implementation is based on the branching factor. See method degree().
- Parameters:
-
| node | A pointer to the node, which is the result from a edge-collapse. |
- Returns:
- If a BV should be created then the return value is true otherwise it is false.
template<typename bvh_type >
Update Node after Collapse. This method is intendend to be called on the resulting node after a collapse operation.
- Parameters:
-
| node | A pointer to the node. |
template<typename bvh_type >
Update Heap. Internally used method, called whenever edge priorities are changed to re-inforce heap-property.
See method update(node_type*) and init(graph_type&) for examples of usage.
Member Data Documentation
template<typename bvh_type >
Pointer to graph that is currently being worked on.
The documentation for this class was generated from the following file: