Användningsfall

Användningsfall

Översikt

Aspose.3D är ett open-source 3D‑filformatbibliotek för Python som gör det möjligt för utvecklare att programatiskt skapa, manipulera och konvertera 3D‑scener och modeller. Det stödjer moderna 3D‑arbetsflöden genom att tillhandahålla robust fil‑I/O och hantering av scen‑graf.

Biblioteket erbjuder fullt stöd för glTF (GL Transmission Format) med PBR‑materialstöd, vilket gör det lämpligt för webb‑ och realtidsrenderingspipelines. Dess hierarkiska nodstruktur möjliggör intuitiv organisering av 3D‑scener med föräldra‑barn‑relationer mellan noder, vilket möjliggör skalbar scenhantering för komplexa modeller.

Hur det fungerar

Aspose.3D för Python ger programmatisk kontroll över 3D‑scener och modeller genom en strukturerad objektmodell centrerad på Scene, Node och Entity. Utvecklare kan läsa in befintliga format som STL (omfattande använt för 3D‑utskrift) eller konstruera scener från grunden med hjälp av kärnprimitiver såsom Mesh. Biblioteket stöder mesh‑ och enhetshantering, vilket möjliggör inspektion och modifiering av vertexdata, polygon‑topologi och rumsliga relationer inom scenhierarkin.

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

Kodexempel

Detta exempel demonstrerar hur man laddar en 3D-modell från en OBJ-fil med laddningsalternativ, sedan traverserar dess scengraf för att inspektera mesh-geometri. Scene.from_file() accepterar endast en filsökväg; använd scene.open() för att skicka laddningsalternativ.

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 även

Aspose.3D möjliggör robust 3D Python‑utveckling för visualiseringsverktyg och interaktiva applikationer. Utvecklare kan skapa och manipulera 3D‑scener, importera OBJ‑filer med materialladdning via ObjLoadOptions.enable_materials, exportera OBJ‑filer med hjälp av ObjExporter, och utföra låg‑nivå vektormathematik med inbyggda typer som Vector4 och Matrix4.

 Svenska