Giter VIP home page Giter VIP logo

Comments (1)

Grantim avatar Grantim commented on June 9, 2024 1

Hello!

My guess is that a subdivision happens + some smoothing operation like `PositionVertsSmoothly".

You are right, it is exactly what happens there:

from meshlib import mrmeshpy as mm

path = "/path/to/file"

mesh = mm.loadMesh(path+"filledHole.stl")

avgEdgeLength = 0.0
numEdges = 0
for i in range(mesh.topology.undirectedEdgeSize()):
	dirEdge = mm.EdgeId(i*2)
	org = mesh.topology.org(dirEdge)
	dest = mesh.topology.dest(dirEdge)
	avgEdgeLength += (mesh.points.vec[dest.get()] - mesh.points.vec[org.get()]).length()
	numEdges = numEdges + 1
avgEdgeLength = avgEdgeLength/numEdges


fillParams = mm.FillHoleParams()
fillParams.metric = mm.getUniversalMetric(mesh)
holes = mesh.topology.findHoleRepresentiveEdges()
for e in holes:
	newFaces = mm.FaceBitSet()
	fillParams.outNewFaces = newFaces
	mm.fillHole(mesh,e,fillParams)
	
	newVerts = mm.VertBitSet()
	subdivSettings = mm.SubdivideSettings()
	subdivSettings.maxEdgeLen = avgEdgeLength
	subdivSettings.maxEdgeSplits = 20000
	subdivSettings.region = newFaces
	subdivSettings.newVerts = newVerts
	mm.subdivideMesh(mesh,subdivSettings)

	mm.positionVertsSmoothly(mesh,newVerts)

mm.saveMesh(mesh,path+"outNewMesh.stl")

from meshlib.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.