MeshLib Documentation
Loading...
Searching...
No Matches
MROverlappingTris.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRExpected.h"
5
6namespace MR
7{
8
10{
12 float maxDistSq = 1e-10f; // suggestion: multiply it on mesh.getBoundingBox().size().lengthSq();
14 float maxNormalDot = -0.99f;
16 float minAreaFraction = 1e-5f;
19};
20
22[[nodiscard]] MRMESH_API Expected<FaceBitSet> findOverlappingTris( const MeshPart & mp, const FindOverlappingSettings & settings );
23
24} //namespace MR
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:46
std::function< bool(float)> ProgressCallback
Definition MRMesh/MRMeshFwd.h:576
Definition MRCameraOrientationPlugin.h:8
tl::expected< T, E > Expected
Definition MRExpected.h:58
MRMESH_API Expected< FaceBitSet > findOverlappingTris(const MeshPart &mp, const FindOverlappingSettings &settings)
finds all triangles that have oppositely oriented close triangle in the mesh
Definition MROverlappingTris.h:10
float minAreaFraction
consider triangle as overlapping only if the area of the oppositely oriented triangle is at least giv...
Definition MROverlappingTris.h:16
float maxNormalDot
maximal dot product of one triangle and another overlapping triangle normals
Definition MROverlappingTris.h:14
ProgressCallback cb
for reporting current progress and allowing the user to cancel the algorithm
Definition MROverlappingTris.h:18
float maxDistSq
maximal distance between closest points of one triangle and another overlapping triangle
Definition MROverlappingTris.h:12