35MRVOXELS_API void fixUndercuts(
Mesh& mesh,
const FaceBitSet& selectedArea,
const Vector3f& upDirection,
float voxelSize = 0.0f,
float bottomExtension = 0.0f );
39using UndercutMetric = std::function<double(
const FaceBitSet&,
const Vector3f& upDir )>;
#define MRVOXELS_API
Definition MRVoxelsFwd.h:13
MRVOXELS_API double scoreUndercuts(const Mesh &mesh, const Vector3f &upDirection, const Vector2i &resolution)
MRVOXELS_API void fixUndercuts(Mesh &mesh, const Vector3f &upDirection, float voxelSize=0.0f, float bottomExtension=0.0f)
std::function< double(const FaceBitSet &, const Vector3f &upDir)> UndercutMetric
Definition MRFixUndercuts.h:39
MRVOXELS_API Vector3f distMapImproveDirection(const Mesh &mesh, const DistMapImproveDirectionParameters ¶ms)
MRVOXELS_API void findUndercuts(const Mesh &mesh, const Vector3f &upDirection, FaceBitSet &outUndercuts)
Adds to.
MRVOXELS_API UndercutMetric getUndercutAreaMetric(const Mesh &mesh)
returns the metric that computes total area of undercut faces
MRVOXELS_API Vector3f improveDirection(const Mesh &mesh, const ImproveDirectionParameters ¶ms, const UndercutMetric &metric)
MRVOXELS_API UndercutMetric getUndercutAreaProjectionMetric(const Mesh &mesh)
returns the metric that computes summed absolute area of undercut faces as visible if look from upDir
Definition MRCameraOrientationPlugin.h:8
Definition MRFixUndercuts.h:73
Vector2i distanceMapResolution
Definition MRFixUndercuts.h:75
Definition MRFixUndercuts.h:61
float maxBaseAngle
Definition MRFixUndercuts.h:67
Vector3f hintDirection
Definition MRFixUndercuts.h:63
float polarAngleStep
Definition MRFixUndercuts.h:69
float baseAngleStep
Definition MRFixUndercuts.h:65
Definition MRMesh/MRMesh.h:23