MeshLab

发布于 2022-08-06  245 次阅读


Export the principal curvature vectors

  • Compute the curvature
    >
  • Export the mesh, the discrete curvature is placed in the quality field and can then be exported in for example ply format
    > if export the PLY with just the 'quality' flag ticked then the 4th vertex column is the curvature, depending on which you calculated you'll get the mean curvature or the gaussian curvature.

Merging multiple mesh files

Filters --> Mesh layer --> Flatten visible layers

以下代码不能很好的对多个网格进行布尔操作(Boolean)。算是个坑,写这里避坑吧。

import pymeshlab
ms = pymeshlab.MeshSet()

keys = ['0', '6', '7', '8', '9', '12', '13', '14']

ms.load_new_mesh('./stl/binder_' + keys[0] + '.stl')

# It seems that pymeshlab does not work well with the following loop
# for i in keys[1:]:
#     ms.load_new_mesh('binder_' + i + '.stl')
#
#     ms.generate_boolean_union()
#
#     temp = ms.current_mesh()
#
#     ms = pymeshlab.MeshSet()
#     ms.add_mesh(temp)

ms.load_new_mesh('./stl/binder_' + keys[3] + '.stl')
ms.generate_boolean_union()


temp = ms.current_mesh()
ms_temp = pymeshlab.MeshSet()
ms_temp.add_mesh(temp)
ms_temp.load_new_mesh('./stl/binder_' + keys[4] + '.stl')
ms_temp.generate_boolean_union()

ms_.save_current_mesh('./stl/binder_union.stl')

第一次修订: 20231120 - 增加pymeshlab的代码。

届ける言葉を今は育ててる
最后更新于 2023-11-20