Aspose.3D FOSS for Python

Tham chiếu API cho aspose-3d-foss 26.1.0 (Python 3.7 – 3.12, giấy phép MIT).

Tất cả các lớp được nhập từ aspose.threed gói hoặc các gói con của nó. Lệnh nhập gốc là:

import aspose.threed
##or selectively:
from aspose.threed import Scene, Node
from aspose.threed.entities import Mesh, Camera, Light
from aspose.threed.formats import ObjLoadOptions, StlSaveOptions, GltfSaveOptions
from aspose.threed.utilities import Vector3, Matrix4, BoundingBox
from aspose.threed.animation import AnimationClip, KeyFrame

Đồ thị Cảnh Cốt lõi

PropertiesProperties
SceneBộ chứa cấp cao nhất cho tất cả dữ liệu cảnh 3D. Chứa nút gốc, siêu dữ liệu tài sản và các đoạn hoạt hình. Cung cấp from_file(), open(), và save() như các điểm vào I/O chính.
NodeMột nút có tên trong cây cảnh. Sở hữu một danh sách các nút con và một danh sách các đối tượng được đính kèm Entity các đối tượng như lưới, máy ảnh và đèn. Mang một cục bộ Transform.
EntityLớp cơ sở trừu tượng cho tất cả các đối tượng có thể được gắn vào một Node. Cung cấp tên và danh tính nhưng không có hình học riêng.
SceneObjectLớp cơ sở được chia sẻ bởi NodeEntity. Cung cấp giao diện bộ sưu tập thuộc tính được sử dụng cho siêu dữ liệu do người dùng định nghĩa.
A3DObjectLớp cơ sở gốc cho tất cả các đối tượng được quản lý Aspose.3D. Tiết lộ thuộc tính tên và the Properties bộ sưu tập.
INamedObjectGiao diện đảm bảo một name thuộc tính. Được triển khai bởi Node, Entity, và một số loại mô tả đặc thù cho định dạng.

Hình học và Lưới

PropertiesProperties
MeshThực thể lưới đa giác. Lưu trữ các điểm điều khiển (vị trí đỉnh dưới dạng Vector4), danh sách mặt đa giác (danh sách các chỉ số điểm điều khiển), và các lớp phần tử đỉnh (bình thường, UV, màu đỉnh).
GeometryCơ sở trừu tượng cho các loại hình học dạng lưới. Định nghĩa mảng điểm điều khiển và tập hợp của VertexElement các lớp. Mesh kế thừa từ Geometry.
VertexElementLớp cơ sở trừu tượng cho một lớp dữ liệu gắn vào hình học (normals, UVs, colours, v.v.). Mang mapping_mode, reference_mode, và một data danh sách.
VertexElementNormalLưu trữ một vector pháp tuyến cho mỗi đỉnh hoặc mỗi góc đa giác, tùy thuộc vào mapping_mode. Các giá trị dữ liệu là FVector4 các thể hiện (độ chính xác đơn) với w không sử dụng.
VertexElementUVLưu trữ dữ liệu tọa độ texture dưới dạng FVector4 theo đỉnh hoặc theo góc đa giác (chỉ xy các thành phần được sử dụng cho UV). Một lưới có thể chứa nhiều lớp UV cho các kênh texture khác nhau.
VertexElementVertexColorLưu trữ dữ liệu màu RGBA theo-đỉnh hoặc theo-góc dưới dạng FVector4 (r, g, b, a trong khoảng 0–1).
VertexElementSmoothingGroupLưu trữ các ID số nguyên của nhóm làm mịn theo-đa giác, được trình nhập OBJ sử dụng để tái tạo các phân công nhóm làm mịn gốc từ tệp nguồn.
VertexElementTypeLiệt kê xác định vai trò ngữ nghĩa của lớp phần tử đỉnh: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, và các phần khác. Truyền các giá trị tới Mesh.get_element().
MappingModeLiệt kê kiểm soát primitive nào mà giá trị phần tử đỉnh sẽ ánh xạ tới: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, hoặc ALL_SAME.
ReferenceModeLiệt kê kiểm soát cách các giá trị được đánh chỉ mục: DIRECT (một giá trị cho mỗi primitive ánh xạ) hoặc INDEX_TO_DIRECT (mảng giá trị cộng với một mảng chỉ mục riêng biệt).
PolygonModifierLớp tiện ích tĩnh với các phương thức để tạo tam giác Mesh các đối tượng và toàn bộ Scene đồ thị.

