struct MR_MeshPart MR_MeshPart
Definition MRAABBTree.h:14
struct MR_Mesh MR_Mesh
Definition MRCtm.h:13
struct MR_std_vector_MR_VarEdgeTri MR_std_vector_MR_VarEdgeTri
Definition MRIntersectionContour.h:14
struct MR_std_vector_MR_EdgeTri MR_std_vector_MR_EdgeTri
Definition MRIntersectionContour.h:12
struct MR_CoordinateConverters MR_CoordinateConverters
Definition MRMeshBoolean.h:16
MRC_API MR_VarEdgeTri * MR_VarEdgeTri_Construct_2(bool isEdgeATriB, const MR_EdgeTri *et)
MRC_API MR_EdgeTri * MR_EdgeTri_DefaultConstructArray(size_t num_elems)
MRC_API const MR_FaceId * MR_EdgeTri_Get_tri(const MR_EdgeTri *_this)
struct MR_EdgeTri MR_EdgeTri
Definition MRMeshCollidePrecise.h:28
MRC_API const MR_EdgeTri * MR_EdgeTri_OffsetPtr(const MR_EdgeTri *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_std_vector_MR_VarEdgeTri * MR_findCollidingEdgeTrisPrecise_5(const MR_MeshPart *a, const MR_MeshPart *b, MR_PassBy conv_pass_by, MR_std_function_MR_Vector3i_from_const_MR_Vector3f_ref *conv, const MR_AffineXf3f *rigidB2A, const bool *anyIntersection)
finds all pairs of colliding edges from one mesh and triangle from another mesh
MRC_API MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_FlaggedTri_AssignFromAnother(MR_VarEdgeTri_FlaggedTri *_this, const MR_VarEdgeTri_FlaggedTri *_other)
MRC_API MR_VarEdgeTri * MR_VarEdgeTri_AssignFromAnother(MR_VarEdgeTri *_this, const MR_VarEdgeTri *_other)
MRC_API MR_CoordinateConverters * MR_getVectorConverters_3(const MR_MeshPart *a, const MR_MeshPart *b, const MR_AffineXf3f *rigidB2A)
creates simple converters from Vector3f to Vector3i and back in mesh parts area range
MRC_API MR_VarEdgeTri * MR_VarEdgeTri_ConstructFromAnother(const MR_VarEdgeTri *_other)
MRC_API MR_EdgeTri * MR_EdgeTri_DefaultConstruct(void)
MRC_API MR_EdgeTri * MR_EdgeTri_ConstructFromAnother(const MR_EdgeTri *_other)
MRC_API void MR_EdgeTri_Set_edge(MR_EdgeTri *_this, MR_EdgeId value)
MRC_API MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_FlaggedTri_DefaultConstructArray(size_t num_elems)
MRC_API const MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_FlaggedTri_OffsetPtr(const MR_VarEdgeTri_FlaggedTri *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API const MR_EdgeId * MR_VarEdgeTri_Get_edge(const MR_VarEdgeTri *_this)
MRC_API MR_VarEdgeTri * MR_VarEdgeTri_Construct_3(bool isEdgeATriB, MR_EdgeId e, MR_FaceId t)
MRC_API MR_std_vector_MR_EdgeTri * MR_findCollidingEdgeTrisPrecise_6_std_vector_MR_FaceId(const MR_Mesh *a, const MR_std_vector_MR_FaceId *facesA, const MR_Mesh *b, const MR_std_vector_MR_EdgeId *edgesB, MR_PassBy conv_pass_by, MR_std_function_MR_Vector3i_from_const_MR_Vector3f_ref *conv, const MR_AffineXf3f *rigidB2A)
MRC_API MR_FaceId * MR_EdgeTri_GetMutable_tri(MR_EdgeTri *_this)
MRC_API MR_CoordinateConverters * MR_getVectorConverters_1(const MR_MeshPart *a)
creates simple converters from Vector3f to Vector3i and back in mesh part area range
struct MR_std_function_MR_Vector3i_from_const_MR_Vector3f_ref MR_std_function_MR_Vector3i_from_const_MR_Vector3f_ref
Definition MRMeshCollidePrecise.h:19
MRC_API bool MR_equal_MR_EdgeTri(const MR_EdgeTri *a, const MR_EdgeTri *b)
MRC_API MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_FlaggedTri_OffsetMutablePtr(MR_VarEdgeTri_FlaggedTri *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API const MR_VarEdgeTri * MR_VarEdgeTri_OffsetPtr(const MR_VarEdgeTri *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API void MR_EdgeTri_Destroy(const MR_EdgeTri *_this)
Destroys a heap-allocated instance of MR_EdgeTri. Does nothing if the pointer is null.
MRC_API MR_std_vector_MR_EdgeTri * MR_findSelfCollidingEdgeTrisPrecise(const MR_MeshPart *mp, MR_PassBy conv_pass_by, MR_std_function_MR_Vector3i_from_const_MR_Vector3f_ref *conv, const bool *anyIntersection, const MR_AffineXf3f *rigidB2A, const int32_t *aVertSizes)
finds all pairs of colliding edges and triangle within one mesh
MRC_API void MR_EdgeTri_DestroyArray(const MR_EdgeTri *_this)
Destroys a heap-allocated array of MR_EdgeTri. Does nothing if the pointer is null.
MRC_API void MR_VarEdgeTri_FlaggedTri_DestroyArray(const MR_VarEdgeTri_FlaggedTri *_this)
Destroys a heap-allocated array of MR_VarEdgeTri_FlaggedTri. Does nothing if the pointer is null.
MRC_API bool MR_VarEdgeTri_isEdgeATriB(const MR_VarEdgeTri *_this)
MRC_API void MR_VarEdgeTri_Set_edge(MR_VarEdgeTri *_this, MR_EdgeId value)
MRC_API MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_FlaggedTri_DefaultConstruct(void)
MRC_API MR_std_vector_MR_EdgeTri * MR_findCollidingEdgeTrisPrecise_6_std_vector_MR_EdgeId(const MR_Mesh *a, const MR_std_vector_MR_EdgeId *edgesA, const MR_Mesh *b, const MR_std_vector_MR_FaceId *facesB, MR_PassBy conv_pass_by, MR_std_function_MR_Vector3i_from_const_MR_Vector3f_ref *conv, const MR_AffineXf3f *rigidB2A)
MRC_API MR_FaceId MR_VarEdgeTri_tri(const MR_VarEdgeTri *_this)
MRC_API const MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_Get_flaggedTri(const MR_VarEdgeTri *_this)
MRC_API MR_EdgeId * MR_VarEdgeTri_GetMutable_edge(MR_VarEdgeTri *_this)
MRC_API MR_EdgeTri * MR_EdgeTri_Construct(MR_EdgeId e, MR_FaceId t)
struct MR_VarEdgeTri MR_VarEdgeTri
Definition MRMeshCollidePrecise.h:33
MRC_API bool MR_equal_MR_VarEdgeTri(const MR_VarEdgeTri *_this, const MR_VarEdgeTri *_1)
MRC_API bool MR_VarEdgeTri_ConvertTo_bool(const MR_VarEdgeTri *_this)
MRC_API MR_EdgeId * MR_EdgeTri_GetMutable_edge(MR_EdgeTri *_this)
MRC_API void MR_VarEdgeTri_Destroy(const MR_VarEdgeTri *_this)
Destroys a heap-allocated instance of MR_VarEdgeTri. Does nothing if the pointer is null.
MRC_API bool MR_VarEdgeTri_valid(const MR_VarEdgeTri *_this)
MRC_API void MR_VarEdgeTri_FlaggedTri_Destroy(const MR_VarEdgeTri_FlaggedTri *_this)
Destroys a heap-allocated instance of MR_VarEdgeTri_FlaggedTri. Does nothing if the pointer is null.
MRC_API void MR_EdgeTri_Set_tri(MR_EdgeTri *_this, MR_FaceId value)
MRC_API MR_EdgeTri * MR_VarEdgeTri_edgeTri(const MR_VarEdgeTri *_this)
MRC_API MR_VarEdgeTri * MR_VarEdgeTri_OffsetMutablePtr(MR_VarEdgeTri *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
struct MR_VarEdgeTri_FlaggedTri MR_VarEdgeTri_FlaggedTri
Generated from class MR::VarEdgeTri::FlaggedTri.
Definition MRMeshCollidePrecise.h:36
MRC_API bool MR_equal_MR_VarEdgeTri_FlaggedTri(const MR_VarEdgeTri_FlaggedTri *_this, const MR_VarEdgeTri_FlaggedTri *_1)
MRC_API MR_EdgeTri * MR_EdgeTri_AssignFromAnother(MR_EdgeTri *_this, const MR_EdgeTri *_other)
MRC_API MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_GetMutable_flaggedTri(MR_VarEdgeTri *_this)
MRC_API MR_VarEdgeTri * MR_VarEdgeTri_DefaultConstructArray(size_t num_elems)
MRC_API MR_VarEdgeTri * MR_VarEdgeTri_DefaultConstruct(void)
MRC_API MR_VarEdgeTri_FlaggedTri * MR_VarEdgeTri_FlaggedTri_ConstructFromAnother(const MR_VarEdgeTri_FlaggedTri *_other)
MRC_API void MR_VarEdgeTri_DestroyArray(const MR_VarEdgeTri *_this)
Destroys a heap-allocated array of MR_VarEdgeTri. Does nothing if the pointer is null.
MRC_API const MR_EdgeId * MR_EdgeTri_Get_edge(const MR_EdgeTri *_this)
MRC_API MR_EdgeTri * MR_EdgeTri_OffsetMutablePtr(MR_EdgeTri *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API void MR_VarEdgeTri_Set_flaggedTri(MR_VarEdgeTri *_this, const MR_VarEdgeTri_FlaggedTri *value)
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11
Definition MRAffineXf.h:36