1. Продукты
  2.   Aspose.3D
  3.   Aspose.3D FOSS for Java

Aspose.3D FOSS для Java

Загружайте, создавайте, трансформируйте и экспортируйте 3D‑сцены из Java — бесплатно и с открытым исходным кодом.

Открытая библиотека Java для обработки 3D‑файлов

Aspose.3D FOSS для Java — это библиотека с лицензией MIT, полностью на Java, предназначенная для работы с 3D‑форматами файлов. Добавьте единственную зависимость Maven и сразу начните читать, конструировать и записывать 3D‑сцены без установки какого‑либо нативного рантайма, внешнего SDK или стороннего рендерера.

Библиотека предоставляет чистый API графа сцены, построенный вокруг Scene, Node, Mesh, Camera и Transform, той же концептуальной модели, что используют профессиональные 3D‑инструменты. Поддерживаемые форматы включают OBJ (с загрузкой материалов .mtl), STL (бинарный и ASCII, проверено обратным преобразованием), glTF 2.0 (материалы PBR), GLB (бинарный glTF) и FBX (только импорт). Параметры загрузки и сохранения для каждого формата позволяют управлять инвертированием координат, масштабом, нормализацией нормалей и загрузкой материалов без написания кода парсинга конкретного формата.

Aspose.3D FOSS требует Java 21 или новее и работает одинаково на Windows, macOS и Linux‑агентах CI, в Docker‑контейнерах и безсерверных средах. Нет нативного расширения для компиляции и нет системного пакета для установки.

Поддержка 3D‑форматов и API графа сцены

  • OBJ / MTL: Загрузка файлов Wavefront OBJ с сопутствующими определениями материалов.
  • STL: Чтение и запись как бинарных, так и ASCII STL с полной проверкой обратного преобразования.
  • glTF 2.0 / GLB: Загрузка PBR‑материалов и экспорт через GltfSaveOptions. Используйте setContentType(FileContentType.BINARY) для вывода GLB.
  • FBX: Поддержка импорта для загрузки файлов FBX (экспорт недоступен).
  • Scene-graph API: Scene, Node, Mesh, Camera, Transform.

Где можно использовать Aspose.3D FOSS

  • Конвейеры проверки активов: Проверять, переориентировать и повторно экспортировать 3D‑активы в CI.
  • Инструменты разработки игр: Пакетная обработка OBJ и STL мешей без использования собственного движка.
  • Рабочие процессы 3D‑печати: Читать, проверять и повторно экспортировать STL‑файлы.
  • Web backends: Обслуживание конечных точек 3D‑конверсии в Docker или безсерверных функциях.
  • Content migration: Масштабное преобразование между семействами форматов.

Опции для каждого формата и управление координатами

  • Ориентация системы координат: Переворачивать оси и корректировать масштаб в зависимости от формата без пользовательского кода.
  • Нормализация нормалей: Автоматически нормализовать нормали вершин при загрузке или сохранении.
  • Управление загрузкой материалов: Включать или отключать загрузку MTL/текстур для более быстрой обработки.
  • Красивый вывод: Выбирать компактный или человекочитаемый JSON glTF через параметры.
  • Точность обратного прохода: Неизвестные узлы графа сцены сохраняются дословно при повторном сохранении.

Опыт разработчика

Aspose.3D FOSS для установок Java с единственной Maven‑зависимостью (com.aspose:aspose-3d-foss:26.1.0). Библиотека полностью написана на Java, без нативных расширений для компиляции и без необходимости установки системных пакетов.

API графа сцены отражает концептуальную модель профессиональных 3D‑инструментов, поэтому кривая обучения коротка для тех, кто знаком с моделью данных Three.js или Blender. Библиотека лицензирована по MIT, открыта, и приветствует сообщения об ошибках и вклады на GitHub.

Загрузить сцену OBJ и экспортировать в glTF

Добавьте Maven‑зависимость, затем вызовите Scene.fromFile("model.obj"), чтобы загрузить OBJ‑файл вместе с его определениями материалов MTL. Один вызов scene.save() с расширением .gltf записывает файл JSON glTF 2.0 без необходимости реестра форматов или объекта‑конвертера.

<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>aspose-3d-foss</artifactId>
  <version>26.1.0</version>
</dependency>
import com.aspose.threed.*;

// Загрузить OBJ‑файл (с материалами .mtl)
Scene scene = Scene.fromFile("model.obj");

// Экспортировать как glTF 2.0
scene.save("model.gltf");

Преобразовать STL в glTF с помощью GltfSaveOptions

Чтобы создать файл glTF с корректировкой системы координат, передайте экземпляр GltfSaveOptions с вызовом setFlipCoordinateSystem(true). Та же схема применяется ко всем параметрам для каждого формата — замените класс параметров на класс формата, который вы используете.

import com.aspose.threed.*;

Scene scene = new Scene();
scene.open("mesh.stl");

// Сохранить как glTF с параметрами
GltfSaveOptions opts = new GltfSaveOptions();
opts.setFlipCoordinateSystem(true);
opts.setPrettyPrint(true);
scene.save("mesh.gltf", opts);

Часто задаваемые вопросы

Что такое Aspose.3D FOSS для Java?

Это бесплатная библиотека с лицензией MIT, чисто-Java, для загрузки, манипулирования и сохранения 3D‑сцен без установки какого-либо нативного рантайма или внешнего SDK.

Какие 3D форматы поддерживаются?

OBJ (с .mtl), STL (бинарный и ASCII), glTF 2.0, GLB (бинарный glTF) и FBX (только импорт). Каждый формат имеет отдельный класс параметров загрузки/сохранения.

Требует ли он каких-либо нативных зависимостей?

Нет. Aspose.3D FOSS для Java — это чистый Java без нативных расширений. Он работает на Windows, macOS и Linux без какого-либо шага компиляции.

Как установить его?

Добавьте Maven‑зависимость com.aspose:aspose-3d-foss:26.1.0 в ваш проект. Дополнительные системные пакеты или нативные расширения не требуются.

Могу ли я управлять ориентацией системы координат?

Да. Классы параметров для каждого формата позволяют менять ориентацию осей, регулировать масштаб и нормализовать нормали без написания кода парсинга, специфичного для формата.

Какие версии Java поддерживаются?

Java 21 и более поддерживаются. Библиотека работает одинаково на всех основных операционных системах.

Исходный код доступен?

Да. Библиотека имеет лицензию MIT и размещена на GitHub. Сообщения об ошибках и запросы на включение изменений приветствуются.

  

Ресурсы поддержки и обучения

 Русский