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

Go to the source code of this file.

Typedefs

typedef struct MR_EdgePoint MR_EdgePoint
 
typedef struct MR_FaceBitSet MR_FaceBitSet
 
typedef struct MR_MeshTopology MR_MeshTopology
 
typedef struct MR_NoInit MR_NoInit
 
typedef struct MR_TriPointf MR_TriPointf
 
typedef struct MR_std_array_MR_WeightedVertex_3 MR_std_array_MR_WeightedVertex_3
 
typedef struct MR_WeightedVertex MR_WeightedVertex
 
typedef struct MR_MeshTriPoint MR_MeshTriPoint
 

Functions

MRC_API const MR_VertIdMR_WeightedVertex_Get_v (const MR_WeightedVertex *_this)
 
MRC_API void MR_WeightedVertex_Set_v (MR_WeightedVertex *_this, MR_VertId value)
 
MRC_API MR_VertIdMR_WeightedVertex_GetMutable_v (MR_WeightedVertex *_this)
 
MRC_API const float * MR_WeightedVertex_Get_weight (const MR_WeightedVertex *_this)
 
MRC_API void MR_WeightedVertex_Set_weight (MR_WeightedVertex *_this, float value)
 
MRC_API float * MR_WeightedVertex_GetMutable_weight (MR_WeightedVertex *_this)
 
MRC_API MR_WeightedVertexMR_WeightedVertex_DefaultConstruct (void)
 
MRC_API MR_WeightedVertexMR_WeightedVertex_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_WeightedVertexMR_WeightedVertex_ConstructFrom (MR_VertId v, float weight)
 
MRC_API const MR_WeightedVertexMR_WeightedVertex_OffsetPtr (const MR_WeightedVertex *ptr, ptrdiff_t i)
 
MRC_API MR_WeightedVertexMR_WeightedVertex_OffsetMutablePtr (MR_WeightedVertex *ptr, ptrdiff_t i)
 
MRC_API MR_WeightedVertexMR_WeightedVertex_ConstructFromAnother (const MR_WeightedVertex *_other)
 
MRC_API void MR_WeightedVertex_Destroy (const MR_WeightedVertex *_this)
 Destroys a heap-allocated instance of MR_WeightedVertex. Does nothing if the pointer is null.
 
MRC_API void MR_WeightedVertex_DestroyArray (const MR_WeightedVertex *_this)
 Destroys a heap-allocated array of MR_WeightedVertex. Does nothing if the pointer is null.
 
MRC_API MR_WeightedVertexMR_WeightedVertex_AssignFromAnother (MR_WeightedVertex *_this, const MR_WeightedVertex *_other)
 
MRC_API const MR_EdgeIdMR_MeshTriPoint_Get_e (const MR_MeshTriPoint *_this)
 
MRC_API void MR_MeshTriPoint_Set_e (MR_MeshTriPoint *_this, MR_EdgeId value)
 
MRC_API MR_EdgeIdMR_MeshTriPoint_GetMutable_e (MR_MeshTriPoint *_this)
 
MRC_API const MR_TriPointfMR_MeshTriPoint_Get_bary (const MR_MeshTriPoint *_this)
 
MRC_API void MR_MeshTriPoint_Set_bary (MR_MeshTriPoint *_this, const MR_TriPointf *value)
 
MRC_API MR_TriPointfMR_MeshTriPoint_GetMutable_bary (MR_MeshTriPoint *_this)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_DefaultConstruct (void)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_MeshTriPointMR_MeshTriPoint_OffsetPtr (const MR_MeshTriPoint *ptr, ptrdiff_t i)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_OffsetMutablePtr (MR_MeshTriPoint *ptr, ptrdiff_t i)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_ConstructFromAnother (const MR_MeshTriPoint *_other)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_Construct_1_MR_NoInit (const MR_NoInit *_1)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_Construct_2_MR_EdgeId (MR_EdgeId e, const MR_TriPointf *bary)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_Construct_1_MR_EdgePoint (const MR_EdgePoint *ep)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_Construct_2_MR_MeshTopology (const MR_MeshTopology *topology, MR_VertId v)
 
MRC_API void MR_MeshTriPoint_Destroy (const MR_MeshTriPoint *_this)
 Destroys a heap-allocated instance of MR_MeshTriPoint. Does nothing if the pointer is null.
 
