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

Go to the source code of this file.

Typedefs

typedef struct MR_IntersectionPrecomputes_double MR_IntersectionPrecomputes_double
 
typedef struct MR_IntersectionPrecomputes_float MR_IntersectionPrecomputes_float
 
typedef struct MR_TriPointf MR_TriPointf
 
typedef struct MR_Vector3d MR_Vector3d
 
typedef struct MR_Vector3f MR_Vector3f
 
typedef struct MR_std_optional_MR_TriIntersectResult MR_std_optional_MR_TriIntersectResult
 
typedef struct MR_TriIntersectResult MR_TriIntersectResult
 Generated from class MR::TriIntersectResult.
 

Functions

MRC_API const MR_TriPointfMR_TriIntersectResult_Get_bary (const MR_TriIntersectResult *_this)
 
MRC_API void MR_TriIntersectResult_Set_bary (MR_TriIntersectResult *_this, const MR_TriPointf *value)
 
MRC_API MR_TriPointfMR_TriIntersectResult_GetMutable_bary (MR_TriIntersectResult *_this)
 
MRC_API const float * MR_TriIntersectResult_Get_t (const MR_TriIntersectResult *_this)
 
MRC_API void MR_TriIntersectResult_Set_t (MR_TriIntersectResult *_this, float value)
 
MRC_API float * MR_TriIntersectResult_GetMutable_t (MR_TriIntersectResult *_this)
 
MRC_API MR_TriIntersectResultMR_TriIntersectResult_ConstructFromAnother (const MR_TriIntersectResult *_other)
 
