13struct MeshRelaxParams : RelaxParams
19 const VertScalars *
weights =
nullptr;
50struct MeshApproxRelaxParams : MeshRelaxParams
55 RelaxApproxType type{ RelaxApproxType::Planar };
#define MRMESH_API
Definition MRMeshFwd.h:80
Definition MRMeshRelax.h:51
new unsafe ref float surfaceDilateRadius
Definition MRMeshRelax.h:33
new unsafe ref bool noShrinkage
Definition MRMeshRelax.h:14
new unsafe ref bool hardSmoothTetrahedrons
new unsafe MR.? Const_VertScalars weights
Definition MRMesh/MRMeshTopology.h:19
Definition MRMesh/MRMesh.h:23
MRMESH_API bool relaxApprox(Mesh &mesh, const MeshApproxRelaxParams ¶ms={}, const ProgressCallback &cb={})
MRMESH_API void hardSmoothTetrahedrons(Mesh &mesh, const VertBitSet *region=nullptr)
move all region vertices with exactly three neighbor vertices in the center of the neighbors
MRMESH_API void smoothRegionBoundary(Mesh &mesh, const FaceBitSet ®ionFaces, int numIters=4)
MRMESH_API bool equalizeTriAreas(Mesh &mesh, const MeshEqualizeTriAreasParams ¶ms={}, const ProgressCallback &cb={})
MRMESH_API Vector3f vertexPosEqualNeiAreas(const Mesh &mesh, VertId v, bool noShrinkage)
MRMESH_API bool relaxKeepVolume(Mesh &mesh, const MeshRelaxParams ¶ms={}, const ProgressCallback &cb={})
MRMESH_API bool relax(Mesh &mesh, const MeshRelaxParams ¶ms={}, const ProgressCallback &cb={})
MRMESH_API void 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
Definition MRCameraOrientationPlugin.h:8