MeshLib
 
Loading...
Searching...
No Matches
MR2DContoursTriangulation.h File Reference
#include "MRMeshFwd.h"
#include "MRId.h"
#include <optional>

Go to the source code of this file.

Classes

struct  MR::PlanarTriangulation::IntersectionInfo
 Info about intersection point for mapping. More...
 
struct  MR::PlanarTriangulation::IntersectionsMap
 struct to map new vertices (only appear on intersections) of the outline to it's edges More...
 

Namespaces

namespace  MR
 
namespace  MR::PlanarTriangulation
 

Typedefs

using MR::PlanarTriangulation::HoleVertIds = std::vector<VertId>
 
using MR::PlanarTriangulation::HolesVertIds = std::vector<HoleVertIds>
 
using MR::PlanarTriangulation::ContourIdMap = std::vector<IntersectionInfo>
 
using MR::PlanarTriangulation::ContoursIdMap = std::vector<ContourIdMap>
 

Enumerations

enum class  MR::PlanarTriangulation::WindingMode { MR::PlanarTriangulation::NonZero , MR::PlanarTriangulation::Positive , MR::PlanarTriangulation::Negative }
 Specify mode of detecting inside and outside parts of triangulation. More...
 

Functions

MRMESH_API HolesVertIds MR::PlanarTriangulation::findHoleVertIdsByHoleEdges (const MeshTopology &tp, const std::vector< EdgePath > &holePaths)
 return vertices of holes that correspond internal contours representation of PlanarTriangulation
 
MRMESH_API Mesh MR::PlanarTriangulation::getOutlineMesh (const Contours2f &contours, IntersectionsMap *interMap=nullptr)
 
MRMESH_API Contours2f MR::PlanarTriangulation::getOutline (const Contours2f &contours, ContoursIdMap *indicesMap=nullptr)
 
MRMESH_API Mesh MR::PlanarTriangulation::triangulateContours (const Contours2d &contours, const HolesVertIds *holeVertsIds=nullptr)
 triangulate 2d contours only closed contours are allowed (first point of each contour should be the same as last point of the contour)
 
MRMESH_API Mesh MR::PlanarTriangulation::triangulateContours (const Contours2f &contours, const HolesVertIds *holeVertsIds=nullptr)
 
MRMESH_API std::optional< MeshMR::PlanarTriangulation::triangulateDisjointContours (const Contours2d &contours, const HolesVertIds *holeVertsIds=nullptr)
 triangulate 2d contours only closed contours are allowed (first point of each contour should be the same as last point of the contour)
 
MRMESH_API std::optional< MeshMR::PlanarTriangulation::triangulateDisjointContours (const Contours2f &contours, const HolesVertIds *holeVertsIds=nullptr)