MRC_API void MR_MeshTriPoint_DestroyArray (const MR_MeshTriPoint *_this)
 Destroys a heap-allocated array of MR_MeshTriPoint. Does nothing if the pointer is null.
 
MRC_API bool MR_MeshTriPoint_ConvertTo_bool (const MR_MeshTriPoint *_this)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_AssignFromAnother (MR_MeshTriPoint *_this, const MR_MeshTriPoint *_other)
 
MRC_API MR_VertId MR_MeshTriPoint_inVertex_1 (const MR_MeshTriPoint *_this, const MR_MeshTopology *topology)
 
MRC_API bool MR_MeshTriPoint_inVertex_0 (const MR_MeshTriPoint *_this)
 
MRC_API MR_EdgePointMR_MeshTriPoint_onEdge (const MR_MeshTriPoint *_this, const MR_MeshTopology *topology)
 
MRC_API bool MR_MeshTriPoint_isBd (const MR_MeshTriPoint *_this, const MR_MeshTopology *topology, const MR_FaceBitSet *region)
 
MRC_API bool MR_MeshTriPoint_fromTriangle (const MR_MeshTriPoint *_this, const MR_MeshTopology *topology, MR_FaceId f)
 
MRC_API bool MR_MeshTriPoint_valid (const MR_MeshTriPoint *_this)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_lnext (const MR_MeshTriPoint *_this, const MR_MeshTopology *topology)
 
MRC_API MR_MeshTriPointMR_MeshTriPoint_canonical (const MR_MeshTriPoint *_this, const MR_MeshTopology *topology)
 
MRC_API MR_std_array_MR_WeightedVertex_3MR_MeshTriPoint_getWeightedVerts (const MR_MeshTriPoint *_this, const MR_MeshTopology *topology)
 
MRC_API bool MR_equal_MR_MeshTriPoint (const MR_MeshTriPoint *_this, const MR_MeshTriPoint *rhs)
 
MRC_API bool MR_same_MR_MeshTriPoint (const MR_MeshTopology *topology, const MR_MeshTriPoint *lhs, const MR_MeshTriPoint *rhs)
 
MRC_API bool MR_fromSameTriangle_MR_MeshTriPoint_ref (const MR_MeshTopology *topology, MR_MeshTriPoint *a, MR_MeshTriPoint *b)
 
MRC_API bool MR_fromSameTriangle_MR_MeshTriPoint_rvalue_ref (const MR_MeshTopology *topology, MR_MeshTriPoint *a, MR_MeshTriPoint *b)
 
MRC_API MR_MeshTriPointMR_getVertexAsMeshTriPoint (const MR_MeshTopology *topology, MR_EdgeId e, MR_VertId v)
 

Typedef Documentation

◆ MR_EdgePoint

typedef struct MR_EdgePoint MR_EdgePoint

◆ MR_FaceBitSet

typedef struct MR_FaceBitSet MR_FaceBitSet

◆ MR_MeshTopology

◆ MR_MeshTriPoint

encodes a point inside a triangular mesh face using barycentric coordinates

Notations used below:
v0 - the value in org( e )
v1 - the value in dest( e )
v2 - the value in dest( next( e ) ) Generated from class MR::MeshTriPoint. 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_NoInit

typedef struct MR_NoInit MR_NoInit

◆ MR_std_array_MR_WeightedVertex_3

◆ MR_TriPointf

typedef struct MR_TriPointf MR_TriPointf

◆ MR_WeightedVertex

Generated from class MR::WeightedVertex. 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).

Function Documentation

◆ MR_equal_MR_MeshTriPoint()

MRC_API bool MR_equal_MR_MeshTriPoint ( const MR_MeshTriPoint * _this,
const MR_MeshTriPoint * rhs )

returns true if two points are equal including equal not-unique representation Generated from method MR::MeshTriPoint::operator==. Parameter _this can not be null. It is a single object. Parameter rhs can not be null. It is a single object.

◆ MR_fromSameTriangle_MR_MeshTriPoint_ref()

MRC_API bool MR_fromSameTriangle_MR_MeshTriPoint_ref ( const MR_MeshTopology * topology,
MR_MeshTriPoint * a,
MR_MeshTriPoint * b )

returns true if points a and b are located insides or on a boundary of the same triangle; if true a.e and b.e are updated to have that triangle on the left Generated from function MR::fromSameTriangle. Parameter topology can not be null. It is a single object. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single object.

