MeshLib C++ Docs
Loading...
Searching...
No Matches
MRMesh/MRIntersectionContour.h
Go to the documentation of this file.
1#pragma once
2
4
5namespace MR
6{
7
8struct OneMeshContour;
9using OneMeshContours = std::vector<OneMeshContour>;
10
11using ContinuousContour = std::vector<VarEdgeTri>;
12using ContinuousContours = std::vector<ContinuousContour>;
13
19
23MRMESH_API ContinuousContours orderSelfIntersectionContours( const MeshTopology& topology, const std::vector<EdgeTri>& intersections );
24
26MRMESH_API Contours3f extractIntersectionContours( const Mesh& meshA, const Mesh& meshB, const ContinuousContours& orientedContours,
27const CoordinateConverters& converters, const AffineXf3f* rigidB2A = nullptr );
28
30MRMESH_API bool isClosed( const ContinuousContour& contour );
31
35MRMESH_API std::vector<int> detectLoneContours( const ContinuousContours& contours, bool ignoreOpen = false );
36
42 OneMeshContours& faceContours, OneMeshContours& edgeContours );
43
46MRMESH_API void removeLoneContours( ContinuousContours& contours, bool ignoreOpen = false );
47
48}
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:79
Definition MRMesh/MRMeshTopology.h:18
std::vector< VarEdgeTri > PreciseCollisionResult
each edge is directed to have its origin inside and its destination outside of the other mesh
Definition MRMesh/MRMeshCollidePrecise.h:63
std::vector< OneMeshContour > OneMeshContours
Special data type for MR::cutMesh.
Definition MRMesh/MRIntersectionContour.h:9
Definition MRCameraOrientationPlugin.h:8
MRMESH_API void removeLoneContours(ContinuousContours &contours, bool ignoreOpen=false)
MRMESH_API std::vector< int > detectLoneContours(const ContinuousContours &contours, bool ignoreOpen=false)
MRMESH_API bool isClosed(const ContinuousContour &contour)
returns true if contour is closed
MRMESH_API Contours3f extractIntersectionContours(const Mesh &meshA, const Mesh &meshB, const ContinuousContours &orientedContours, const CoordinateConverters &converters, const AffineXf3f *rigidB2A=nullptr)
extracts coordinates from two meshes intersection contours
std::vector< VarEdgeTri > ContinuousContour
Definition MRMesh/MRIntersectionContour.h:11
MRMESH_API ContinuousContours orderSelfIntersectionContours(const MeshTopology &topology, const std::vector< EdgeTri > &intersections)
MRMESH_API ContinuousContours orderIntersectionContours(const MeshTopology &topologyA, const MeshTopology &topologyB, const PreciseCollisionResult &intersections)
std::vector< ContinuousContour > ContinuousContours
Definition MRMesh/MRIntersectionContour.h:12
Contours3< float > Contours3f
Definition MRMesh/MRMeshFwd.h:325
MRMESH_API void removeLoneDegeneratedContours(const MeshTopology &edgesTopology, OneMeshContours &faceContours, OneMeshContours &edgeContours)
this struct contains coordinate converters float-int-float
Definition MRMesh/MRPrecisePredicates3.h:52
Definition MRMesh/MRMesh.h:22