OpenMesh
OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType > Class Template Reference

Uniform Sqrt3 subdivision algorithm More...

#include <OpenMesh/Tools/Subdivider/Uniform/Sqrt3T.hh>

Inheritance diagram for OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >:
Collaboration diagram for OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >:

List of all members.

Classes

struct  compute_weight
 Helper functor to compute weights for sqrt(3)-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

 Sqrt3T (MeshType &_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 (MeshType &_m)
 Prepare mesh, e.g. add properties.
bool cleanup (MeshType &_m)
 Cleanup mesh after usage, e.g. remove added properties.
bool subdivide (MeshType &_m, size_t _n, const bool _update_points=true)
 Subdivide mesh _m _n times.

Detailed Description

template<typename MeshType, typename RealType = float>
class OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >

Uniform Sqrt3 subdivision algorithm

Implementation as described in

L. Kobbelt, "Sqrt(3) subdivision", Proceedings of SIGGRAPH 2000.


Member Function Documentation

template<typename MeshType , typename RealType = float>
bool OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >::subdivide ( MeshType &  _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 >.


The documentation for this class was generated from the following file: