|
FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
|
A Skeleton Map is a unique map from SkeletonID's to Skeletons. More...
#include <SkeletonMap.hpp>
Public Types | |
| typedef std::list< RefPtr< Skeleton > > | Skeletons_t |
| typedef SkeletonIterator | Iterator |
| Associated Iterator class. | |
Public Member Functions | |
| RefPtr< Skeleton > | findVertices (int TotalRefinement=-1) const |
| Find the Skeleton describing the Vertices on this Grid. | |
| RefPtr< Skeleton > | getVerticesInfo (int TotalRefinement=-1) const |
| Find the skeleton describing the vertices of this Grid. | |
| RefPtr< Skeleton > | getEdgeInfo (int TotalRefinement=-1) const |
| Find the skeleton describing the faces of this Grid. | |
| RefPtr< Skeleton > | getFaceInfo (int TotalRefinement=-1) const |
| Find the skeleton describing the edges of this Grid. | |
| double | NumberOfHoles (int TotalRefinement=-1) const |
| Implements the Euler-Poincare formula to determine the topological number of holes within some surface. | |
| Skeleton & | makeVertices (int dims) |
| Create a Skeleton describing the vertices of a Grid. | |
| Skeleton & | operator[] (const SkeletonID &Sid) |
| Create a Skeleton. | |
| RefPtr< Skeleton > | getSkeleton (const SkeletonID &Sid) const |
| Find a Skeleton. | |
| RefPtr< Skeleton > | operator() (const SkeletonID &Sid) const |
| Find a Skeleton. | |
| RefPtr< Representation > | CellsAsVertices (int dims) const |
| int | MinLevel (int IndexDepth=0) const |
| Get a Skeleton that would describe the topology of the fragments of a given Skeleton, which is corresponds to a skeleton of index depth two larger. | |
| int | MaxLevel (int IndexDepth=0) const |
| Find the maximal refinement level for the given index depth. | |
| RefPtr< Skeleton > | findMaxHomogenousRefinement (int IndexDepth) const |
| Find the skeleton with the maximal homogenous refinement level. | |
| bool | replaceSkeletonID (const SkeletonID &old_id, const SkeletonID &new_id) |
| RefPtr< Skeleton > | findIsotropicRefinementFactor (int Factor, int IndexDepth) const |
| Find a Skeleton that corresponds to isotropic refinement by the given factor. | |
| int | iterate (ConstSkeletonIterator &) const |
| Iterate over all skeletons of this Grid. | |
| int | iterate (SkeletonIterator &) |
| Iterate over all skeletons of this Grid. | |
| int | iterate (std::function< bool(const SkeletonID &id, Skeleton &S)>) const |
| int | iterate_const (std::function< bool(const SkeletonID &id, const Skeleton &S)>) const |
| template<class SkeletonFunctor > | |
| int | Iterate (const SkeletonFunctor &F) const |
| template<class Functor > | |
| int | iterate_all (const Functor &F) const |
| int | nSkeletons () const |
| Return the number of skeletons defined on this grid. | |
| int | nSkeletons (int IndexDepth) const |
| int | getMemoryUsage (memsize_t &UsedMemory, memsize_t &WantedMemory) const |
| Get the memory occupied by this Grid (and all of its fields). | |
| void | Speak (int indent=0, int maxindent=-1) const |
| Informative debug message. | |
| string | xml () const |
Public Attributes | |
| Skeletons_t | Skeletons |
Protected Member Functions | |
| ~SkeletonMap () | |
| Destructor. | |
| void | extremeUnction () override |
A Skeleton Map is a unique map from SkeletonID's to Skeletons.
| RefPtr< Skeleton > Fiber::SkeletonMap::findIsotropicRefinementFactor | ( | int | Factor, |
| int | IndexDepth | ||
| ) | const |
Find a Skeleton that corresponds to isotropic refinement by the given factor.
Isotropic refinement means that the same factor is used in each dimension. This factor will be a power of two in most practical but in theory may be an arbitrary integer number.
Find the skeleton with the maximal homogenous refinement level.
Will return a null ptr if none such is found, for instance there are no skeletons of the given index depth or all Skeletons of this index depth are inhomogeneous (different refinement resolution in each coordinate direction).
Get the memory occupied by this Grid (and all of its fields).
Not that if a field is shared on another location then it will be counted twice here. Use the MemCache::Cache function to determine the actual memory usage.
|
inline |
Lambda functor iteration over skeletons:
References apply().
Create a Skeleton describing the vertices of a Grid.
| dims | The dimensionality of the Grid. |
References std::list< typename _Tp, typename _Alloc >::push_back().
Referenced by Fiber::Grid::makeCartesianRepresentation(), and Fiber::Grid::operator[]().
Get a Skeleton that would describe the topology of the fragments of a given Skeleton, which is corresponds to a skeleton of index depth two larger.
This function is identical to:
Get a Representation describing the topology of the fragments for the given SkeletonID, if there is such.
This function is equivalent to:
Get a field describing the topology of this Skeleton's fragments. This will be the positions field of the Fragment Representation, equivalent to:
Implements the Euler-Poincare formula to determine the topological number of holes within some surface.
It is given by
![\[
\frac{E-V-F+2}{2}
\]](form_3.png)
where E is the number of edges, V the number of vertices and F the number of faces. All this information is retrieved from the respective skeletons as defined on this skeleton map (e.g. a Grid).
References getEdgeInfo(), getFaceInfo(), and getVerticesInfo().