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
 

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)
 
MRC_API MR_MakeDegenerateBandAroundRegionParamsMR_MakeDegenerateBandAroundRegionParams_OffsetMutablePtr (MR_MakeDegenerateBandAroundRegionParams *ptr, ptrdiff_t i)
 
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

Generated from class MR::MakeDegenerateBandAroundRegionParams. 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_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 method MR::MakeDegenerateBandAroundRegionParams::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_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. The reference to the parameter outNewFaces might be preserved in the constructed object. The reference to the parameter outExtrudedEdges might be preserved in the constructed object. The reference to the parameter maxEdgeLength might be preserved in the constructed object. The reference to the parameter new2OldMap might be preserved in the constructed 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. When this function is called, this object will drop any object references it had previously.

◆ MR_MakeDegenerateBandAroundRegionParams_ConstructFromAnother()

MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_ConstructFromAnother ( const MR_MakeDegenerateBandAroundRegionParams * _other)

Generated from constructor MR::MakeDegenerateBandAroundRegionParams::MakeDegenerateBandAroundRegionParams. 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_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. The reference to the parameter ptr might be preserved in the return value.

◆ 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. The reference to the parameter ptr might be preserved in the return value.

◆ 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. The reference to the parameter value might be preserved in this object in element maxEdgeLength. When this function is called, this object will drop object references it had previously in maxEdgeLength.

◆ 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. The reference to the parameter value might be preserved in this object in element new2OldMap. When this function is called, this object will drop object references it had previously in new2OldMap.

◆ 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. The reference to the parameter value might be preserved in this object in element outExtrudedEdges. When this function is called, this object will drop object references it had previously in outExtrudedEdges.

◆ 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. The reference to the parameter value might be preserved in this object in element outNewFaces. When this function is called, this object will drop object references it had previously in outNewFaces.