Loading...
Searching...
No Matches
OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType > Class Template Reference

Uniform Interpolating Sqrt3 subdivision algorithm More...

`#include <OpenMesh/Tools/Subdivider/Uniform/Sqrt3InterpolatingSubdividerLabsikGreinerT.hh>`

Inheritance diagram for OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >:
[legend]
Collaboration diagram for OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >:
[legend]

## Public Types

typedef RealType | real_t
typedef MeshType | mesh_t
typedef SubdividerT< mesh_t, real_t > | parent_t
typedef std::vector< std::vector< real_t > > | weights_t
Public Types inherited from OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >
typedef MeshType | mesh_t
typedef RealType | real_t

## Public Member Functions

| InterpolatingSqrt3LGT (MeshType &_m)
const char * | name () const override
| Return name of subdivision algorithm.
void | init_weights (size_t _max_valence=50)
| Pre-compute weights.
Public Member Functions inherited from OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >
| SubdividerT (void)
| Constructor to be used with interface 2.
| SubdividerT (MeshType &_m)
| Constructor to be used with interface 1 (calls attach())
virtual | ~SubdividerT ()
| Destructor (calls detach())
bool | operator() (MeshType &_m, size_t _n, const bool _update_points=true)
| Subdivide the mesh `_m` `_n` times.
bool | attach (MeshType &_m)
| Attach mesh `_m` to self.
bool | operator() (size_t _n, const bool _update_points=true)
| Subdivide the attached `_n` times.
void | detach (void)
| Detach an eventually attached mesh.

## Protected Member Functions

bool | prepare (MeshType &_m) override
| Prepare mesh, e.g. add properties.
bool | cleanup (MeshType &_m) override
| Cleanup mesh after usage, e.g. remove added properties.
bool | subdivide (MeshType &_m, size_t _n, const bool _update_points=true) override
| Subdivide mesh `_m` `_n` times.
Protected Member Functions inherited from OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >

## Detailed Description

template<typename MeshType, typename RealType = double>
class OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >

Uniform Interpolating Sqrt3 subdivision algorithm

Implementation of the interpolating Labsik Greiner Subdivider as described in "interpolating sqrt(3) subdivision" Labsik & Greiner, 2000

Clement Courbet - cleme.nosp@m.nt.c.nosp@m.ourbe.nosp@m.t@ec.nosp@m.p.fr

## Member Function Documentation

## cleanup()

template<typename MeshType , typename RealType = double>

bool OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >::cleanup | ( | MeshType & | _m | ) |

inline override protected virtual

Cleanup mesh after usage, e.g. remove added properties.

Implements OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >.

## name()

template<typename MeshType , typename RealType = double>

const char * OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >::name | ( |  | ) | const

inline override virtual

Return name of subdivision algorithm.

Implements OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >.

## prepare()

template<typename MeshType , typename RealType = double>

bool OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >::prepare | ( | MeshType & | _m | ) |

inline override protected virtual

Prepare mesh, e.g. add properties.

Implements OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >.

## subdivide()

template<typename MeshType , typename RealType = double>

bool OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >::subdivide | ( | MeshType & | _m,
|  | size_t | _n,
|  | const bool | _update_points = `true`
| ) |  |

inline override 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:

- OpenMesh/Tools/Subdivider/Uniform/Sqrt3InterpolatingSubdividerLabsikGreinerT.hh