83struct StitchHolesParams
 
  224MRMESH_API EdgeId 
extendHole( 
Mesh& mesh, EdgeId a, std::function<Vector3f(
const Vector3f &)> getVertPos, FaceBitSet * outNewFaces = 
nullptr );
 
  245    explicit operator bool()
 const { 
return newFaces > 0; }
 
 
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:80
 
Definition MRMesh/MRMeshTopology.h:19
 
MRMESH_API VertId fillHoleTrivially(Mesh &mesh, EdgeId a, FaceBitSet *outNewFaces=nullptr)
Triangulates face of hole in mesh trivially .
 
MRMESH_API EdgeId makeDegenerateBandAroundHole(Mesh &mesh, EdgeId a, FaceBitSet *outNewFaces=nullptr)
 
MRMESH_API HoleFillPlan getPlanarHoleFillPlan(const Mesh &mesh, EdgeId e)
 
MRMESH_API MakeBridgeResult makeQuadBridge(MeshTopology &topology, EdgeId a, EdgeId b, FaceBitSet *outNewFaces=nullptr)
 
MRMESH_API std::vector< HoleFillPlan > getPlanarHoleFillPlans(const Mesh &mesh, const std::vector< EdgeId > &holeRepresentativeEdges)
 
MRMESH_API EdgeId extendHole(Mesh &mesh, EdgeId a, const Plane3f &plane, FaceBitSet *outNewFaces=nullptr)
 
MRMESH_API std::vector< HoleFillPlan > getHoleFillPlans(const Mesh &mesh, const std::vector< EdgeId > &holeRepresentativeEdges, const FillHoleParams ¶ms={})
 
MRMESH_API bool isHoleBd(const MeshTopology &topology, const EdgeLoop &loop)
 
MRMESH_API EdgeId buildBottom(Mesh &mesh, EdgeId a, Vector3f dir, float holeExtension, FaceBitSet *outNewFaces=nullptr)
 
MRMESH_API void fillHoles(Mesh &mesh, const std::vector< EdgeId > &as, const FillHoleParams ¶ms={})
fill all holes given by their representative edges in
 
MRMESH_API EdgeId makeBridgeEdge(MeshTopology &topology, EdgeId a, EdgeId b)
 
MRMESH_API std::vector< EdgeId > extendAllHoles(Mesh &mesh, const Plane3f &plane, FaceBitSet *outNewFaces=nullptr)
 
MRMESH_API void buildCylinderBetweenTwoHoles(Mesh &mesh, EdgeId a, EdgeId b, const StitchHolesParams ¶ms={})
Stitches two holes in Mesh .
 
MRMESH_API HoleFillPlan getHoleFillPlan(const Mesh &mesh, EdgeId e, const FillHoleParams ¶ms={})
 
MRMESH_API void executeHoleFillPlan(Mesh &mesh, EdgeId a0, HoleFillPlan &plan, FaceBitSet *outNewFaces=nullptr)
quickly triangulates the face or hole to the left of (e) given the plan (quickly compared to fillHole...
 
MRMESH_API void fillHole(Mesh &mesh, EdgeId a, const FillHoleParams ¶ms={})
Fills hole in mesh .
 
MRMESH_API MakeBridgeResult makeBridge(MeshTopology &topology, EdgeId a, EdgeId b, FaceBitSet *outNewFaces=nullptr)
 
MRMESH_API void splitQuad(MeshTopology &topology, EdgeId a, FaceBitSet *outNewFaces=nullptr)
given quadrangle face to the left of a, splits it in two triangles with new diagonal edge via dest(a)
 
MRMESH_API MakeBridgeResult makeSmoothBridge(Mesh &mesh, EdgeId a, EdgeId b, float samplingStep, FaceBitSet *outNewFaces=nullptr)
 
Definition MRCameraOrientationPlugin.h:8
 
std::vector< EdgeId > EdgeLoop
Definition MRMesh/MRMeshFwd.h:141
 
Definition MRMesh/MRMeshFillHole.h:157
 
int edgeCode2
Definition MRMesh/MRMeshFillHole.h:160
 
int edgeCode1
Definition MRMesh/MRMeshFillHole.h:160
 
Holds metrics for fillHole and buildCylinderBetweenTwoHoles triangulation .
 
Parameters structure for MR::fillHole Structure has some options to control MR::fillHole.
 
FaceBitSet * outNewFaces
If not nullptr accumulate new faces.
Definition MRMesh/MRMeshFillHole.h:41
 
enum MR::FillHoleParams::MultipleEdgesResolveMode Simple
 
int maxPolygonSubdivisions
Definition MRMesh/MRMeshFillHole.h:66
 
bool makeDegenerateBand
Definition MRMesh/MRMeshFillHole.h:61
 
bool * stopBeforeBadTriangulation
Definition MRMesh/MRMeshFillHole.h:73
 
FillHoleMetric metric
Definition MRMesh/MRMeshFillHole.h:31
 
bool smoothBd
Definition MRMesh/MRMeshFillHole.h:38
 
MultipleEdgesResolveMode
Definition MRMesh/MRMeshFillHole.h:52
 
concise representation of proposed hole triangulation
Definition MRMesh/MRMeshFillHole.h:165
 
int numTris
Definition MRMesh/MRMeshFillHole.h:167
 
std::vector< FillHoleItem > items
Definition MRMesh/MRMeshFillHole.h:166
 
Definition MRMesh/MRMeshFillHole.h:236
 
int newFaces
the number of faces added to the mesh
Definition MRMesh/MRMeshFillHole.h:238
 
EdgeId na
Definition MRMesh/MRMeshFillHole.h:242
 
EdgeId nb
Definition MRMesh/MRMeshFillHole.h:242
 
Definition MRMesh/MRMesh.h:23
 
Parameters structure for MR::buildCylinderBetweenTwoHoles Structure has some options to control MR::b...
 
FaceBitSet * outNewFaces
If not nullptr accumulate new faces.
Definition MRMesh/MRMeshFillHole.h:91
 
FillHoleMetric metric
Definition MRMesh/MRMeshFillHole.h:89