25 [[nodiscard]] MRMESH_API
float leftCotan( EdgeId e )
const;
34 [[nodiscard]]
bool isDelone( UndirectedEdgeId ue,
float threshold = 0 )
const {
return cotan( ue ) >= threshold; }
Definition MRMeshTopology.h:22
MRMESH_API std::optional< float > edgeLengthAfterFlip(EdgeId e) const
MRMESH_API bool flipEdge(EdgeId e)
float cotan(UndirectedEdgeId ue) const
Definition MREdgeLengthMesh.h:29
MRMESH_API float leftCotan(const MeshTopology &topology, const VertCoords &points, EdgeId e)
bool isDelone(UndirectedEdgeId ue, float threshold=0) const
Definition MREdgeLengthMesh.h:34
MeshTopology topology
Definition MREdgeLengthMesh.h:17
MRMESH_API float leftCotan(EdgeId e) const
static MRMESH_API EdgeLengthMesh fromMesh(const Mesh &mesh)
construct EdgeLengthMesh from an ordinary mesh
UndirectedEdgeScalars edgeLengths
Definition MREdgeLengthMesh.h:18
float cotan(const MeshTopology &topology, const VertCoords &points, UndirectedEdgeId ue)
Definition MRMeshMath.h:315
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MREdgeLengthMesh.h:16