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

Go to the source code of this file.

Typedefs

typedef struct MR_MeshTopology MR_MeshTopology
 
typedef struct MR_std_vector_MR_FaceFaceFace MR_std_vector_MR_FaceFaceFace
 
typedef struct MR_std_vector_std_vector_MR_VarEdgeTri MR_std_vector_std_vector_MR_VarEdgeTri
 
typedef struct MR_FaceFaceFace MR_FaceFaceFace
 

Functions

MRC_API const MR_FaceIdMR_FaceFaceFace_Get_aFace (const MR_FaceFaceFace *_this)
 
MRC_API void MR_FaceFaceFace_Set_aFace (MR_FaceFaceFace *_this, MR_FaceId value)
 
MRC_API MR_FaceIdMR_FaceFaceFace_GetMutable_aFace (MR_FaceFaceFace *_this)
 
MRC_API const MR_FaceIdMR_FaceFaceFace_Get_bFace (const MR_FaceFaceFace *_this)
 
MRC_API void MR_FaceFaceFace_Set_bFace (MR_FaceFaceFace *_this, MR_FaceId value)
 
MRC_API MR_FaceIdMR_FaceFaceFace_GetMutable_bFace (MR_FaceFaceFace *_this)
 
MRC_API const MR_FaceIdMR_FaceFaceFace_Get_cFace (const MR_FaceFaceFace *_this)
 
MRC_API void MR_FaceFaceFace_Set_cFace (MR_FaceFaceFace *_this, MR_FaceId value)
 
MRC_API MR_FaceIdMR_FaceFaceFace_GetMutable_cFace (MR_FaceFaceFace *_this)
 
MRC_API MR_FaceFaceFaceMR_FaceFaceFace_DefaultConstruct (void)
 
MRC_API MR_FaceFaceFaceMR_FaceFaceFace_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_FaceFaceFaceMR_FaceFaceFace_OffsetPtr (const MR_FaceFaceFace *ptr, ptrdiff_t i)
 
MRC_API MR_FaceFaceFaceMR_FaceFaceFace_OffsetMutablePtr (MR_FaceFaceFace *ptr, ptrdiff_t i)
 
MRC_API MR_FaceFaceFaceMR_FaceFaceFace_ConstructFromAnother (const MR_FaceFaceFace *_other)
 
MRC_API MR_FaceFaceFaceMR_FaceFaceFace_Construct (MR_FaceId a, MR_FaceId b, MR_FaceId c)
 
MRC_API void MR_FaceFaceFace_Destroy (const MR_FaceFaceFace *_this)
 Destroys a heap-allocated instance of MR_FaceFaceFace. Does nothing if the pointer is null.
 
MRC_API void MR_FaceFaceFace_DestroyArray (const MR_FaceFaceFace *_this)
 Destroys a heap-allocated array of MR_FaceFaceFace. Does nothing if the pointer is null.
 
MRC_API MR_FaceFaceFaceMR_FaceFaceFace_AssignFromAnother (MR_FaceFaceFace *_this, const MR_FaceFaceFace *_other)
 
MRC_API MR_std_vector_MR_FaceFaceFaceMR_findTripleFaceIntersections (const MR_MeshTopology *topology, const MR_std_vector_std_vector_MR_VarEdgeTri *selfContours)
 

Typedef Documentation

◆ MR_FaceFaceFace

a triple of faces Generated from class MR::FaceFaceFace. 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_MeshTopology

◆ MR_std_vector_MR_FaceFaceFace

◆ MR_std_vector_std_vector_MR_VarEdgeTri

Function Documentation

◆ MR_FaceFaceFace_AssignFromAnother()

MRC_API MR_FaceFaceFace * MR_FaceFaceFace_AssignFromAnother ( MR_FaceFaceFace * _this,
const MR_FaceFaceFace * _other )

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

MRC_API MR_FaceFaceFace * MR_FaceFaceFace_Construct ( MR_FaceId a,
MR_FaceId b,
MR_FaceId c )

Generated from constructor MR::FaceFaceFace::FaceFaceFace. The reference to the parameter a might be preserved in the constructed object. The reference to the parameter b might be preserved in the constructed object. The reference to the parameter c might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_FaceFaceFace_Destroy() to free it when you're done using it.

◆ MR_FaceFaceFace_ConstructFromAnother()

