Brukstilfeller
Oversikt
Aspose.3D er et åpen kildekode 3D‑filformatbibliotek for Python som gjør det mulig for utviklere å opprette, manipulere og konvertere 3D‑scener og modeller programmatisk. Det støtter moderne 3D‑arbeidsflyter ved å tilby robust fil‑I/O og håndtering av scene‑graf.
Biblioteket tilbyr full støtte for glTF (GL Transmission Format) med PBR‑materialstøtte, noe som gjør det egnet for web‑ og sanntidsrenderings‑pipelines. Den hierarkiske nodestrukturen tillater intuitiv organisering av 3D‑scener ved hjelp av foreldre‑barn‑relasjoner mellom noder, noe som muliggjør skalerbar scenestyring for komplekse modeller.
Hvordan det fungerer
Aspose.3D for Python gir programmatisk kontroll over 3D‑scener og modeller gjennom en strukturert objektmodell sentrert rundt Scene, Node og Entity. Utviklere kan laste inn eksisterende formater som STL (bredt brukt for 3D‑utskrift) eller konstruere scener fra bunnen av ved hjelp av kjerneprimitiver som Mesh. Biblioteket støtter mesh‑ og enhetsadministrasjon, og gjør det mulig å inspisere og endre vertex‑data, polygon‑topologi og romlige relasjoner innenfor scenens hierarki.
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.edgesKodeeksempel
Dette eksemplet demonstrerer lasting av en 3D-modell fra en OBJ‑fil med lastingsalternativer, og deretter traversering av dens scenegraf for å inspisere mesh‑geometri. Scene.from_file() godtar kun en filsti; bruk scene.open() for å sende inn lastingsalternativer.
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}")Se også
Aspose.3D muliggjør robust 3D Python‑utvikling for visualiseringsverktøy og interaktive applikasjoner. Utviklere kan opprette og manipulere 3D‑scener, importere OBJ‑filer med materiallasting via ObjLoadOptions.enable_materials, eksportere OBJ‑filer ved hjelp av ObjExporter, og utføre lavnivå vektormatematikk ved bruk av innebygde typer som Vector4 og Matrix4.