Biến đổi và Không gian

PropertiesProperties
TransformBiến đổi cục bộ được gắn vào một Node. Cung cấp phép dịch, quay (như Quaternion), và các thành phần tỉ lệ, cộng thêm các thuộc tính tiện lợi cho góc Euler.
GlobalTransformChế độ xem chỉ đọc của biến đổi không gian thế giới của một nút sau khi hợp nhất tất cả các biến đổi của tổ tiên. Truy cập qua Node.global_transform.
AssetInfoKhối siêu dữ liệu được gắn vào một Scene. Lưu trữ tên ứng dụng tạo, tên đơn vị, hệ số tỉ lệ đơn vị, định nghĩa trục hệ tọa độ, và dấu thời gian tạo/điều chỉnh.

Vật liệu và Đổ bóng

PropertiesProperties
MaterialLớp cơ sở trừu tượng cho mọi loại vật liệu. Cung cấp một tên và một bộ sưu tập thuộc tính cho các tham số số và màu sắc.
LambertMaterialMô hình vật liệu chỉ khuếch tán. Lưu trữ màu môi trường, màu khuếch tán, màu phát sáng và độ trong suốt. Được tải từ các tệp OBJ sử dụng cơ bản Ka/Kd/Ke các khai báo.
PhongMaterialProperties LambertMaterial với màu phản chiếu và độ bóng (số mũ phản chiếu). Được tải từ các tệp OBJ sử dụng Ks/Ns các khai báo.
PbrMaterialVật liệu Đồ họa Dựa trên Vật lý. Lưu trữ albedo, hệ số kim loại, hệ số độ nhám và các texture liên quan. Được sử dụng bởi glTF 2.0 và các định dạng hỗ trợ PBR khác.

Camera và Chiếu sáng

PropertiesProperties
CameraThực thể Camera. Chỉ projection_typename hoạt động trong phiên bản này; tất cả các thuộc tính số khác (near_plane, far_plane, field_of_view, aspect_ratio) là các stub trả về giá trị mặc định. Được gắn vào một Node để định nghĩa các phép biến đổi góc nhìn.
LightThực thể nguồn sáng. Kế thừa từ Camera như một lớp stub; Light lớp này không tiết lộ các thuộc tính bổ sung nào trong phiên bản này.
LightTypeLiệt kê các danh mục ánh sáng được hỗ trợ: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionTypeLiệt kê các chế độ chiếu máy ảnh: PERSPECTIVEORTHOGRAPHIC.

Tiện ích toán học

PropertiesProperties
Vector2Vector 2 thành phần Double-precision (x, y). Được dùng cho tọa độ texture UV.
Vector3Vector 3 thành phần Double-precision (x, y, z). Được dùng cho vị trí, hướng và tỉ lệ.
Vector4Vector 4 thành phần Double-precision (x, y, z, w). Được dùng cho các điểm điều khiển (vị trí đồng nhất) và dữ liệu pháp tuyến.
FVector2Vector float 2 thành phần Single-precision. Được sử dụng nội bộ để lưu trữ gọn gàng trong các mảng dữ liệu phần tử đỉnh.
FVector3Vector float 3 thành phần Single-precision. Xuất hiện trong các mảng dữ liệu phần tử đỉnh cho các pháp tuyến và tiếp tuyến.
FVector4Vector số thực 4 thành phần độ chính xác đơn. Kiểu lưu trữ của VertexElementFVector.data.
QuaternionQuaternion đơn vị để biểu diễn các phép quay (w, x, y, z). Được sử dụng bởi Transform.rotation.
Matrix44×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxHộp bao trùm căn trục được định nghĩa bởi minimummaximum Vector3 các góc. Được sử dụng cho các truy vấn không gian và các công cụ hỗ trợ frustum culling.

