template<typename HalfedgeGraph, typename PointMap, typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
class FEVV::Filters::Refinement_info< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >
A Refinement_info Object stores the necessary info to refine a batch. Each batch has its corresponding Refinement_info object. Input: A sorted list of Collapse_info objects, a halfedgeGraph corresponding to the current level of detail. Output: Corresponding bitmasks and residuals arrays.
Definition at line 45 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
Get the number of vertices of the halfedge graph.
Definition at line 55 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
Creates a vertex bitmask according to a vertex spanning tree and a list of Collapse_info objects (initialized at construction).
st vertices ordered in the same ordered
that the internal memory list.
- Parameters
-
st | spanning tree of current LoD |
Definition at line 67 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
Creates the edge bitmask.
- Parameters
-
pm | spanning tree of current LOD |
list_memory | pointmap of current LOD sorted list of Collapse_info objects (same list that _list_memory, but _list_memory use the original sorted list while here list_memory can have its object' reverse field updated) |
Definition at line 120 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
Creates the reverse bitmask (non-empty for halfedge/target position type).
Definition at line 154 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
sorted list of refinement info (vertices to encode) according to the vertex spanning traversal
Definition at line 181 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
vertex bit mask (which vertex to split during) decoding
Definition at line 183 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
edge bit mask (which incident edge to a vertex to split is a pivot edge to expand)
Definition at line 186 of file Refinement_info.h.
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>