◆ MR_fromSameTriangle_MR_MeshTriPoint_rvalue_ref()

MRC_API bool MR_fromSameTriangle_MR_MeshTriPoint_rvalue_ref ( const MR_MeshTopology * topology,
MR_MeshTriPoint * a,
MR_MeshTriPoint * b )

returns true if points a and b are located insides or on a boundary of the same triangle; if true a.e and b.e are updated to have that triangle on the left Generated from function MR::fromSameTriangle. Parameter topology can not be null. It is a single object. Parameter a can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later. Parameter b can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later.

◆ MR_getVertexAsMeshTriPoint()

MRC_API MR_MeshTriPoint * MR_getVertexAsMeshTriPoint ( const MR_MeshTopology * topology,
MR_EdgeId e,
MR_VertId v )

returns MeshTriPoint representation of given vertex with given edge field; or invalid MeshTriPoint if it is not possible Generated from function MR::getVertexAsMeshTriPoint. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_AssignFromAnother()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_AssignFromAnother ( MR_MeshTriPoint * _this,
const MR_MeshTriPoint * _other )

Generated from method MR::MeshTriPoint::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_MeshTriPoint_canonical()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_canonical ( const MR_MeshTriPoint * _this,
const MR_MeshTopology * topology )

represents the same point relative to the topology.edgeWithLeft( topology.left( e ) ) Generated from method MR::MeshTriPoint::canonical. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_Construct_1_MR_EdgePoint()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_1_MR_EdgePoint ( const MR_EdgePoint * ep)

Generated from constructor MR::MeshTriPoint::MeshTriPoint. Parameter ep can not be null. It is a single object. The reference to the parameter ep might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_Construct_1_MR_NoInit()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_1_MR_NoInit ( const MR_NoInit * _1)

Generated from constructor MR::MeshTriPoint::MeshTriPoint. Parameter _1 can not be null. It is a single object. The reference to the parameter _1 might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_Construct_2_MR_EdgeId()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_2_MR_EdgeId ( MR_EdgeId e,
const MR_TriPointf * bary )

Generated from constructor MR::MeshTriPoint::MeshTriPoint. The reference to the parameter e might be preserved in the constructed object. Parameter bary can not be null. It is a single object. The reference to the parameter bary might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_Construct_2_MR_MeshTopology()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_Construct_2_MR_MeshTopology ( const MR_MeshTopology * topology,
MR_VertId v )

Generated from constructor MR::MeshTriPoint::MeshTriPoint. Parameter topology can not be null. It is a single object. The reference to the parameter topology might be preserved in the constructed object. The reference to the parameter v might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_ConstructFromAnother()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_ConstructFromAnother ( const MR_MeshTriPoint * _other)

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

◆ MR_MeshTriPoint_ConvertTo_bool()

MRC_API bool MR_MeshTriPoint_ConvertTo_bool ( const MR_MeshTriPoint * _this)

Generated from conversion operator MR::MeshTriPoint::operator bool. Parameter _this can not be null. It is a single object.

◆ MR_MeshTriPoint_DefaultConstruct()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_DefaultConstruct ( void )

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

◆ MR_MeshTriPoint_DefaultConstructArray()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_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_MeshTriPoint_DestroyArray(). Use MR_MeshTriPoint_OffsetMutablePtr() and MR_MeshTriPoint_OffsetPtr() to access the array elements.

◆ MR_MeshTriPoint_Destroy()

MRC_API void MR_MeshTriPoint_Destroy ( const MR_MeshTriPoint * _this)

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

◆ MR_MeshTriPoint_DestroyArray()

MRC_API void MR_MeshTriPoint_DestroyArray ( const MR_MeshTriPoint * _this)

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

◆ MR_MeshTriPoint_fromTriangle()

MRC_API bool MR_MeshTriPoint_fromTriangle ( const MR_MeshTriPoint * _this,
const MR_MeshTopology * topology,
MR_FaceId f )

returns true if the point is inside or on the boundary of given triangular face Generated from method MR::MeshTriPoint::fromTriangle. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object.

◆ MR_MeshTriPoint_Get_bary()

MRC_API const MR_TriPointf * MR_MeshTriPoint_Get_bary ( const MR_MeshTriPoint * _this)

barycentric coordinates

