49 std::vector<VertDuplication>* dups =
nullptr, VertId lastValidVert = {} );
56 std::vector<VertDuplication> * dups =
nullptr,
75 const Triangulation & t, VertId maxVertId,
76 const std::vector<MeshPiece> & pieces,
86 FaceBitSet * createdFaces =
nullptr );
119 VertMap * optionalVertOldToNew =
nullptr );
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:79
Definition MRMesh/MRMeshTopology.h:18
std::vector<T>-like container that requires specific indexing type,
Definition MRMesh/MRVector.h:19
std::function< bool(float)> ProgressCallback
Definition MRMesh/MRMeshFwd.h:663
MRMESH_API void addTriangles(MeshTopology &res, const Triangulation &t, const BuildSettings &settings={})
MRMESH_API size_t duplicateNonManifoldVertices(Triangulation &t, FaceBitSet *region=nullptr, std::vector< VertDuplication > *dups=nullptr, VertId lastValidVert={})
MRMESH_API Mesh fromPointTriples(const std::vector< Triangle3f > &posTriples)
MRMESH_API MeshTopology fromTrianglesDuplicatingNonManifoldVertices(Triangulation &t, std::vector< VertDuplication > *dups=nullptr, const BuildSettings &settings={})
MRMESH_API MeshTopology fromFaceSoup(const std::vector< VertId > &verts, const Vector< VertSpan, FaceId > &faces, const BuildSettings &settings={}, ProgressCallback progressCb={})
construct mesh topology from face soup, where each face can have arbitrary degree (not only triangles...
MRMESH_API MeshTopology fromDisjointMeshPieces(const Triangulation &t, VertId maxVertId, const std::vector< MeshPiece > &pieces, const BuildSettings &settings={})
MRMESH_API MeshTopology fromTriangles(const Triangulation &t, const BuildSettings &settings={}, ProgressCallback progressCb={})
MRMESH_API int uniteCloseVertices(Mesh &mesh, float closeDist, bool uniteOnlyBd=true, VertMap *optionalVertOldToNew=nullptr)
Definition MRCameraOrientationPlugin.h:8
Definition MRMeshBuilderTypes.h:30
Definition MRMesh/MRMeshBuilder.h:65
VertMap vmap
Definition MRMesh/MRMeshBuilder.h:67
MeshTopology topology
Definition MRMesh/MRMeshBuilder.h:68
FaceMap fmap
Definition MRMesh/MRMeshBuilder.h:66
FaceBitSet rem
Definition MRMesh/MRMeshBuilder.h:69
Definition MRMesh/MRMeshBuilder.h:93
std::vector< MeshBuilder::VertDuplication > * optionalDuplications
Definition MRMesh/MRMeshBuilder.h:110
bool uniteOnlyBd
if true, only vertices from this region can be affected
Definition MRMesh/MRMeshBuilder.h:98
VertBitSet * region
if true - try to duplicates non-manifold vertices instead of removing faces
Definition MRMesh/MRMeshBuilder.h:101
VertMap * optionalVertOldToNew
this can be used to map attributes to duplicated vertices
Definition MRMesh/MRMeshBuilder.h:107
bool duplicateNonManifold
is the mapping of vertices: before -> after
Definition MRMesh/MRMeshBuilder.h:104
float closeDist
< vertices located closer to each other than
Definition MRMesh/MRMeshBuilder.h:95
Definition MRMesh/MRMeshBuilder.h:40
VertId dupVert
Definition MRMesh/MRMeshBuilder.h:42
VertId srcVert
Definition MRMesh/MRMeshBuilder.h:41
Definition MRMesh/MRMesh.h:22