MeshLib C Docs
Loading...
Searching...
No Matches
MRFeatureRefine.h File Reference
#include <MRCMisc/common.h>
#include <MRCMisc/exports.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct MR_FaceBitSet MR_FaceBitSet
 
typedef struct MR_FeatureObject MR_FeatureObject
 
typedef struct MR_Mesh MR_Mesh
 
typedef struct MR_PointCloud MR_PointCloud
 
typedef struct MR_VertBitSet MR_VertBitSet
 
typedef struct MR_expected_MR_AffineXf3f_std_string MR_expected_MR_AffineXf3f_std_string
 
typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float
 
typedef struct MR_RefineParameters MR_RefineParameters
 

Functions

MRC_API const float * MR_RefineParameters_Get_distanceLimit (const MR_RefineParameters *_this)
 
MRC_API void MR_RefineParameters_Set_distanceLimit (MR_RefineParameters *_this, float value)
 
MRC_API float * MR_RefineParameters_GetMutable_distanceLimit (MR_RefineParameters *_this)
 
MRC_API const float * MR_RefineParameters_Get_normalTolerance (const MR_RefineParameters *_this)
 
MRC_API void MR_RefineParameters_Set_normalTolerance (MR_RefineParameters *_this, float value)
 
MRC_API float * MR_RefineParameters_GetMutable_normalTolerance (MR_RefineParameters *_this)
 
MRC_API const MR_FaceBitSet *const * MR_RefineParameters_Get_faceRegion (const MR_RefineParameters *_this)
 
MRC_API void MR_RefineParameters_Set_faceRegion (MR_RefineParameters *_this, const MR_FaceBitSet *value)
 
MRC_API const MR_FaceBitSet ** MR_RefineParameters_GetMutable_faceRegion (MR_RefineParameters *_this)
 
MRC_API const MR_VertBitSet *const * MR_RefineParameters_Get_vertRegion (const MR_RefineParameters *_this)
 
MRC_API void MR_RefineParameters_Set_vertRegion (MR_RefineParameters *_this, const MR_VertBitSet *value)
 
MRC_API const MR_VertBitSet ** MR_RefineParameters_GetMutable_vertRegion (MR_RefineParameters *_this)
 
MRC_API const int * MR_RefineParameters_Get_maxIterations (const MR_RefineParameters *_this)
 
MRC_API void MR_RefineParameters_Set_maxIterations (MR_RefineParameters *_this, int value)
 
MRC_API int * MR_RefineParameters_GetMutable_maxIterations (MR_RefineParameters *_this)
 
MRC_API const MR_std_function_bool_from_floatMR_RefineParameters_Get_callback (const MR_RefineParameters *_this)
 
MRC_API void MR_RefineParameters_Set_callback (MR_RefineParameters *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_float *value)
 
MRC_API MR_std_function_bool_from_floatMR_RefineParameters_GetMutable_callback (MR_RefineParameters *_this)
 
MRC_API MR_RefineParametersMR_RefineParameters_DefaultConstruct (void)
 
MRC_API MR_RefineParametersMR_RefineParameters_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_RefineParametersMR_RefineParameters_ConstructFrom (float distanceLimit, float normalTolerance, const MR_FaceBitSet *faceRegion, const MR_VertBitSet *vertRegion, int maxIterations, MR_PassBy callback_pass_by, MR_std_function_bool_from_float *callback)
 
MRC_API const MR_RefineParametersMR_RefineParameters_OffsetPtr (const MR_RefineParameters *ptr, ptrdiff_t i)
 
MRC_API MR_RefineParametersMR_RefineParameters_OffsetMutablePtr (MR_RefineParameters *ptr, ptrdiff_t i)
 
MRC_API MR_RefineParametersMR_RefineParameters_ConstructFromAnother (MR_PassBy _other_pass_by, MR_RefineParameters *_other)
 
MRC_API void MR_RefineParameters_Destroy (const MR_RefineParameters *_this)
 Destroys a heap-allocated instance of MR_RefineParameters. Does nothing if the pointer is null.
 
MRC_API void MR_RefineParameters_DestroyArray (const MR_RefineParameters *_this)
 Destroys a heap-allocated array of MR_RefineParameters. Does nothing if the pointer is null.
 
MRC_API MR_RefineParametersMR_RefineParameters_AssignFromAnother (MR_RefineParameters *_this, MR_PassBy _other_pass_by, MR_RefineParameters *_other)
 
MRC_API MR_expected_MR_AffineXf3f_std_stringMR_refineFeatureObject_MR_Mesh (const MR_FeatureObject *featObj, const MR_Mesh *mesh, const MR_RefineParameters *params)
 
MRC_API MR_expected_MR_AffineXf3f_std_stringMR_refineFeatureObject_MR_PointCloud (const MR_FeatureObject *featObj, const MR_PointCloud *pointCloud, const MR_RefineParameters *params)
 

