50 #ifndef UNIFORM_REMESHERT_HH 51 #define UNIFORM_REMESHERT_HH 56 #include "BaseRemesherT.hh" 58 #include "../ProgressEmitter.hh" 71 typedef typename BaseRemesherT<Mesh>::Selection Selection;
75 typedef typename Mesh::Scalar Scalar;
77 typedef typename Mesh::EdgeHandle EdgeHandle;
84 void remesh(Scalar _edge_length,
86 unsigned int _area_iters,
87 bool _use_projection =
true,
92 emin_ = 0.7 * _edge_length; sqr_emin_ = emin_ * emin_;
93 emax_ = 1.4 * _edge_length; sqr_emax_ = emax_ * emax_;
94 Base::remesh(_iters, _area_iters, _use_projection,_selection);
101 virtual bool is_too_long (VertexHandle _v0, VertexHandle _v1)
const override 103 return (Base::mesh_.point(_v0) -
104 Base::mesh_.point(_v1)).sqrnorm() > sqr_emax_;
107 virtual bool is_too_short (VertexHandle _v0, VertexHandle _v1)
const override 109 return (Base::mesh_.point(_v0) -
110 Base::mesh_.point(_v1)).sqrnorm() < sqr_emin_;
116 Scalar emax_, sqr_emax_, emin_, sqr_emin_;
123 #endif // UNIFORM_REMESHERT_HH defined
Kernel::Point Point
Coordinate type.
Kernel::VertexHandle VertexHandle
Handle for referencing the corresponding item.