Naudojimo atvejai
Apžvalga
Aspose.3D yra atviro kodo 3D failų formato biblioteka, skirta Python, kuri leidžia kūrėjams programiškai kurti, manipuliuoti ir konvertuoti 3D scenas bei modelius. Ji palaiko šiuolaikinius 3D darbo procesus, teikdama patikimą failų I/O ir scenų grafų tvarkymą.
Biblioteka siūlo pilną glTF (GL Transmission Format) palaikymą su PBR medžiagų palaikymu, todėl ji tinka interneto ir realaus laiko atvaizdavimo konvejams. Jos hierarchinė mazgų struktūra leidžia intuityvią 3D scenų organizaciją naudojant tėvų‑vaikų santykius tarp mazgų, suteikdama galimybę mastelinti scenų valdymą sudėtingiems modeliams.
Kaip tai veikia
Aspose.3D skirta Python suteikia programinę kontrolę 3D scenoms ir modeliams per struktūruotą objektų modelį, sukurtą aplink Scene, Node, ir Entity.Kūrėjai gali įkelti esamus formatus, pvz., STL (plačiai naudojamas 3D spausdinimui), arba kurti scenas nuo nulio naudodami pagrindines primityvas, tokius kaip Mesh. Biblioteka palaiko tinklelio ir objektų valdymą, leidžiančią tikrinti ir modifikuoti viršūnių duomenis, daugiakampių topologiją ir erdvinį ryšį scenų hierarchijoje.
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.edgesKodo pavyzdys
Šiame pavyzdyje demonstruojama 3D modelio įkėlimas iš OBJ failo su įkėlimo parinktimis, o po to scenos grafiko perėjimas siekiant patikrinti tinklelio geometriją. Scene.from_file() priima tik failo kelią; naudokite scene.open() norėdami perduoti įkėlimo parinktis.
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}")Žr. taip pat
Aspose.3D suteikia patikimą 3D Python kūrimą vizualizacijos įrankiams ir interaktyvioms programoms. Kūrėjai gali kurti ir manipuliuoti 3D scenomis, importuoti OBJ failus su medžiagų įkėlimu per ObjLoadOptions.enable_materials, eksportuoti OBJ failus naudojant ObjExporter, ir atlikti žemo lygio vektorinę matematiką naudojant įmontuotas tipus, tokius kaip Vector4 ir Matrix4.