MRC_API MR_FaceFaceFace * MR_FaceFaceFace_ConstructFromAnother ( const MR_FaceFaceFace * _other)

Generated from constructor MR::FaceFaceFace::FaceFaceFace. Parameter _other 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 the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_FaceFaceFace_Destroy() to free it when you're done using it.

◆ MR_FaceFaceFace_DefaultConstruct()

MRC_API MR_FaceFaceFace * MR_FaceFaceFace_DefaultConstruct ( void )

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

◆ MR_FaceFaceFace_DefaultConstructArray()

MRC_API MR_FaceFaceFace * MR_FaceFaceFace_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_FaceFaceFace_DestroyArray(). Use MR_FaceFaceFace_OffsetMutablePtr() and MR_FaceFaceFace_OffsetPtr() to access the array elements.

◆ MR_FaceFaceFace_Destroy()

MRC_API void MR_FaceFaceFace_Destroy ( const MR_FaceFaceFace * _this)

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

◆ MR_FaceFaceFace_DestroyArray()

MRC_API void MR_FaceFaceFace_DestroyArray ( const MR_FaceFaceFace * _this)

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

◆ MR_FaceFaceFace_Get_aFace()

MRC_API const MR_FaceId * MR_FaceFaceFace_Get_aFace ( const MR_FaceFaceFace * _this)

Returns a pointer to a member variable of class MR::FaceFaceFace named aFace. 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_FaceFaceFace_Get_bFace()

MRC_API const MR_FaceId * MR_FaceFaceFace_Get_bFace ( const MR_FaceFaceFace * _this)

Returns a pointer to a member variable of class MR::FaceFaceFace named bFace. 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_FaceFaceFace_Get_cFace()

MRC_API const MR_FaceId * MR_FaceFaceFace_Get_cFace ( const MR_FaceFaceFace * _this)

Returns a pointer to a member variable of class MR::FaceFaceFace named cFace. 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_FaceFaceFace_GetMutable_aFace()

MRC_API MR_FaceId * MR_FaceFaceFace_GetMutable_aFace ( MR_FaceFaceFace * _this)

Returns a mutable pointer to a member variable of class MR::FaceFaceFace named aFace. 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_FaceFaceFace_GetMutable_bFace()

MRC_API MR_FaceId * MR_FaceFaceFace_GetMutable_bFace ( MR_FaceFaceFace * _this)

Returns a mutable pointer to a member variable of class MR::FaceFaceFace named bFace. 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_FaceFaceFace_GetMutable_cFace()

MRC_API MR_FaceId * MR_FaceFaceFace_GetMutable_cFace ( MR_FaceFaceFace * _this)

Returns a mutable pointer to a member variable of class MR::FaceFaceFace named cFace. 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_FaceFaceFace_OffsetMutablePtr()

MRC_API MR_FaceFaceFace * MR_FaceFaceFace_OffsetMutablePtr ( MR_FaceFaceFace * 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_FaceFaceFace_OffsetPtr()

MRC_API const MR_FaceFaceFace * MR_FaceFaceFace_OffsetPtr ( const MR_FaceFaceFace * 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_FaceFaceFace_Set_aFace()

MRC_API void MR_FaceFaceFace_Set_aFace ( MR_FaceFaceFace * _this,
MR_FaceId value )

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

◆ MR_FaceFaceFace_Set_bFace()

MRC_API void MR_FaceFaceFace_Set_bFace ( MR_FaceFaceFace * _this,
MR_FaceId value )

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

◆ MR_FaceFaceFace_Set_cFace()

MRC_API void MR_FaceFaceFace_Set_cFace ( MR_FaceFaceFace * _this,
MR_FaceId value )

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

◆ MR_findTripleFaceIntersections()

MRC_API MR_std_vector_MR_FaceFaceFace * MR_findTripleFaceIntersections ( const MR_MeshTopology * topology,
const MR_std_vector_std_vector_MR_VarEdgeTri * selfContours )

given all self-intersection contours on a mesh, finds all intersecting triangle triples (every two triangles from a triple intersect); please note that not all such triples will have a common point Generated from function MR::findTripleFaceIntersections. Parameter topology can not be null. It is a single object. Parameter selfContours can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_MR_FaceFaceFace_Destroy() to free it when you're done using it.