Comment démarrer avec la 3D en Python
Prérequis
- Python 3.8 ou version ultérieure
- gestionnaire de paquets pip
Étape 1 — Installer le package
Installez Aspose.3D FOSS pour Python depuis PyPI :
pip install aspose-3d-fossVérifiez l’installation :
import aspose.threed as a3d
print(a3d.__version__)Étape 2 — Créez votre première scène 3D
Un Scene est le conteneur racine de tous les objets 3D. Le constructeur accepte une entité optionnelle, une scène parent et un nom :
import aspose.threed as a3d
# Create an empty scene (CLM-3d-35d727)
scene = a3d.Scene()
# Access the root node of the scene (CLM-3d-859ac2)
root = scene.root_node()
print("Root node:", root)Étape 3 — Ajouter un maillage à la scène
Mesh représente la géométrie polygonale. Node attache des entités au graphe de scène :
import aspose.threed as a3d
scene = a3d.Scene()
# Create a named mesh (CLM-3d-529c11)
mesh = a3d.Mesh("my_mesh")
# Create a node and attach the mesh (CLM-3d-0edae8)
node = a3d.Node("my_node", mesh)
# Add the node as a child of the root (CLM-3d-a403f5)
scene.root_node().add_child_node(node)Étape 4 — Charger un fichier 3D existant
Scene.open() charge un fichier 3D depuis le disque ou le flux. Il accepte un chemin et des options de chargement facultatives
options de chargement :
import aspose.threed as a3d
# Load an OBJ file (CLM-3d-d84964)
scene = a3d.Scene()
scene.open("model.obj")
# Inspect the loaded scene
root = scene.root_node()
print("Child nodes:", len(root.child_nodes()))Pour détecter le format du fichier avant le chargement :
import aspose.threed as a3d
# Detect the format from a file name (CLM-3d-d2de62)
fmt = a3d.FileFormat.detect(None, "model.fbx")
if fmt:
print("Detected format:", fmt.extension())Étape 5 — Enregistrer la sortie dans un fichier
Scene.save() exporte la scène vers n’importe quel format pris en charge. L’approche recommandée est la détection automatique basée sur l’extension : Aspose.3D déduit le format à partir de l’extension du fichier (CLM-3d-8051bd, CLM-3d-b28d7a, CLM-3d-de8e1a) :
import aspose.threed as a3d
scene = a3d.Scene()
# ... populate scene ...
# Save as Wavefront OBJ — extension auto-detects the format
scene.save("output.obj")
# Save as glTF 2.0 binary — .glb extension triggers binary GLB output
scene.save("output.glb")Vous pouvez également passer un format explicite en utilisant les méthodes d’usine FileFormat.WAVEFRONT_OBJ() ou FileFormat.GLTF2(), mais la détection automatique de l’extension est plus simple et plus portable.
Étapes suivantes
- Comment charger des modèles 3D en Python — formats, options, traversée du graphe de scène
- Comment convertir des modèles 3D en Python — flux de travail de conversion par lots
- Comment créer la géométrie de maillage en Python — points de contrôle, polygones, normales
- FAQ — questions courantes et dépannage