a in [0,1], a=0 => point is on next( e ) edge, a=1 => point is in dest( e ) b in [0,1], b=0 => point is on e edge, b=1 => point is in dest( next( e ) ) a+b in [0,1], a+b=0 => point is in org( e ), a+b=1 => point is on prev( e.sym() ) edge Returns a pointer to a member variable of class MR::MeshTriPoint 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_MeshTriPoint_Get_e()

MRC_API const MR_EdgeId * MR_MeshTriPoint_Get_e ( const MR_MeshTriPoint * _this)

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

◆ MR_MeshTriPoint_GetMutable_bary()

MRC_API MR_TriPointf * MR_MeshTriPoint_GetMutable_bary ( MR_MeshTriPoint * _this)

barycentric coordinates

a in [0,1], a=0 => point is on next( e ) edge, a=1 => point is in dest( e ) b in [0,1], b=0 => point is on e edge, b=1 => point is in dest( next( e ) ) a+b in [0,1], a+b=0 => point is in org( e ), a+b=1 => point is on prev( e.sym() ) edge Returns a mutable pointer to a member variable of class MR::MeshTriPoint 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_MeshTriPoint_GetMutable_e()

MRC_API MR_EdgeId * MR_MeshTriPoint_GetMutable_e ( MR_MeshTriPoint * _this)

◆ MR_MeshTriPoint_getWeightedVerts()

MRC_API MR_std_array_MR_WeightedVertex_3 * MR_MeshTriPoint_getWeightedVerts ( const MR_MeshTriPoint * _this,
const MR_MeshTopology * topology )

returns three weighted triangle's vertices with the sum of not-negative weights equal to 1, and the largest weight in the closest vertex Generated from method MR::MeshTriPoint::getWeightedVerts. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_array_MR_WeightedVertex_3_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_inVertex_0()

MRC_API bool MR_MeshTriPoint_inVertex_0 ( const MR_MeshTriPoint * _this)

returns true if the point is in a vertex Generated from method MR::MeshTriPoint::inVertex. Parameter _this can not be null. It is a single object.

◆ MR_MeshTriPoint_inVertex_1()

MRC_API MR_VertId MR_MeshTriPoint_inVertex_1 ( const MR_MeshTriPoint * _this,
const MR_MeshTopology * topology )

returns valid vertex id if the point is in vertex, otherwise returns invalid id Generated from method MR::MeshTriPoint::inVertex. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object.

◆ MR_MeshTriPoint_isBd()

MRC_API bool MR_MeshTriPoint_isBd ( const MR_MeshTriPoint * _this,
const MR_MeshTopology * topology,
const MR_FaceBitSet * region )

returns true if the point is in vertex or on edge, and that location is on the boundary of the region Generated from method MR::MeshTriPoint::isBd. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Parameter region defaults to a null pointer in C++.

◆ MR_MeshTriPoint_lnext()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_lnext ( const MR_MeshTriPoint * _this,
const MR_MeshTopology * topology )

represents the same point relative to next edge in the same triangle Generated from method MR::MeshTriPoint::lnext. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_MeshTriPoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_OffsetMutablePtr()

