Aspose.3D FOSS for TypeScript
Справочник API для @aspose/3d версии 24.12.0. Установить через:
npm install @aspose/3dСреда выполнения: Node.js 18, 20, 22+ · Язык: TypeScript 5.0+ / JavaScript (CommonJS) · Лицензия: MIT
Основной граф сцены
ImageRenderOptions
Корневой контейнер для 3D‑сцены. Вызовите scene.open() или scene.openFromBuffer() для загрузки файла, и scene.save() для записи вывода. Предоставляет scene.rootNode в качестве точки входа в иерархию узлов.
ImageRenderOptions
Именованный узел в дереве сцены. Содержит Transform, необязательный entity (меш, камера, свет или другой SceneObject), и ноль или более дочерних узлов, доступных через childNodes.
ImageRenderOptions
Базовый класс для всех объектов, которые могут быть присоединены к Node в качестве основной сущности. Наследуется Mesh, Camera, Light, и другие.
SceneObject
Абстрактный базовый класс для именованных объектов, принадлежащих сцене. Предоставляет name отслеживание свойств и принадлежности к сцене, общих для узлов, сущностей и объектов уровня ассетов.
A3DObject
Базовый корневой класс для всех Aspose.3D объектов. Предоставляет систему свойств (getProperty, setProperty) и name поле, наследуемое каждым публичным классом.
Геометрия и сетка
ImageRenderOptions
Представляет полигональную сетку. Содержит controlPoints массив Vector4 вершин и определений полигонов, созданных через createPolygon(). Вызов triangulate() для преобразования всех полигонов в треугольники перед экспортом.
ImageRenderOptions
Базовый класс для всех типов геометрии. Содержит controlPoints и коллекцию вершинных элементов (нормали, UV, цвета), прикреплённых к геометрии.
VertexElement
Базовый класс для каналов атрибутов, привязанных к каждой вершине, прикреплённых к Geometry. Подклассы содержат типизированные массивы данных и mappingMode / referenceMode метаданные.
VertexElementNormal
A VertexElement подкласс, который хранит нормали поверхности. Данные хранятся внутренне как FVector4[] (наследовано от VertexElementFVector). Требуется большинством рендереров для корректного освещения.
VertexElementUV
A VertexElement подкласс, который хранит 2D координаты текстур. Один меш может иметь несколько наборов UV для разных слоёв текстур.
VertexElementVertexColor
A VertexElement подкласс, который хранит значения цвета RGBA для каждой вершины.
VertexElementType
Перечисление типов каналов атрибутов, которые может представлять VertexElement может представлять (например,., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).
MappingMode
Перечисление, определяющее, как данные элементов сопоставляются с геометрией: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, или ALL_SAME.
ReferenceMode
Перечисление, определяющее, как индексы элементов ссылаются на данные: DIRECT (один-к-одному) или INDEX_TO_DIRECT (через массив индексов).
TextureMapping
Перечисление семантики каналов текстур: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, и многое другое.
Transform и Spatial
ImageRenderOptions
Содержит локальную позицию (translation), вращение (rotation как Quaternion), и масштаб (scaling) объекта Node. Изменения здесь влияют на узел и всех его потомков.
GlobalTransform
Только для чтения представление трансформации узла в мировом пространстве, вычисляемое путем накопления всех предков Transform значения. Доступ через node.globalTransform.
BoundingBox
Ось-ориентированный ограничивающий параллелепипед, определённый minimum и maximum Vector3 угол. Используется для описания пространственного охвата сетки или сцены.
ImageRenderOptions
Material, LambertMaterial, PhongMaterial, PbrMaterial
Material — абстрактный базовый класс для всех типов материалов. Доступны три конкретных реализации:
- LambertMaterial — только диффузный с каналами цвета окружающего света, диффузного и эмиссивного. Подходит для несветящихся поверхностей.
- PhongMaterial — расширяет
LambertMaterialс цветом отражения и свойствами блеска для затенения Фонга. - PbrMaterial — материал физически основанного рендеринга с каналами металличности, шероховатости, базового цвета и нормальной карты. Напрямую сопоставляется с моделью материала glTF 2.0 PBR.
Камера и освещение
ImageRenderOptions
Сущность узла точки зрения с типом проекции, полем зрения, расстояниями ближней/дальней отсечки и свойствами соотношения сторон.
ImageRenderOptions
Сущность узла источника света. Тип управляется the LightType перечисление.
LightType
Перечисление поддерживаемых типов света: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionType
Перечисление режимов проекции камеры: PERSPECTIVE и ORTHOGRAPHIC.
Математические утилиты
ImageRenderOptions
Трёхкомпонентный вектор с плавающей точкой, имеющий x, y, z поля и общие арифметические методы (dot, cross, normalize, minus, times). Экспортировано из @aspose/3d/utilities.
ImageRenderOptions
Четырёхкомпонентный вектор с плавающей точкой, имеющий x, y, z, w поля. Используется как тип записей в Mesh.controlPoints.
ImageRenderOptions
Двухкомпонентный вектор двойной точности с x и y поля. Используется для UV-текстурных координат.
FVector3
Компактный трёхкомпонентный вектор одинарной точности, используемый в массивах данных вершинных элементов для нормалей и касательных.
ImageRenderOptions
4×4 матрица преобразования. Поддерживает конкатенацию, инверсию, транспонирование и разложение на компоненты переноса, вращения и масштаба. Экспортировано из @aspose/3d/utilities.
ImageRenderOptions
Единичный кватернион для представления вращений без gimbal lock. Предоставляет slerp() для плавной интерполяции и преобразования к/из углов Euler и Matrix4. Экспортировано из @aspose/3d/utilities.
ImageRenderOptions
AnimationClip
Именованная, ограниченная во времени коллекция AnimationNode треков. Основной контейнер для данных анимации ключевых кадров, загруженных из файлов FBX или COLLADA.
AnimationNode
Именованная анимационная дорожка, которая нацелена на конкретный путь свойства у объекта сцены. Содержит один или несколько AnimationChannel объектов.
AnimationChannel
Отдельный канал анимированного свойства внутри AnimationNode. Содержит KeyframeSequence пар времени/значения.
KeyFrame
Отдельный образец времени/значения в KeyframeSequence. Содержит метку времени (в секундах), значение и информацию о тангентах для интерполяции.
KeyframeSequence
Упорядоченный список из KeyFrame образцов для одного канала свойства, вместе с Interpolation и Extrapolation настройками, управляющими воспроизведением.
ImageRenderOptions
Перечисление режимов интерполяции ключевых кадров. Известные члены включают LINEAR и CONSTANT. Дополнительные члены, такие как BEZIER может быть доступен.
ImageRenderOptions
Определяет поведение за пределами диапазона ключевых кадров (до первого ключа и после последнего ключа). Управляется ExtrapolationType.
StepMode
Перечисление, определяющее, как ступенчатая (постоянная) интерполяция применяется на границах.
WeightedMode
Перечисление для обработки веса касательной Безье: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, или BOTH.
ExtrapolationType
Перечисление поведений за пределами диапазона: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, и OSCILLATE.
Ввод/вывод формата
FileFormat
Базовый дескриптор формата 3D‑файла. Каждый поддерживаемый формат предоставляет конкретный синглтон через getInstance().
ImageRenderOptions
Базовый класс для реализации импорта, специфичного для формата. Не создаётся напрямую; вызывается внутренне scene.open().
ImageRenderOptions
Базовый класс для реализации экспорта, специфичного для формата. Не создаётся напрямую; вызывается внутренне scene.save().
LoadOptions
Базовый класс для объектов параметров загрузки, специфичных для формата. Передайте экземпляр подкласса в scene.open() или scene.openFromBuffer().
SaveOptions
Базовый класс для объектов параметров сохранения, специфичных для формата. Передайте экземпляр подкласса в scene.save().
IOService
Внутренний сервисный интерфейс, абстрагирующий ввод‑вывод файловой системы и буфера для импортёров и экспортёров.
Формат OBJ
OBJ поддерживает как импорт, так и экспорт. При сохранении в формате OBJ библиотека материалов (.mtl) записывается автоматически рядом с .obj файлом.
ObjImporter
Внутренний импортёр, который читает файлы Wavefront OBJ, разрешает .mtl библиотеки материалов и заполняет Scene. Вызывается автоматически, когда ObjLoadOptions передаётся в scene.open().
ObjExporter
Внутренний экспортер, который записывает файлы Wavefront OBJ. Сопутствующий .mtl библиотека материалов записывается автоматически. Вызывается, когда scene.save() нацеливается на .obj путь.
ObjLoadOptions
Параметры загрузки для файлов OBJ. Ключевые свойства: enableMaterials (логический, по умолчанию true), flipCoordinateSystem (логический), normalizeNormal (логический, по умолчанию true), scale (число). См. Параметры загрузки и сохранения формата для получения полной информации.
ObjSaveOptions
Сохранить параметры экспорта OBJ. Передайте в scene.save() для управления поведением вывода OBJ. См. Параметры загрузки и сохранения формата для получения полной информации.
ObjFormat
Синглтон дескриптора формата для OBJ. Оба canImport и canExport являются true.
Формат glTF
GltfImporter
Читает JSON glTF 2.0 (.gltf) и бинарный GLB (.glb) файлы. Обрабатывает встроенные и внешние ссылки на буферы, материалы PBR, скины и анимационные клипы.
GltfExporter
Записывает вывод glTF 2.0. Когда GltfSaveOptions.binaryMode является true, создает автономный GLB; иначе записывает JSON .gltf с сопутствующим .bin буфером.
GltfLoadOptions
Параметры загрузки для файлов glTF/GLB. Управляют разрешением буферов и поведением загрузки текстур.
GltfSaveOptions
Параметры сохранения для экспорта glTF/GLB. Важные свойства: binaryMode (boolean, true → GLB, по умолчанию false), flipTexCoordV (boolean, инвертирует вертикальную ось UV, по умолчанию true). См. Параметры загрузки и сохранения формата для получения полной информации.
GltfFormat
Синглтон дескриптора формата. Получить через GltfFormat.getInstance() и передать в scene.save() в качестве второго аргумента.
Формат STL
StlImporter
Читает как ASCII, так и бинарные STL‑файлы в Scene содержащий один Mesh объект.
StlExporter
Записывает бинарный STL. Вывод содержит триангулированную сетку из сцены; полигоны, не являющиеся треугольниками, автоматически триангулируются.
StlLoadOptions
Параметры загрузки для STL. Управляют тем, будет ли импортёр инвертировать нормали при импорте.
StlSaveOptions
Параметры сохранения для экспорта STL. Ключевое свойство: binaryMode (логический, по умолчанию false) Параметры загрузки и сохранения формата для получения полной информации.
StlFormat
Одиночный дескриптор формата. Получить через StlFormat.getInstance().
3MF Format
ThreeMfImporter
Читает архивы Open Packaging Convention 3MF и заполняет Scene объектами сетки, цветами и свойствами материалов.
ThreeMfExporter
Создаёт корректный архив 3MF из текущей сцены. Подходит для рабочих процессов 3D‑печати.
ThreeMfLoadOptions
Параметры загрузки для файлов 3MF.
ThreeMfSaveOptions
Параметры сохранения для экспорта 3MF.
ThreeMfFormat
Одиночный дескриптор формата. Получить через ThreeMfFormat.getInstance().
Формат FBX
FbxImporter
Читает бинарные и ASCII файлы FBX, включая геометрию, материалы, скелеты, морфы и анимационные клипы.
FbxExporter
Записывает файлы FBX из текущей сцены. Поддерживается как бинарный, так и ASCII вывод FBX в зависимости от параметров.
FbxLoadOptions
Параметры загрузки для FBX. Управляют тем, импортируются ли анимация, скины и морфы.
FbxSaveOptions
Параметры сохранения для экспорта FBX. Ключевое свойство: embedTextures (логический, по умолчанию false). См. Параметры загрузки и сохранения формата для полной информации.
FbxFormat
Синглтон дескриптора формата. Получить через FbxFormat.getInstance().
Формат COLLADA
импорт и экспорт COLLADA требуют xmldom зависимую библиотеку, которая устанавливается автоматически вместе с @aspose/3d.
ColladaImporter
Читает COLLADA (.dae) XML‑файлы с помощью xmldom. Обрабатывает геометрию, материалы, камеры, освещение и анимацию.
ColladaExporter
Записывает XML‑вывод COLLADA из текущей сцены. Подходит для обмена с DCC‑инструментами (Blender, Maya и др.).
ColladaFormat
Синглтон дескриптора формата. Получить через ColladaFormat.getInstance().
Система свойств
ImageRenderOptions
Типизированная пара имя/значение, которую можно прикрепить к любой A3DObject. Поддерживает скалярные и векторные типы значений.
PropertyCollection
Упорядоченный контейнер из Property объектов. Доступно на любой A3DObject через properties аксессор.
CustomObject
Свободно формируемый набор свойств, который расширяет A3DObject. Используется для хранения произвольных метаданных, которые не соответствуют стандартному классу.
Информация об активе
AssetInfo
Содержит метаданные уровня сцены, загруженные из исходного файла: автор, название приложения, дата создания, масштаб единиц и информацию о координатных осях.
ImageRenderOptions
Параметры, контролирующие, как текстуры и изображения разрешаются и кодируются при сохранении в форматы, встраивающие данные изображений (например, GLB с binaryMode: true).
См. также
- База знаний: Руководства
- Подробный обзор API
- Класс Scene
- Класс Node
- Класс Mesh
- Класс Transform
- Класс GlobalTransform
- Класс Camera
- Класс Light
- Класс Vector3
- Класс Quaternion
- Класс Matrix4
- Класс BoundingBox
- Material, LambertMaterial, PhongMaterial, PbrMaterial
- Параметры загрузки и сохранения формата
- Справка по Vector2, Vector4
- Справка по Property, PropertyCollection, AssetInfo
- Справка по A3DObject, SceneObject, Entity
- Справка по VertexElement, VertexElementNormal, VertexElementUV
- Справка по перечислениям
- npm: @aspose/3d
- GitHub: aspose-3d-node