Casos de uso

Visión general

Aspose.3D es una biblioteca de formatos de archivo 3D de código abierto para Python que permite a los desarrolladores crear, manipular y convertir escenas y modelos 3D de forma programática. Soporta flujos de trabajo 3D modernos al proporcionar una gestión robusta de E/S de archivos y del grafo de escena.

La biblioteca ofrece soporte completo para glTF (GL Transmission Format) con soporte de materiales PBR, lo que la hace adecuada para tuberías de renderizado web y en tiempo real. Su estructura jerárquica de nodos permite una organización intuitiva de escenas 3D usando relaciones padre‑hijo entre nodos, habilitando una gestión escalable de escenas para modelos complejos.

Cómo funciona

Aspose.3D for Python proporciona control programático sobre escenas y modelos 3D mediante un modelo de objetos estructurado centrado en Scene, Node y Entity. Los desarrolladores pueden cargar formatos existentes como STL (ampliamente utilizado para la impresión 3D) o construir escenas desde cero usando primitivas básicas como Mesh. La biblioteca admite la gestión de mallas y entidades, permitiendo la inspección y modificación de datos de vértices, topología de polígonos y relaciones espaciales dentro de la jerarquía de la escena.

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

Ejemplo de código

Este ejemplo muestra cómo cargar un modelo 3D desde un archivo OBJ con opciones de carga, y luego recorrer su grafo de escena para inspeccionar la geometría de la malla. Scene.from_file() solo acepta una ruta de archivo; use scene.open() para pasar opciones de carga.

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

Ver también

Aspose.3D permite un desarrollo robusto de Python 3D para herramientas de visualización y aplicaciones interactivas. Los desarrolladores pueden crear y manipular escenas 3D, importar archivos OBJ con carga de materiales mediante ObjLoadOptions.enable_materials, exportar archivos OBJ usando ObjExporter y realizar matemáticas vectoriales de bajo nivel usando tipos incorporados como Vector4 y Matrix4.

 Español