MRC_API MR_MeshTriPoint * MR_MeshTriPoint_OffsetMutablePtr ( MR_MeshTriPoint * 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_MeshTriPoint_OffsetPtr()

MRC_API const MR_MeshTriPoint * MR_MeshTriPoint_OffsetPtr ( const MR_MeshTriPoint * 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_MeshTriPoint_onEdge()

MRC_API MR_EdgePoint * MR_MeshTriPoint_onEdge ( const MR_MeshTriPoint * _this,
const MR_MeshTopology * topology )

returns valid value if the point is on edge and topology.left(result.e) == topology.left(this->e), otherwise returns invalid MeshEdgePoint Generated from method MR::MeshTriPoint::onEdge. Parameter _this can not be null. It is a single object. Parameter topology can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_EdgePoint_Destroy() to free it when you're done using it.

◆ MR_MeshTriPoint_Set_bary()

MRC_API void MR_MeshTriPoint_Set_bary ( MR_MeshTriPoint * _this,
const MR_TriPointf * value )

barycentric coordinates

a in [0,1], a=0 => point is on next( e ) edge, a=1 => point is in dest( e ) b in [0,1], b=0 => point is on e edge, b=1 => point is in dest( next( e ) ) a+b in [0,1], a+b=0 => point is in org( e ), a+b=1 => point is on prev( e.sym() ) edge Modifies a member variable of class MR::MeshTriPoint named bary. Parameter _this can not be null. It is a single object. Parameter value can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element bary. When this function is called, this object will drop object references it had previously in bary.

◆ MR_MeshTriPoint_Set_e()

MRC_API void MR_MeshTriPoint_Set_e ( MR_MeshTriPoint * _this,
MR_EdgeId value )

left face of this edge is considered Returns a mutable pointer to a member variable of class MR::MeshTriPoint named e. 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_MeshTriPoint_valid()

MRC_API bool MR_MeshTriPoint_valid ( const MR_MeshTriPoint * _this)

consider this valid if the edge ID is valid Generated from method MR::MeshTriPoint::valid. Parameter _this can not be null. It is a single object.

◆ MR_same_MR_MeshTriPoint()

MRC_API bool MR_same_MR_MeshTriPoint ( const MR_MeshTopology * topology,
const MR_MeshTriPoint * lhs,
const MR_MeshTriPoint * rhs )

returns true if two points are equal considering different representations Generated from function MR::same. Parameter topology can not be null. It is a single object. Parameter lhs can not be null. It is a single object. Parameter rhs can not be null. It is a single object.

◆ MR_WeightedVertex_AssignFromAnother()

MRC_API MR_WeightedVertex * MR_WeightedVertex_AssignFromAnother ( MR_WeightedVertex * _this,
const MR_WeightedVertex * _other )

Generated from method MR::WeightedVertex::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. left face of this edge is considered Returns a pointer to a member variable of class MR::MeshTriPoint named e. 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_WeightedVertex_ConstructFrom()

MRC_API MR_WeightedVertex * MR_WeightedVertex_ConstructFrom ( MR_VertId v,
float weight )

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

MRC_API MR_WeightedVertex * MR_WeightedVertex_ConstructFromAnother ( const MR_WeightedVertex * _other)

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

◆ MR_WeightedVertex_DefaultConstruct()

MRC_API MR_WeightedVertex * MR_WeightedVertex_DefaultConstruct ( void )

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

◆ MR_WeightedVertex_DefaultConstructArray()

MRC_API MR_WeightedVertex * MR_WeightedVertex_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_WeightedVertex_DestroyArray(). Use MR_WeightedVertex_OffsetMutablePtr() and MR_WeightedVertex_OffsetPtr() to access the array elements.

◆ MR_WeightedVertex_Destroy()

MRC_API void MR_WeightedVertex_Destroy ( const MR_WeightedVertex * _this)

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

◆ MR_WeightedVertex_DestroyArray()

MRC_API void MR_WeightedVertex_DestroyArray ( const MR_WeightedVertex * _this)

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

◆ MR_WeightedVertex_Get_v()

MRC_API const MR_VertId * MR_WeightedVertex_Get_v ( const MR_WeightedVertex * _this)

Returns a pointer to a member variable of class MR::WeightedVertex named v. 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_WeightedVertex_Get_weight()

MRC_API const float * MR_WeightedVertex_Get_weight ( const MR_WeightedVertex * _this)

Returns a pointer to a member variable of class MR::WeightedVertex named weight. 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_WeightedVertex_GetMutable_v()

MRC_API MR_VertId * MR_WeightedVertex_GetMutable_v ( MR_WeightedVertex * _this)

Returns a mutable pointer to a member variable of class MR::WeightedVertex named v. 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_WeightedVertex_GetMutable_weight()

MRC_API float * MR_WeightedVertex_GetMutable_weight ( MR_WeightedVertex * _this)

Returns a mutable pointer to a member variable of class MR::WeightedVertex named weight. 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_WeightedVertex_OffsetMutablePtr()

MRC_API MR_WeightedVertex * MR_WeightedVertex_OffsetMutablePtr ( MR_WeightedVertex * 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_WeightedVertex_OffsetPtr()

MRC_API const MR_WeightedVertex * MR_WeightedVertex_OffsetPtr ( const MR_WeightedVertex * 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_WeightedVertex_Set_v()

MRC_API void MR_WeightedVertex_Set_v ( MR_WeightedVertex * _this,
MR_VertId value )

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

◆ MR_WeightedVertex_Set_weight()

MRC_API void MR_WeightedVertex_Set_weight ( MR_WeightedVertex * _this,
float value )

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