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

Go to the source code of this file.

Typedefs

typedef struct MR_FaceBitSet MR_FaceBitSet
 
typedef struct MR_FaceColors MR_FaceColors
 
typedef struct MR_MeshTopology MR_MeshTopology
 
typedef struct MR_TexturePerFace MR_TexturePerFace
 
typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet
 
typedef struct MR_VertColors MR_VertColors
 
typedef struct MR_VertCoords2 MR_VertCoords2
 
typedef struct MR_std_shared_ptr_MR_Mesh MR_std_shared_ptr_MR_Mesh
 
typedef struct MR_ObjectMeshData MR_ObjectMeshData
 

Functions

MRC_API const MR_std_shared_ptr_MR_MeshMR_ObjectMeshData_Get_mesh (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_mesh (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_std_shared_ptr_MR_Mesh *value)
 
MRC_API MR_std_shared_ptr_MR_MeshMR_ObjectMeshData_GetMutable_mesh (MR_ObjectMeshData *_this)
 
MRC_API const MR_FaceBitSetMR_ObjectMeshData_Get_selectedFaces (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_selectedFaces (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_FaceBitSet *value)
 
MRC_API MR_FaceBitSetMR_ObjectMeshData_GetMutable_selectedFaces (MR_ObjectMeshData *_this)
 
MRC_API const MR_UndirectedEdgeBitSetMR_ObjectMeshData_Get_selectedEdges (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_selectedEdges (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_UndirectedEdgeBitSet *value)
 
MRC_API MR_UndirectedEdgeBitSetMR_ObjectMeshData_GetMutable_selectedEdges (MR_ObjectMeshData *_this)
 
MRC_API const MR_UndirectedEdgeBitSetMR_ObjectMeshData_Get_creases (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_creases (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_UndirectedEdgeBitSet *value)
 
MRC_API MR_UndirectedEdgeBitSetMR_ObjectMeshData_GetMutable_creases (MR_ObjectMeshData *_this)
 
MRC_API const MR_VertColorsMR_ObjectMeshData_Get_vertColors (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_vertColors (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_VertColors *value)
 
MRC_API MR_VertColorsMR_ObjectMeshData_GetMutable_vertColors (MR_ObjectMeshData *_this)
 
MRC_API const MR_FaceColorsMR_ObjectMeshData_Get_faceColors (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_faceColors (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_FaceColors *value)
 
MRC_API MR_FaceColorsMR_ObjectMeshData_GetMutable_faceColors (MR_ObjectMeshData *_this)
 
MRC_API const MR_VertCoords2MR_ObjectMeshData_Get_uvCoordinates (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_uvCoordinates (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_VertCoords2 *value)
 
MRC_API MR_VertCoords2MR_ObjectMeshData_GetMutable_uvCoordinates (MR_ObjectMeshData *_this)
 
MRC_API const MR_TexturePerFaceMR_ObjectMeshData_Get_texturePerFace (const MR_ObjectMeshData *_this)
 
MRC_API void MR_ObjectMeshData_Set_texturePerFace (MR_ObjectMeshData *_this, MR_PassBy value_pass_by, MR_TexturePerFace *value)
 
MRC_API MR_TexturePerFaceMR_ObjectMeshData_GetMutable_texturePerFace (MR_ObjectMeshData *_this)
 
MRC_API MR_ObjectMeshDataMR_ObjectMeshData_DefaultConstruct (void)
 
MRC_API MR_ObjectMeshDataMR_ObjectMeshData_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_ObjectMeshDataMR_ObjectMeshData_ConstructFrom (MR_PassBy mesh_pass_by, MR_std_shared_ptr_MR_Mesh *mesh, MR_PassBy selectedFaces_pass_by, MR_FaceBitSet *selectedFaces, MR_PassBy selectedEdges_pass_by, MR_UndirectedEdgeBitSet *selectedEdges, MR_PassBy creases_pass_by, MR_UndirectedEdgeBitSet *creases, MR_PassBy vertColors_pass_by, MR_VertColors *vertColors, MR_PassBy faceColors_pass_by, MR_FaceColors *faceColors, MR_PassBy uvCoordinates_pass_by, MR_VertCoords2 *uvCoordinates, MR_PassBy texturePerFace_pass_by, MR_TexturePerFace *texturePerFace)
 
MRC_API const MR_ObjectMeshDataMR_ObjectMeshData_OffsetPtr (const MR_ObjectMeshData *ptr, ptrdiff_t i)
 
MRC_API MR_ObjectMeshDataMR_ObjectMeshData_OffsetMutablePtr (MR_ObjectMeshData *ptr, ptrdiff_t i)
 
MRC_API MR_ObjectMeshDataMR_ObjectMeshData_ConstructFromAnother (MR_PassBy _other_pass_by, MR_ObjectMeshData *_other)
 
MRC_API void MR_ObjectMeshData_Destroy (const MR_ObjectMeshData *_this)
 Destroys a heap-allocated instance of MR_ObjectMeshData. Does nothing if the pointer is null.
 
MRC_API void MR_ObjectMeshData_DestroyArray (const MR_ObjectMeshData *_this)
 Destroys a heap-allocated array of MR_ObjectMeshData. Does nothing if the pointer is null.
 
MRC_API MR_ObjectMeshDataMR_ObjectMeshData_AssignFromAnother (MR_ObjectMeshData *_this, MR_PassBy _other_pass_by, MR_ObjectMeshData *_other)
 
MRC_API MR_ObjectMeshDataMR_ObjectMeshData_clone (const MR_ObjectMeshData *_this)
 
MRC_API MR_uint64_t MR_ObjectMeshData_heapBytes (const MR_ObjectMeshData *_this)
 
MRC_API MR_UndirectedEdgeBitSetMR_edgesBetweenDifferentColors (const MR_MeshTopology *topology, const MR_FaceColors *colors)
 

Typedef Documentation

◆ MR_FaceBitSet

typedef struct MR_FaceBitSet MR_FaceBitSet

◆ MR_FaceColors

typedef struct MR_FaceColors MR_FaceColors

◆ MR_MeshTopology

◆ MR_ObjectMeshData

mesh and its per-element attributes for ObjectMeshHolder Generated from class MR::ObjectMeshData. 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_std_shared_ptr_MR_Mesh

◆ MR_TexturePerFace

◆ MR_UndirectedEdgeBitSet

◆ MR_VertColors

typedef struct MR_VertColors MR_VertColors

◆ MR_VertCoords2

Function Documentation

◆ MR_edgesBetweenDifferentColors()

MRC_API MR_UndirectedEdgeBitSet * MR_edgesBetweenDifferentColors ( const MR_MeshTopology * topology,
const MR_FaceColors * colors )

return all edges separating faces with different colors Generated from function MR::edgesBetweenDifferentColors. Parameter topology can not be null. It is a single object. Parameter colors can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_UndirectedEdgeBitSet_Destroy() to free it when you're done using it.

◆ MR_ObjectMeshData_AssignFromAnother()

MRC_API MR_ObjectMeshData * MR_ObjectMeshData_AssignFromAnother ( MR_ObjectMeshData * _this,
MR_PassBy _other_pass_by,
MR_ObjectMeshData * _other )

Generated from method MR::ObjectMeshData::operator=. Parameter _this 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_ObjectMeshData_clone()

MRC_API MR_ObjectMeshData * MR_ObjectMeshData_clone ( const MR_ObjectMeshData * _this)

returns copy of this object with mesh cloned Generated from method MR::ObjectMeshData::clone. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_ObjectMeshData_Destroy() to free it when you're done using it.

◆ MR_ObjectMeshData_ConstructFrom()

MRC_API MR_ObjectMeshData * MR_ObjectMeshData_ConstructFrom ( MR_PassBy mesh_pass_by,
MR_std_shared_ptr_MR_Mesh * mesh,
MR_PassBy selectedFaces_pass_by,
MR_FaceBitSet * selectedFaces,
MR_PassBy selectedEdges_pass_by,
MR_UndirectedEdgeBitSet * selectedEdges,
MR_PassBy creases_pass_by,
MR_UndirectedEdgeBitSet * creases,
MR_PassBy vertColors_pass_by,
MR_VertColors * vertColors,
MR_PassBy faceColors_pass_by,
MR_FaceColors * faceColors,
MR_PassBy uvCoordinates_pass_by,
MR_VertCoords2 * uvCoordinates,
MR_PassBy texturePerFace_pass_by,
MR_TexturePerFace * texturePerFace )

Constructs MR::ObjectMeshData elementwise. The reference to the parameter mesh might be preserved in the constructed object. The reference to the parameter selectedFaces might be preserved in the constructed object. The reference to the parameter selectedEdges might be preserved in the constructed object. The reference to the parameter creases might be preserved in the constructed object. The reference to the parameter vertColors might be preserved in the constructed object. The reference to the parameter faceColors might be preserved in the constructed object. The reference to the parameter uvCoordinates might be preserved in the constructed object. The reference to the parameter texturePerFace might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_ObjectMeshData_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_ObjectMeshData_ConstructFromAnother()

MRC_API MR_ObjectMeshData * MR_ObjectMeshData_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_ObjectMeshData * _other )

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

◆ MR_ObjectMeshData_DefaultConstruct()

MRC_API MR_ObjectMeshData * MR_ObjectMeshData_DefaultConstruct ( void )

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

◆ MR_ObjectMeshData_DefaultConstructArray()

MRC_API MR_ObjectMeshData * MR_ObjectMeshData_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_ObjectMeshData_DestroyArray(). Use MR_ObjectMeshData_OffsetMutablePtr() and MR_ObjectMeshData_OffsetPtr() to access the array elements.

◆ MR_ObjectMeshData_Destroy()

MRC_API void MR_ObjectMeshData_Destroy ( const MR_ObjectMeshData * _this)

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

◆ MR_ObjectMeshData_DestroyArray()

MRC_API void MR_ObjectMeshData_DestroyArray ( const MR_ObjectMeshData * _this)

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

◆ MR_ObjectMeshData_Get_creases()

MRC_API const MR_UndirectedEdgeBitSet * MR_ObjectMeshData_Get_creases ( const MR_ObjectMeshData * _this)

Returns a pointer to a member variable of class MR::ObjectMeshData named creases. 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_ObjectMeshData_Get_faceColors()

MRC_API const MR_FaceColors * MR_ObjectMeshData_Get_faceColors ( const MR_ObjectMeshData * _this)

Returns a pointer to a member variable of class MR::ObjectMeshData named faceColors. 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_ObjectMeshData_Get_mesh()

MRC_API const MR_std_shared_ptr_MR_Mesh * MR_ObjectMeshData_Get_mesh ( const MR_ObjectMeshData * _this)

Returns a pointer to a member variable of class MR::ObjectMeshData named mesh. 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_ObjectMeshData_Get_selectedEdges()

MRC_API const MR_UndirectedEdgeBitSet * MR_ObjectMeshData_Get_selectedEdges ( const MR_ObjectMeshData * _this)

Returns a pointer to a member variable of class MR::ObjectMeshData named selectedEdges. 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_ObjectMeshData_Get_selectedFaces()

MRC_API const MR_FaceBitSet * MR_ObjectMeshData_Get_selectedFaces ( const MR_ObjectMeshData * _this)

Returns a pointer to a member variable of class MR::ObjectMeshData named selectedFaces. 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_ObjectMeshData_Get_texturePerFace()

MRC_API const MR_TexturePerFace * MR_ObjectMeshData_Get_texturePerFace ( const MR_ObjectMeshData * _this)

Returns a pointer to a member variable of class MR::ObjectMeshData named texturePerFace. 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_ObjectMeshData_Get_uvCoordinates()

MRC_API const MR_VertCoords2 * MR_ObjectMeshData_Get_uvCoordinates ( const MR_ObjectMeshData * _this)

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

◆ MR_ObjectMeshData_Get_vertColors()

MRC_API const MR_VertColors * MR_ObjectMeshData_Get_vertColors ( const MR_ObjectMeshData * _this)

Returns a pointer to a member variable of class MR::ObjectMeshData named vertColors. 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_ObjectMeshData_GetMutable_creases()

MRC_API MR_UndirectedEdgeBitSet * MR_ObjectMeshData_GetMutable_creases ( MR_ObjectMeshData * _this)

Returns a mutable pointer to a member variable of class MR::ObjectMeshData named creases. 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_ObjectMeshData_GetMutable_faceColors()

MRC_API MR_FaceColors * MR_ObjectMeshData_GetMutable_faceColors ( MR_ObjectMeshData * _this)

Returns a mutable pointer to a member variable of class MR::ObjectMeshData named faceColors. 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. vertices coordinates in texture Returns a pointer to a member variable of class MR::ObjectMeshData named uvCoordinates. 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_ObjectMeshData_GetMutable_mesh()

MRC_API MR_std_shared_ptr_MR_Mesh * MR_ObjectMeshData_GetMutable_mesh ( MR_ObjectMeshData * _this)

Returns a mutable pointer to a member variable of class MR::ObjectMeshData named mesh. 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_ObjectMeshData_GetMutable_selectedEdges()

MRC_API MR_UndirectedEdgeBitSet * MR_ObjectMeshData_GetMutable_selectedEdges ( MR_ObjectMeshData * _this)

Returns a mutable pointer to a member variable of class MR::ObjectMeshData named selectedEdges. 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_ObjectMeshData_GetMutable_selectedFaces()

MRC_API MR_FaceBitSet * MR_ObjectMeshData_GetMutable_selectedFaces ( MR_ObjectMeshData * _this)

Returns a mutable pointer to a member variable of class MR::ObjectMeshData named selectedFaces. 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_ObjectMeshData_GetMutable_texturePerFace()

MRC_API MR_TexturePerFace * MR_ObjectMeshData_GetMutable_texturePerFace ( MR_ObjectMeshData * _this)

Returns a mutable pointer to a member variable of class MR::ObjectMeshData named texturePerFace. 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_ObjectMeshData_GetMutable_uvCoordinates()

MRC_API MR_VertCoords2 * MR_ObjectMeshData_GetMutable_uvCoordinates ( MR_ObjectMeshData * _this)

◆ MR_ObjectMeshData_GetMutable_vertColors()

MRC_API MR_VertColors * MR_ObjectMeshData_GetMutable_vertColors ( MR_ObjectMeshData * _this)

Returns a mutable pointer to a member variable of class MR::ObjectMeshData named vertColors. 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_ObjectMeshData_heapBytes()

MRC_API MR_uint64_t MR_ObjectMeshData_heapBytes ( const MR_ObjectMeshData * _this)

returns the amount of memory this object occupies on heap Generated from method MR::ObjectMeshData::heapBytes. Parameter _this can not be null. It is a single object.

◆ MR_ObjectMeshData_OffsetMutablePtr()

MRC_API MR_ObjectMeshData * MR_ObjectMeshData_OffsetMutablePtr ( MR_ObjectMeshData * 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_ObjectMeshData_OffsetPtr()

MRC_API const MR_ObjectMeshData * MR_ObjectMeshData_OffsetPtr ( const MR_ObjectMeshData * 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_ObjectMeshData_Set_creases()

MRC_API void MR_ObjectMeshData_Set_creases ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_UndirectedEdgeBitSet * value )

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

◆ MR_ObjectMeshData_Set_faceColors()

MRC_API void MR_ObjectMeshData_Set_faceColors ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_FaceColors * value )

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

◆ MR_ObjectMeshData_Set_mesh()

MRC_API void MR_ObjectMeshData_Set_mesh ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_std_shared_ptr_MR_Mesh * value )

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

◆ MR_ObjectMeshData_Set_selectedEdges()

MRC_API void MR_ObjectMeshData_Set_selectedEdges ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_UndirectedEdgeBitSet * value )

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

◆ MR_ObjectMeshData_Set_selectedFaces()

MRC_API void MR_ObjectMeshData_Set_selectedFaces ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_FaceBitSet * value )

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

◆ MR_ObjectMeshData_Set_texturePerFace()

MRC_API void MR_ObjectMeshData_Set_texturePerFace ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_TexturePerFace * value )

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

◆ MR_ObjectMeshData_Set_uvCoordinates()

MRC_API void MR_ObjectMeshData_Set_uvCoordinates ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_VertCoords2 * value )

vertices coordinates in texture Returns a mutable pointer to a member variable of class MR::ObjectMeshData named uvCoordinates. 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_ObjectMeshData_Set_vertColors()

MRC_API void MR_ObjectMeshData_Set_vertColors ( MR_ObjectMeshData * _this,
MR_PassBy value_pass_by,
MR_VertColors * value )

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