Aspose.3D FOSS for .NET

API справка за Aspose.3D 26.1.0 (.NET 10.0+, MIT license).

Всички класове се намират в Aspose.ThreeD кореновата using директива е:

using Aspose.ThreeD;

Конвенция за именуване в C#: Всички свойства използват стандартен синтаксис за свойства в C#. Например, използвайте scene.RootNode вместо scene.getRootNode(), и transform.Translation = ... вместо transform.setTranslation(...).

Стил на именуване на векторно поле: Библиотеката разполага с два набора от векторни типове. Aspose.ThreeD.Utilities.Vector2/3/4 (използвани от Mesh.ControlPoints, геометрия и повечето математически операции) са двойна точност с малки букви публични полета (v.x, v.y, v.z, v.w). По‑опростеното Aspose.ThreeD.Vector2/3/4 структури (в Vector.cs) са single-precision (float) с големи букви public полета (v.X, v.Y, v.Z). FVector2/3/4 и Quaternion и Matrix4 използвайте достъп до полета с главни букви. Използвайте Aspose.ThreeD.Utilities типове за работа с геометрия.


Основен граф на сцената

MethodsMethods
SceneКонтейнер от най-високо ниво за всички 3D данни на сцената. Съдържа кореновия възел, метаданни за активите и анимационни клипове. Предоставя Open() и Save() като основните входни/изходни точки.
NodeИменуван възел в йерархията на сцената. Притежава списък с дъщерни възли и списък с прикрепени Entity обекти като мрежи, камери и светлини. Носи локален Transform.
EntityАбстрактен базов клас за всички обекти, които могат да бъдат прикрепени към Node. Предоставя име и идентичност, но няма собствена геометрия.
SceneObjectБазов клас, споделен от Node и Entity. Предоставя интерфейса за колекция от свойства, използван за потребителски дефинирани метаданни.
A3DObjectКоренов базов клас за всички Aspose.3D управлявани обекти. Излага the Name свойство и Properties колекция.
INamedObjectИнтерфейс, който гарантира Name свойство. Реализиран от Node, Entity, и няколко типове дескриптори, специфични за формати.

Геометрия и мрежа

MethodsMethods
MeshПолигонален мрежов елемент. Съхранява контролни точки (позиции на върховете като Vector4), списъци с полигонални лица (списъци с индекси на контролни точки), и слоеве на върховите елементи (нормали, UV, цветове на върховете).
GeometryАбстрактна база за геометрични типове, подобни на мрежа. Дефинира масива от контролни точки и колекцията от VertexElement слоеве. Mesh наследява от Geometry.
VertexElementАбстрактна база за слой от данни, прикрепен към геометрия (нормали, UV, цветове и др.). Съдържа MappingMode, ReferenceMode, и списък с данни.
VertexElementNormalСъхранява един вектор на нормала за всеки връх или за всеки ъгъл на полигон, в зависимост от режима на картографиране.
VertexElementUVСъхранява двойки текстурни координати (Vector2) за всеки връх или за всеки ъгъл на полигон.
VertexElementVertexColorСъхранява данни за цвят в RGBA за всеки връх или за всеки ъгъл като Vector4.

Вградени примитиви

MethodsMethods
BoxПараметрична кутия, ориентирана по осите, с конфигурирана ширина, височина и дълбочина. Може да се прикрепи към Node директно или конвертиран в Mesh чрез ToMesh().
SphereПараметрична сфера с конфигурируем радиус. Поддържа ToMesh() конверсия.
CylinderПараметричен цилиндър с конфигурируем радиус на горната част, радиус на долната част и височина. Поддържа ToMesh() конверсия.

Трансформация и пространствени

MethodsMethods
TransformЛокална трансформация, прикрепена към Node. Предоставя Translation (FVector3), Rotation (Quaternion), Scale (FVector3), и Matrix (Matrix4) свойства.
GlobalTransformПреглед само за четене на матрицата за трансформация в световното пространство на възел след комбиниране на трансформациите на всички предци. Достъпва се чрез node.GlobalTransform.Излага един Matrix свойство.
AssetInfoБлок с метаданни, прикрепен към Scene. Наследява от A3DObject предоставя Name и Properties. В това издание не са дефинирани допълнителни свойства.

Материали и осветление

MethodsMethods
MaterialАбстрактен базов клас за всички типове материали. Предоставя име и колекция от свойства.
LambertMaterialКласически материал само с дифузно осветление, с Ambient, Diffuse, Emissive, Reflective, Transparency, и Texture свойства. Пространство от имена: Aspose.ThreeD.Shading.
PhongMaterialРазширява Lambert с Specular, Shininess, и SpecularPower свойства. Пространство от имена: Aspose.ThreeD.Shading.
PbrMaterialМатериал Physically Based Rendering с BaseColor, Metallic, Roughness, Occlusion, и свойства на текстурен слот. Пространство от имена: Aspose.ThreeD.Shading.