MRC_API const MR_TriIntersectResultMR_TriIntersectResult_OffsetPtr (const MR_TriIntersectResult *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.
 
MRC_API MR_TriIntersectResultMR_TriIntersectResult_OffsetMutablePtr (MR_TriIntersectResult *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.
 
MRC_API MR_TriIntersectResultMR_TriIntersectResult_Construct (float U, float V, float dist)
 
MRC_API void MR_TriIntersectResult_Destroy (const MR_TriIntersectResult *_this)
 Destroys a heap-allocated instance of MR_TriIntersectResult. Does nothing if the pointer is null.
 
MRC_API void MR_TriIntersectResult_DestroyArray (const MR_TriIntersectResult *_this)
 Destroys a heap-allocated array of MR_TriIntersectResult. Does nothing if the pointer is null.
 
MRC_API MR_TriIntersectResultMR_TriIntersectResult_AssignFromAnother (MR_TriIntersectResult *_this, const MR_TriIntersectResult *_other)
 
MRC_API MR_std_optional_MR_TriIntersectResultMR_rayTriangleIntersect__float (const MR_Vector3f *oriA, const MR_Vector3f *oriB, const MR_Vector3f *oriC, const MR_IntersectionPrecomputes_float *prec)
 
MRC_API MR_std_optional_MR_TriIntersectResultMR_rayTriangleIntersect__double (const MR_Vector3d *oriA, const MR_Vector3d *oriB, const MR_Vector3d *oriC, const MR_IntersectionPrecomputes_double *prec)
 
MRC_API MR_std_optional_MR_TriIntersectResultMR_rayTriangleIntersect_const_MR_Vector3f_ref_MR_IntersectionPrecomputes_float (const MR_Vector3f *oriA, const MR_Vector3f *oriB, const MR_Vector3f *oriC, const MR_IntersectionPrecomputes_float *prec)
 
MRC_API MR_std_optional_MR_TriIntersectResultMR_rayTriangleIntersect_const_MR_Vector3f_ref_MR_Vector3f (const MR_Vector3f *oriA, const MR_Vector3f *oriB, const MR_Vector3f *oriC, const MR_Vector3f *dir)
 
MRC_API MR_std_optional_MR_TriIntersectResultMR_rayTriangleIntersect_const_MR_Vector3d_ref_MR_IntersectionPrecomputes_double (const MR_Vector3d *oriA, const MR_Vector3d *oriB, const MR_Vector3d *oriC, const MR_IntersectionPrecomputes_double *prec)
 
MRC_API MR_std_optional_MR_TriIntersectResultMR_rayTriangleIntersect_const_MR_Vector3d_ref_MR_Vector3d (const MR_Vector3d *oriA, const MR_Vector3d *oriB, const MR_Vector3d *oriC, const MR_Vector3d *dir)
 

Typedef Documentation

◆ MR_IntersectionPrecomputes_double

◆ MR_IntersectionPrecomputes_float

◆ MR_std_optional_MR_TriIntersectResult

◆ MR_TriIntersectResult

◆ MR_TriPointf

typedef struct MR_TriPointf MR_TriPointf

◆ MR_Vector3d

typedef struct MR_Vector3d MR_Vector3d

◆ MR_Vector3f

typedef struct MR_Vector3f MR_Vector3f

Function Documentation

◆ MR_rayTriangleIntersect__double()

MRC_API MR_std_optional_MR_TriIntersectResult * MR_rayTriangleIntersect__double ( const MR_Vector3d * oriA,
const MR_Vector3d * oriB,
const MR_Vector3d * oriC,
const MR_IntersectionPrecomputes_double * prec )

Generated from function MR::rayTriangleIntersect_<double>. Parameter oriA can not be null. It is a single object. Parameter oriB can not be null. It is a single object. Parameter oriC can not be null. It is a single object. Parameter prec can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_optional_MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_rayTriangleIntersect__float()

MRC_API MR_std_optional_MR_TriIntersectResult * MR_rayTriangleIntersect__float ( const MR_Vector3f * oriA,
const MR_Vector3f * oriB,
const MR_Vector3f * oriC,
const MR_IntersectionPrecomputes_float * prec )

Generated from function MR::rayTriangleIntersect_<float>. Parameter oriA can not be null. It is a single object. Parameter oriB can not be null. It is a single object. Parameter oriC can not be null. It is a single object. Parameter prec can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_optional_MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_rayTriangleIntersect_const_MR_Vector3d_ref_MR_IntersectionPrecomputes_double()

MRC_API MR_std_optional_MR_TriIntersectResult * MR_rayTriangleIntersect_const_MR_Vector3d_ref_MR_IntersectionPrecomputes_double ( const MR_Vector3d * oriA,
const MR_Vector3d * oriB,
const MR_Vector3d * oriC,
const MR_IntersectionPrecomputes_double * prec )

Generated from function MR::rayTriangleIntersect. Parameter oriA can not be null. It is a single object. Parameter oriB can not be null. It is a single object. Parameter oriC can not be null. It is a single object. Parameter prec can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_optional_MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_rayTriangleIntersect_const_MR_Vector3d_ref_MR_Vector3d()

MRC_API MR_std_optional_MR_TriIntersectResult * MR_rayTriangleIntersect_const_MR_Vector3d_ref_MR_Vector3d ( const MR_Vector3d * oriA,
const MR_Vector3d * oriB,
const MR_Vector3d * oriC,
const MR_Vector3d * dir )

Generated from function MR::rayTriangleIntersect. Parameter oriA can not be null. It is a single object. Parameter oriB can not be null. It is a single object. Parameter oriC can not be null. It is a single object. Parameter dir can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_optional_MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_rayTriangleIntersect_const_MR_Vector3f_ref_MR_IntersectionPrecomputes_float()

MRC_API MR_std_optional_MR_TriIntersectResult * MR_rayTriangleIntersect_const_MR_Vector3f_ref_MR_IntersectionPrecomputes_float ( const MR_Vector3f * oriA,
const MR_Vector3f * oriB,
const MR_Vector3f * oriC,
const MR_IntersectionPrecomputes_float * prec )

Generated from function MR::rayTriangleIntersect. Parameter oriA can not be null. It is a single object. Parameter oriB can not be null. It is a single object. Parameter oriC can not be null. It is a single object. Parameter prec can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_optional_MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_rayTriangleIntersect_const_MR_Vector3f_ref_MR_Vector3f()

MRC_API MR_std_optional_MR_TriIntersectResult * MR_rayTriangleIntersect_const_MR_Vector3f_ref_MR_Vector3f ( const MR_Vector3f * oriA,
const MR_Vector3f * oriB,
const MR_Vector3f * oriC,
const MR_Vector3f * dir )

Generated from function MR::rayTriangleIntersect. Parameter oriA can not be null. It is a single object. Parameter oriB can not be null. It is a single object. Parameter oriC can not be null. It is a single object. Parameter dir can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_optional_MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_TriIntersectResult_AssignFromAnother()

MRC_API MR_TriIntersectResult * MR_TriIntersectResult_AssignFromAnother ( MR_TriIntersectResult * _this,
const MR_TriIntersectResult * _other )

Generated from a method of class MR::TriIntersectResult named operator=. Parameter _this can not be null. It is a single object. Parameter _other 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_TriIntersectResult_Construct()

MRC_API MR_TriIntersectResult * MR_TriIntersectResult_Construct ( float U,
float V,
float dist )

Generated from a constructor of class MR::TriIntersectResult. Never returns null. Returns an instance allocated on the heap! Must call MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_TriIntersectResult_ConstructFromAnother()

MRC_API MR_TriIntersectResult * MR_TriIntersectResult_ConstructFromAnother ( const MR_TriIntersectResult * _other)

Generated from a constructor of class MR::TriIntersectResult. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_TriIntersectResult_Destroy() to free it when you're done using it.

◆ MR_TriIntersectResult_Destroy()

MRC_API void MR_TriIntersectResult_Destroy ( const MR_TriIntersectResult * _this)

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

◆ MR_TriIntersectResult_DestroyArray()

MRC_API void MR_TriIntersectResult_DestroyArray ( const MR_TriIntersectResult * _this)

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

◆ MR_TriIntersectResult_Get_bary()

MRC_API const MR_TriPointf * MR_TriIntersectResult_Get_bary ( const MR_TriIntersectResult * _this)

Returns a pointer to a member variable of class MR::TriIntersectResult named bary. 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_TriIntersectResult_Get_t()

MRC_API const float * MR_TriIntersectResult_Get_t ( const MR_TriIntersectResult * _this)

Returns a pointer to a member variable of class MR::TriIntersectResult named t. 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_TriIntersectResult_GetMutable_bary()

MRC_API MR_TriPointf * MR_TriIntersectResult_GetMutable_bary ( MR_TriIntersectResult * _this)

Returns a mutable pointer to a member variable of class MR::TriIntersectResult named bary. 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_TriIntersectResult_GetMutable_t()

MRC_API float * MR_TriIntersectResult_GetMutable_t ( MR_TriIntersectResult * _this)

Returns a mutable pointer to a member variable of class MR::TriIntersectResult named t. 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_TriIntersectResult_OffsetMutablePtr()

MRC_API MR_TriIntersectResult * MR_TriIntersectResult_OffsetMutablePtr ( MR_TriIntersectResult * 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.

◆ MR_TriIntersectResult_OffsetPtr()

MRC_API const MR_TriIntersectResult * MR_TriIntersectResult_OffsetPtr ( const MR_TriIntersectResult * 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.

◆ MR_TriIntersectResult_Set_bary()

MRC_API void MR_TriIntersectResult_Set_bary ( MR_TriIntersectResult * _this,
const MR_TriPointf * value )

Modifies a member variable of class MR::TriIntersectResult named bary. Parameter _this can not be null. It is a single object. Parameter value can not be null. It is a single object.

◆ MR_TriIntersectResult_Set_t()

MRC_API void MR_TriIntersectResult_Set_t ( MR_TriIntersectResult * _this,
float value )

Modifies a member variable of class MR::TriIntersectResult named t. Parameter _this can not be null. It is a single object.