MeshLib C Docs
Loading...
Searching...
No Matches
MRMeshDistance.h File Reference
#include <MRCMisc/exports.h>
#include <stdbool.h>

Go to the source code of this file.

Typedefs

typedef struct MR_std_array_MR_Vector3f_3 MR_std_array_MR_Vector3f_3
typedef struct MR_std_function_MR_ProcessOneResult_from_const_MR_Vector3f_ref_MR_FaceId_const_MR_Vector3f_ref_float MR_std_function_MR_ProcessOneResult_from_const_MR_Vector3f_ref_MR_FaceId_const_MR_Vector3f_ref_float
typedef bool MR_ProcessOneResult

Enumerations

enum  { MR_ProcessOneResult_StopProcessing = 0 , MR_ProcessOneResult_ContinueProcessing = 1 }

Functions

MRC_API void MR_processCloseTriangles (const MR_MeshPart *mp, const MR_std_array_MR_Vector3f_3 *t, float rangeSq, const MR_std_function_MR_ProcessOneResult_from_const_MR_Vector3f_ref_MR_FaceId_const_MR_Vector3f_ref_float *call)
MRC_API MR_std_optional_floatMR_signedDistanceToMesh (const MR_MeshPart *mp, const MR_Vector3f *p, const MR_SignedDistanceToMeshOptions *op)

Typedef Documentation

◆ MR_ProcessOneResult

typedef bool MR_ProcessOneResult

◆ MR_std_array_MR_Vector3f_3

typedef struct MR_std_array_MR_Vector3f_3 MR_std_array_MR_Vector3f_3

◆ MR_std_function_MR_ProcessOneResult_from_const_MR_Vector3f_ref_MR_FaceId_const_MR_Vector3f_ref_float

Stores a functor of type: MR::ProcessOneResult(const MR::Vector3f &, MR::FaceId, const MR::Vector3f &, float). Possibly stateful. 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).

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
MR_ProcessOneResult_StopProcessing 
MR_ProcessOneResult_ContinueProcessing 

Function Documentation

◆ MR_processCloseTriangles()

invokes given callback for all triangles from given mesh part located not further than given squared distance from t-triangle Generated from function MR::processCloseTriangles. Parameter mp can not be null. It is a single object. Parameter t can not be null. It is a single object. Parameter call can not be null. It is a single object.

◆ MR_signedDistanceToMesh()

MRC_API MR_std_optional_float * MR_signedDistanceToMesh ( const MR_MeshPart * mp,
const MR_Vector3f * p,
const MR_SignedDistanceToMeshOptions * op )

computes signed distance from point (p) to mesh part (mp) following options (op); returns std::nullopt if distance is smaller than op.minDist or larger than op.maxDist (except for op.signMode == HoleWindingRule) Generated from function MR::signedDistanceToMesh. Parameter mp can not be null. It is a single object. Parameter p can not be null. It is a single object. Parameter op can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_optional_float_Destroy() to free it when you're done using it.