使用 trimesh 从 glb 文件加载网格

Load Mesh from a glb file using trimesh

我是 3D 几何的新手。我正在尝试使用 python 库 trimesh 从 glb 文件中提取网格。我想不出这样做的正确方法。 我的要求是我需要一个对象的 3D 网格(作为邻接矩阵),以便我可以对它们应用非欧几里得卷积运算符。

有什么关于我应该看什么的建议吗?

您可以使用 trimesh.load 加载您的 glTF 文件。请注意,return 类型取决于模型文件的文件类型。对于 glTF 文件,它将 return trimesh.Scene 的一个实例。这个场景有各种各样的属性,比如相机、灯光还有几何体。这是因为 glTF 文件可以包含更多的模型数据。每个几何体都是 trimesh.Trimesh 的一个实例,它是几何体的基础 class,并且有一个 edges_sparse 属性 表示模型的邻接矩阵。

总而言之:

scene = trimesh.load("some_file.glb")
geometries = list(scene.geometry.values())
geometry = geometries[0]
adjacency_matrix = geometry.edges_sparse

使用文档来解决这个问题有点乏味。我倾向于查看源代码或在 IDE:

中打开调试器