Class Scene
Package : @aspose/3d (v24.12.0)
Scene est le conteneur racine d’un graphe de scène 3D dans @aspose/3d. Il contient la hiérarchie des nœuds, les métadonnées et les clips d’animation, et fournit l’interface d’E/S principale pour le chargement et l’enregistrement des fichiers 3D.
export class Scene extends SceneObjectColladaSaveOptions
Renvoie true si le point ou la boîte englobante fourni(e) est entièrement à l’intérieur de cette boîte. Accepte un objet point {x, y, z}, un Vector3, ou un autre BoundingBox.
ColladaSaveOptions
Chargez un fichier OBJ et affichez le nombre de nœuds enfants à la racine du graphe de scène.
import { Scene } from '@aspose/3d';
const scene = new Scene();
scene.open('model.obj');
function countNodes(node: any): number {
let total = 1;
for (const child of node.childNodes) {
total += countNodes(child);
}
return total;
}
const nodeCount = countNodes(scene.rootNode);
console.log(`Total nodes in scene: ${nodeCount}`);ColladaSaveOptions
| ColladaSaveOptions | ColladaSaveOptions | ColladaSaveOptions |
|---|---|---|
rootNode | Node | Le nœud racine du graphe de scène. Toute la géométrie, les lumières, les caméras et les autres objets sont attachés sous ce nœud. |
assetInfo | AssetInfo | Métadonnées concernant l’actif, incluant le créateur, la date de création, les informations d’unité et le système de coordonnées. |
animationClips | AnimationClip[] | La collection de clips d’animation définis dans la scène. Chaque clip contient des courbes d’animation pour les nœuds et leurs propriétés. |
subScenes | Scene[] | Sous-scènes intégrées dans cette scène. Utilisées par des formats tels que FBX qui prennent en charge les hiérarchies de scène. Note : Cette propriété n’est pas confirmée dans la surface d’API actuelle et peut ne pas être disponible. |
ColladaSaveOptions
open(fileOrStream, options?)
Charge un fichier 3D à partir d’un chemin de fichier ou d’un Buffer dans la scène, en remplaçant tout le contenu existant.
open(fileOrStream: string | Buffer, options?: LoadOptions): voidColladaSaveOptions
fileOrStream string | Buffer
Le chemin vers le fichier source, ou un Buffer contenant les données brutes du fichier.
options LoadOptions (optionnel)
Options de chargement spécifiques au format. Passez undefined pour utiliser les valeurs par défaut.
ColladaSaveOptions
void
ColladaSaveOptions
import { Scene } from '@aspose/3d';
const scene = new Scene();
scene.open('input.fbx');
console.log(`Loaded scene with root node: ${scene.rootNode.name}`);openFromBuffer(buffer, options?)
Charge un fichier 3D à partir d’une source en mémoire Buffer. C’est la surcharge préférée lorsque les données du fichier ont déjà été lues en mémoire.
openFromBuffer(buffer: Buffer, options?: LoadOptions): voidColladaSaveOptions
buffer Buffer
Un Node.js Buffer contenant le contenu complet du fichier.
options LoadOptions (facultatif)
Options de chargement spécifiques au format.
ColladaSaveOptions
void
ColladaSaveOptions
import { Scene } from '@aspose/3d';
import { readFileSync } from 'fs';
const data = readFileSync('model.glb');
const scene = new Scene();
scene.openFromBuffer(data);
console.log(`Animation clips: ${scene.animationClips.length}`);save(fileOrStream, formatOrOptions?, options?)
Enregistre la scène dans un fichier. Le format est déduit de l’extension du fichier, ou vous pouvez passer un format spécifique SaveOptions instance (ou un FileFormat singleton) comme deuxième argument.
save(fileOrStream: string, formatOrOptions?: FileFormat | SaveOptions, options?: SaveOptions): voidColladaSaveOptions
fileOrStream string
Le chemin du fichier de destination. L’extension détermine le format de sortie (par ex., .glb → GLB, .gltf → glTF JSON, .stl → STL).
formatOrOptions FileFormat | SaveOptions (facultatif)
Soit un singleton de format (par ex., GltfFormat.getInstance()) SaveOptions ou un format‑spécifique subclass.
options SaveOptions (facultatif)
Options d’enregistrement spécifiques au format lorsqu’un FileFormat est passé en tant que deuxième argument.
ColladaSaveOptions
void
ColladaSaveOptions
import { Scene } from '@aspose/3d';
const scene = new Scene();
scene.open('input.obj');
// Format inferred from extension
scene.save('output.glb');
console.log('Scene saved as GLB.');createAnimationClip(name)
Crée un nouveau clip d’animation nommé et l’ajoute à la scène’s animationClips collection.
createAnimationClip(name: string): AnimationClipColladaSaveOptions
name string
Un nom descriptif pour le nouveau clip d’animation.
ColladaSaveOptions
AnimationClip
Le nouvellement créé AnimationClip instance.
ColladaSaveOptions
import { Scene } from '@aspose/3d';
const scene = new Scene();
const clip = scene.createAnimationClip('WalkCycle');
console.log(`Created clip: ${clip.name}`);
console.log(`Total clips: ${scene.animationClips.length}`);