如何在 Java 中转换 3D 模型

如何在 Java 中转换 3D 模型

使用 aspose-3d-foss 进行格式转换是一个两步操作:使用 scene.open() 加载源文件,然后使用 scene.save() 保存到目标。

分步指南

步骤 1:安装软件包

<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>aspose-3d-foss</artifactId>
  <version>26.1.0</version>
</dependency>

步骤 2:加载并转换

import com.aspose.threed.Scene;

Scene scene = new Scene();
scene.open("input.fbx");
scene.save("output.glb");

输出格式是根据文件扩展名推断的。


第3步:使用保存选项

import com.aspose.threed.GltfSaveOptions;
import com.aspose.threed.FileContentType;

GltfSaveOptions opts = new GltfSaveOptions();
opts.setContentType(FileContentType.BINARY);
scene.save("output.glb", opts);

注意: FBX 导出在 aspose-3d-foss 中不可用。保存到 .fbx 会无条件抛出 ExportException。使用 OBJ、STL 或 glTF/GLB 作为输出格式。


常用转换配方

目标备注
OBJ to GLB用于 Web 的二进制 glTFscene.open("in.obj"); scene.save("out.glb");
FBX to STL用于 3D 打印的三角化scene.open("in.fbx"); scene.save("out.stl");
STL to OBJ用于建模的 Wavefrontscene.open("in.stl"); scene.save("out.obj");

常见问题 (FAQ)

转换会保留材料吗?

材质映射是尽力而为的。并非所有格式都具备相同的材质属性。

我可以批量转换文件吗?

为每个文件创建一个新的 Scene。每个实例都是独立的。

 中文