Anwendungsfälle
Übersicht
Aspose.3D ist eine Open-Source-3D-Dateiformatbibliothek für Python, die Entwicklern ermöglicht, 3D‑Szenen und -Modelle programmgesteuert zu erstellen, zu manipulieren und zu konvertieren. Sie unterstützt moderne 3D‑Workflows, indem sie robuste Datei‑I/O und die Handhabung von Szenengraphen bereitstellt.
Die Bibliothek bietet vollständige Unterstützung für glTF (GL Transmission Format) mit PBR‑Materialunterstützung, wodurch sie für Web‑ und Echtzeit‑Rendering‑Pipelines geeignet ist. Ihre hierarchische Knotenstruktur ermöglicht eine intuitive Organisation von 3D‑Szenen mittels Eltern‑Kind‑Beziehungen zwischen Knoten und erlaubt ein skalierbares Szenenmanagement für komplexe Modelle.
Wie es funktioniert
Aspose.3D für Python bietet programmgesteuerte Kontrolle über 3D‑Szenen und -Modelle durch ein strukturiertes Objektmodell, das sich um Scene, Node und Entity dreht. Entwickler können vorhandene Formate wie STL (weit verbreitet für den 3D‑Druck) laden oder Szenen von Grund auf mit Kernprimitiven wie Mesh erstellen. Die Bibliothek unterstützt Mesh‑ und Entitätsverwaltung und ermöglicht die Inspektion und Modifikation von Vertex‑Daten, Polygon‑Topologie und räumlichen Beziehungen innerhalb der Szenenhierarchie.
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.edgesCodebeispiel
Dieses Beispiel demonstriert das Laden eines 3D‑Modells aus einer OBJ‑Datei mit Ladeoptionen und anschließend das Durchlaufen seines Szenengraphen, um die Mesh‑Geometrie zu untersuchen. Scene.from_file() akzeptiert nur einen Dateipfad; verwenden Sie scene.open(), um Ladeoptionen zu übergeben.
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}")Siehe auch
Aspose.3D ermöglicht robuste 3D‑Python‑Entwicklung für Visualisierungstools und interaktive Anwendungen. Entwickler können 3D‑Szenen erstellen und manipulieren, OBJ‑Dateien mit Materialladen über ObjLoadOptions.enable_materials importieren, OBJ‑Dateien mit ObjExporter exportieren und niedrigstufige Vektorrechnung mit eingebauten Typen wie Vector4 und Matrix4 durchführen.