Properties

PropertiesProperties
AnimationClipBộ chứa có tên cho một tập hợp các kênh hoạt hình bao phủ một khoảng thời gian phát lại. Một Scene có thể chứa nhiều clip (ví dụ: “Walk”, “Run”).
AnimationNodeLiên kết một AnimationClip đến một nút cảnh hoặc thuộc tính cụ thể. Hoạt động như cầu nối giữa dữ liệu clip và các đối tượng đồ thị cảnh.
AnimationChannelMột luồng thuộc tính được hoạt hình duy nhất trong một clip, nhắm mục tiêu vào một thuộc tính có tên trên một đối tượng (ví dụ:., Transform.translation.x).
KeyFrameMột mẫu thời gian–giá trị duy nhất trong một KeyframeSequence. Lưu trữ thời gian (theo giây) và giá trị tại thời điểm đó.
KeyframeSequenceMột danh sách có thứ tự của KeyFrame các đối tượng cho một kênh vô hướng, cùng với các cài đặt nội suy và ngoại suy.
InterpolationLiệt kê các chế độ nội suy giữa các khung chính: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE.
ExtrapolationTypeLiệt kê các hành vi ngoài khung chính đầu tiên và cuối cùng: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE.

Đầu vào/Đầu ra Định dạng

PropertiesProperties
Scene.from_file(path)Phương thức tĩnh. Mở tệp tại path, phát hiện định dạng từ phần mở rộng, và trả về một Scene. Bắt lỗi khi không tìm thấy tệp hoặc định dạng không được hỗ trợ.
Scene.open(path, options=None)Phương thức thể hiện. Mở tệp vào một Scene thể hiện, tùy chọn sử dụng một LoadOptions lớp con.
Scene.save(path, options=None)Phương thức instance. Chuỗi hoá cảnh thành path sử dụng định dạng được suy ra từ phần mở rộng, tùy chọn sử dụng một định dạng‑cụ thể SaveOptions lớp con.
FileFormatDanh bạ các định dạng tệp được hỗ trợ. Chứa các mục như FileFormat.WAVEFRONT_OBJ, FileFormat.GLTF, FileFormat.FBX7400ASCII, FileFormat.MICROSOFT_3MF. Các biến thể định dạng‑cụ thể được truy cập qua các lớp tùy chọn (ví dụ,., ColladaSaveOptions, GltfSaveOptions).
IOServiceTrừu tượng I/O nội bộ được các bộ nhập và xuất định dạng sử dụng. Thông thường không được mã ứng dụng sử dụng trực tiếp.
LoadOptionsLớp cơ sở cho tất cả các đối tượng tùy chọn tải‑định dạng‑cụ thể. Được kế thừa bởi ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions.
SaveOptionsLớp cơ sở cho tất cả các đối tượng tùy chọn lưu‑định dạng‑cụ thể. Được kế thừa bởi ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions.

Định dạng OBJ

PropertiesProperties
ObjImporterLớp nhập nội bộ phân tích các tệp Wavefront OBJ và MTL. Được gọi tự động bởi Scene.from_file() cho .obj các phần mở rộng.
ObjLoadOptionsTùy chọn tải cho các tệp Wavefront OBJ. Các thuộc tính chính: flip_coordinate_system, scale, enable_materials, normalize_normal.
ObjSaveOptionsTùy chọn lưu cho đầu ra Wavefront OBJ. Kiểm soát normals, UVs, material references, và point-cloud mode.
ObjFormatBộ mô tả định dạng cho Wavefront OBJ. Có thể truy cập dưới dạng FileFormat.WAVEFRONT_OBJ().

