API справка за aspose-3d-foss 26.1.0 (Python 3.7 – 3.12, лиценз MIT).
Всички класове се импортират от aspose.threed пакет или неговите подпакети. Основният импорт е:
Основен граф на сцената
| Methods | Methods |
|---|
Scene | Контейнер от най-високо ниво за всички 3D данни на сцената. Съдържа кореновия възел, метаданни на активите и анимационни клипове. Предоставя from_file(), open(), и save() като основните входно-изходни точки. |
Node | Именуван възел в йерархията на сцената. Притежава списък с дъщерни възли и списък с прикрепени Entity обекти като мрежи, камери и светлини. Носи локален Transform. |
Entity | Абстрактен базов клас за всички обекти, които могат да бъдат прикрепени към Node. Предоставя име и идентичност, но няма собствена геометрия. |
SceneObject | Базов клас, споделен от Node и Entity. Предоставя интерфейса за колекция от свойства, използван за потребителски дефинирани метаданни. |
A3DObject | Коренов базов клас за всички Aspose.3D управлявани обекти. Излага свойството за име и the Properties колекция. |
INamedObject | Интерфейс, който гарантира name свойство. Реализиран от Node, Entity, и няколко типове дескриптори, специфични за формати. |
Геометрия и мрежа
| Methods | Methods |
|---|
Mesh | Полигонален мрежов елемент. Съхранява контролни точки (позиции на върховете като Vector4), списъци с полигонни лица (списъци с индекси на контролните точки) и слоеве на върховите елементи (нормали, UV, цветове на върховете). |
Geometry | Абстрактна база за типове геометрия, подобни на мрежа. Дефинира масива от контролни точки и колекцията от VertexElement слоеве. Mesh наследява от Geometry. |
VertexElement | Абстрактна база за слой от данни, прикрепен към геометрия (нормали, UV координати, цветове и др.). Пренася mapping_mode, reference_mode, и data списък. |
VertexElementNormal | Съхранява един вектор на нормала за всеки връх или за всеки ъгъл на полигон, в зависимост от mapping_mode. Стойностите на данните са FVector4 инстанции (единична точност) с w неизползвани. |
VertexElementUV | Съхранява данни за текстурни координати като FVector4 по връх или по ъгъл на полигон (само x и y компонентите се използват за UV). Мрежа може да съдържа множество UV слоеве за различни текстурни канали. |
VertexElementVertexColor | Съхранява данни за цвят RGBA по връх или по ъгъл като FVector4 (r, g, b, a в диапазона 0–1). |
VertexElementSmoothingGroup | Съхранява цели числа за идентификатори на групи за изглаждане по полигон, използвани от OBJ импортера за възпроизвеждане на оригиналните назначения на групите за изглаждане от изходния файл. |
VertexElementType | Изброяване, идентифициращо семантичната роля на слой от елементи на върховете: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, и други. Предайте стойностите на Mesh.get_element(). |
MappingMode | Изброяване, контролиращо към кой примитив се съпоставя стойността на елемент от върховете: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, или ALL_SAME. |
ReferenceMode | Изброяване, контролиращо как се индексират стойностите: DIRECT (една стойност за всеки примитив на съпоставяне) или INDEX_TO_DIRECT (масив от стойности плюс отделен масив от индекси). |
PolygonModifier | Статичен помощен клас с методи за триангулиране Mesh обекти и цели Scene графи. |
Трансформация и пространствени
| Methods | Methods |
|---|
Transform | Локална трансформация, прикрепена към Node. Предоставя транслация, ротация (като Quaternion), и компоненти за мащаб, плюс удобни свойства за ъгли на Юлер. |
GlobalTransform | Преглед само за четене на трансформацията в световното пространство на възел след комбиниране на всички трансформации на предците. Достъпва се чрез Node.global_transform. |
AssetInfo | Блок с метаданни, прикрепен към Scene. Съхранява името на приложението за създаване, името на единицата, коефициент на мащабиране на единицата, дефинициите на осите на координатната система и времеви отметки за създаване/модифициране. |
Материали и сенкиране
| Methods | Methods |
|---|
Material | Абстрактен базов клас за всички типове материали. Предоставя име и колекция от свойства за числови и цветови параметри. |
LambertMaterial | Материален модел само с дифузно осветление. Съхранява амбиентен цвят, дифузен цвят, емисивен цвят и прозрачност. Зарежда се от OBJ файлове, които използват основни Ka/Kd/Ke декларации. |
PhongMaterial | Methods LambertMaterial с отражателен цвят и блясък (спекуларен експонент). Зарежда се от OBJ файлове, които използват Ks/Ns декларации. |
PbrMaterial | Материал за физически базирано рендериране (Physically Based Rendering). Съхранява албедо, метален фактор, фактор на грубост и свързаните текстури. Използва се от glTF 2.0 и други формати, поддържащи PBR. |
Камера и осветление
| Methods | Methods |
|---|
Camera | Камера ентитет. Само projection_type и name са функционални в това издание; всички останали числови свойства (near_plane, far_plane, field_of_view, aspect_ratio) са шаблони, които връщат стойности по подразбиране. Прикачени към a Node за дефиниране на трансформации на гледната точка. |
Light | Обект източник на светлина. Наследява от Camera като шаблонен клас; the Light самият клас не разкрива допълнителни свойства в това издание. |
LightType | Изброяване на поддържаните категории светлина: POINT, DIRECTIONAL, SPOT, AREA, VOLUME. |
ProjectionType | Изброяване на режимите на проекция на камерата: PERSPECTIVE и ORTHOGRAPHIC. |
Математически помощни функции
| Methods | Methods |
|---|
Vector2 | Вектор с двойна точност, 2‑компонентен (x, y). Използва се за UV текстурни координати. |
Vector3 | Вектор с двойна точност, 3‑компонентен (x, y, z). Използва се за позиции, посоки и мащаб. |
Vector4 | Вектор с двойна точност, 4‑компонентен (x, y, z, w). Използва се за контролни точки (хомогенни позиции) и данни за нормали. |
FVector2 | Вектор с единична точност, 2‑компонентен float. Използва се вътрешно за компактно съхранение в масиви от данни за елементите на върховете. |
FVector3 | Вектор с единична точност, 3‑компонентен float. Появява се в масиви от данни за елементите на върховете за нормали и тангенти. |
FVector4 | Вектор с плаваща запетая (float) с единична точност, състоящ се от 4 компонента. Типът за съхранение на VertexElementFVector.data. |
Quaternion | Единичен кватернион за представяне на завъртания (w, x, y, z). Използва се от Transform.rotation. |
Matrix4 | 4×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions. |
BoundingBox | Оразмерваща кутия, подравнена по осите, дефинирана от minimum и maximum Vector3 ъгли. Използва се за пространствени заявки и помощни функции за отрязване на фрустум. |
Methods
| Methods | Methods |
|---|
AnimationClip | Именуван контейнер за набор от анимирани канали, обхващащ един диапазон на възпроизвеждане. A Scene може да съдържа множество клипове (e.g., “Walk”, “Run”). |
AnimationNode | Свързва AnimationClip към конкретен възел от сцената или свойство. Действа като мост между данните на клипа и обектите в графа на сцената. |
AnimationChannel | Един единствен анимиран поток на свойство в клип, насочен към именувано свойство на обект (e.g., Transform.translation.x). |
KeyFrame | Един единствен пример за време‑стойност в KeyframeSequence. Съхранява времето (в секунди) и стойността в този момент. |
KeyframeSequence | Подреден списък от KeyFrame обекти за един скаларен канал, заедно с настройки за интерполация и екстраполация. |
Interpolation | Изброяване на режимите на интерполация между ключовите кадри: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE. |
ExtrapolationType | Изброяване на поведението извън първия и последния ключов кадър: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE. |
Вход/изход на формати
| Methods | Methods |
|---|
Scene.from_file(path) | Статичен метод. Отваря файла на path, открива формата от разширението и връща попълнен Scene. Генерира изключение при файл‑не‑намерен или неподдържан формат. |
Scene.open(path, options=None) | Метод на инстанция. Отваря файл в съществуващ Scene инстанция, по избор използвайки специфичен за формата LoadOptions подклас. |
Scene.save(path, options=None) | Метод на инстанция. Сериализира сцената в path използвайки формата, извлечен от разширението, по избор използвайки специфичен за формата SaveOptions подклас. |
FileFormat | Регистър на поддържаните файлови формати. Съдържа записи като FileFormat.WAVEFRONT_OBJ, FileFormat.GLTF, FileFormat.FBX7400ASCII, FileFormat.MICROSOFT_3MF. Варианти, специфични за формата, се достъпват чрез класове за опции (например,., ColladaSaveOptions, GltfSaveOptions). |
IOService | Вътрешна I/O абстракция, използвана от импортерите и експортерите на формати. Обикновено не се използва директно от приложен код. |
LoadOptions | Базов клас за всички обекти за зареждане на опции, специфични за формата. Подкласуван от ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions. |
SaveOptions | Базов клас за всички обекти за запазване на опции, специфични за формата. Подкласуван от ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions. |
OBJ формат
| Methods | Methods |
|---|
ObjImporter | Вътрешен клас за импортиране, който анализира Wavefront OBJ и MTL файлове. Извиква се автоматично от Scene.from_file() за .obj разширения. |
ObjLoadOptions | Опции за зареждане на Wavefront OBJ файлове. Ключови свойства: flip_coordinate_system, scale, enable_materials, normalize_normal. |
ObjSaveOptions | Опции за запазване на Wavefront OBJ изход. Управлява нормалите, UV координатите, референциите към материалите и режим на точков облак. |
ObjFormat | Дескриптор на формат за Wavefront OBJ. Достъпен като FileFormat.WAVEFRONT_OBJ(). |
STL формат
| Methods | Methods |
|---|
StlImporter | Вътрешен импортер, който чете както бинарни, така и ASCII STL файлове. Избира се автоматично според разширението. |
StlExporter | Вътрешен експортер, който записва STL. |
StlLoadOptions | Опции за зареждане на STL файлове. Поддържа flip_coordinate_system и scale. |
StlSaveOptions | Опции за запазване на STL изход. Управлява binary_mode, scale, и flip_coordinate_system. |
StlFormat | Дескриптор на формата за STL. |
glTF формат
| Methods | Methods |
|---|
GltfLoadOptions | Опции за зареждане на glTF 2.0 и GLB файлове. Ключово свойство: flip_tex_coord_v. |
GltfSaveOptions | Опции за запазване на glTF 2.0 изход. Използвайте binary_mode=True за самостоятелен GLB пакет. |
GltfFormat | Дескриптор на формат за glTF 2.0 / GLB. Достъпен като FileFormat.GLTF2(). |
FBX формат
| Methods | Methods |
|---|
FbxLoadOptions | Опции за зареждане на FBX файлове. Ключови свойства: keep_builtin_global_settings, compatible_mode. |
FbxSaveOptions | Опции за запазване на FBX изход. Експортът на FBX предизвиква NotImplementedError безусловно; FbxSaveOptions съществува, но експортът не е реализиран. |
FbxFormat | Дескриптор на формат за FBX. Достъпен като FileFormat.FBX7400ASCII(). |
COLLADA формат
| Methods | Methods |
|---|
ColladaLoadOptions | Опции за зареждане на COLLADA (.dae) файлове. Управлява пренареждането на осите и мащаба на единиците при импортиране. |
ColladaSaveOptions | Опции за запазване за изход в COLLADA. Контроли indented, flip_coordinate_system, и експортиране на материали. |
ColladaFormat | Дескриптор на формат за COLLADA. Автоматично се определя от .dae файловото разширение. |
3MF Format
| Methods | Methods |
|---|
ThreeMfLoadOptions | Опции за зареждане за 3MF (.3mf) файлове. |
ThreeMfSaveOptions | Опции за запазване за изход в 3MF. 3MF е предпочитаният формат за работни процеси на 3D печат. |
ThreeMfFormat | Дескриптор на формат за 3MF. Достъпен като FileFormat.MICROSOFT_3MF_FORMAT(). |
Methods
| Methods | Methods |
|---|
TextureMapping | Идентифицира как текстурата се картографира върху геометрията: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, и т.н. |
BooleanOperation | Тип на булевата операция в CSG: UNION, DIFFERENCE, INTERSECTION. |
Система за свойства
| Methods | Methods |
|---|
Property | Едно именувано типизирано свойство върху A3DObject. Съхранява името на свойството, дескриптора на типа и текущата стойност. |
PropertyCollection | Итерируемо колекция от Property обекти, прикрепени към A3DObject. Поддържа търсене по име и итериране над всички дефинирани свойства. |
CustomObject | Лек A3DObject подклас, който съдържа само име и произволен PropertyCollection. Използва се за съхраняване на потребителски дефинирани метаданни върху обекти от сцената. |
Изображение и рендер
| Methods | Methods |
|---|
ImageRenderOptions | Опции за софтуерно растеризиране при рендериране на сцена в буфер за изображение. Съхранява цвят на фона, размери на изображението и референция към камерата. Scene.render() повдига NotImplementedError; рендерирането не е реализирано в това издание. |
Вижте също