Scene

Scene class i Aspose.3D fungerer som rotbeholder for 3D‑innhold, håndterer objekter på toppnivå og muliggjør administrasjon av forelder/barn‑relasjoner for scenehierarkiet. Den gir tilgang til rotnoder og under‑scener, og danner inngangspunktet for lasting, bygging og lagring av 3D‑scener.

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 class kan instansieres uten argumenter for å lage en tom scene, eller med valgfrie parametere.

namestrValgfritt navn på scenen
entityEntityValgfri enhet som skal festes til rotnoden ved opprettelse
parent_sceneSceneValgfri overordnet scene (for under‑scener)
from aspose.threed import Scene

# Empty scene
scene = Scene()

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

Klassemetoder

Returtype
Scene.from_file(file_path)SceneLaster en scene fra den angitte filstien, og oppdager formatet automatisk.
Scene.from_file(file_path, options)SceneLaster en scene med formatspesifikke lastealternativer.
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 og andre attributter på scenenivå er egenskaper; få tilgang til dem uten parenteser.

root_nodeNodeRotnode i scenehierarkiet. Tilgang som en egenskap: scene.root_node
sub_sceneslist[Scene]Under‑scener som er nestet i denne scenen
asset_infoAssetInfoMetadata for ressursen, som forfatter, opprettelsesdato og enheter
animation_clipslist[AnimationClip]Animasjonsklipp definert i scenen
current_animation_clip`AnimationClipNone`
librarylist[CustomObject]Brukerdefinerte metadataobjekter knyttet til scenen.
namestrNavn på sceneobjektet
propertiesPropertyCollectionTilpassede egenskaper knyttet til scenen

Returtype
save(file_path)NoneLagrer scenen til en fil; formatet blir utledet fra filendelsen
save(file_path, format)NoneLagrer scenen til en fil i den angitte FileFormat
save(file_path, options)NoneLagrer scenen ved å bruke formatspesifikke lagringsalternativer
get_property(name)AnyHenter en egenskapsverdi etter navn
find_property(name)Optional[Property]Finner en egenskap etter navn
create_animation_clip(name)AnimationClipOppretter et nytt navngitt animasjonsklipp og legger det til i scenen
get_animation_clip(name)`AnimationClipNone`
clear()NoneFjerner alt innhold fra scenen

Merk: root_node er en egenskapScene klassen, ikke en metode. Ikke skriv scene.root_node(); korrekt tilgang er scene.root_node.

Opprett en scene, legg til en mesh-node, og lagre til 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)

Se også

 Norsk