MeshLib C++ Docs
Loading...
Searching...
No Matches
MRMeshRelax.h File Reference
#include "MRMeshFwd.h"
#include "MRProgressCallback.h"
#include "MRRelaxParams.h"

Go to the source code of this file.

Classes

struct  MR::MeshRelaxParams
struct  MR::MeshEqualizeTriAreasParams
struct  MR::MeshApproxRelaxParams

Namespaces

namespace  MR
 only for bindings generation

Functions

bool MR::relax (Mesh &mesh, const MeshRelaxParams &params={}, const ProgressCallback &cb={})
bool MR::relax (const MeshTopology &topology, VertCoords &points, const MeshRelaxParams &params={}, const ProgressCallback &cb={})
Vector3f MR::vertexPosEqualNeiAreas (const Mesh &mesh, VertId v, bool noShrinkage)
Vector3f MR::vertexPosEqualNeiAreas (const MeshTopology &topology, const VertCoords &points, VertId v, bool noShrinkage)
bool MR::equalizeTriAreas (Mesh &mesh, const MeshEqualizeTriAreasParams &params={}, const ProgressCallback &cb={})
bool MR::equalizeTriAreas (const MeshTopology &topology, VertCoords &points, const MeshEqualizeTriAreasParams &params={}, const ProgressCallback &cb={})
bool MR::relaxKeepVolume (Mesh &mesh, const MeshRelaxParams &params={}, const ProgressCallback &cb={})
bool MR::relaxKeepVolume (const MeshTopology &topology, VertCoords &points, const MeshRelaxParams &params={}, const ProgressCallback &cb={})
bool MR::relaxApprox (Mesh &mesh, const MeshApproxRelaxParams &params={}, const ProgressCallback &cb={})
bool MR::relaxApprox (const MeshTopology &topology, VertCoords &points, const MeshApproxRelaxParams &params={}, const ProgressCallback &cb={})
void MR::removeSpikes (Mesh &mesh, int maxIterations, float minSumAngle, const VertBitSet *region=nullptr)
 applies at most given number of relaxation iterations the spikes detected by given threshold
void MR::removeSpikes (const MeshTopology &topology, VertCoords &points, int maxIterations, float minSumAngle, const VertBitSet *region=nullptr)
void MR::smoothRegionBoundary (Mesh &mesh, const FaceBitSet &regionFaces, int numIters=4)
void MR::hardSmoothTetrahedrons (Mesh &mesh, const VertBitSet *region=nullptr)
 move all region vertices with exactly three neighbor vertices in the center of the neighbors
void MR::hardSmoothTetrahedrons (const MeshTopology &topology, VertCoords &points, const VertBitSet *region=nullptr)