首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PyMeshLab - MLS投影APSS -循环的当前和代理网格ID

PyMeshLab - MLS投影APSS -循环的当前和代理网格ID
EN

Stack Overflow用户
提问于 2021-10-08 11:17:05
回答 1查看 74关注 0票数 0

我正在尝试通过pymeshlab处理一批STL文件。我使用了两个过滤器,即"remeshing_isotropic_explicit_remeshing“和"mls_projection_apss”。过滤器"mls_projection_apss“出现了问题,默认情况下,控制网格和代理网格都使用网格id =0,导致算法在所有未来迭代中始终使用id为0的网格。

请告诉我如何定义网格集中当前网格的ID是用作控制和代理网格,而不是默认的"0“。

当前代码:

代码语言:javascript
复制
for filename in os.listdir(inputdir):
    if filename.endswith(".stl"):
        ms.load_new_mesh (os.path.join(inputdir, filename))
        print(os.path.join(filename))
        ms.current_mesh_id()
        print(ms.current_mesh_id())
        ms.remeshing_isotropic_explicit_remeshing(targetlen=0.1, checksurfdist=True, maxsurfdist=0.1)
        ms.mls_projection_apss(controlmesh=, proxymesh=, filterscale=2)
        ms.save_current_mesh(os.path.join(outputdir_2, filename))
EN

回答 1

Stack Overflow用户

发布于 2021-10-15 10:36:10

这对我来说很有效,但我不确定这是否是你想要的。我检测到的一个问题是,ms.mls_projection_apss()似乎将current_mesh更改为0,因此ms.save_current_mesh()保存的是原始网格,而不是最小二乘滤波的结果。

代码语言:javascript
复制
import pymeshlab as ml
ms = ml.MeshSet()

for filename in os.listdir(inputdir):
    if filename.endswith(".stl"):
        ms.load_new_mesh (os.path.join(inputdir, filename))
        m = ms.current_mesh()
        print(os.path.join(filename), ms.current_mesh_id(), m.vertex_number(), 'vertex', m.face_number(), 'faces' )

        ms.remeshing_isotropic_explicit_remeshing(targetlen=0.1, checksurfdist=True, maxsurfdist=0.1)

        #Get the id of the last mesh in the set
        last_id = ms.number_meshes()-1
        ms.mls_projection_apss(controlmesh=last_id, proxymesh=last_id, filterscale=2)

        #Ensure we select last mesh before saving result
        ms.set_current_mesh(ms.number_meshes()-1)
        m = ms.current_mesh()
        print("Saving", os.path.join(outputdir_2, filename), m.vertex_number(), 'vertex', m.face_number(), 'faces' )
        ms.save_current_mesh(os.path.join(outputdir_2, filename))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69494994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档