MeshLib
 
Loading...
Searching...
No Matches
MRTunnelDetector.h
Go to the documentation of this file.
1#pragma once
2
3#include "MREdgeMetric.h"
5#include "MRExpected.h"
6#include <cfloat>
7
8namespace MR
9{
10
14
19
32
36
38
39} // namespace MR
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:46
std::function< bool(float)> ProgressCallback
Definition MRMesh/MRMeshFwd.h:589
MRMESH_API Expected< std::vector< EdgeLoop > > detectBasisTunnels(const MeshPart &mp, EdgeMetric metric={}, ProgressCallback progressCallback={})
MRMESH_API Expected< FaceBitSet > detectTunnelFaces(const MeshPart &mp, const DetectTunnelSettings &settings={})
Definition MRCameraOrientationPlugin.h:7
tl::expected< T, E > Expected
Definition MRExpected.h:49
std::function< float(EdgeId)> EdgeMetric
Definition MRMesh/MRMeshFwd.h:428
Definition MRTunnelDetector.h:21
EdgeMetric metric
if no metric is given then discreteMinusAbsMeanCurvatureMetric will be used
Definition MRTunnelDetector.h:28
int maxIters
Definition MRTunnelDetector.h:26
float maxTunnelLength
maximal length of tunnel loops to consider
Definition MRTunnelDetector.h:23
ProgressCallback progress
to report algorithm progress and cancel from outside
Definition MRTunnelDetector.h:30
Definition MRMesh/MRMeshPart.h:11