OpenMesh
|
Uniform Loop subdivision algorithm. More...
#include <OpenMesh/Tools/Subdivider/Uniform/LoopT.hh>
Classes | |
struct | compute_weight |
Helper functor to compute weights for Loop-subdivision. | |
Public Types | |
typedef RealType | real_t |
typedef MeshType | mesh_t |
typedef SubdividerT< mesh_t, real_t > | parent_t |
typedef std::pair< real_t, real_t > | weight_t |
typedef std::vector< std::pair < real_t, real_t > > | weights_t |
Public Member Functions | |
LoopT (mesh_t &_m) | |
const char * | name () const |
Return name of subdivision algorithm. | |
void | init_weights (size_t _max_valence=50) |
Pre-compute weights. | |
Protected Member Functions | |
bool | prepare (mesh_t &_m) |
Prepare mesh, e.g. add properties. | |
bool | cleanup (mesh_t &_m) |
Cleanup mesh after usage, e.g. remove added properties. | |
bool | subdivide (mesh_t &_m, size_t _n, const bool _update_points=true) |
Subdivide mesh _m _n times. |
Uniform Loop subdivision algorithm.
Implementation as described in
C. T. Loop, "Smooth Subdivision Surfaces Based on Triangles", M.S. Thesis, Department of Mathematics, University of Utah, August 1987.
bool OpenMesh::Subdivider::Uniform::LoopT< MeshType, RealType >::subdivide | ( | mesh_t & | _m, |
size_t | _n, | ||
const bool | _update_points = true |
||
) | [inline, protected, virtual] |
Subdivide mesh _m
_n
times.
TODO:Implement fixed positions
Implements OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >.