MeshLib C Docs
Loading...
Searching...
No Matches
MROverlappingTris.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_MeshPart MR_MeshPart
 
typedef struct MR_expected_MR_FaceBitSet_std_string MR_expected_MR_FaceBitSet_std_string
 
typedef struct MR_std_function_bool_from_MR_FaceId_MR_FaceId MR_std_function_bool_from_MR_FaceId_MR_FaceId
 
typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float
 
typedef struct MR_FindOverlappingSettings MR_FindOverlappingSettings
 

Functions

MRC_API const float * MR_FindOverlappingSettings_Get_maxDistSq (const MR_FindOverlappingSettings *_this)
 
MRC_API void MR_FindOverlappingSettings_Set_maxDistSq (MR_FindOverlappingSettings *_this, float value)
 
MRC_API float * MR_FindOverlappingSettings_GetMutable_maxDistSq (MR_FindOverlappingSettings *_this)
 
MRC_API const float * MR_FindOverlappingSettings_Get_maxNormalDot (const MR_FindOverlappingSettings *_this)
 
MRC_API void MR_FindOverlappingSettings_Set_maxNormalDot (MR_FindOverlappingSettings *_this, float value)
 
MRC_API float * MR_FindOverlappingSettings_GetMutable_maxNormalDot (MR_FindOverlappingSettings *_this)
 
MRC_API const float * MR_FindOverlappingSettings_Get_minAreaFraction (const MR_FindOverlappingSettings *_this)
 
MRC_API void MR_FindOverlappingSettings_Set_minAreaFraction (MR_FindOverlappingSettings *_this, float value)
 
MRC_API float * MR_FindOverlappingSettings_GetMutable_minAreaFraction (MR_FindOverlappingSettings *_this)
 
MRC_API const MR_std_function_bool_from_MR_FaceId_MR_FaceIdMR_FindOverlappingSettings_Get_pred (const MR_FindOverlappingSettings *_this)
 
MRC_API void MR_FindOverlappingSettings_Set_pred (MR_FindOverlappingSettings *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_MR_FaceId_MR_FaceId *value)
 
MRC_API MR_std_function_bool_from_MR_FaceId_MR_FaceIdMR_FindOverlappingSettings_GetMutable_pred (MR_FindOverlappingSettings *_this)
 
MRC_API const MR_std_function_bool_from_floatMR_FindOverlappingSettings_Get_cb (const MR_FindOverlappingSettings *_this)
 
MRC_API void MR_FindOverlappingSettings_Set_cb (MR_FindOverlappingSettings *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_float *value)
 
MRC_API MR_std_function_bool_from_floatMR_FindOverlappingSettings_GetMutable_cb (MR_FindOverlappingSettings *_this)
 
MRC_API MR_FindOverlappingSettingsMR_FindOverlappingSettings_DefaultConstruct (void)
 
MRC_API MR_FindOverlappingSettingsMR_FindOverlappingSettings_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_FindOverlappingSettingsMR_FindOverlappingSettings_ConstructFrom (float maxDistSq, float maxNormalDot, float minAreaFraction, MR_PassBy pred_pass_by, MR_std_function_bool_from_MR_FaceId_MR_FaceId *pred, MR_PassBy cb_pass_by, MR_std_function_bool_from_float *cb)
 
MRC_API const MR_FindOverlappingSettingsMR_FindOverlappingSettings_OffsetPtr (const MR_FindOverlappingSettings *ptr, ptrdiff_t i)
 
MRC_API MR_FindOverlappingSettingsMR_FindOverlappingSettings_OffsetMutablePtr (MR_FindOverlappingSettings *ptr, ptrdiff_t i)
 
MRC_API MR_FindOverlappingSettingsMR_FindOverlappingSettings_ConstructFromAnother (MR_PassBy _other_pass_by, MR_FindOverlappingSettings *_other)
 
MRC_API void MR_FindOverlappingSettings_Destroy (const MR_FindOverlappingSettings *_this)
 Destroys a heap-allocated instance of MR_FindOverlappingSettings. Does nothing if the pointer is null.
 
MRC_API void MR_FindOverlappingSettings_DestroyArray (const MR_FindOverlappingSettings *_this)
 Destroys a heap-allocated array of MR_FindOverlappingSettings. Does nothing if the pointer is null.
 
MRC_API MR_FindOverlappingSettingsMR_FindOverlappingSettings_AssignFromAnother (MR_FindOverlappingSettings *_this, MR_PassBy _other_pass_by, MR_FindOverlappingSettings *_other)
 
MRC_API MR_expected_MR_FaceBitSet_std_stringMR_findOverlappingTris (const MR_MeshPart *mp, const MR_FindOverlappingSettings *settings)
 

Typedef Documentation

◆ MR_expected_MR_FaceBitSet_std_string

◆ MR_FindOverlappingSettings

Generated from class MR::FindOverlappingSettings. 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_MeshPart

typedef struct MR_MeshPart MR_MeshPart

◆ MR_std_function_bool_from_float

◆ MR_std_function_bool_from_MR_FaceId_MR_FaceId

Function Documentation

◆ MR_FindOverlappingSettings_AssignFromAnother()

MRC_API MR_FindOverlappingSettings * MR_FindOverlappingSettings_AssignFromAnother ( MR_FindOverlappingSettings * _this,
MR_PassBy _other_pass_by,
MR_FindOverlappingSettings * _other )

Generated from method MR::FindOverlappingSettings::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_FindOverlappingSettings_ConstructFrom()

MRC_API MR_FindOverlappingSettings * MR_FindOverlappingSettings_ConstructFrom ( float maxDistSq,
float maxNormalDot,
float minAreaFraction,
MR_PassBy pred_pass_by,
MR_std_function_bool_from_MR_FaceId_MR_FaceId * pred,
MR_PassBy cb_pass_by,
MR_std_function_bool_from_float * cb )

Constructs MR::FindOverlappingSettings elementwise. The reference to the parameter pred might be preserved in the constructed object. The reference to the parameter cb might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_FindOverlappingSettings_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_FindOverlappingSettings_ConstructFromAnother()

MRC_API MR_FindOverlappingSettings * MR_FindOverlappingSettings_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_FindOverlappingSettings * _other )

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

◆ MR_FindOverlappingSettings_DefaultConstruct()

MRC_API MR_FindOverlappingSettings * MR_FindOverlappingSettings_DefaultConstruct ( void )

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

◆ MR_FindOverlappingSettings_DefaultConstructArray()

MRC_API MR_FindOverlappingSettings * MR_FindOverlappingSettings_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_FindOverlappingSettings_DestroyArray(). Use MR_FindOverlappingSettings_OffsetMutablePtr() and MR_FindOverlappingSettings_OffsetPtr() to access the array elements.

◆ MR_FindOverlappingSettings_Destroy()

MRC_API void MR_FindOverlappingSettings_Destroy ( const MR_FindOverlappingSettings * _this)

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

◆ MR_FindOverlappingSettings_DestroyArray()

MRC_API void MR_FindOverlappingSettings_DestroyArray ( const MR_FindOverlappingSettings * _this)

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

◆ MR_FindOverlappingSettings_Get_cb()

MRC_API const MR_std_function_bool_from_float * MR_FindOverlappingSettings_Get_cb ( const MR_FindOverlappingSettings * _this)

for reporting current progress and allowing the user to cancel the algorithm Returns a pointer to a member variable of class MR::FindOverlappingSettings named cb. 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_FindOverlappingSettings_Get_maxDistSq()

MRC_API const float * MR_FindOverlappingSettings_Get_maxDistSq ( const MR_FindOverlappingSettings * _this)

Returns a pointer to a member variable of class MR::FindOverlappingSettings named maxDistSq. 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_FindOverlappingSettings_Get_maxNormalDot()

MRC_API const float * MR_FindOverlappingSettings_Get_maxNormalDot ( const MR_FindOverlappingSettings * _this)

maximal dot product of one triangle and another overlapping triangle normals Returns a pointer to a member variable of class MR::FindOverlappingSettings named maxNormalDot. 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_FindOverlappingSettings_Get_minAreaFraction()

MRC_API const float * MR_FindOverlappingSettings_Get_minAreaFraction ( const MR_FindOverlappingSettings * _this)

consider triangle as overlapping only if the area of the oppositely oriented triangle is at least given fraction of the triangle's area Returns a pointer to a member variable of class MR::FindOverlappingSettings named minAreaFraction. 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_FindOverlappingSettings_Get_pred()

MRC_API const MR_std_function_bool_from_MR_FaceId_MR_FaceId * MR_FindOverlappingSettings_Get_pred ( const MR_FindOverlappingSettings * _this)

if predicate is present it should return true for pair of faces that should be considered as overlap Returns a pointer to a member variable of class MR::FindOverlappingSettings named pred. 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_FindOverlappingSettings_GetMutable_cb()

MRC_API MR_std_function_bool_from_float * MR_FindOverlappingSettings_GetMutable_cb ( MR_FindOverlappingSettings * _this)

for reporting current progress and allowing the user to cancel the algorithm Returns a mutable pointer to a member variable of class MR::FindOverlappingSettings named cb. 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_FindOverlappingSettings_GetMutable_maxDistSq()

MRC_API float * MR_FindOverlappingSettings_GetMutable_maxDistSq ( MR_FindOverlappingSettings * _this)

Returns a mutable pointer to a member variable of class MR::FindOverlappingSettings named maxDistSq. 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_FindOverlappingSettings_GetMutable_maxNormalDot()

MRC_API float * MR_FindOverlappingSettings_GetMutable_maxNormalDot ( MR_FindOverlappingSettings * _this)

maximal dot product of one triangle and another overlapping triangle normals Returns a mutable pointer to a member variable of class MR::FindOverlappingSettings named maxNormalDot. 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_FindOverlappingSettings_GetMutable_minAreaFraction()

MRC_API float * MR_FindOverlappingSettings_GetMutable_minAreaFraction ( MR_FindOverlappingSettings * _this)

consider triangle as overlapping only if the area of the oppositely oriented triangle is at least given fraction of the triangle's area Returns a mutable pointer to a member variable of class MR::FindOverlappingSettings named minAreaFraction. 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_FindOverlappingSettings_GetMutable_pred()

MRC_API MR_std_function_bool_from_MR_FaceId_MR_FaceId * MR_FindOverlappingSettings_GetMutable_pred ( MR_FindOverlappingSettings * _this)

if predicate is present it should return true for pair of faces that should be considered as overlap Returns a mutable pointer to a member variable of class MR::FindOverlappingSettings named pred. 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_FindOverlappingSettings_OffsetMutablePtr()

MRC_API MR_FindOverlappingSettings * MR_FindOverlappingSettings_OffsetMutablePtr ( MR_FindOverlappingSettings * 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_FindOverlappingSettings_OffsetPtr()

MRC_API const MR_FindOverlappingSettings * MR_FindOverlappingSettings_OffsetPtr ( const MR_FindOverlappingSettings * 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_FindOverlappingSettings_Set_cb()

MRC_API void MR_FindOverlappingSettings_Set_cb ( MR_FindOverlappingSettings * _this,
MR_PassBy value_pass_by,
MR_std_function_bool_from_float * value )

for reporting current progress and allowing the user to cancel the algorithm Modifies a member variable of class MR::FindOverlappingSettings named cb. 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 cb. When this function is called, this object will drop object references it had previously in cb.

◆ MR_FindOverlappingSettings_Set_maxDistSq()

MRC_API void MR_FindOverlappingSettings_Set_maxDistSq ( MR_FindOverlappingSettings * _this,
float value )

Modifies a member variable of class MR::FindOverlappingSettings named maxDistSq. 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 maxDistSq.

◆ MR_FindOverlappingSettings_Set_maxNormalDot()

MRC_API void MR_FindOverlappingSettings_Set_maxNormalDot ( MR_FindOverlappingSettings * _this,
float value )

maximal dot product of one triangle and another overlapping triangle normals Modifies a member variable of class MR::FindOverlappingSettings named maxNormalDot. 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 maxNormalDot.

◆ MR_FindOverlappingSettings_Set_minAreaFraction()

MRC_API void MR_FindOverlappingSettings_Set_minAreaFraction ( MR_FindOverlappingSettings * _this,
float value )

consider triangle as overlapping only if the area of the oppositely oriented triangle is at least given fraction of the triangle's area Modifies a member variable of class MR::FindOverlappingSettings named minAreaFraction. 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 minAreaFraction.

◆ MR_FindOverlappingSettings_Set_pred()

MRC_API void MR_FindOverlappingSettings_Set_pred ( MR_FindOverlappingSettings * _this,
MR_PassBy value_pass_by,
MR_std_function_bool_from_MR_FaceId_MR_FaceId * value )

if predicate is present it should return true for pair of faces that should be considered as overlap Modifies a member variable of class MR::FindOverlappingSettings named pred. 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 pred. When this function is called, this object will drop object references it had previously in pred.

◆ MR_findOverlappingTris()

MRC_API MR_expected_MR_FaceBitSet_std_string * MR_findOverlappingTris ( const MR_MeshPart * mp,
const MR_FindOverlappingSettings * settings )

finds all triangles that have oppositely oriented close triangle in the mesh Generated from function MR::findOverlappingTris. Parameter mp can not be null. It is a single object. Parameter settings can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_FaceBitSet_std_string_Destroy() to free it when you're done using it.