Scene

Scene la classe in Aspose.3D funge da contenitore radice per i contenuti 3D, gestendo gli oggetti di livello superiore e consentendo la gestione delle relazioni genitore/figlio per la gerarchia della scena. Fornisce l’accesso ai nodi radice e alle sotto‑scene, costituendo il punto di ingresso per il caricamento, la costruzione e il salvataggio delle scene 3D.

from aspose.threed import Scene

# Create an empty scene
scene = Scene()

# Access the root node: root_node is a property, not a method call
root = scene.root_node

Scene la classe può essere istanziata senza argomenti per creare una scena vuota, oppure con parametri opzionali.

namestrNome opzionale della scena
entityEntityEntità opzionale da collegare al nodo radice al momento della creazione
parent_sceneSceneScena genitore opzionale (per sotto‑scene)
from aspose.threed import Scene

# Empty scene
scene = Scene()

# Access the root node (property, not a method)
root = scene.root_node

Metodi di classe

Tipo di ritorno
Scene.from_file(file_path)SceneCarica una scena dal percorso file specificato, rilevando automaticamente il formato.
Scene.from_file(file_path, options)SceneCarica una scena con opzioni di caricamento specifiche per il formato.
from aspose.threed import Scene
from aspose.threed.formats import ObjLoadOptions

# Load from file (format detected from extension)
scene = Scene.from_file("model.obj")

# Load with options
opts = ObjLoadOptions()
scene = Scene.from_file("model.obj", opts)

root_node e altri attributi a livello di scena sono proprietà; accedervi senza parentesi.

root_nodeNodeNodo radice della gerarchia della scena. Accedervi come proprietà: scene.root_node
sub_sceneslist[Scene]Sotto‑scene annidate all’interno di questa scena
asset_infoAssetInfoMetadati dell’asset come autore, data di creazione e unità
animation_clipslist[AnimationClip]Clip di animazione definiti nella scena
current_animation_clip`AnimationClipNone`
librarylist[CustomObject]Oggetti di metadati definiti dall’utente allegati alla scena.
namestrNome dell’oggetto della scena
propertiesPropertyCollectionProprietà personalizzate associate alla scena

Tipo di ritorno
save(file_path)NoneSalva la scena in un file; il formato è dedotto dall’estensione
save(file_path, format)NoneSalva la scena in un file nel percorso specificato FileFormat
save(file_path, options)NoneSalva la scena usando le opzioni di salvataggio specifiche del formato
get_property(name)AnyOttiene il valore di una proprietà per nome
find_property(name)Optional[Property]Trova una proprietà per nome
create_animation_clip(name)AnimationClipCrea una nuova clip di animazione con nome e la aggiunge alla scena
get_animation_clip(name)`AnimationClipNone`
clear()NoneCancella tutto il contenuto dalla scena

Nota: root_node è un proprietà sulla Scene classe, non un metodo. Non scrivere scene.root_node(); l’accesso corretto è scene.root_node.

Crea una scena, aggiungi un nodo mesh e salva in GLB:

from aspose.threed import Scene
from aspose.threed.entities import Mesh
from aspose.threed.formats import GltfSaveOptions
from aspose.threed.utilities import Vector4

# Create scene and mesh
scene = Scene()
mesh = Mesh()
mesh.control_points.append(Vector4(0, 0, 0, 1))
mesh.control_points.append(Vector4(1, 0, 0, 1))
mesh.control_points.append(Vector4(0.5, 1, 0, 1))
mesh.create_polygon(0, 1, 2)

# Add node to root: root_node is a property
node = scene.root_node.create_child_node("triangle", mesh)

# Save as GLB using GltfSaveOptions with binary_mode
opts = GltfSaveOptions()
opts.binary_mode = True
scene.save("triangle.glb", opts)

Vedi anche

 Italiano