56 #ifndef UNIFORM_REMESHERT_HH
57 #define UNIFORM_REMESHERT_HH
62 #include "BaseRemesherT.hh"
64 #include "../ProgressEmitter.hh"
77 typedef typename BaseRemesherT<Mesh>::Selection Selection;
83 typedef typename Mesh::EdgeHandle EdgeHandle;
90 void remesh(Scalar _edge_length,
92 unsigned int _area_iters,
93 bool _use_projection =
true,
98 emin_ = 0.7 * _edge_length; sqr_emin_ = emin_ * emin_;
99 emax_ = 1.4 * _edge_length; sqr_emax_ = emax_ * emax_;
100 Base::remesh(_iters, _area_iters, _use_projection,_selection);
107 virtual bool is_too_long (VertexHandle _v0, VertexHandle _v1)
const
109 return (Base::mesh_.point(_v0) -
110 Base::mesh_.point(_v1)).sqrnorm() > sqr_emax_;
113 virtual bool is_too_short (VertexHandle _v0, VertexHandle _v1)
const
115 return (Base::mesh_.point(_v0) -
116 Base::mesh_.point(_v1)).sqrnorm() < sqr_emin_;
122 Scalar emax_, sqr_emax_, emin_, sqr_emin_;
129 #endif // UNIFORM_REMESHERT_HH defined
Kernel::Point Point
Coordinate type.
Kernel::Scalar Scalar
Scalar type.
Kernel::VertexHandle VertexHandle
Handle for referencing the corresponding item.