我刚开始使用pymeshlab,真的很享受。然而,我在一件事上遇到了麻烦。我正在尝试使用vertex_attribute_transfer筛选器,但更愿意使用世界单位而不是百分比作为上边界参数。我认为我可以根据我想要的世界单位除以边界框x100的对角长度来计算参数的正确百分比,但我不知道如何在MeshSet中获取网格的边界框信息。
我看到compute_geometric_measures工具应该提供基于文档的边界框信息,但结果是一个包含与网格相关的其他信息的字典(如平均边长度、面积等--这仍然是有用的信息)。我还看到有一个完整的边界框类,但我不知道如何使用它来获取MeshSet中特定网格的边界框信息。
谁能提供一个例子,在pymeshlab中获取网格的边界框信息?
发布于 2021-01-18 20:48:20
弄清楚了如何获取边界框信息。对于任何想知道的人来说,它看起来是这样的:
boundingbox = ms.current_mesh().bounding_box()
diag = boundingbox.diagonal()发布于 2021-01-21 20:58:25
我将扩展Phil Devine给出的原始答案,以给出一个完整的可执行示例。此示例读取网格并调用diagonal()方法。
import pymeshlab as ml
ms = ml.MeshSet()
ms.load_new_mesh('input.ply')
m = ms.current_mesh()
#Build the Bounding Box and get its diagonal length
diag = m.bounding_box().diagonal()
print('Diagonal of this model:', diag)https://stackoverflow.com/questions/65767463
复制相似问题