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

Aspose.3D FOSS для TypeScript

Загружайте, создавайте, трансформируйте и экспортируйте 3D‑сцены из Node.js — полностью типизировано, открытый исходный код и готово к продакшну с одной установкой npm.

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

Aspose.3D FOSS для TypeScript — это библиотека с лицензией MIT для работы с 3D‑форматами файлов в приложениях Node.js. Установите её одной командой npm install @aspose/3d и сразу начните читать, конструировать и записывать 3D‑сцены на TypeScript, без необходимости компилировать нативные аддоны, устанавливать внешние SDK и без требуемого рендерера.

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

Aspose.3D FOSS ориентирована на Node.js 18, 20 и 22+ с TypeScript 5.0+ и компилируется в CommonJS. Библиотека поставляется с строгими настройками компилятора TypeScript (noImplicitAny, strictNullChecks), поэтому ваша IDE обеспечивает полное автодополнение и безопасность на этапе компиляции. Единственная runtime‑зависимость, xmldom, устанавливается автоматически.

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

  • OBJ / MTL: Загрузка файлов Wavefront OBJ с сопутствующими определениями материалов.
  • glTF 2.0 / GLB: Загрузка PBR‑материалов и вывод бинарного GLB через GltfSaveOptions.
  • STL: Чтение и запись как бинарных, так и ASCII STL с полной проверкой обратного преобразования.
  • COLLADA, 3MF, FBX: Дополнительная поддержка форматов с классами параметров для каждого формата.
  • Full TypeScript types: Каждый класс, метод и параметр строго типизированы с использованием noImplicitAny и strictNullChecks.

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

  • Конвейеры ресурсов Node.js: Импортируйте OBJ‑файлы, проверяйте и переориентируйте геометрию, экспортируйте как GLB в CI.
  • Инструменты для игр: Пакетная обработка 3D‑сеток без нативного движка или рендерера.
  • Рабочие процессы 3D‑печати: Читайте, проверяйте и повторно экспортируйте STL и 3MF файлы.
  • Serverless backends: Запускайте 3D‑конвертеры в Lambda или Cloud Functions.
  • Content migration: Конвертируйте между семействами форматов в масштабе из одного скрипта.

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

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

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

Aspose.3D FOSS для установок TypeScript одной командой npm install @aspose/3d. Нет нативных аддонов для компиляции. Библиотека написана полностью на TypeScript/JavaScript и имеет одну автоматически устанавливаемую зависимость (xmldom).

Сильно типизированный API обеспечивает полное автодополнение в IDE для каждого класса графа сцены и опции формата. Библиотека ориентирована на Node.js 18–22+ и TypeScript 5.0+, работает одинаково на Linux‑агентах CI и рабочих станциях разработчиков, и распространяется по лицензии MIT с открытой системой отслеживания задач на GitHub.

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

Установите через npm, затем используйте синхронный метод scene.open() с ObjLoadOptions для загрузки меша вместе с его MTL‑файлом материалов. Вызов scene.save() с расширением .gltf записывает стандартный glTF 2.0 JSON; формат автоматически определяется по расширению файла.

npm install @aspose/3d
import { Scene } from "@aspose/3d";
import { ObjLoadOptions } from "@aspose/3d/formats/obj";

const scene = new Scene();
scene.open("model.obj", new ObjLoadOptions());

// Экспорт в формате glTF 2.0 JSON
scene.save("model.gltf");

Преобразовать STL в бинарный GLB

Чтобы получить компактный бинарный GLB вместо стандартного JSON glTF, передайте GltfSaveOptions с binaryMode = true.

import { Scene } from "@aspose/3d";
import { GltfSaveOptions } from "@aspose/3d/formats/gltf";

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

// Сохранить как компактный бинарный GLB
const opts = new GltfSaveOptions();
opts.binaryMode = true;
scene.save("mesh.glb", opts);

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

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

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

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

OBJ (с .mtl), glTF 2.0 и GLB, STL (бинарный и ASCII), COLLADA (DAE), 3MF и FBX. Каждый формат имеет отдельный типизированный класс параметров.

Требуются ли нативные аддоны Node.js?

Нет. Aspose.3D FOSS for TypeScript — это чистый JavaScript/TypeScript. Он не требует шага компиляции и имеет единственную runtime‑зависимость (xmldom), устанавливаемую автоматически через npm.

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

Выполните npm install @aspose/3d. Дополнительные системные пакеты или нативные аддоны не требуются.

Какие версии Node.js и TypeScript поддерживаются?

Node.js 18, 20 и 22+. TypeScript 5.0+. Библиотека компилируется в CommonJS и работает со строгими настройками TypeScript.

Поставляется ли он с определениями типов TypeScript?

Да. Все классы, методы, перечисления и типы опций полностью типизированы с включёнными noImplicitAny и strictNullChecks.

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

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

Где я могу найти исходный код?

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

  

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

 Русский