【问题标题】:How do I get coordinates from .obj-file in python?如何从 python 中的 .obj 文件获取坐标?
【发布时间】:2015-05-01 21:29:57
【问题描述】:

我的任务是在 python 中使用 matplotlib 将 3D 对象从 .obj 文件(使用 Blender)转换为 2D 图片。从 3D 转换为 2D 是使用矩阵完成的,所以没关系,但我不知道如何从文件中获取坐标。当我打印文件的内容时,我得到了这个:

# Blender v2.73 (sub 0) OBJ File: ''
# www.blender.org
mtllib test.mtl
o Cube
v 1.000000 -1.000000 -1.000000
v 1.000000 -1.000000 1.000000
v -1.000000 -1.000000 1.000000
v -1.000000 -1.000000 -1.000000
v 0.388735 1.108067 -2.206034
v 1.538758 0.520736 2.855389
v -0.570206 0.995216 0.054703
v -0.454593 3.815588 -1.404268
usemtl Material
s off

有人可以帮帮我吗? :)

【问题讨论】:

  • 您最好让 Blender 为您解释 .obj 文件格式,只需将其导入 Blender,然后编写一个迭代顶点的导出脚本。

标签: python matplotlib blender .obj


【解决方案1】:

首先创建一个列表来存储所有顶点。该列表的每个元素本身都是一个列表,其中包含 x、y 和 z 坐标作为浮点数。

然后逐行读取 .obj 文件,将每一行拆分为一个列表。如果该列表的第一个元素是 'v',则将列表中接下来的 3 个字符串转换为 float 并将它们存储到新列表中。然后将该列表附加到您的顶点列表中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    • 2013-11-22
    • 2019-01-21
    • 2021-12-03
    相关资源
    最近更新 更多