Định dạng STL

PropertiesProperties
StlImporterBộ nhập nội bộ đọc cả các tệp STL nhị phân và ASCII. Được chọn tự động theo phần mở rộng.
StlExporterBộ xuất nội bộ ghi STL.
StlLoadOptionsTải các tùy chọn cho tệp STL. Hỗ trợ flip_coordinate_systemscale.
StlSaveOptionsLưu các tùy chọn cho đầu ra STL. Điều khiển binary_mode, scale, và flip_coordinate_system.
StlFormatMô tả định dạng cho STL.

Định dạng glTF

PropertiesProperties
GltfLoadOptionsTải các tùy chọn cho tệp glTF 2.0 và GLB. Thuộc tính chính: flip_tex_coord_v.
GltfSaveOptionsLưu các tùy chọn cho đầu ra glTF 2.0. Sử dụng binary_mode=True cho một gói GLB tự chứa.
GltfFormatMô tả định dạng cho glTF 2.0 / GLB. Truy cập dưới dạng FileFormat.GLTF2().

Định dạng FBX

PropertiesProperties
FbxLoadOptionsTùy chọn tải cho tệp FBX. Các thuộc tính chính: keep_builtin_global_settings, compatible_mode.
FbxSaveOptionsTùy chọn lưu cho đầu ra FBX. Kiểm soát nén, nhúng texture, và các thuộc tính vật liệu.
FbxFormatMô tả định dạng cho FBX. Truy cập dưới dạng FileFormat.FBX7400ASCII().

Định dạng COLLADA

PropertiesProperties
ColladaLoadOptionsTùy chọn tải cho COLLADA (.dae) tệp. Kiểm soát việc ánh xạ lại trục và tỷ lệ đơn vị khi nhập.
ColladaSaveOptionsTùy chọn lưu cho đầu ra COLLADA. Kiểm soát indented, flip_coordinate_system, và xuất vật liệu.
ColladaFormatMô tả định dạng cho COLLADA. Được tự động xác định từ .dae phần mở rộng tệp.

3MF Format

PropertiesProperties
ThreeMfLoadOptionsTùy chọn tải cho 3MF (.3mf) tệp.
ThreeMfSaveOptionsTùy chọn lưu cho đầu ra 3MF. 3MF là định dạng ưu tiên cho quy trình in 3D.
ThreeMfFormatMô tả định dạng cho 3MF. Có thể truy cập dưới dạng FileFormat.MICROSOFT_3MF_FORMAT().

Properties

PropertiesProperties
TextureMappingXác định cách một texture được ánh xạ lên hình học: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, v.v.
BooleanOperationKiểu thao tác Boolean CSG: UNION, DIFFERENCE, INTERSECTION.

Hệ thống Thuộc tính

PropertiesProperties
PropertyMột thuộc tính có tên và kiểu duy nhất trên một A3DObject. Lưu trữ tên thuộc tính, mô tả kiểu, và giá trị hiện tại.
PropertyCollectionBộ sưu tập có thể lặp lại của Property các đối tượng được gắn vào một A3DObject. Hỗ trợ tra cứu theo tên và lặp lại tất cả các thuộc tính đã định nghĩa.
CustomObjectMột phiên bản nhẹ A3DObject lớp con chỉ mang một tên và một arbitrary PropertyCollection. Được sử dụng để lưu trữ siêu dữ liệu do người dùng định nghĩa trên các đối tượng trong cảnh.

Hình ảnh và Kết xuất

PropertiesProperties
ImageRenderOptionsCác tùy chọn cho software rasterisation khi rendering một cảnh vào bộ đệm hình ảnh. Lưu trữ màu nền, kích thước hình ảnh và tham chiếu camera. Tính năng này có sẵn trong các cấu hình được hỗ trợ.

Xem thêm

 Tiếng Việt