Methods

MethodsMethods
CameraКамера ентитет. Наследява от Frustum. Прикачен към a Node за дефиниране на трансформации на гледната точка. В това издание не се разкриват свойства, специфични за формата.

Математически помощни функции

MethodsMethods
Vector2Двойна точност 2-component vector (lowercase fields: x, y). Пространство от имена: Aspose.ThreeD.Utilities. Използва се за UV текстурни координати.
Vector3Двойна точност 3-component vector (lowercase fields: x, y, z). Пространство от имена: Aspose.ThreeD.Utilities. Универсален пространствен вектор за геометрия.
Vector4Двойна точност 4-component vector (lowercase fields: x, y, z, w). Пространство от имена: Aspose.ThreeD.Utilities. Използва се за Mesh.ControlPoints и нормални данни.
FVector3Вектор с плаваща запетая с единична точност, 3‑компонентен (полета с главни букви: X, Y, Z). Използван от Transform.Translation и Transform.Scale.
FVector4Вектор с плаваща запетая с единична точност, 4‑компонентен (полета с главни букви: X, Y, Z, W).
QuaternionЕдиничен кватернион за представяне на завъртания (W, X, Y, Z). Използвано от Transform.Rotation.
Matrix44x4 transformation matrix. Used for world/local transform computations and by GlobalTransform.Matrix.
BoundingBoxОразмерена по осите ограничителна кутия, определена от Minimum и Maximum FVector3 ъгли.

Methods

MethodsMethods
AnimationClipИменуван контейнер за диапазон от анимация. A Scene може да съдържа множество клипове. Шаблон за декларация — данните за ключови кадри и възпроизвеждането все още не са реализирани.

Вход/изход на формати

MethodsMethods
Scene.Open(path)Отваря файл, открива формата от разширението и попълва сцената.
Scene.Open(path, options)Отваря файл с форматно-специфичен LoadOptions.
Scene.Open(stream)Отваря от поток, автоматично откривайки формата от съдържанието.
Scene.Open(stream, options)Отваря от поток с форматно-специфичен LoadOptions.
Scene.Save(path)Записва сцената във файл; форматът се извлича от разширението.
Scene.Save(path, options)Записва с форматно-специфичен SaveOptions.
Scene.Save(stream, options)Записва в поток с форматно-специфичен SaveOptions.
FileFormatРегистър на поддържаните файлови формати. Използвайте FileFormat.Formats (един IList<FileFormat>) за изброяване на всички поддържани формати, или FileFormat.Detect(fileName) за откриване на формат по име на файл. Именуваните константи (ObjFormat, GltfFormat, FbxFormat, и др.) са internal и не са достъпни от потребителския код.
IOServiceВътрешна I/O абстракция. Предоставя DetectFormat() за откриване на формат, базирано на поток.
LoadOptionsБазов клас за специфични за формата опции за зареждане.
SaveOptionsБазов клас за специфични за формата опции за запазване.

Формат OBJ

MethodsMethods
ObjLoadOptionsОпции за зареждане за файлове Wavefront OBJ.
ObjSaveOptionsОпции за запазване за изход Wavefront OBJ.

Формат STL

MethodsMethods
StlLoadOptionsОпции за зареждане за файлове STL.
StlSaveOptionsОпции за запазване за изход STL.

Формат glTF

MethodsMethods
GltfLoadOptionsОпции за зареждане за файлове glTF 2.0 и GLB.
GltfSaveOptionsОпции за запазване за изход glTF 2.0 и GLB. В това издание не са изложени свойства, специфични за формата; използвайте .glb разширение за бинарен изход.

Формат FBX

MethodsMethods
FbxLoadOptionsОпции за зареждане на FBX файлове.
FbxSaveOptionsОпции за запазване на FBX изход. Експортът на FBX винаги генерира бинарен изход; ASCII експорт на FBX не е активен в тази версия.

3MF Format

MethodsMethods
TmfLoadOptionsОпции за зареждане на 3MF файлове.
TmfSaveOptionsОпции за запазване на 3MF изход.

Methods

MethodsMethods
FileContentTypeДескриптор на тип съдържание: ASCII, Binary. Достъпно като свойство на FileFormat.
AxisИдентифицира координатна ос: XAxis, YAxis, ZAxis.
CoordinateSystemОпределя конвенцията за ръка: RightHand или LeftHand.

Система за свойства

MethodsMethods
PropertyЕдноименна типизирана собственост върху A3DObject.
PropertyCollectionИтерируема колекция от Property обекти, прикрепени към A3DObject.

Вижте също

 Български