1. 产品
  2.   Aspose.3D
  3.   Aspose.3D FOSS for Python

Aspose.3D FOSS for Python

加载、创建、转换和导出来自 Python 的 3D 场景 — 免费且开源。

开源Python库用于3D文件处理

Aspose.3D FOSS for Python 是一个 MIT 许可证的、纯-Python 库,用于处理 3D 文件格式。只需一条 pip 命令即可安装,并立即开始读取、构建和写入 3D 场景,无需安装任何本机运行时、外部 SDK 或第三方渲染器。

该库提供了一个围绕 SceneNodeMeshCameraLightTransform 构建的简洁场景图 API,这与专业 3D 工具使用的概念模型相同。支持的格式包括 OBJ(支持 .mtl 材质加载)、STL(二进制和 ASCII,已验证往返)、glTF 2.0 / GLB(PBR 材质)、COLLADA(DAE)、3MF 和 FBX。每种格式的加载和保存选项让您能够在不编写任何特定格式解析代码的情况下控制坐标翻转、缩放、法线归一化和材质加载。

Aspose.3D FOSS 支持 Python 3.7 至 3.12,并在 Windows、macOS 和 Linux CI 运行器、Docker 容器以及无服务器环境中表现一致。企业功能和支持请参见 Aspose.3D for Python — Enterprise Product

支持3D格式和场景图 API

  • OBJ / MTL: 加载带有相应材质定义的 Wavefront OBJ 文件。
  • STL: 读取和写入二进制及 ASCII STL,具备完整的往返验证。
  • glTF 2.0 / GLB: 通过 GltfSaveOptions 实现 PBR 材质加载和二进制 GLB 输出。
  • COLLADA, 3MF, FBX: 通过每种格式的选项类提供额外的格式支持。
  • Scene-graph API: Scene, Node, Mesh, Camera, Light, Transform.

在哪里可以使用Aspose.3D FOSS?

  • 资产验证管道: 核实,重新定位和再出口CI中的3D资金.
  • 游戏开发工具: 批量处理的OBJ/GLB网格没有本地引擎.
  • **3D打印工作流程:**阅读,验证和再出口STL和3MF文件.
  • 网络后端: 在Docker或无服务器功能中提供3D转换终点.
  • 内容迁移: 转换格式家庭之间.

设置格式选项和协调控制

  • 坐标系统方向: 转轴,并根据格式调整尺度.
  • 正常化: 在加载或保存时自动实现顶点的正常.
  • 材料加载控制: 启用或禁用MTL/纹理加載,以便更快的解析.
  • **二进制与JSON输出:**通过选项选择紧的GLB或可读的人类glTF.
  • **回程忠诚度:**场景图结构在加载和保存周期中保持 (节点保证忠实性取决于格式,并未对所有格局进行独立验证).

开发者经验

编译Aspose.3D} FOSS for Python使用单个命令pip install aspose-3d-foss进行安装.该库是纯属Python,没有本地扩展程序和系统包可安裝.

场景图 API反映了专业3D工具的概念模型,因此对于任何熟悉Three.js或Blender数据模型的人来说,学习曲线是短暂的. 该库是MIT许可证的开源软件,欢迎GitHub上的bug报告和贡献.

载入一个 OBJ 场景并将其输出为 glTF

使用 pip 安装,然后调用 Scene.open() 并传入 ObjLoadOptions 来加载 OBJ 文件及其 MTL 材质定义。一次性使用 scene.save() 并使用 .gltf 扩展名即可写入 glTF 2.0 JSON 文件——无需格式注册表或转换器对象。

pip install aspose-3d-foss
from aspose.threed import Scene
from aspose.threed.formats import ObjLoadOptions
# Load an OBJ file (with .mtl materials)
scene = Scene()
scene.open("model.obj", ObjLoadOptions())
# Export as glTF 2.0
scene.save("model.gltf")

将STL转换为二进制GLB使用坐标翻转

要生成紧凑的二进制 GLB 而不是默认的 JSON glTF,传入一个带有 binary_mode = TrueGltfSaveOptions 实例。相同的模式适用于坐标系调整 — 将选项类替换为您所针对的格式。

from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene()
scene.open("mesh.stl")
# Save as binary GLB
opts = GltfSaveOptions()
opts.binary_mode = True
scene.save("mesh.glb", opts)

常见问题

什么是 Aspose.3D FOSS 用于 Python?

它是一个免费的,获得MIT许可证的纯Python库用于加载,3D场景的操作和保存,而无需安装任何本地运行时间或外部SDK.

支持哪些3D格式?

OBJ (带有 .mtl),STL (二进制和ASCII),glTF 2.0 和GLB,Collada (DAE),3MF和FBX.每个格式都有一个专用的加载/保存选项类.

它需要任何本土依赖吗?

没有. Aspose.3D FOSS for Python 是纯粹的 Python,无本地扩展. 它在 Windows,macOS 和 Linux 上运行,不需要任何编译步骤.

我怎么安装它?

运行 pip install aspose-3d-foss。不需要额外的系统软件包或本机扩展。

我能控制坐标系统的方向吗?

是的.每个格式选项类允许您翻动轴,调整尺度和正常化标准而不需要编写任何格局特定的解析代码.

支持哪些Python版本?

支持Python 3.7 到3.12.该库在所有主要操作系统上运行相同.

源代码是否可用?

是的. 图书馆是MIT授权,并托管在GitHub上.

  

支持和学习资源

 中文