MeshLib
 
Loading...
Searching...
No Matches
MRMeshFillHole.h File Reference
#include "MRMeshFwd.h"
#include "MRMeshMetrics.h"

Go to the source code of this file.

Classes

struct  MRFillHoleParams
 Parameters structure for mrFillHole
Structure has some options to control mrFillHole. More...
 

Typedefs

typedef MR_EXTERN_C_BEGIN enum MRFillHoleMetricMultipleEdgesResolveMode MRFillHoleParamsMultipleEdgesResolveMode
 
typedef struct MRFillHoleParams MRFillHoleParams
 

Enumerations

enum  MRFillHoleMetricMultipleEdgesResolveMode { MRFillHoleMetricMultipleEdgesResolveModeNone = 0 , MRFillHoleMetricMultipleEdgesResolveModeSimple , MRFillHoleMetricMultipleEdgesResolveModeStrong }
 

Functions

MRMESHC_API MRFillHoleParams mrFillHoleParamsNew (void)
 
MRMESHC_API void mrFillHole (MRMesh *mesh, MREdgeId a, const MRFillHoleParams *params)
 Fills hole in mesh
.
 
MRMESHC_API void mrFillHoles (MRMesh *mesh, const MREdgeId *as, size_t asNum, const MRFillHoleParams *params)
 fill all holes given by their representative edges in
 

Typedef Documentation

◆ MRFillHoleParams

typedef struct MRFillHoleParams MRFillHoleParams

◆ MRFillHoleParamsMultipleEdgesResolveMode

Enumeration Type Documentation

◆ MRFillHoleMetricMultipleEdgesResolveMode

Enumerator
MRFillHoleMetricMultipleEdgesResolveModeNone 
MRFillHoleMetricMultipleEdgesResolveModeSimple 
MRFillHoleMetricMultipleEdgesResolveModeStrong 

Function Documentation

◆ mrFillHole()

MRMESHC_API void mrFillHole ( MRMesh * mesh,
MREdgeId a,
const MRFillHoleParams * params )

Fills hole in mesh
.

Fills given hole represented by one of its edges (having no valid left face),
uses fillHoleTrivially if cannot fill hole without multiple edges,
default metric: CircumscribedFillMetric

Before
After

Next picture show, how newly generated faces can be smoothed MR::positionVertsSmoothly MR::subdivideMesh

Fill with smooth
Parameters
meshmesh with hole
aEdgeId which represents hole (should not have valid left FaceId)
paramsparameters of hole filling
See also
buildCylinderBetweenTwoHoles
fillHoleTrivially
FillHoleParams

◆ mrFillHoleParamsNew()

MRMESHC_API MRFillHoleParams mrFillHoleParamsNew ( void )

◆ mrFillHoles()

MRMESHC_API void mrFillHoles ( MRMesh * mesh,
const MREdgeId * as,
size_t asNum,
const MRFillHoleParams * params )

fill all holes given by their representative edges in

Parameters
as