Typedef Documentation

◆ MR_expected_MR_AffineXf3f_std_string

◆ MR_FaceBitSet

typedef struct MR_FaceBitSet MR_FaceBitSet

◆ MR_FeatureObject

◆ MR_Mesh

typedef struct MR_Mesh MR_Mesh

◆ MR_PointCloud

typedef struct MR_PointCloud MR_PointCloud

◆ MR_RefineParameters

Optional parameters for refineFeatureObject Generated from class MR::RefineParameters. 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_std_function_bool_from_float

◆ MR_VertBitSet

typedef struct MR_VertBitSet MR_VertBitSet

Function Documentation

◆ MR_refineFeatureObject_MR_Mesh()

MRC_API MR_expected_MR_AffineXf3f_std_string * MR_refineFeatureObject_MR_Mesh ( const MR_FeatureObject * featObj,
const MR_Mesh * mesh,
const MR_RefineParameters * params )

Recalculate the feature object's position so it would better fit with the given mesh Generated from function MR::refineFeatureObject. Parameter featObj can not be null. It is a single object. 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. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_AffineXf3f_std_string_Destroy() to free it when you're done using it.

◆ MR_refineFeatureObject_MR_PointCloud()

MRC_API MR_expected_MR_AffineXf3f_std_string * MR_refineFeatureObject_MR_PointCloud ( const MR_FeatureObject * featObj,
const MR_PointCloud * pointCloud,
const MR_RefineParameters * params )

Recalculate the feature object's position so it would better fit with the given point cloud Generated from function MR::refineFeatureObject. Parameter featObj can not be null. It is a single object. Parameter pointCloud 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. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_AffineXf3f_std_string_Destroy() to free it when you're done using it.

◆ MR_RefineParameters_AssignFromAnother()

MRC_API MR_RefineParameters * MR_RefineParameters_AssignFromAnother ( MR_RefineParameters * _this,
MR_PassBy _other_pass_by,
MR_RefineParameters * _other )

Generated from method MR::RefineParameters::operator=. Parameter _this 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_RefineParameters_ConstructFrom()

MRC_API MR_RefineParameters * MR_RefineParameters_ConstructFrom ( float distanceLimit,
float normalTolerance,
const MR_FaceBitSet * faceRegion,
const MR_VertBitSet * vertRegion,
int maxIterations,
MR_PassBy callback_pass_by,
MR_std_function_bool_from_float * callback )

Constructs MR::RefineParameters elementwise. The reference to the parameter faceRegion might be preserved in the constructed object. The reference to the parameter vertRegion might be preserved in the constructed object. The reference to the parameter callback might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_RefineParameters_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.

◆ MR_RefineParameters_ConstructFromAnother()

MRC_API MR_RefineParameters * MR_RefineParameters_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_RefineParameters * _other )

Generated from constructor MR::RefineParameters::RefineParameters. 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_RefineParameters_Destroy() to free it when you're done using it.

◆ MR_RefineParameters_DefaultConstruct()

MRC_API MR_RefineParameters * MR_RefineParameters_DefaultConstruct ( void )

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

◆ MR_RefineParameters_DefaultConstructArray()

MRC_API MR_RefineParameters * MR_RefineParameters_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_RefineParameters_DestroyArray(). Use MR_RefineParameters_OffsetMutablePtr() and MR_RefineParameters_OffsetPtr() to access the array elements.

◆ MR_RefineParameters_Destroy()

MRC_API void MR_RefineParameters_Destroy ( const MR_RefineParameters * _this)

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

◆ MR_RefineParameters_DestroyArray()

MRC_API void MR_RefineParameters_DestroyArray ( const MR_RefineParameters * _this)

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

◆ MR_RefineParameters_Get_callback()

MRC_API const MR_std_function_bool_from_float * MR_RefineParameters_Get_callback ( const MR_RefineParameters * _this)

Progress callback Returns a pointer to a member variable of class MR::RefineParameters named callback. 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_RefineParameters_Get_distanceLimit()

MRC_API const float * MR_RefineParameters_Get_distanceLimit ( const MR_RefineParameters * _this)

Maximum distance from the source model to the feature Returns a pointer to a member variable of class MR::RefineParameters named distanceLimit. 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_RefineParameters_Get_faceRegion()

MRC_API const MR_FaceBitSet *const * MR_RefineParameters_Get_faceRegion ( const MR_RefineParameters * _this)

(for meshes only) Reference faces used for filtering intermediate results that are too far from it Returns a pointer to a member variable of class MR::RefineParameters named faceRegion. 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_RefineParameters_Get_maxIterations()

MRC_API const int * MR_RefineParameters_Get_maxIterations ( const MR_RefineParameters * _this)

Maximum amount of iterations performed until a stable set of points is found Returns a pointer to a member variable of class MR::RefineParameters named maxIterations. 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_RefineParameters_Get_normalTolerance()

