MeshLib C Docs
Loading...
Searching...
No Matches
MRMeshExtrude.h File Reference
#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_Mesh MR_Mesh
 
typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet
 
typedef struct MR_phmap_flat_hash_map_MR_VertId_MR_VertId MR_phmap_flat_hash_map_MR_VertId_MR_VertId
 
typedef struct MR_MakeDegenerateBandAroundRegionParams MR_MakeDegenerateBandAroundRegionParams
 Generated from class MR::MakeDegenerateBandAroundRegionParams.
 

Functions

MRC_API MR_FaceBitSet *const * MR_MakeDegenerateBandAroundRegionParams_Get_outNewFaces (const MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_outNewFaces (MR_MakeDegenerateBandAroundRegionParams *_this, MR_FaceBitSet *value)
 
MRC_API MR_FaceBitSet ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_outNewFaces (MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API MR_UndirectedEdgeBitSet *const * MR_MakeDegenerateBandAroundRegionParams_Get_outExtrudedEdges (const MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_outExtrudedEdges (MR_MakeDegenerateBandAroundRegionParams *_this, MR_UndirectedEdgeBitSet *value)
 
MRC_API MR_UndirectedEdgeBitSet ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_outExtrudedEdges (MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API float *const * MR_MakeDegenerateBandAroundRegionParams_Get_maxEdgeLength (const MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_maxEdgeLength (MR_MakeDegenerateBandAroundRegionParams *_this, float *value)
 
MRC_API float ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_maxEdgeLength (MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API MR_phmap_flat_hash_map_MR_VertId_MR_VertId *const * MR_MakeDegenerateBandAroundRegionParams_Get_new2OldMap (const MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_new2OldMap (MR_MakeDegenerateBandAroundRegionParams *_this, MR_phmap_flat_hash_map_MR_VertId_MR_VertId *value)
 
MRC_API MR_phmap_flat_hash_map_MR_VertId_MR_VertId ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_new2OldMap (MR_MakeDegenerateBandAroundRegionParams *_this)
 
MRC_API MR_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_DefaultConstruct (void)
 
MRC_API MR_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_ConstructFrom (MR_FaceBitSet *outNewFaces, MR_UndirectedEdgeBitSet *outExtrudedEdges, float *maxEdgeLength, MR_phmap_flat_hash_map_MR_VertId_MR_VertId *new2OldMap)
 
MRC_API const MR_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_OffsetPtr (const MR_MakeDegenerateBandAroundRegionParams *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_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_OffsetMutablePtr (MR_MakeDegenerateBandAroundRegionParams *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_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_ConstructFromAnother (const MR_MakeDegenerateBandAroundRegionParams *_other)
 
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Destroy (const MR_MakeDegenerateBandAroundRegionParams *_this)
 Destroys a heap-allocated instance of MR_MakeDegenerateBandAroundRegionParams. Does nothing if the pointer is null.
 
MRC_API void MR_MakeDegenerateBandAroundRegionParams_DestroyArray (const MR_MakeDegenerateBandAroundRegionParams *_this)
 Destroys a heap-allocated array of MR_MakeDegenerateBandAroundRegionParams. Does nothing if the pointer is null.
 
MRC_API MR_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_AssignFromAnother (MR_MakeDegenerateBandAroundRegionParams *_this, const MR_MakeDegenerateBandAroundRegionParams *_other)
 
MRC_API void MR_makeDegenerateBandAroundRegion (MR_Mesh *mesh, const MR_FaceBitSet *region, const MR_MakeDegenerateBandAroundRegionParams *params)
 Create a band of degenerate faces along the border of the specified region and the rest of the mesh.
 

Typedef Documentation

◆ MR_FaceBitSet

typedef struct MR_FaceBitSet MR_FaceBitSet

◆ MR_MakeDegenerateBandAroundRegionParams

◆ MR_Mesh

typedef struct MR_Mesh MR_Mesh

◆ MR_phmap_flat_hash_map_MR_VertId_MR_VertId

◆ MR_UndirectedEdgeBitSet

Function Documentation

◆ MR_makeDegenerateBandAroundRegion()

MRC_API void MR_makeDegenerateBandAroundRegion ( MR_Mesh * mesh,
const MR_FaceBitSet * region,
const MR_MakeDegenerateBandAroundRegionParams * params )

Create a band of degenerate faces along the border of the specified region and the rest of the mesh.

The function is useful for extruding the region without changing the existing faces and creating holes

Parameters
mesh- the target mesh
region- the region required to be separated by a band of degenerate faces
params- optional output parameters Generated from function MR::makeDegenerateBandAroundRegion. Parameter mesh can not be null. It is a single object. Parameter region can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it.

◆ MR_MakeDegenerateBandAroundRegionParams_AssignFromAnother()

MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_AssignFromAnother ( MR_MakeDegenerateBandAroundRegionParams * _this,
const MR_MakeDegenerateBandAroundRegionParams * _other )

Generated from a method of class MR::MakeDegenerateBandAroundRegionParams 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_MakeDegenerateBandAroundRegionParams_ConstructFrom()

MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_ConstructFrom ( MR_FaceBitSet * outNewFaces,
MR_UndirectedEdgeBitSet * outExtrudedEdges,
float * maxEdgeLength,
MR_phmap_flat_hash_map_MR_VertId_MR_VertId * new2OldMap )

Constructs MR::MakeDegenerateBandAroundRegionParams elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_MakeDegenerateBandAroundRegionParams_Destroy() to free it when you're done using it.

◆ MR_MakeDegenerateBandAroundRegionParams_ConstructFromAnother()

MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_ConstructFromAnother ( const MR_MakeDegenerateBandAroundRegionParams * _other)

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

◆ MR_MakeDegenerateBandAroundRegionParams_DefaultConstruct()

MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_DefaultConstruct ( void )

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

◆ MR_MakeDegenerateBandAroundRegionParams_DefaultConstructArray()

MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_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_MakeDegenerateBandAroundRegionParams_DestroyArray(). Use MR_MakeDegenerateBandAroundRegionParams_OffsetMutablePtr() and MR_MakeDegenerateBandAroundRegionParams_OffsetPtr() to access the array elements.

◆ MR_MakeDegenerateBandAroundRegionParams_Destroy()

MRC_API void MR_MakeDegenerateBandAroundRegionParams_Destroy ( const MR_MakeDegenerateBandAroundRegionParams * _this)

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

◆ MR_MakeDegenerateBandAroundRegionParams_DestroyArray()

MRC_API void MR_MakeDegenerateBandAroundRegionParams_DestroyArray ( const MR_MakeDegenerateBandAroundRegionParams * _this)

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

◆ MR_MakeDegenerateBandAroundRegionParams_Get_maxEdgeLength()

MRC_API float *const * MR_MakeDegenerateBandAroundRegionParams_Get_maxEdgeLength ( const MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named maxEdgeLength. 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_MakeDegenerateBandAroundRegionParams_Get_new2OldMap()

MRC_API MR_phmap_flat_hash_map_MR_VertId_MR_VertId *const * MR_MakeDegenerateBandAroundRegionParams_Get_new2OldMap ( const MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named new2OldMap. 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_MakeDegenerateBandAroundRegionParams_Get_outExtrudedEdges()

MRC_API MR_UndirectedEdgeBitSet *const * MR_MakeDegenerateBandAroundRegionParams_Get_outExtrudedEdges ( const MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named outExtrudedEdges. 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_MakeDegenerateBandAroundRegionParams_Get_outNewFaces()

MRC_API MR_FaceBitSet *const * MR_MakeDegenerateBandAroundRegionParams_Get_outNewFaces ( const MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named outNewFaces. 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_MakeDegenerateBandAroundRegionParams_GetMutable_maxEdgeLength()

MRC_API float ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_maxEdgeLength ( MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a mutable pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named maxEdgeLength. 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_MakeDegenerateBandAroundRegionParams_GetMutable_new2OldMap()

MRC_API MR_phmap_flat_hash_map_MR_VertId_MR_VertId ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_new2OldMap ( MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a mutable pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named new2OldMap. 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_MakeDegenerateBandAroundRegionParams_GetMutable_outExtrudedEdges()

MRC_API MR_UndirectedEdgeBitSet ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_outExtrudedEdges ( MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a mutable pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named outExtrudedEdges. 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_MakeDegenerateBandAroundRegionParams_GetMutable_outNewFaces()

MRC_API MR_FaceBitSet ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_outNewFaces ( MR_MakeDegenerateBandAroundRegionParams * _this)

Returns a mutable pointer to a member variable of class MR::MakeDegenerateBandAroundRegionParams named outNewFaces. 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_MakeDegenerateBandAroundRegionParams_OffsetMutablePtr()

MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_OffsetMutablePtr ( MR_MakeDegenerateBandAroundRegionParams * 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_MakeDegenerateBandAroundRegionParams_OffsetPtr()

MRC_API const MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_OffsetPtr ( const MR_MakeDegenerateBandAroundRegionParams * 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_MakeDegenerateBandAroundRegionParams_Set_maxEdgeLength()

MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_maxEdgeLength ( MR_MakeDegenerateBandAroundRegionParams * _this,
float * value )

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

◆ MR_MakeDegenerateBandAroundRegionParams_Set_new2OldMap()

MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_new2OldMap ( MR_MakeDegenerateBandAroundRegionParams * _this,
MR_phmap_flat_hash_map_MR_VertId_MR_VertId * value )

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

◆ MR_MakeDegenerateBandAroundRegionParams_Set_outExtrudedEdges()

MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_outExtrudedEdges ( MR_MakeDegenerateBandAroundRegionParams * _this,
MR_UndirectedEdgeBitSet * value )

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

◆ MR_MakeDegenerateBandAroundRegionParams_Set_outNewFaces()

MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_outNewFaces ( MR_MakeDegenerateBandAroundRegionParams * _this,
MR_FaceBitSet * value )

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