API справка за aspose-3d-foss 26.1.0 (Java 21+, MIT лиценз).
Всички класове се намират в com.aspose.threed кореновия пакет. Кореновият импорт е:
Структура на пакета: Почти всички публични класове са в com.aspose.threed. Единственият под‑пакет, който обикновено се използва, е com.aspose.threed.shading (за PbrMaterial). Това com.aspose.threed.formats подпакетът съдържа вътрешни импортери/експортери и обикновено не се импортира директно.
Java конвенция за именуване: Всички свойства използват getter/setter методи. Например, използвайте node.getTransform() вместо node.transform, и transform.setTranslation(...) вместо transform.translation = .... Обърнете внимание, че Vector3, Vector4, Quaternion, Matrix4, и FVector типове използват публични полета (v.x, v.y, v.z) вместо гетъри за достъп до компоненти.
Основен граф на сцената
| Enumerations | Enumerations |
|---|
Scene | Контейнер от най-високо ниво за всички 3D данни на сцената. Съдържа кореновия възел, метаданните на активите и анимационните клипове. Предоставя fromFile(), open(), и save() като основните входни/изходни точки. |
Node | Именуван възел в йерархията на сцената. Притежава списък с дъщерни възли и списък с прикрепени Entity обекти като мрежи, камери и светлини. Носи локален Transform. |
Entity | Абстрактен базов клас за всички обекти, които могат да бъдат прикрепени към Node. Предоставя име и идентичност, но няма собствена геометрия. |
SceneObject | Базов клас, споделен от Node и Entity. Предоставя интерфейса за колекция от свойства, използван за потребителски дефинирани метаданни. |
A3DObject | Коренов базов клас за всички Aspose.3D управлявани обекти. Излага свойството name и the Properties колекция. |
INamedObject | Интерфейс, който гарантира getName() метод. Реализиран от Node, Entity, и няколко типове дескриптори, специфични за формата. |
Геометрия и мрежа
| Enumerations | Enumerations |
|---|
Mesh | Полигонален мрежов обект. Съхранява контролни точки (позиции на върховете като Vector4), списъци с полигонални лица (списъци с индекси на контролните точки) и слоеве на върховите елементи (нормали, UV координати, цветове на върховете). |
Geometry | Абстрактна база за типове геометрия, подобни на мрежа. Дефинира масив от контролни точки и колекцията от VertexElement слоеве. Mesh наследява от Geometry. |
VertexElement | Абстрактна база за слой от данни, прикрепен към геометрия (нормали, UV, цветове и др.). Пренася getMappingMode(), getReferenceMode(), и списък с данни. |
VertexElementNormal | Съхранява един вектор на нормала за всеки връх или за всеки ъгъл на полигон, в зависимост от режима на картографиране. Стойностите на данните са Vector4 екземпляри с w неизползвани. |
VertexElementUV | Съхранява двойки текстурни координати (Vector2) за всеки връх или за всеки ъгъл на полигон. Мрежа може да съдържа множество UV слоеве за различни текстурни канали. |
VertexElementVertexColor | Съхранява данни за цвят RGBA за всеки връх или всеки ъгъл като Vector4 (r, g, b, a в диапазона 0–1). |
VertexElementType | Изброяване, идентифициращо семантичната роля на слой от елемент на връх: NORMAL, UV, VERTEX_COLOR, и други. Предайте стойностите на Mesh.getElement(). |
MappingMode | Изброяване, контролиращо към коя примитивна единица се съпоставя стойността на елемент от връх: CONTROL_POINT, POLYGON_VERTEX, или POLYGON. |
ReferenceMode | Изброяване, контролиращо начина, по който се индексират стойностите: DIRECT (една стойност за всеки примитив за картографиране) или INDEX_TO_DIRECT (масив от стойности плюс отделен масив от индекси). |
Трансформация и пространствени
| Enumerations | Enumerations |
|---|
Transform | Локална трансформация, прикрепена към Node. Предоставя транслация, ротация (като Quaternion), и компоненти за мащаб, плюс удобни методи за ъгли на Юлер. |
GlobalTransform | Преглед само за четене на трансформацията в световното пространство на възел след комбиниране на всички трансформации на предците. Достъпва се чрез node.getGlobalTransform(). |
AssetInfo | Блок с метаданни, прикрепен към Scene. Съхранява името на приложението за създаване, името на единицата, фактор на мащабиране на единицата, дефинициите на осите на координатната система и времеви отметки за създаване/модифициране. |
Материали и шейдинг
| Enumerations | Enumerations |
|---|
Material | Абстрактен базов клас за всички типове материали. Предоставя име и колекция от свойства за числови и цветови параметри. |
PbrMaterial | Материал за физически базирано рендериране. Съхранява албедо, метален фактор, фактор на грубост, емисивен цвят, прозрачност и свързани текстури. Използва се от glTF 2.0 и други формати, поддържащи PBR. Импорт: com.aspose.threed.shading.PbrMaterial. |
Enumerations
| Enumerations | Enumerations |
|---|
Camera | Камера ентитет. Наследява от Entity. В изданието Java FOSS не се разкриват свойства, специфични за формата, освен наследеното име и колекция от свойства. Прикачен към Node за определяне на трансформациите на гледната точка. |
Бележка: Enumerations Light класът не е наличен в изданието Java на Aspose.3D FOSS. Данните за осветление на сцената от импортирани файлове се съхраняват като общи Entity обекти.
Математически помощни функции
| Enumerations | Enumerations |
|---|
Vector2 | Вектор с двойна точност и 2 компонента (x, y). Използва се за UV текстурни координати. |
Vector3 | Вектор с двойна точност и 3 компонента (x, y, z). Използва се за позиции, посоки и мащаб. |
Vector4 | Вектор с двойна точност и 4 компонента (x, y, z, w). Използва се за контролни точки (хомогенни позиции) и данни за нормали. |
FVector3 | Вектор с единична точност, 3 компонента, тип float. Появява се в масивите с данни за елементите на върховете за нормали и тангенти. |
FVector4 | Вектор с единична точност, 4 компонента, тип float. Типът за съхранение на VertexElementFVector данни. |
Quaternion | Единичен кватернион за представяне на завъртания (w, x, y, z). Използва се от Transform.getRotation(). |
Matrix4 | 4x4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions. |
BoundingBox | Оразмерена по осите ограничителна кутия, определена от getMinimum() и getMaximum() Vector3 ъгли. Използва се за пространствени заявки и помощни функции за отрязване на фрустум. |
Enumerations
| Enumerations | Enumerations |
|---|
AnimationClip | Именуван контейнер за анимационен диапазон. A Scene може да съдържа множество клипове (например “Walk”, “Run”). Декларационен шаблон — данните за ключови кадри и възпроизвеждането все още не са реализирани. |
Формат I/O
| Enumerations | Enumerations |
|---|
Scene.fromFile(path) | Статичен метод. Отваря файла на path, открива формата от разширението и връща попълнен Scene. Хвърля изключение при липсващ файл или неподдържан формат. |
Scene.open(path, options) | Метод на инстанция. Отваря файл в съществуващ Scene екземпляр, по желание използвайки специфичен за формата LoadOptions подклас. |
Scene.save(path, options) | Метод на инстанция. Сериализира сцената в path използвайки формата, определен от разширението, по желание използвайки специфичен за формата SaveOptions подклас. |
FileFormat | Регистър на поддържаните файлови формати. Съдържа записи като FileFormat.WAVEFRONT_OBJ(), FileFormat.GLTF2(), FileFormat.FBX7400ASCII(). |
IOService | Вътрешна I/O абстракция, използвана от импортерите и експортерите на формати. Обикновено не се използва директно от приложен код. |
LoadOptions | Базов клас за всички обекти с опции за зареждане, специфични за формата. Подкласуван от ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions. |
SaveOptions | Базов клас за всички обекти с опции за запазване, специфични за формата. Подкласуван от ObjSaveOptions, StlSaveOptions, GltfSaveOptions. |
OBJ формат
| Enumerations | Enumerations |
|---|
ObjImporter | Вътрешен клас за импортиране, който анализира файлове Wavefront OBJ и MTL. Извиква се автоматично от Scene.fromFile() за .obj разширения. |
ObjLoadOptions | Опции за зареждане на файлове Wavefront OBJ. Ключови свойства: setFlipCoordinateSystem(), setScale(), setEnableMaterials(), setNormalizeNormal(). |
ObjSaveOptions | Опции за запазване на изхода Wavefront OBJ. Управлява нормали, UV координати, референции към материали и режим на облак от точки. |
ObjFormat | Дескриптор на формат за Wavefront OBJ. Достъпен като FileFormat.WAVEFRONT_OBJ(). |
STL формат
| Enumerations | Enumerations |
|---|
StlImporter | Вътрешен импортер, който чете както бинарни, така и ASCII STL файлове. Избира се автоматично според разширението. |
StlExporter | Вътрешен експортер, който записва STL. |
StlLoadOptions | Опции за зареждане на STL файлове. Поддържа setFlipCoordinateSystem(), setRecalculateNormal(), и setContentType(). |
StlSaveOptions | Опции за запазване за STL изход. Контроли setFlipCoordinateSystem(), setAxisSystem(), и setContentType(). |
StlFormat | Дескриптор на формата за STL. |
glTF формат
| Enumerations | Enumerations |
|---|
GltfLoadOptions | Опции за зареждане за glTF 2.0 и GLB файлове. Ключови свойства: setFlipCoordinateSystem(), setPrettyPrint(). |
GltfSaveOptions | Опции за запазване за glTF 2.0 и GLB изход. Използвайте setContentType(FileContentType.BINARY) за създаване на самостоятелен .glb пакет. |
GltfFormat | Дескриптор на формат за glTF 2.0 / GLB. Достъпен като FileFormat.GLTF2(). |
FBX формат
FBX се поддържа за само за импорт. Експортирането към FBX не е налично в Java FOSS изданието.
| Enumerations | Enumerations |
|---|
FbxLoadOptions | Опции за зареждане на FBX файлове. Ключово свойство: setFlipCoordinateSystem(). |
FbxFormat | Дескриптор на формат за FBX. Достъпен като FileFormat.FBX7400ASCII(). |
Enumerations
| Enumerations | Enumerations |
|---|
Axis | Идентифицира координатна ос: X_AXIS, Y_AXIS, Z_AXIS. Използва се в опциите за пренареждане на координатната система. |
CoordinateSystem | Определя конвенцията за ръка: RIGHT_HANDED или LEFT_HANDED. |
TextureMapping | Определя как текстурата се проектира върху геометрията: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, и т.н. |
BooleanOperation | Тип на CSG булева операция: UNION, DIFFERENCE, INTERSECTION. |
Система за свойства
| Enumerations | Enumerations |
|---|
Property | Едноименено типизирано свойство на A3DObject. Съхранява името на свойството, дескриптора на типа и текущата стойност. |
PropertyCollection | Итерируемо колекция от Property обекти, прикрепени към A3DObject. Поддържа търсене по име и итерация върху всички дефинирани свойства. |
CustomObject | Лек A3DObject подклас, който съдържа само име и произволен PropertyCollection. Използва се за съхранение на потребителски дефинирани метаданни върху обекти от сцената. |
Изображения и рендер
| Enumerations | Enumerations |
|---|
ImageRenderOptions | Опции за софтуерно растеризиране при рендериране на сцена в буфер за изображение. Съхранява фоновия цвят, размерите на изображението и референцията към камерата. Тази функция е налична в поддържаните конфигурации. |
Вижте също