MeshLib C Docs
Loading...
Searching...
No Matches
MRMeshRelax.h File Reference
#include <MRCMesh/MRId.h>
#include <MRCMesh/MRRelaxParams.h>
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/exports.h>
#include <stdbool.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct MR_FaceBitSet MR_FaceBitSet
 
typedef struct MR_Mesh MR_Mesh
 
typedef struct MR_MeshTopology MR_MeshTopology
 
typedef struct MR_RelaxParams MR_RelaxParams
 
typedef struct MR_VertBitSet MR_VertBitSet
 
typedef struct MR_VertCoords MR_VertCoords
 
typedef struct MR_VertScalars MR_VertScalars
 
typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float
 
typedef struct MR_MeshRelaxParams MR_MeshRelaxParams
 
typedef struct MR_MeshEqualizeTriAreasParams MR_MeshEqualizeTriAreasParams
 
typedef struct MR_MeshApproxRelaxParams MR_MeshApproxRelaxParams
 

Functions

MRC_API const bool * MR_MeshRelaxParams_Get_hardSmoothTetrahedrons (const MR_MeshRelaxParams *_this)
 
MRC_API void MR_MeshRelaxParams_Set_hardSmoothTetrahedrons (MR_MeshRelaxParams *_this, bool value)
 
MRC_API bool * MR_MeshRelaxParams_GetMutable_hardSmoothTetrahedrons (MR_MeshRelaxParams *_this)
 
MRC_API const MR_VertScalars *const * MR_MeshRelaxParams_Get_weights (const MR_MeshRelaxParams *_this)
 
MRC_API void MR_MeshRelaxParams_Set_weights (MR_MeshRelaxParams *_this, const MR_VertScalars *value)
 
MRC_API const MR_VertScalars ** MR_MeshRelaxParams_GetMutable_weights (MR_MeshRelaxParams *_this)
 
MRC_API const int * MR_MeshRelaxParams_Get_iterations (const MR_MeshRelaxParams *_this)
 
MRC_API void MR_MeshRelaxParams_Set_iterations (MR_MeshRelaxParams *_this, int value)
 
MRC_API int * MR_MeshRelaxParams_GetMutable_iterations (MR_MeshRelaxParams *_this)
 
MRC_API const MR_VertBitSet *const * MR_MeshRelaxParams_Get_region (const MR_MeshRelaxParams *_this)
 
MRC_API void MR_MeshRelaxParams_Set_region (MR_MeshRelaxParams *_this, const MR_VertBitSet *value)
 
MRC_API const MR_VertBitSet ** MR_MeshRelaxParams_GetMutable_region (MR_MeshRelaxParams *_this)
 
MRC_API const float * MR_MeshRelaxParams_Get_force (const MR_MeshRelaxParams *_this)
 
MRC_API void MR_MeshRelaxParams_Set_force (MR_MeshRelaxParams *_this, float value)
 
MRC_API float * MR_MeshRelaxParams_GetMutable_force (MR_MeshRelaxParams *_this)
 
MRC_API const bool * MR_MeshRelaxParams_Get_limitNearInitial (const MR_MeshRelaxParams *_this)
 
MRC_API void MR_MeshRelaxParams_Set_limitNearInitial (MR_MeshRelaxParams *_this, bool value)
 
MRC_API bool * MR_MeshRelaxParams_GetMutable_limitNearInitial (MR_MeshRelaxParams *_this)
 
MRC_API const float * MR_MeshRelaxParams_Get_maxInitialDist (const MR_MeshRelaxParams *_this)
 
MRC_API void MR_MeshRelaxParams_Set_maxInitialDist (MR_MeshRelaxParams *_this, float value)
 
MRC_API float * MR_MeshRelaxParams_GetMutable_maxInitialDist (MR_MeshRelaxParams *_this)
 
MRC_API MR_MeshRelaxParamsMR_MeshRelaxParams_DefaultConstruct (void)
 
MRC_API MR_MeshRelaxParamsMR_MeshRelaxParams_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_MeshRelaxParamsMR_MeshRelaxParams_OffsetPtr (const MR_MeshRelaxParams *ptr, ptrdiff_t i)
 
MRC_API MR_MeshRelaxParamsMR_MeshRelaxParams_OffsetMutablePtr (MR_MeshRelaxParams *ptr, ptrdiff_t i)
 
MRC_API const MR_RelaxParamsMR_MeshRelaxParams_UpcastTo_MR_RelaxParams (const MR_MeshRelaxParams *object)
 
MRC_API MR_RelaxParamsMR_MeshRelaxParams_MutableUpcastTo_MR_RelaxParams (MR_MeshRelaxParams *object)
 Upcasts an instance of MR::MeshRelaxParams to its base class MR::RelaxParams.
 
MRC_API const MR_MeshApproxRelaxParamsMR_MeshRelaxParams_StaticDowncastTo_MR_MeshApproxRelaxParams (const MR_MeshRelaxParams *object)
 
MRC_API MR_MeshApproxRelaxParamsMR_MeshRelaxParams_MutableStaticDowncastTo_MR_MeshApproxRelaxParams (MR_MeshRelaxParams *object)
 
MRC_API const MR_MeshEqualizeTriAreasParamsMR_MeshRelaxParams_StaticDowncastTo_MR_MeshEqualizeTriAreasParams (const MR_MeshRelaxParams *object)
 
MRC_API MR_MeshEqualizeTriAreasParamsMR_MeshRelaxParams_MutableStaticDowncastTo_MR_MeshEqualizeTriAreasParams (MR_MeshRelaxParams *object)
 
MRC_API MR_MeshRelaxParamsMR_MeshRelaxParams_ConstructFromAnother (const MR_MeshRelaxParams *_other)
 
MRC_API void MR_MeshRelaxParams_Destroy (const MR_MeshRelaxParams *_this)
 Destroys a heap-allocated instance of MR_MeshRelaxParams. Does nothing if the pointer is null.
 
MRC_API void MR_MeshRelaxParams_DestroyArray (const MR_MeshRelaxParams *_this)
 Destroys a heap-allocated array of MR_MeshRelaxParams. Does nothing if the pointer is null.
 
MRC_API MR_MeshRelaxParamsMR_MeshRelaxParams_AssignFromAnother (MR_MeshRelaxParams *_this, const MR_MeshRelaxParams *_other)
 