MRC_API const float * MR_RefineParameters_Get_normalTolerance ( const MR_RefineParameters * _this)

Maximum angle between the source model's normal and the feature's normal Returns a pointer to a member variable of class MR::RefineParameters named normalTolerance. 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_RefineParameters_Get_vertRegion()

MRC_API const MR_VertBitSet *const * MR_RefineParameters_Get_vertRegion ( const MR_RefineParameters * _this)

(for meshes only) Reference vertices used for filtering intermediate results that are too far from it Returns a pointer to a member variable of class MR::RefineParameters named vertRegion. 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_RefineParameters_GetMutable_callback()

MRC_API MR_std_function_bool_from_float * MR_RefineParameters_GetMutable_callback ( MR_RefineParameters * _this)

Progress callback Returns a mutable pointer to a member variable of class MR::RefineParameters named callback. 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_RefineParameters_GetMutable_distanceLimit()

MRC_API float * MR_RefineParameters_GetMutable_distanceLimit ( MR_RefineParameters * _this)

Maximum distance from the source model to the feature Returns a mutable pointer to a member variable of class MR::RefineParameters named distanceLimit. 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_RefineParameters_GetMutable_faceRegion()

MRC_API const MR_FaceBitSet ** MR_RefineParameters_GetMutable_faceRegion ( MR_RefineParameters * _this)

(for meshes only) Reference faces used for filtering intermediate results that are too far from it Returns a mutable pointer to a member variable of class MR::RefineParameters named faceRegion. 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_RefineParameters_GetMutable_maxIterations()

MRC_API int * MR_RefineParameters_GetMutable_maxIterations ( MR_RefineParameters * _this)

Maximum amount of iterations performed until a stable set of points is found Returns a mutable pointer to a member variable of class MR::RefineParameters named maxIterations. 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_RefineParameters_GetMutable_normalTolerance()

MRC_API float * MR_RefineParameters_GetMutable_normalTolerance ( MR_RefineParameters * _this)

Maximum angle between the source model's normal and the feature's normal Returns a mutable pointer to a member variable of class MR::RefineParameters named normalTolerance. 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_RefineParameters_GetMutable_vertRegion()

MRC_API const MR_VertBitSet ** MR_RefineParameters_GetMutable_vertRegion ( MR_RefineParameters * _this)

(for meshes only) Reference vertices used for filtering intermediate results that are too far from it Returns a mutable pointer to a member variable of class MR::RefineParameters named vertRegion. 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_RefineParameters_OffsetMutablePtr()

MRC_API MR_RefineParameters * MR_RefineParameters_OffsetMutablePtr ( MR_RefineParameters * 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_RefineParameters_OffsetPtr()

MRC_API const MR_RefineParameters * MR_RefineParameters_OffsetPtr ( const MR_RefineParameters * 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_RefineParameters_Set_callback()

MRC_API void MR_RefineParameters_Set_callback ( MR_RefineParameters * _this,
MR_PassBy value_pass_by,
MR_std_function_bool_from_float * value )

Progress callback Modifies a member variable of class MR::RefineParameters named callback. 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 callback. When this function is called, this object will drop object references it had previously in callback.

◆ MR_RefineParameters_Set_distanceLimit()

MRC_API void MR_RefineParameters_Set_distanceLimit ( MR_RefineParameters * _this,
float value )

Maximum distance from the source model to the feature Modifies a member variable of class MR::RefineParameters named distanceLimit. 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 distanceLimit.

◆ MR_RefineParameters_Set_faceRegion()

MRC_API void MR_RefineParameters_Set_faceRegion ( MR_RefineParameters * _this,
const MR_FaceBitSet * value )

(for meshes only) Reference faces used for filtering intermediate results that are too far from it Modifies a member variable of class MR::RefineParameters named faceRegion. 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 faceRegion. When this function is called, this object will drop object references it had previously in faceRegion.

◆ MR_RefineParameters_Set_maxIterations()

MRC_API void MR_RefineParameters_Set_maxIterations ( MR_RefineParameters * _this,
int value )

Maximum amount of iterations performed until a stable set of points is found Modifies a member variable of class MR::RefineParameters named maxIterations. 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 maxIterations.

◆ MR_RefineParameters_Set_normalTolerance()

MRC_API void MR_RefineParameters_Set_normalTolerance ( MR_RefineParameters * _this,
float value )

Maximum angle between the source model's normal and the feature's normal Modifies a member variable of class MR::RefineParameters named normalTolerance. 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 normalTolerance.

◆ MR_RefineParameters_Set_vertRegion()

MRC_API void MR_RefineParameters_Set_vertRegion ( MR_RefineParameters * _this,
const MR_VertBitSet * value )

(for meshes only) Reference vertices used for filtering intermediate results that are too far from it Modifies a member variable of class MR::RefineParameters named vertRegion. 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 vertRegion. When this function is called, this object will drop object references it had previously in vertRegion.