MeshLib
 
Loading...
Searching...
No Matches
MRFixUndercuts.h File Reference
#include "MRMeshFwd.h"
#include "MRVector3.h"
#include "MRVector2.h"
#include "MRConstants.h"
#include <functional>

Go to the source code of this file.

Classes

struct  MR::FixUndercuts::ImproveDirectionParameters
 
struct  MR::FixUndercuts::DistMapImproveDirectionParameters
 

Namespaces

namespace  MR
 
namespace  MR::FixUndercuts
 

Typedefs

using MR::FixUndercuts::UndercutMetric = std::function<double( const FaceBitSet&, const Vector3f& upDir )>
 

Functions

MRMESH_API void MR::FixUndercuts::fixUndercuts (Mesh &mesh, const Vector3f &upDirection, float voxelSize=0.0f, float bottomExtension=0.0f)
 
MRMESH_API void MR::FixUndercuts::fixUndercuts (Mesh &mesh, const FaceBitSet &selectedArea, const Vector3f &upDirection, float voxelSize=0.0f, float bottomExtension=0.0f)
 
MRMESH_API UndercutMetric MR::FixUndercuts::getUndercutAreaMetric (const Mesh &mesh)
 returns the metric that computes total area of undercut faces
 
MRMESH_API UndercutMetric MR::FixUndercuts::getUndercutAreaProjectionMetric (const Mesh &mesh)
 returns the metric that computes summed absolute area of undercut faces as visible if look from upDir
 
MRMESH_API void MR::FixUndercuts::findUndercuts (const Mesh &mesh, const Vector3f &upDirection, FaceBitSet &outUndercuts)
 Adds to.
 
MRMESH_API double MR::FixUndercuts::findUndercuts (const Mesh &mesh, const Vector3f &upDirection, FaceBitSet &outUndercuts, const UndercutMetric &metric)
 
MRMESH_API double MR::FixUndercuts::scoreUndercuts (const Mesh &mesh, const Vector3f &upDirection, const Vector2i &resolution)
 
MRMESH_API Vector3f MR::FixUndercuts::improveDirection (const Mesh &mesh, const ImproveDirectionParameters &params, const UndercutMetric &metric)
 
MRMESH_API Vector3f MR::FixUndercuts::distMapImproveDirection (const Mesh &mesh, const DistMapImproveDirectionParameters &params)