Scene — Aspose.3D FOSS for Java
Methods
Methods Scene La classe dans Aspose.3D sert de conteneur racine pour le contenu 3D, gérant les objets de niveau supérieur et permettant la gestion des relations parent/enfant pour la hiérarchie de la scène. Elle fournit l’accès aux nœuds racines et aux sous‑scènes, constituant le point d’entrée pour le chargement, la construction et l’enregistrement des scènes 3D.
import com.aspose.threed.Scene;
// Create an empty scene
Scene scene = new Scene();
// Access the root node via getter method
Node root = scene.getRootNode();Methods
Methods Scene La classe peut être instanciée sans arguments pour créer une scène vide, ou avec des paramètres optionnels.
| Methods | Methods | Methods |
|---|---|---|
entity | Entity | Entité optionnelle à attacher au nœud racine lors de la création |
parentScene | Scene | Scène parent optionnelle (pour les sous‑scènes) ; nécessite un nom |
name | String | Nom de la scène (utilisé uniquement avec le constructeur à deux arguments Scene(Scene, String) constructeur) |
import com.aspose.threed.Scene;
// Empty scene
Scene scene = new Scene();
// Scene with an initial entity
Scene scene = new Scene(new Mesh());
// Access the root node (getter method)
Node root = scene.getRootNode();Méthodes de classe
| Methods | Type de retour | Methods |
|---|---|---|
Scene.fromFile(String filePath) | Scene | Charge une scène depuis le chemin de fichier spécifié, en détectant automatiquement le format. |
Scene.fromFile(String filePath, LoadOptions options) | Scene | Charge une scène avec des options de chargement spécifiques au format. |
import com.aspose.threed.Scene;
// Load from file (format detected from extension)
Scene scene = Scene.fromFile("model.obj");
// Load with options
ObjLoadOptions opts = new ObjLoadOptions();
Scene scene = Scene.fromFile("model.obj", opts);Methods
Toutes les propriétés sont accessibles via des méthodes getter/setter.
| Methods | Methods | Methods | Methods | Methods |
|---|---|---|---|---|
rootNode | Node | getRootNode() | – | Nœud racine de la hiérarchie de la scène |
subScenes | List<Scene> | getSubScenes() | – | Sous‑scènes imbriquées dans cette scène |
assetInfo | AssetInfo | getAssetInfo() | setAssetInfo(AssetInfo) | Métadonnées de l’asset telles que l’auteur, la date de création et les unités |
animationClips | List<AnimationClip> | getAnimationClips() | – | Clips d’animation définis dans la scène |
currentAnimationClip | AnimationClip | getCurrentAnimationClip() | setCurrentAnimationClip(AnimationClip) | Le clip d’animation actuellement actif |
library | List<A3DObject> | getLibrary() | – | Objets de métadonnées définis par l’utilisateur attachés à la scène |
name | String | getName() | setName(String) | Nom de l’objet de scène |
properties | PropertyCollection | getProperties() | – | Propriétés personnalisées attachées à la scène |
Methods
| Methods | Type de retour | Methods |
|---|---|---|
save(String filePath) | void | Enregistre la scène dans un fichier ; le format est déduit de l’extension |
save(String filePath, FileFormat format) | void | Enregistre la scène dans un fichier dans le spécifié FileFormat |
save(String filePath, SaveOptions options) | void | Enregistre la scène en utilisant des options d’enregistrement spécifiques au format |
open(String filePath) | void | Ouvre un fichier dans cette scène ; le format est déduit de l’extension |
open(String filePath, LoadOptions options) | void | Ouvre un fichier avec des options de chargement spécifiques au format |
getProperty(String name) | Object | Obtient la valeur d’une propriété par son nom |
findProperty(String name) | Property | Trouve une propriété par son nom |
createAnimationClip(String name) | AnimationClip | Crée un nouveau clip d’animation nommé et l’ajoute à la scène |
getAnimationClip(String name) | AnimationClip | Trouve un clip d’animation existant par son nom, ou null si non trouvé |
clear() | void | Efface tout le contenu de la scène |
Methods
Créer une scène, ajouter un nœud maillage et enregistrer au format GLB :
import com.aspose.threed.Scene;
import com.aspose.threed.FileFormat;
// Create scene and mesh
Scene scene = new Scene();
Mesh mesh = new Mesh();
mesh.getControlPoints().add(new Vector4(0, 0, 0, 1));
mesh.getControlPoints().add(new Vector4(1, 0, 0, 1));
mesh.getControlPoints().add(new Vector4(0.5, 1, 0, 1));
mesh.createPolygon(0, 1, 2);
// Add node to root
Node node = scene.getRootNode().createChildNode("triangle", mesh);
// Save as GLB
GltfSaveOptions glbOpts = new GltfSaveOptions();
glbOpts.setContentType(FileContentType.BINARY);
scene.save("triangle.glb", glbOpts);