59 #ifndef OPENMESH_LAPLACE_SMOOTHERT_HH
60 #define OPENMESH_LAPLACE_SMOOTHERT_HH
85 typedef typename SmootherT<Mesh>::Continuity Continuity;
86 typedef typename SmootherT<Mesh>::Scalar Scalar;
87 typedef typename SmootherT<Mesh>::VertexHandle VertexHandle;
88 typedef typename SmootherT<Mesh>::EdgeHandle EdgeHandle;
95 void initialize(Component _comp, Continuity _cont);
102 Scalar weight(VertexHandle _vh)
const
103 {
return Base::mesh_.property(vertex_weights_, _vh); }
105 Scalar weight(EdgeHandle _eh)
const
106 {
return Base::mesh_.property(edge_weights_, _eh); }
111 enum LaplaceWeighting { UniformWeighting, CotWeighting };
112 void compute_weights(LaplaceWeighting _mode);
124 #if defined(OM_INCLUDE_TEMPLATES) && !defined(OPENMESH_LAPLACE_SMOOTHERT_C)
125 #define OPENMESH_LAPLACE_SMOOTHERT_TEMPLATES
129 #endif // OPENMESH_LAPLACE_SMOOTHERT_HH defined
Component
Definition: SmootherT.hh:92
Laplacian Smoothing.
Definition: LaplaceSmootherT.hh:78
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:64
Base class for smoothing algorithms.
Definition: SmootherT.hh:81