23#ifndef VCL_ALGORITHMS_MESH_UPDATE_FLAG_H
24#define VCL_ALGORITHMS_MESH_UPDATE_FLAG_H
26#include <vclib/algorithms/mesh/sort.h>
28#include <vclib/mesh.h>
45template<FaceMeshConcept MeshType>
46void updateBorder(MeshType& m)
48 using VertexType = MeshType::VertexType;
49 using FaceType = MeshType::FaceType;
51 for (FaceType& f : m.
faces())
52 f.unsetAllEdgesOnBorder();
54 if (m.faceNumber() == 0)
57 std::vector<MeshEdgeUtil<MeshType>> e = fillAndSortMeshEdgeUtilVector(m);
59 typename std::vector<MeshEdgeUtil<MeshType>>::iterator pe, ps;
63 if (pe == e.end() || *pe != *ps) {
65 ps->f->edgeOnBorder(ps->e) =
true;
71 }
while (pe != e.end());
constexpr detail::FacesView faces
A view that allows to iterate overt the Face elements of an object.
Definition face.h:84