Случаи на употреба
Общ преглед
Aspose.3D е библиотека с отворен код за 3D файлови формати за Python, която позволява на разработчиците да създават, манипулират и конвертират 3D сцени и модели програмно. Тя поддържа модерни 3D работни потоци, като предоставя стабилно файлово I/O и управление на графа на сцената.
Библиотеката предлага пълна поддръжка за glTF (GL Transmission Format) с PBR материална поддръжка, което я прави подходяща за уеб и реално‑времеви рендеринг конвейери. Йерархичната й структура от възли позволява интуитивна организация на 3D сцени чрез родителско‑дъщерни отношения между възлите, осигурявайки мащабируемо управление на сцените за сложни модели.
Как работи
Aspose.3D за Python предоставя програматичен контрол върху 3D сцени и модели чрез структуриран обектен модел, центриран върху Scene, Node, и Entity. Разработчиците могат да зареждат съществуващи формати като STL (широко използван за 3D печат) или да създават сцени от нулата, използвайки основни примитиви като Mesh. Библиотеката поддържа управление на mesh и entity, позволявайки инспекция и модификация на данни за върхове, топология на полигони и пространствени взаимоотношения в йерархията на сцената.
from aspose.threed import Scene
from aspose.threed.entities import Mesh
# Create a Mesh instance
mesh = Mesh()
# Access mesh data (control_points and edges are properties, not method calls)
vertices = mesh.control_points
edges = mesh.edgesПример за код
Този пример демонстрира зареждане на 3D модел от OBJ файл с опции за зареждане, след което се обхожда графът на сцената, за да се инспектира геометрията на mesh. Scene.from_file() приема само път към файл; използвайте scene.open() за да предадете опциите за зареждане.
from aspose.threed import Scene
from aspose.threed.entities import Mesh
from aspose.threed.formats import ObjLoadOptions
# Import an OBJ file with load options
# Note: Scene.from_file() takes only a file path argument.
# To pass options, use scene.open() instead.
options = ObjLoadOptions()
options.enable_materials = True
options.flip_coordinate_system = False
scene = Scene()
scene.open("model.obj", options)
# Access imported data
for node in scene.root_node.child_nodes:
if node.entity and isinstance(node.entity, Mesh):
mesh = node.entity
print(f"Mesh: {node.name}")
print(f" Vertices: {len(mesh.control_points)}")
print(f" Polygons: {mesh.polygon_count}")Вижте също
Aspose.3D позволява стабилно 3D Python разработване за визуализационни инструменти и интерактивни приложения. Разработчиците могат да създават и манипулират 3D сцени, да импортират OBJ файлове с зареждане на материали чрез ObjLoadOptions.enable_materials, експортирайте OBJ файлове, използвайки ObjExporter, и изпълнявайте ниско ниво векторна математика, използвайки вградени типове като Vector4 и Matrix4.