MRC_API bool MR_relax_3_MR_Mesh (MR_Mesh *mesh, const MR_MeshRelaxParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API bool MR_relax_4 (const MR_MeshTopology *topology, MR_VertCoords *points, const MR_MeshRelaxParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API MR_Vector3f MR_vertexPosEqualNeiAreas_3 (const MR_Mesh *mesh, MR_VertId v, bool noShrinkage)
 
MRC_API MR_Vector3f MR_vertexPosEqualNeiAreas_4 (const MR_MeshTopology *topology, const MR_VertCoords *points, MR_VertId v, bool noShrinkage)
 
MRC_API const bool * MR_MeshEqualizeTriAreasParams_Get_noShrinkage (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_noShrinkage (MR_MeshEqualizeTriAreasParams *_this, bool value)
 
MRC_API bool * MR_MeshEqualizeTriAreasParams_GetMutable_noShrinkage (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API const bool * MR_MeshEqualizeTriAreasParams_Get_hardSmoothTetrahedrons (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_hardSmoothTetrahedrons (MR_MeshEqualizeTriAreasParams *_this, bool value)
 
MRC_API bool * MR_MeshEqualizeTriAreasParams_GetMutable_hardSmoothTetrahedrons (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API const MR_VertScalars *const * MR_MeshEqualizeTriAreasParams_Get_weights (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_weights (MR_MeshEqualizeTriAreasParams *_this, const MR_VertScalars *value)
 
MRC_API const MR_VertScalars ** MR_MeshEqualizeTriAreasParams_GetMutable_weights (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API const int * MR_MeshEqualizeTriAreasParams_Get_iterations (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_iterations (MR_MeshEqualizeTriAreasParams *_this, int value)
 
MRC_API int * MR_MeshEqualizeTriAreasParams_GetMutable_iterations (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API const MR_VertBitSet *const * MR_MeshEqualizeTriAreasParams_Get_region (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_region (MR_MeshEqualizeTriAreasParams *_this, const MR_VertBitSet *value)
 
MRC_API const MR_VertBitSet ** MR_MeshEqualizeTriAreasParams_GetMutable_region (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API const float * MR_MeshEqualizeTriAreasParams_Get_force (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_force (MR_MeshEqualizeTriAreasParams *_this, float value)
 
MRC_API float * MR_MeshEqualizeTriAreasParams_GetMutable_force (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API const bool * MR_MeshEqualizeTriAreasParams_Get_limitNearInitial (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_limitNearInitial (MR_MeshEqualizeTriAreasParams *_this, bool value)
 
MRC_API bool * MR_MeshEqualizeTriAreasParams_GetMutable_limitNearInitial (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API const float * MR_MeshEqualizeTriAreasParams_Get_maxInitialDist (const MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Set_maxInitialDist (MR_MeshEqualizeTriAreasParams *_this, float value)
 
MRC_API float * MR_MeshEqualizeTriAreasParams_GetMutable_maxInitialDist (MR_MeshEqualizeTriAreasParams *_this)
 
MRC_API MR_MeshEqualizeTriAreasParamsMR_MeshEqualizeTriAreasParams_DefaultConstruct (void)
 
MRC_API MR_MeshEqualizeTriAreasParamsMR_MeshEqualizeTriAreasParams_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_MeshEqualizeTriAreasParamsMR_MeshEqualizeTriAreasParams_OffsetPtr (const MR_MeshEqualizeTriAreasParams *ptr, ptrdiff_t i)
 
MRC_API MR_MeshEqualizeTriAreasParamsMR_MeshEqualizeTriAreasParams_OffsetMutablePtr (MR_MeshEqualizeTriAreasParams *ptr, ptrdiff_t i)
 
MRC_API const MR_RelaxParamsMR_MeshEqualizeTriAreasParams_UpcastTo_MR_RelaxParams (const MR_MeshEqualizeTriAreasParams *object)
 
MRC_API MR_RelaxParamsMR_MeshEqualizeTriAreasParams_MutableUpcastTo_MR_RelaxParams (MR_MeshEqualizeTriAreasParams *object)
 Upcasts an instance of MR::MeshEqualizeTriAreasParams to its base class MR::RelaxParams.
 
MRC_API const MR_MeshRelaxParamsMR_MeshEqualizeTriAreasParams_UpcastTo_MR_MeshRelaxParams (const MR_MeshEqualizeTriAreasParams *object)
 
MRC_API MR_MeshRelaxParamsMR_MeshEqualizeTriAreasParams_MutableUpcastTo_MR_MeshRelaxParams (MR_MeshEqualizeTriAreasParams *object)
 Upcasts an instance of MR::MeshEqualizeTriAreasParams to its base class MR::MeshRelaxParams.
 
MRC_API MR_MeshEqualizeTriAreasParamsMR_MeshEqualizeTriAreasParams_ConstructFromAnother (const MR_MeshEqualizeTriAreasParams *_other)
 
MRC_API void MR_MeshEqualizeTriAreasParams_Destroy (const MR_MeshEqualizeTriAreasParams *_this)
 Destroys a heap-allocated instance of MR_MeshEqualizeTriAreasParams. Does nothing if the pointer is null.
 
MRC_API void MR_MeshEqualizeTriAreasParams_DestroyArray (const MR_MeshEqualizeTriAreasParams *_this)
 Destroys a heap-allocated array of MR_MeshEqualizeTriAreasParams. Does nothing if the pointer is null.
 
MRC_API MR_MeshEqualizeTriAreasParamsMR_MeshEqualizeTriAreasParams_AssignFromAnother (MR_MeshEqualizeTriAreasParams *_this, const MR_MeshEqualizeTriAreasParams *_other)
 
MRC_API bool MR_equalizeTriAreas_3 (MR_Mesh *mesh, const MR_MeshEqualizeTriAreasParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API bool MR_equalizeTriAreas_4 (const MR_MeshTopology *topology, MR_VertCoords *points, const MR_MeshEqualizeTriAreasParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API bool MR_relaxKeepVolume_3_MR_Mesh (MR_Mesh *mesh, const MR_MeshRelaxParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API bool MR_relaxKeepVolume_4 (const MR_MeshTopology *topology, MR_VertCoords *points, const MR_MeshRelaxParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API const float * MR_MeshApproxRelaxParams_Get_surfaceDilateRadius (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_surfaceDilateRadius (MR_MeshApproxRelaxParams *_this, float value)
 
MRC_API float * MR_MeshApproxRelaxParams_GetMutable_surfaceDilateRadius (MR_MeshApproxRelaxParams *_this)
 
MRC_API const MR_RelaxApproxTypeMR_MeshApproxRelaxParams_Get_type (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_type (MR_MeshApproxRelaxParams *_this, MR_RelaxApproxType value)
 
MRC_API MR_RelaxApproxTypeMR_MeshApproxRelaxParams_GetMutable_type (MR_MeshApproxRelaxParams *_this)
 
MRC_API const bool * MR_MeshApproxRelaxParams_Get_hardSmoothTetrahedrons (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_hardSmoothTetrahedrons (MR_MeshApproxRelaxParams *_this, bool value)
 
MRC_API bool * MR_MeshApproxRelaxParams_GetMutable_hardSmoothTetrahedrons (MR_MeshApproxRelaxParams *_this)
 
MRC_API const MR_VertScalars *const * MR_MeshApproxRelaxParams_Get_weights (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_weights (MR_MeshApproxRelaxParams *_this, const MR_VertScalars *value)
 
MRC_API const MR_VertScalars ** MR_MeshApproxRelaxParams_GetMutable_weights (MR_MeshApproxRelaxParams *_this)
 
MRC_API const int * MR_MeshApproxRelaxParams_Get_iterations (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_iterations (MR_MeshApproxRelaxParams *_this, int value)
 
MRC_API int * MR_MeshApproxRelaxParams_GetMutable_iterations (MR_MeshApproxRelaxParams *_this)
 
MRC_API const MR_VertBitSet *const * MR_MeshApproxRelaxParams_Get_region (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_region (MR_MeshApproxRelaxParams *_this, const MR_VertBitSet *value)
 
MRC_API const MR_VertBitSet ** MR_MeshApproxRelaxParams_GetMutable_region (MR_MeshApproxRelaxParams *_this)
 
MRC_API const float * MR_MeshApproxRelaxParams_Get_force (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_force (MR_MeshApproxRelaxParams *_this, float value)
 
MRC_API float * MR_MeshApproxRelaxParams_GetMutable_force (MR_MeshApproxRelaxParams *_this)
 
MRC_API const bool * MR_MeshApproxRelaxParams_Get_limitNearInitial (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_limitNearInitial (MR_MeshApproxRelaxParams *_this, bool value)
 
MRC_API bool * MR_MeshApproxRelaxParams_GetMutable_limitNearInitial (MR_MeshApproxRelaxParams *_this)
 
MRC_API const float * MR_MeshApproxRelaxParams_Get_maxInitialDist (const MR_MeshApproxRelaxParams *_this)
 
MRC_API void MR_MeshApproxRelaxParams_Set_maxInitialDist (MR_MeshApproxRelaxParams *_this, float value)
 
MRC_API float * MR_MeshApproxRelaxParams_GetMutable_maxInitialDist (MR_MeshApproxRelaxParams *_this)
 
MRC_API MR_MeshApproxRelaxParamsMR_MeshApproxRelaxParams_DefaultConstruct (void)
 
MRC_API MR_MeshApproxRelaxParamsMR_MeshApproxRelaxParams_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_MeshApproxRelaxParamsMR_MeshApproxRelaxParams_OffsetPtr (const MR_MeshApproxRelaxParams *ptr, ptrdiff_t i)
 
MRC_API MR_MeshApproxRelaxParamsMR_MeshApproxRelaxParams_OffsetMutablePtr (MR_MeshApproxRelaxParams *ptr, ptrdiff_t i)
 
MRC_API const MR_RelaxParamsMR_MeshApproxRelaxParams_UpcastTo_MR_RelaxParams (const MR_MeshApproxRelaxParams *object)
 
MRC_API MR_RelaxParamsMR_MeshApproxRelaxParams_MutableUpcastTo_MR_RelaxParams (MR_MeshApproxRelaxParams *object)
 Upcasts an instance of MR::MeshApproxRelaxParams to its base class MR::RelaxParams.
 
MRC_API const MR_MeshRelaxParamsMR_MeshApproxRelaxParams_UpcastTo_MR_MeshRelaxParams (const MR_MeshApproxRelaxParams *object)
 
MRC_API MR_MeshRelaxParamsMR_MeshApproxRelaxParams_MutableUpcastTo_MR_MeshRelaxParams (MR_MeshApproxRelaxParams *object)
 Upcasts an instance of MR::MeshApproxRelaxParams to its base class MR::MeshRelaxParams.
 
MRC_API MR_MeshApproxRelaxParamsMR_MeshApproxRelaxParams_ConstructFromAnother (const MR_MeshApproxRelaxParams *_other)
 
MRC_API void MR_MeshApproxRelaxParams_Destroy (const MR_MeshApproxRelaxParams *_this)
 Destroys a heap-allocated instance of MR_MeshApproxRelaxParams. Does nothing if the pointer is null.
 
MRC_API void MR_MeshApproxRelaxParams_DestroyArray (const MR_MeshApproxRelaxParams *_this)
 Destroys a heap-allocated array of MR_MeshApproxRelaxParams. Does nothing if the pointer is null.
 
MRC_API MR_MeshApproxRelaxParamsMR_MeshApproxRelaxParams_AssignFromAnother (MR_MeshApproxRelaxParams *_this, const MR_MeshApproxRelaxParams *_other)
 
MRC_API bool MR_relaxApprox_3_MR_Mesh (MR_Mesh *mesh, const MR_MeshApproxRelaxParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API bool MR_relaxApprox_4 (const MR_MeshTopology *topology, MR_VertCoords *points, const MR_MeshApproxRelaxParams *params, const MR_std_function_bool_from_float *cb)
 
MRC_API void MR_removeSpikes_4 (MR_Mesh *mesh, int maxIterations, float minSumAngle, const MR_VertBitSet *region)
 
MRC_API void MR_removeSpikes_5 (const MR_MeshTopology *topology, MR_VertCoords *points, int maxIterations, float minSumAngle, const MR_VertBitSet *region)
 
MRC_API void MR_smoothRegionBoundary (MR_Mesh *mesh, const MR_FaceBitSet *regionFaces, const int *numIters)
 
MRC_API void MR_hardSmoothTetrahedrons_2 (MR_Mesh *mesh, const MR_VertBitSet *region)
 
MRC_API void MR_hardSmoothTetrahedrons_3 (const MR_MeshTopology *topology, MR_VertCoords *points, const MR_VertBitSet *region)
 

Typedef Documentation

◆ MR_FaceBitSet

typedef struct MR_FaceBitSet MR_FaceBitSet

◆ MR_Mesh

typedef struct MR_Mesh MR_Mesh

◆ MR_MeshApproxRelaxParams

Generated from class MR::MeshApproxRelaxParams. Base classes: Direct: (non-virtual) MR::MeshRelaxParams Indirect: (non-virtual) MR::RelaxParams Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_MeshEqualizeTriAreasParams

Generated from class MR::MeshEqualizeTriAreasParams. Base classes: Direct: (non-virtual) MR::MeshRelaxParams Indirect: (non-virtual) MR::RelaxParams Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_MeshRelaxParams

Generated from class MR::MeshRelaxParams. Base classes: Direct: (non-virtual) MR::RelaxParams Derived classes: Direct: (non-virtual) MR::MeshApproxRelaxParams MR::MeshEqualizeTriAreasParams Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_MeshTopology

◆ MR_RelaxParams

◆ MR_std_function_bool_from_float

◆ MR_VertBitSet

typedef struct MR_VertBitSet MR_VertBitSet

◆ MR_VertCoords

typedef struct MR_VertCoords MR_VertCoords

◆ MR_VertScalars

Function Documentation

◆ MR_equalizeTriAreas_3()

MRC_API bool MR_equalizeTriAreas_3 ( MR_Mesh * mesh,
const MR_MeshEqualizeTriAreasParams * params,
const MR_std_function_bool_from_float * cb )

applies given number of iterations with movement toward vertexPosEqualNeiAreas() to the whole mesh ( or some region if it is specified )

Returns
true if the operation completed successfully, and false if it was interrupted by the progress callback. Generated from function MR::equalizeTriAreas. Parameter mesh can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_equalizeTriAreas_4()

MRC_API bool MR_equalizeTriAreas_4 ( const MR_MeshTopology * topology,
MR_VertCoords * points,
const MR_MeshEqualizeTriAreasParams * params,
const MR_std_function_bool_from_float * cb )

Generated from function MR::equalizeTriAreas. Parameter topology can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_hardSmoothTetrahedrons_2()

MRC_API void MR_hardSmoothTetrahedrons_2 ( MR_Mesh * mesh,
const MR_VertBitSet * region )

move all region vertices with exactly three neighbor vertices in the center of the neighbors Generated from function MR::hardSmoothTetrahedrons. Parameter mesh can not be null. It is a single object. Parameter region defaults to a null pointer in C++.

◆ MR_hardSmoothTetrahedrons_3()

MRC_API void MR_hardSmoothTetrahedrons_3 ( const MR_MeshTopology * topology,
MR_VertCoords * points,
const MR_VertBitSet * region )

Generated from function MR::hardSmoothTetrahedrons. Parameter topology can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter region defaults to a null pointer in C++.

◆ MR_MeshApproxRelaxParams_AssignFromAnother()

MRC_API MR_MeshApproxRelaxParams * MR_MeshApproxRelaxParams_AssignFromAnother ( MR_MeshApproxRelaxParams * _this,
const MR_MeshApproxRelaxParams * _other )

Generated from method MR::MeshApproxRelaxParams::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_MeshApproxRelaxParams_ConstructFromAnother()

MRC_API MR_MeshApproxRelaxParams * MR_MeshApproxRelaxParams_ConstructFromAnother ( const MR_MeshApproxRelaxParams * _other)

Generated from constructor MR::MeshApproxRelaxParams::MeshApproxRelaxParams. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshApproxRelaxParams_Destroy() to free it when you're done using it.

◆ MR_MeshApproxRelaxParams_DefaultConstruct()

MRC_API MR_MeshApproxRelaxParams * MR_MeshApproxRelaxParams_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshApproxRelaxParams_Destroy() to free it when you're done using it.

◆ MR_MeshApproxRelaxParams_DefaultConstructArray()

MRC_API MR_MeshApproxRelaxParams * MR_MeshApproxRelaxParams_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_MeshApproxRelaxParams_DestroyArray(). Use MR_MeshApproxRelaxParams_OffsetMutablePtr() and MR_MeshApproxRelaxParams_OffsetPtr() to access the array elements.

◆ MR_MeshApproxRelaxParams_Destroy()

MRC_API void MR_MeshApproxRelaxParams_Destroy ( const MR_MeshApproxRelaxParams * _this)

Destroys a heap-allocated instance of MR_MeshApproxRelaxParams. Does nothing if the pointer is null.

◆ MR_MeshApproxRelaxParams_DestroyArray()

MRC_API void MR_MeshApproxRelaxParams_DestroyArray ( const MR_MeshApproxRelaxParams * _this)

Destroys a heap-allocated array of MR_MeshApproxRelaxParams. Does nothing if the pointer is null.

◆ MR_MeshApproxRelaxParams_Get_force()

MRC_API const float * MR_MeshApproxRelaxParams_Get_force ( const MR_MeshApproxRelaxParams * _this)

speed of relaxing, typical values (0.0, 0.5] Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named force. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_hardSmoothTetrahedrons()

MRC_API const bool * MR_MeshApproxRelaxParams_Get_hardSmoothTetrahedrons ( const MR_MeshApproxRelaxParams * _this)

move all region vertices with exactly three neighbor vertices in the center of the neighbors Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_iterations()

MRC_API const int * MR_MeshApproxRelaxParams_Get_iterations ( const MR_MeshApproxRelaxParams * _this)

number of iterations Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named iterations. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_limitNearInitial()

MRC_API const bool * MR_MeshApproxRelaxParams_Get_limitNearInitial ( const MR_MeshApproxRelaxParams * _this)

if true then maximal displacement of each point during denoising will be limited Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named limitNearInitial. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_maxInitialDist()

MRC_API const float * MR_MeshApproxRelaxParams_Get_maxInitialDist ( const MR_MeshApproxRelaxParams * _this)

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named maxInitialDist. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_region()

MRC_API const MR_VertBitSet *const * MR_MeshApproxRelaxParams_Get_region ( const MR_MeshApproxRelaxParams * _this)

region to relax Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named region. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_surfaceDilateRadius()

MRC_API const float * MR_MeshApproxRelaxParams_Get_surfaceDilateRadius ( const MR_MeshApproxRelaxParams * _this)

radius to find neighbors by surface 0.0f - default = 1e-3 * sqrt(surface area) Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named surfaceDilateRadius. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_type()

MRC_API const MR_RelaxApproxType * MR_MeshApproxRelaxParams_Get_type ( const MR_MeshApproxRelaxParams * _this)

Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named type. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_Get_weights()

MRC_API const MR_VertScalars *const * MR_MeshApproxRelaxParams_Get_weights ( const MR_MeshApproxRelaxParams * _this)

weight for each vertex. By default, all the vertices have equal weights. Returns a pointer to a member variable of class MR::MeshApproxRelaxParams named weights. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_force()

MRC_API float * MR_MeshApproxRelaxParams_GetMutable_force ( MR_MeshApproxRelaxParams * _this)

speed of relaxing, typical values (0.0, 0.5] Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named force. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_hardSmoothTetrahedrons()

MRC_API bool * MR_MeshApproxRelaxParams_GetMutable_hardSmoothTetrahedrons ( MR_MeshApproxRelaxParams * _this)

move all region vertices with exactly three neighbor vertices in the center of the neighbors Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_iterations()

MRC_API int * MR_MeshApproxRelaxParams_GetMutable_iterations ( MR_MeshApproxRelaxParams * _this)

number of iterations Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named iterations. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_limitNearInitial()

MRC_API bool * MR_MeshApproxRelaxParams_GetMutable_limitNearInitial ( MR_MeshApproxRelaxParams * _this)

if true then maximal displacement of each point during denoising will be limited Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named limitNearInitial. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_maxInitialDist()

MRC_API float * MR_MeshApproxRelaxParams_GetMutable_maxInitialDist ( MR_MeshApproxRelaxParams * _this)

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named maxInitialDist. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_region()

MRC_API const MR_VertBitSet ** MR_MeshApproxRelaxParams_GetMutable_region ( MR_MeshApproxRelaxParams * _this)

region to relax Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named region. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_surfaceDilateRadius()

MRC_API float * MR_MeshApproxRelaxParams_GetMutable_surfaceDilateRadius ( MR_MeshApproxRelaxParams * _this)

radius to find neighbors by surface 0.0f - default = 1e-3 * sqrt(surface area) Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named surfaceDilateRadius. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_type()

MRC_API MR_RelaxApproxType * MR_MeshApproxRelaxParams_GetMutable_type ( MR_MeshApproxRelaxParams * _this)

Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named type. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_GetMutable_weights()

MRC_API const MR_VertScalars ** MR_MeshApproxRelaxParams_GetMutable_weights ( MR_MeshApproxRelaxParams * _this)

weight for each vertex. By default, all the vertices have equal weights. Returns a mutable pointer to a member variable of class MR::MeshApproxRelaxParams named weights. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshApproxRelaxParams_MutableUpcastTo_MR_MeshRelaxParams()

MRC_API MR_MeshRelaxParams * MR_MeshApproxRelaxParams_MutableUpcastTo_MR_MeshRelaxParams ( MR_MeshApproxRelaxParams * object)

Upcasts an instance of MR::MeshApproxRelaxParams to its base class MR::MeshRelaxParams.

◆ MR_MeshApproxRelaxParams_MutableUpcastTo_MR_RelaxParams()

MRC_API MR_RelaxParams * MR_MeshApproxRelaxParams_MutableUpcastTo_MR_RelaxParams ( MR_MeshApproxRelaxParams * object)

Upcasts an instance of MR::MeshApproxRelaxParams to its base class MR::RelaxParams.

◆ MR_MeshApproxRelaxParams_OffsetMutablePtr()

MRC_API MR_MeshApproxRelaxParams * MR_MeshApproxRelaxParams_OffsetMutablePtr ( MR_MeshApproxRelaxParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_MeshApproxRelaxParams_OffsetPtr()

MRC_API const MR_MeshApproxRelaxParams * MR_MeshApproxRelaxParams_OffsetPtr ( const MR_MeshApproxRelaxParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_MeshApproxRelaxParams_Set_force()

MRC_API void MR_MeshApproxRelaxParams_Set_force ( MR_MeshApproxRelaxParams * _this,
float value )

speed of relaxing, typical values (0.0, 0.5] Modifies a member variable of class MR::MeshApproxRelaxParams named force. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in force.

◆ MR_MeshApproxRelaxParams_Set_hardSmoothTetrahedrons()

MRC_API void MR_MeshApproxRelaxParams_Set_hardSmoothTetrahedrons ( MR_MeshApproxRelaxParams * _this,
bool value )

move all region vertices with exactly three neighbor vertices in the center of the neighbors Modifies a member variable of class MR::MeshApproxRelaxParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in hardSmoothTetrahedrons.

◆ MR_MeshApproxRelaxParams_Set_iterations()

MRC_API void MR_MeshApproxRelaxParams_Set_iterations ( MR_MeshApproxRelaxParams * _this,
int value )

number of iterations Modifies a member variable of class MR::MeshApproxRelaxParams named iterations. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in iterations.

◆ MR_MeshApproxRelaxParams_Set_limitNearInitial()

MRC_API void MR_MeshApproxRelaxParams_Set_limitNearInitial ( MR_MeshApproxRelaxParams * _this,
bool value )

if true then maximal displacement of each point during denoising will be limited Modifies a member variable of class MR::MeshApproxRelaxParams named limitNearInitial. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in limitNearInitial.

◆ MR_MeshApproxRelaxParams_Set_maxInitialDist()

MRC_API void MR_MeshApproxRelaxParams_Set_maxInitialDist ( MR_MeshApproxRelaxParams * _this,
float value )

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Modifies a member variable of class MR::MeshApproxRelaxParams named maxInitialDist. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in maxInitialDist.

◆ MR_MeshApproxRelaxParams_Set_region()

MRC_API void MR_MeshApproxRelaxParams_Set_region ( MR_MeshApproxRelaxParams * _this,
const MR_VertBitSet * value )

region to relax Modifies a member variable of class MR::MeshApproxRelaxParams named region. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element region. When this function is called, this object will drop object references it had previously in region.

◆ MR_MeshApproxRelaxParams_Set_surfaceDilateRadius()

MRC_API void MR_MeshApproxRelaxParams_Set_surfaceDilateRadius ( MR_MeshApproxRelaxParams * _this,
float value )

radius to find neighbors by surface 0.0f - default = 1e-3 * sqrt(surface area) Modifies a member variable of class MR::MeshApproxRelaxParams named surfaceDilateRadius. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in surfaceDilateRadius.

◆ MR_MeshApproxRelaxParams_Set_type()

MRC_API void MR_MeshApproxRelaxParams_Set_type ( MR_MeshApproxRelaxParams * _this,
MR_RelaxApproxType value )

Modifies a member variable of class MR::MeshApproxRelaxParams named type. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element type. When this function is called, this object will drop object references it had previously in type.

◆ MR_MeshApproxRelaxParams_Set_weights()

MRC_API void MR_MeshApproxRelaxParams_Set_weights ( MR_MeshApproxRelaxParams * _this,
const MR_VertScalars * value )

weight for each vertex. By default, all the vertices have equal weights. Modifies a member variable of class MR::MeshApproxRelaxParams named weights. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element weights. When this function is called, this object will drop object references it had previously in weights.

◆ MR_MeshApproxRelaxParams_UpcastTo_MR_MeshRelaxParams()

MRC_API const MR_MeshRelaxParams * MR_MeshApproxRelaxParams_UpcastTo_MR_MeshRelaxParams ( const MR_MeshApproxRelaxParams * object)

Upcasts an instance of MR::MeshApproxRelaxParams to its base class MR::MeshRelaxParams. This version is acting on mutable pointers.

◆ MR_MeshApproxRelaxParams_UpcastTo_MR_RelaxParams()

MRC_API const MR_RelaxParams * MR_MeshApproxRelaxParams_UpcastTo_MR_RelaxParams ( const MR_MeshApproxRelaxParams * object)

Upcasts an instance of MR::MeshApproxRelaxParams to its base class MR::RelaxParams. This version is acting on mutable pointers.

◆ MR_MeshEqualizeTriAreasParams_AssignFromAnother()

MRC_API MR_MeshEqualizeTriAreasParams * MR_MeshEqualizeTriAreasParams_AssignFromAnother ( MR_MeshEqualizeTriAreasParams * _this,
const MR_MeshEqualizeTriAreasParams * _other )

Generated from method MR::MeshEqualizeTriAreasParams::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_MeshEqualizeTriAreasParams_ConstructFromAnother()

MRC_API MR_MeshEqualizeTriAreasParams * MR_MeshEqualizeTriAreasParams_ConstructFromAnother ( const MR_MeshEqualizeTriAreasParams * _other)

Generated from constructor MR::MeshEqualizeTriAreasParams::MeshEqualizeTriAreasParams. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshEqualizeTriAreasParams_Destroy() to free it when you're done using it.

◆ MR_MeshEqualizeTriAreasParams_DefaultConstruct()

MRC_API MR_MeshEqualizeTriAreasParams * MR_MeshEqualizeTriAreasParams_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshEqualizeTriAreasParams_Destroy() to free it when you're done using it.

◆ MR_MeshEqualizeTriAreasParams_DefaultConstructArray()

MRC_API MR_MeshEqualizeTriAreasParams * MR_MeshEqualizeTriAreasParams_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_MeshEqualizeTriAreasParams_DestroyArray(). Use MR_MeshEqualizeTriAreasParams_OffsetMutablePtr() and MR_MeshEqualizeTriAreasParams_OffsetPtr() to access the array elements.

◆ MR_MeshEqualizeTriAreasParams_Destroy()

MRC_API void MR_MeshEqualizeTriAreasParams_Destroy ( const MR_MeshEqualizeTriAreasParams * _this)

Destroys a heap-allocated instance of MR_MeshEqualizeTriAreasParams. Does nothing if the pointer is null.

◆ MR_MeshEqualizeTriAreasParams_DestroyArray()

MRC_API void MR_MeshEqualizeTriAreasParams_DestroyArray ( const MR_MeshEqualizeTriAreasParams * _this)

Destroys a heap-allocated array of MR_MeshEqualizeTriAreasParams. Does nothing if the pointer is null.

◆ MR_MeshEqualizeTriAreasParams_Get_force()

MRC_API const float * MR_MeshEqualizeTriAreasParams_Get_force ( const MR_MeshEqualizeTriAreasParams * _this)

speed of relaxing, typical values (0.0, 0.5] Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named force. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_Get_hardSmoothTetrahedrons()

MRC_API const bool * MR_MeshEqualizeTriAreasParams_Get_hardSmoothTetrahedrons ( const MR_MeshEqualizeTriAreasParams * _this)

move all region vertices with exactly three neighbor vertices in the center of the neighbors Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_Get_iterations()

MRC_API const int * MR_MeshEqualizeTriAreasParams_Get_iterations ( const MR_MeshEqualizeTriAreasParams * _this)

number of iterations Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named iterations. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_Get_limitNearInitial()

MRC_API const bool * MR_MeshEqualizeTriAreasParams_Get_limitNearInitial ( const MR_MeshEqualizeTriAreasParams * _this)

if true then maximal displacement of each point during denoising will be limited Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named limitNearInitial. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_Get_maxInitialDist()

MRC_API const float * MR_MeshEqualizeTriAreasParams_Get_maxInitialDist ( const MR_MeshEqualizeTriAreasParams * _this)

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named maxInitialDist. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_Get_noShrinkage()

MRC_API const bool * MR_MeshEqualizeTriAreasParams_Get_noShrinkage ( const MR_MeshEqualizeTriAreasParams * _this)

if true prevents the surface from shrinkage after many iterations; technically it is done by solving the same task in the plane orthogonal to normal direction Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named noShrinkage. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_Get_region()

MRC_API const MR_VertBitSet *const * MR_MeshEqualizeTriAreasParams_Get_region ( const MR_MeshEqualizeTriAreasParams * _this)

region to relax Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named region. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_Get_weights()

MRC_API const MR_VertScalars *const * MR_MeshEqualizeTriAreasParams_Get_weights ( const MR_MeshEqualizeTriAreasParams * _this)

weight for each vertex. By default, all the vertices have equal weights. Returns a pointer to a member variable of class MR::MeshEqualizeTriAreasParams named weights. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_force()

MRC_API float * MR_MeshEqualizeTriAreasParams_GetMutable_force ( MR_MeshEqualizeTriAreasParams * _this)

speed of relaxing, typical values (0.0, 0.5] Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named force. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_hardSmoothTetrahedrons()

MRC_API bool * MR_MeshEqualizeTriAreasParams_GetMutable_hardSmoothTetrahedrons ( MR_MeshEqualizeTriAreasParams * _this)

move all region vertices with exactly three neighbor vertices in the center of the neighbors Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_iterations()

MRC_API int * MR_MeshEqualizeTriAreasParams_GetMutable_iterations ( MR_MeshEqualizeTriAreasParams * _this)

number of iterations Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named iterations. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_limitNearInitial()

MRC_API bool * MR_MeshEqualizeTriAreasParams_GetMutable_limitNearInitial ( MR_MeshEqualizeTriAreasParams * _this)

if true then maximal displacement of each point during denoising will be limited Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named limitNearInitial. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_maxInitialDist()

MRC_API float * MR_MeshEqualizeTriAreasParams_GetMutable_maxInitialDist ( MR_MeshEqualizeTriAreasParams * _this)

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named maxInitialDist. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_noShrinkage()

MRC_API bool * MR_MeshEqualizeTriAreasParams_GetMutable_noShrinkage ( MR_MeshEqualizeTriAreasParams * _this)

if true prevents the surface from shrinkage after many iterations; technically it is done by solving the same task in the plane orthogonal to normal direction Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named noShrinkage. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_region()

MRC_API const MR_VertBitSet ** MR_MeshEqualizeTriAreasParams_GetMutable_region ( MR_MeshEqualizeTriAreasParams * _this)

region to relax Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named region. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_GetMutable_weights()

MRC_API const MR_VertScalars ** MR_MeshEqualizeTriAreasParams_GetMutable_weights ( MR_MeshEqualizeTriAreasParams * _this)

weight for each vertex. By default, all the vertices have equal weights. Returns a mutable pointer to a member variable of class MR::MeshEqualizeTriAreasParams named weights. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshEqualizeTriAreasParams_MutableUpcastTo_MR_MeshRelaxParams()

MRC_API MR_MeshRelaxParams * MR_MeshEqualizeTriAreasParams_MutableUpcastTo_MR_MeshRelaxParams ( MR_MeshEqualizeTriAreasParams * object)

Upcasts an instance of MR::MeshEqualizeTriAreasParams to its base class MR::MeshRelaxParams.

◆ MR_MeshEqualizeTriAreasParams_MutableUpcastTo_MR_RelaxParams()

MRC_API MR_RelaxParams * MR_MeshEqualizeTriAreasParams_MutableUpcastTo_MR_RelaxParams ( MR_MeshEqualizeTriAreasParams * object)

Upcasts an instance of MR::MeshEqualizeTriAreasParams to its base class MR::RelaxParams.

◆ MR_MeshEqualizeTriAreasParams_OffsetMutablePtr()

MRC_API MR_MeshEqualizeTriAreasParams * MR_MeshEqualizeTriAreasParams_OffsetMutablePtr ( MR_MeshEqualizeTriAreasParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_MeshEqualizeTriAreasParams_OffsetPtr()

MRC_API const MR_MeshEqualizeTriAreasParams * MR_MeshEqualizeTriAreasParams_OffsetPtr ( const MR_MeshEqualizeTriAreasParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_MeshEqualizeTriAreasParams_Set_force()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_force ( MR_MeshEqualizeTriAreasParams * _this,
float value )

speed of relaxing, typical values (0.0, 0.5] Modifies a member variable of class MR::MeshEqualizeTriAreasParams named force. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in force.

◆ MR_MeshEqualizeTriAreasParams_Set_hardSmoothTetrahedrons()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_hardSmoothTetrahedrons ( MR_MeshEqualizeTriAreasParams * _this,
bool value )

move all region vertices with exactly three neighbor vertices in the center of the neighbors Modifies a member variable of class MR::MeshEqualizeTriAreasParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in hardSmoothTetrahedrons.

◆ MR_MeshEqualizeTriAreasParams_Set_iterations()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_iterations ( MR_MeshEqualizeTriAreasParams * _this,
int value )

number of iterations Modifies a member variable of class MR::MeshEqualizeTriAreasParams named iterations. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in iterations.

◆ MR_MeshEqualizeTriAreasParams_Set_limitNearInitial()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_limitNearInitial ( MR_MeshEqualizeTriAreasParams * _this,
bool value )

if true then maximal displacement of each point during denoising will be limited Modifies a member variable of class MR::MeshEqualizeTriAreasParams named limitNearInitial. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in limitNearInitial.

◆ MR_MeshEqualizeTriAreasParams_Set_maxInitialDist()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_maxInitialDist ( MR_MeshEqualizeTriAreasParams * _this,
float value )

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Modifies a member variable of class MR::MeshEqualizeTriAreasParams named maxInitialDist. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in maxInitialDist.

◆ MR_MeshEqualizeTriAreasParams_Set_noShrinkage()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_noShrinkage ( MR_MeshEqualizeTriAreasParams * _this,
bool value )

if true prevents the surface from shrinkage after many iterations; technically it is done by solving the same task in the plane orthogonal to normal direction Modifies a member variable of class MR::MeshEqualizeTriAreasParams named noShrinkage. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in noShrinkage.

◆ MR_MeshEqualizeTriAreasParams_Set_region()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_region ( MR_MeshEqualizeTriAreasParams * _this,
const MR_VertBitSet * value )

region to relax Modifies a member variable of class MR::MeshEqualizeTriAreasParams named region. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element region. When this function is called, this object will drop object references it had previously in region.

◆ MR_MeshEqualizeTriAreasParams_Set_weights()

MRC_API void MR_MeshEqualizeTriAreasParams_Set_weights ( MR_MeshEqualizeTriAreasParams * _this,
const MR_VertScalars * value )

weight for each vertex. By default, all the vertices have equal weights. Modifies a member variable of class MR::MeshEqualizeTriAreasParams named weights. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element weights. When this function is called, this object will drop object references it had previously in weights.

◆ MR_MeshEqualizeTriAreasParams_UpcastTo_MR_MeshRelaxParams()

MRC_API const MR_MeshRelaxParams * MR_MeshEqualizeTriAreasParams_UpcastTo_MR_MeshRelaxParams ( const MR_MeshEqualizeTriAreasParams * object)

Upcasts an instance of MR::MeshEqualizeTriAreasParams to its base class MR::MeshRelaxParams. This version is acting on mutable pointers.

◆ MR_MeshEqualizeTriAreasParams_UpcastTo_MR_RelaxParams()

MRC_API const MR_RelaxParams * MR_MeshEqualizeTriAreasParams_UpcastTo_MR_RelaxParams ( const MR_MeshEqualizeTriAreasParams * object)

Upcasts an instance of MR::MeshEqualizeTriAreasParams to its base class MR::RelaxParams. This version is acting on mutable pointers.

◆ MR_MeshRelaxParams_AssignFromAnother()

MRC_API MR_MeshRelaxParams * MR_MeshRelaxParams_AssignFromAnother ( MR_MeshRelaxParams * _this,
const MR_MeshRelaxParams * _other )

Generated from method MR::MeshRelaxParams::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_MeshRelaxParams_ConstructFromAnother()

MRC_API MR_MeshRelaxParams * MR_MeshRelaxParams_ConstructFromAnother ( const MR_MeshRelaxParams * _other)

Generated from constructor MR::MeshRelaxParams::MeshRelaxParams. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshRelaxParams_Destroy() to free it when you're done using it.

◆ MR_MeshRelaxParams_DefaultConstruct()

MRC_API MR_MeshRelaxParams * MR_MeshRelaxParams_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshRelaxParams_Destroy() to free it when you're done using it.

◆ MR_MeshRelaxParams_DefaultConstructArray()

MRC_API MR_MeshRelaxParams * MR_MeshRelaxParams_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_MeshRelaxParams_DestroyArray(). Use MR_MeshRelaxParams_OffsetMutablePtr() and MR_MeshRelaxParams_OffsetPtr() to access the array elements.

◆ MR_MeshRelaxParams_Destroy()

MRC_API void MR_MeshRelaxParams_Destroy ( const MR_MeshRelaxParams * _this)

Destroys a heap-allocated instance of MR_MeshRelaxParams. Does nothing if the pointer is null.

◆ MR_MeshRelaxParams_DestroyArray()

MRC_API void MR_MeshRelaxParams_DestroyArray ( const MR_MeshRelaxParams * _this)

Destroys a heap-allocated array of MR_MeshRelaxParams. Does nothing if the pointer is null.

◆ MR_MeshRelaxParams_Get_force()

MRC_API const float * MR_MeshRelaxParams_Get_force ( const MR_MeshRelaxParams * _this)

speed of relaxing, typical values (0.0, 0.5] Returns a pointer to a member variable of class MR::MeshRelaxParams named force. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_Get_hardSmoothTetrahedrons()

MRC_API const bool * MR_MeshRelaxParams_Get_hardSmoothTetrahedrons ( const MR_MeshRelaxParams * _this)

move all region vertices with exactly three neighbor vertices in the center of the neighbors Returns a pointer to a member variable of class MR::MeshRelaxParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_Get_iterations()

MRC_API const int * MR_MeshRelaxParams_Get_iterations ( const MR_MeshRelaxParams * _this)

number of iterations Returns a pointer to a member variable of class MR::MeshRelaxParams named iterations. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_Get_limitNearInitial()

MRC_API const bool * MR_MeshRelaxParams_Get_limitNearInitial ( const MR_MeshRelaxParams * _this)

if true then maximal displacement of each point during denoising will be limited Returns a pointer to a member variable of class MR::MeshRelaxParams named limitNearInitial. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_Get_maxInitialDist()

MRC_API const float * MR_MeshRelaxParams_Get_maxInitialDist ( const MR_MeshRelaxParams * _this)

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Returns a pointer to a member variable of class MR::MeshRelaxParams named maxInitialDist. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_Get_region()

MRC_API const MR_VertBitSet *const * MR_MeshRelaxParams_Get_region ( const MR_MeshRelaxParams * _this)

region to relax Returns a pointer to a member variable of class MR::MeshRelaxParams named region. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_Get_weights()

MRC_API const MR_VertScalars *const * MR_MeshRelaxParams_Get_weights ( const MR_MeshRelaxParams * _this)

weight for each vertex. By default, all the vertices have equal weights. Returns a pointer to a member variable of class MR::MeshRelaxParams named weights. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_GetMutable_force()

MRC_API float * MR_MeshRelaxParams_GetMutable_force ( MR_MeshRelaxParams * _this)

speed of relaxing, typical values (0.0, 0.5] Returns a mutable pointer to a member variable of class MR::MeshRelaxParams named force. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_GetMutable_hardSmoothTetrahedrons()

MRC_API bool * MR_MeshRelaxParams_GetMutable_hardSmoothTetrahedrons ( MR_MeshRelaxParams * _this)

move all region vertices with exactly three neighbor vertices in the center of the neighbors Returns a mutable pointer to a member variable of class MR::MeshRelaxParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_GetMutable_iterations()

MRC_API int * MR_MeshRelaxParams_GetMutable_iterations ( MR_MeshRelaxParams * _this)

number of iterations Returns a mutable pointer to a member variable of class MR::MeshRelaxParams named iterations. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_GetMutable_limitNearInitial()

MRC_API bool * MR_MeshRelaxParams_GetMutable_limitNearInitial ( MR_MeshRelaxParams * _this)

if true then maximal displacement of each point during denoising will be limited Returns a mutable pointer to a member variable of class MR::MeshRelaxParams named limitNearInitial. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_GetMutable_maxInitialDist()

MRC_API float * MR_MeshRelaxParams_GetMutable_maxInitialDist ( MR_MeshRelaxParams * _this)

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Returns a mutable pointer to a member variable of class MR::MeshRelaxParams named maxInitialDist. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_GetMutable_region()

MRC_API const MR_VertBitSet ** MR_MeshRelaxParams_GetMutable_region ( MR_MeshRelaxParams * _this)

region to relax Returns a mutable pointer to a member variable of class MR::MeshRelaxParams named region. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_GetMutable_weights()

MRC_API const MR_VertScalars ** MR_MeshRelaxParams_GetMutable_weights ( MR_MeshRelaxParams * _this)

weight for each vertex. By default, all the vertices have equal weights. Returns a mutable pointer to a member variable of class MR::MeshRelaxParams named weights. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_MeshRelaxParams_MutableStaticDowncastTo_MR_MeshApproxRelaxParams()

MRC_API MR_MeshApproxRelaxParams * MR_MeshRelaxParams_MutableStaticDowncastTo_MR_MeshApproxRelaxParams ( MR_MeshRelaxParams * object)

Downcasts an instance of MR::MeshRelaxParams to a derived class MR::MeshApproxRelaxParams. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise.

◆ MR_MeshRelaxParams_MutableStaticDowncastTo_MR_MeshEqualizeTriAreasParams()

MRC_API MR_MeshEqualizeTriAreasParams * MR_MeshRelaxParams_MutableStaticDowncastTo_MR_MeshEqualizeTriAreasParams ( MR_MeshRelaxParams * object)

Downcasts an instance of MR::MeshRelaxParams to a derived class MR::MeshEqualizeTriAreasParams. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise.

◆ MR_MeshRelaxParams_MutableUpcastTo_MR_RelaxParams()

MRC_API MR_RelaxParams * MR_MeshRelaxParams_MutableUpcastTo_MR_RelaxParams ( MR_MeshRelaxParams * object)

Upcasts an instance of MR::MeshRelaxParams to its base class MR::RelaxParams.

◆ MR_MeshRelaxParams_OffsetMutablePtr()

MRC_API MR_MeshRelaxParams * MR_MeshRelaxParams_OffsetMutablePtr ( MR_MeshRelaxParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_MeshRelaxParams_OffsetPtr()

MRC_API const MR_MeshRelaxParams * MR_MeshRelaxParams_OffsetPtr ( const MR_MeshRelaxParams * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_MeshRelaxParams_Set_force()

MRC_API void MR_MeshRelaxParams_Set_force ( MR_MeshRelaxParams * _this,
float value )

speed of relaxing, typical values (0.0, 0.5] Modifies a member variable of class MR::MeshRelaxParams named force. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in force.

◆ MR_MeshRelaxParams_Set_hardSmoothTetrahedrons()

MRC_API void MR_MeshRelaxParams_Set_hardSmoothTetrahedrons ( MR_MeshRelaxParams * _this,
bool value )

move all region vertices with exactly three neighbor vertices in the center of the neighbors Modifies a member variable of class MR::MeshRelaxParams named hardSmoothTetrahedrons. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in hardSmoothTetrahedrons.

◆ MR_MeshRelaxParams_Set_iterations()

MRC_API void MR_MeshRelaxParams_Set_iterations ( MR_MeshRelaxParams * _this,
int value )

number of iterations Modifies a member variable of class MR::MeshRelaxParams named iterations. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in iterations.

◆ MR_MeshRelaxParams_Set_limitNearInitial()

MRC_API void MR_MeshRelaxParams_Set_limitNearInitial ( MR_MeshRelaxParams * _this,
bool value )

if true then maximal displacement of each point during denoising will be limited Modifies a member variable of class MR::MeshRelaxParams named limitNearInitial. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in limitNearInitial.

◆ MR_MeshRelaxParams_Set_maxInitialDist()

MRC_API void MR_MeshRelaxParams_Set_maxInitialDist ( MR_MeshRelaxParams * _this,
float value )

maximum distance between a point and its position before relaxation, ignored if limitNearInitial = false Modifies a member variable of class MR::MeshRelaxParams named maxInitialDist. Parameter _this can not be null. It is a single object. When this function is called, this object will drop object references it had previously in maxInitialDist.

◆ MR_MeshRelaxParams_Set_region()

MRC_API void MR_MeshRelaxParams_Set_region ( MR_MeshRelaxParams * _this,
const MR_VertBitSet * value )

region to relax Modifies a member variable of class MR::MeshRelaxParams named region. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element region. When this function is called, this object will drop object references it had previously in region.

◆ MR_MeshRelaxParams_Set_weights()

MRC_API void MR_MeshRelaxParams_Set_weights ( MR_MeshRelaxParams * _this,
const MR_VertScalars * value )

weight for each vertex. By default, all the vertices have equal weights. Modifies a member variable of class MR::MeshRelaxParams named weights. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element weights. When this function is called, this object will drop object references it had previously in weights.

◆ MR_MeshRelaxParams_StaticDowncastTo_MR_MeshApproxRelaxParams()

MRC_API const MR_MeshApproxRelaxParams * MR_MeshRelaxParams_StaticDowncastTo_MR_MeshApproxRelaxParams ( const MR_MeshRelaxParams * object)

Downcasts an instance of MR::MeshRelaxParams to a derived class MR::MeshApproxRelaxParams. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise. This version is acting on mutable pointers.

◆ MR_MeshRelaxParams_StaticDowncastTo_MR_MeshEqualizeTriAreasParams()

MRC_API const MR_MeshEqualizeTriAreasParams * MR_MeshRelaxParams_StaticDowncastTo_MR_MeshEqualizeTriAreasParams ( const MR_MeshRelaxParams * object)

Downcasts an instance of MR::MeshRelaxParams to a derived class MR::MeshEqualizeTriAreasParams. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise. This version is acting on mutable pointers.

◆ MR_MeshRelaxParams_UpcastTo_MR_RelaxParams()

MRC_API const MR_RelaxParams * MR_MeshRelaxParams_UpcastTo_MR_RelaxParams ( const MR_MeshRelaxParams * object)

Upcasts an instance of MR::MeshRelaxParams to its base class MR::RelaxParams. This version is acting on mutable pointers.

◆ MR_relax_3_MR_Mesh()

MRC_API bool MR_relax_3_MR_Mesh ( MR_Mesh * mesh,
const MR_MeshRelaxParams * params,
const MR_std_function_bool_from_float * cb )

applies given number of relaxation iterations to the whole mesh ( or some region if it is specified )

Returns
true if was finished successfully, false if was interrupted by progress callback Generated from function MR::relax. Parameter mesh can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_relax_4()

MRC_API bool MR_relax_4 ( const MR_MeshTopology * topology,
MR_VertCoords * points,
const MR_MeshRelaxParams * params,
const MR_std_function_bool_from_float * cb )

Generated from function MR::relax. Parameter topology can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_relaxApprox_3_MR_Mesh()

MRC_API bool MR_relaxApprox_3_MR_Mesh ( MR_Mesh * mesh,
const MR_MeshApproxRelaxParams * params,
const MR_std_function_bool_from_float * cb )

applies given number of relaxation iterations to the whole mesh ( or some region if it is specified ) approx neighborhoods

Returns
true if the operation completed successfully, and false if it was interrupted by the progress callback. Generated from function MR::relaxApprox. Parameter mesh can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_relaxApprox_4()

MRC_API bool MR_relaxApprox_4 ( const MR_MeshTopology * topology,
MR_VertCoords * points,
const MR_MeshApproxRelaxParams * params,
const MR_std_function_bool_from_float * cb )

Generated from function MR::relaxApprox. Parameter topology can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_relaxKeepVolume_3_MR_Mesh()

MRC_API bool MR_relaxKeepVolume_3_MR_Mesh ( MR_Mesh * mesh,
const MR_MeshRelaxParams * params,
const MR_std_function_bool_from_float * cb )

applies given number of relaxation iterations to the whole mesh ( or some region if it is specified )
do not really keeps volume but tries hard

Returns
true if the operation completed successfully, and false if it was interrupted by the progress callback. Generated from function MR::relaxKeepVolume. Parameter mesh can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_relaxKeepVolume_4()

MRC_API bool MR_relaxKeepVolume_4 ( const MR_MeshTopology * topology,
MR_VertCoords * points,
const MR_MeshRelaxParams * params,
const MR_std_function_bool_from_float * cb )

Generated from function MR::relaxKeepVolume. Parameter topology can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Parameter cb is a single object. Parameter cb has a default argument: {}, pass a null pointer to use it.

◆ MR_removeSpikes_4()

MRC_API void MR_removeSpikes_4 ( MR_Mesh * mesh,
int maxIterations,
float minSumAngle,
const MR_VertBitSet * region )

applies at most given number of relaxation iterations the spikes detected by given threshold Generated from function MR::removeSpikes. Parameter mesh can not be null. It is a single object. Parameter region defaults to a null pointer in C++.

◆ MR_removeSpikes_5()

MRC_API void MR_removeSpikes_5 ( const MR_MeshTopology * topology,
MR_VertCoords * points,
int maxIterations,
float minSumAngle,
const MR_VertBitSet * region )

Generated from function MR::removeSpikes. Parameter topology can not be null. It is a single object. Parameter points can not be null. It is a single object. Parameter region defaults to a null pointer in C++.

◆ MR_smoothRegionBoundary()

MRC_API void MR_smoothRegionBoundary ( MR_Mesh * mesh,
const MR_FaceBitSet * regionFaces,
const int * numIters )

given a region of faces on the mesh, moves boundary vertices of the region to make the region contour much smoother with minor optimization of mesh topology near region boundary;

Parameters
numIters>= 1 how many times to run the algorithm to achieve a better quality, solution is typically oscillates back and forth so even number of iterations is recommended Generated from function MR::smoothRegionBoundary. Parameter mesh can not be null. It is a single object. Parameter regionFaces can not be null. It is a single object. Parameter numIters has a default argument: 4, pass a null pointer to use it.

◆ MR_vertexPosEqualNeiAreas_3()

MRC_API MR_Vector3f MR_vertexPosEqualNeiAreas_3 ( const MR_Mesh * mesh,
MR_VertId v,
bool noShrinkage )

computes position of a vertex, when all neighbor triangles have almost equal areas, more precisely it minimizes sum_i (area_i)^2 by adjusting the position of this vertex only Generated from function MR::vertexPosEqualNeiAreas. Parameter mesh can not be null. It is a single object.

◆ MR_vertexPosEqualNeiAreas_4()

MRC_API MR_Vector3f MR_vertexPosEqualNeiAreas_4 ( const MR_MeshTopology * topology,
const MR_VertCoords * points,
MR_VertId v,
bool noShrinkage )

Generated from function MR::vertexPosEqualNeiAreas. Parameter topology can not be null. It is a single object. Parameter points can not be null. It is a single object.