#include <SubdividerT.hh>

Public Types | |
| typedef MeshType | mesh_t |
| typedef RealType | real_t |
Public Member Functions | |
| virtual const char * | name (void) const =0 |
| Return name of subdivision algorithm. | |
| virtual | ~SubdividerT () |
| Descructor (calls detach()). | |
Interface 2 | |
| bool | attach (MeshType &_m) |
| void | detach (void) |
| bool | operator() (size_t _n) |
Interface 1 | |
| bool | operator() (MeshType &_m, size_t _n) |
Constructors | |
| SubdividerT (MeshType &_m) | |
| SubdividerT (void) | |
Protected Member Functions | |
Overload theses methods | |
| virtual bool | cleanup (MeshType &_m)=0 |
| Cleanup mesh after usage, e.g. remove added properties. | |
| virtual bool | prepare (MeshType &_m)=0 |
| Prepare mesh, e.g. add properties. | |
| virtual bool | subdivide (MeshType &_m, size_t _n)=0 |
Subdivide mesh _m _n times. | |
Private Attributes | |
| MeshType * | attached_ |
Abstract base class for uniform subdivision algorithms.
A derived class must overload the following functions:
Definition at line 87 of file SubdividerT.hh.
| typedef MeshType OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::mesh_t |
Reimplemented in OpenMesh::Subdivider::Uniform::CompositeT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::LoopT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::ModifiedButterflyT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >, and OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >.
Definition at line 91 of file SubdividerT.hh.
| typedef RealType OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::real_t |
Reimplemented in OpenMesh::Subdivider::Uniform::CompositeT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::LoopT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::ModifiedButterflyT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >, and OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >.
Definition at line 92 of file SubdividerT.hh.
| OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::SubdividerT | ( | void | ) | [inline] |
Constructor to be used with interface 2
Definition at line 100 of file SubdividerT.hh.
| OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::SubdividerT | ( | MeshType & | _m | ) | [inline] |
Constructor to be used with interface 1 (calls attach())
Definition at line 104 of file SubdividerT.hh.
| virtual OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::~SubdividerT | ( | ) | [inline, virtual] |
Descructor (calls detach()).
Definition at line 109 of file SubdividerT.hh.
| bool OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::attach | ( | MeshType & | _m | ) | [inline] |
Attach mesh _m to self
Definition at line 131 of file SubdividerT.hh.
| virtual bool OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::cleanup | ( | MeshType & | _m | ) | [protected, pure virtual] |
Cleanup mesh after usage, e.g. remove added properties.
Implemented in OpenMesh::Subdivider::Uniform::CompositeT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::LoopT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::ModifiedButterflyT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >, and OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >.
| void OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::detach | ( | void | ) | [inline] |
Detach an eventually attached mesh.
Definition at line 154 of file SubdividerT.hh.
| virtual const char* OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::name | ( | void | ) | const [pure virtual] |
Return name of subdivision algorithm.
Implemented in OpenMesh::Subdivider::Uniform::CompositeT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::CompositeLoopT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::CompositeSqrt3T< MeshType, RealType >, OpenMesh::Subdivider::Uniform::LoopT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::ModifiedButterflyT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >, and OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >.
| bool OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::operator() | ( | size_t | _n | ) | [inline] |
Subdivide the attached _n times.
Definition at line 147 of file SubdividerT.hh.
| bool OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::operator() | ( | MeshType & | _m, | |
| size_t | _n | |||
| ) | [inline] |
Subdivide the mesh _m _n times.
Definition at line 121 of file SubdividerT.hh.
| virtual bool OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::prepare | ( | MeshType & | _m | ) | [protected, pure virtual] |
Prepare mesh, e.g. add properties.
Implemented in OpenMesh::Subdivider::Uniform::CompositeT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::LoopT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::ModifiedButterflyT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >, and OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >.
| virtual bool OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::subdivide | ( | MeshType & | _m, | |
| size_t | _n | |||
| ) | [protected, pure virtual] |
Subdivide mesh _m _n times.
Implemented in OpenMesh::Subdivider::Uniform::CompositeT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::LoopT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::ModifiedButterflyT< MeshType, RealType >, OpenMesh::Subdivider::Uniform::InterpolatingSqrt3LGT< MeshType, RealType >, and OpenMesh::Subdivider::Uniform::Sqrt3T< MeshType, RealType >.
MeshType* OpenMesh::Subdivider::Uniform::SubdividerT< MeshType, RealType >::attached_ [private] |
Definition at line 180 of file SubdividerT.hh.