Casos d'ús

Visió general

Aspose.3D és una biblioteca de format de fitxer 3D de codi obert per a Python que permet als desenvolupadors crear, manipular i convertir escenes i models 3D de manera programàtica. Admet fluxos de treball 3D moderns proporcionant una robusta I/O de fitxers i gestió del graf d’escena.

La biblioteca ofereix suport complet per a glTF (GL Transmission Format) amb suport de material PBR, fent-la adequada per a canals de renderització web i en temps real. La seva estructura jeràrquica de nodes permet una organització intuïtiva d’escenes 3D mitjançant relacions pare-filla entre nodes, permetent una gestió escalable d’escenes per a models complexos.

Com funciona

Aspose.3D per a Python proporciona control programàtic sobre escenes i models 3D a través d’un model d’objectes estructurat centrat en Scene, Node i Entity. Els desenvolupadors poden carregar formats existents com STL (ampliament utilitzat per a la impressió 3D) o construir escenes des de zero utilitzant primitives bàsiques com Mesh. La biblioteca admet la gestió de malles i entitats, permetent la inspecció i modificació de dades de vèrtex, topologia de polígons i relacions espacials dins de la jerarquia d’escenes.

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

Exemple de codi

Aquest exemple demostra com carregar un model 3D des d’un fitxer OBJ amb opcions de càrrega, i després recórrer el seu gràfic d’escena per inspeccionar la geometria de la malla. Scene.from_file() accepta només una ruta de fitxer; utilitzeu scene.open() per passar opcions de càrrega.

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}")

Vegeu també

Aspose.3D permet un desenvolupament robust de Python 3D per a eines de visualització i aplicacions interactives. Els desenvolupadors poden crear i manipular escenes 3D, importar fitxers OBJ amb càrrega de materials mitjançant ObjLoadOptions.enable_materials, exportar fitxers OBJ utilitzant ObjExporter i realitzar càlculs vectorials de baix nivell amb tipus integrats com Vector4 i Matrix4.

 Català