MeshLib C++ Docs
Loading...
Searching...
No Matches
MRRadiusCompensation.h
Go to the documentation of this file.
1#pragma once
2#include "MRMeshFwd.h"
3#include "MRVector3.h"
4#include "MRVector2.h"
5#include "MRExpected.h"
6
7namespace MR
8{
11
12
15{
17 Vector3f direction;
18
20 float toolRadius{ 0.0f };
21
25 const FaceBitSet* region{ nullptr };
26
28 int maxIterations{ 100 };
29
32
35
37 float relaxForce = 0.3f;
38
39 ProgressCallback callback;
40};
41
45[[nodiscard]] MRMESH_API Expected<void> compensateRadius( Mesh& mesh, const CompensateRadiusParams& params );
46
47}
int relaxIterations
how many iterations of relax is applied on each compensation iteration
Definition MRRadiusCompensation.h:34
int maxIterations
maximum iteration of applying algorithm (each iteration improves result a little bit)
Definition MRRadiusCompensation.h:28
tl::expected< T, E > Expected
Definition MRExpected.h:31
float relaxForce
force of relaxations on each compensation iteration
Definition MRRadiusCompensation.h:37
Vector3f direction
Z direction of milling tool.
Definition MRRadiusCompensation.h:17
const FaceBitSet * region
Definition MRRadiusCompensation.h:25
MRMESH_API Expected< void > compensateRadius(Mesh &mesh, const CompensateRadiusParams &params)
ProgressCallback callback
Definition MRRadiusCompensation.h:39
int relaxExpansion
how many hops to expand around each moved vertex for relaxation
Definition MRRadiusCompensation.h:31
float toolRadius
radius of spherical tool
Definition MRRadiusCompensation.h:20
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
structure with parameters for compensateRadius function
Definition MRRadiusCompensation.h:15
Definition MRMesh.h:23