Scene

Scene trieda v Aspose.3D slúži ako koreňový kontajner pre 3D obsah, spravuje objekty najvyššej úrovne a umožňuje správu vzťahov rodič/dieťa v hierarchii scény. Poskytuje prístup ku koreňovým uzlom a podscénam, tvoriac vstupný bod pre načítanie, konštruovanie a ukladanie 3D scén.

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 triedu je možné inštancovať bez argumentov na vytvorenie prázdnej scény, alebo s voliteľnými parametrami.

namestrVoliteľný názov scény
entityEntityVoliteľná entita, ktorá sa má pripojiť ku koreňovému uzlu pri vytvorení
parent_sceneSceneVoliteľná nadradená scéna (pre podscény)
from aspose.threed import Scene

# Empty scene
scene = Scene()

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

Metódy triedy

Návratový typ
Scene.from_file(file_path)SceneNačíta scénu zo zadaného súborového cesty, pričom automaticky detekuje formát.
Scene.from_file(file_path, options)SceneNačíta scénu s možnosťami načítania špecifickými pre formát.
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 a ďalšie atribúty na úrovni scény sú vlastnosti; pristupujte k nim bez zátvoriek.

root_nodeNodeKoreňový uzol hierarchie scény. Prístup ako vlastnosť: scene.root_node
sub_sceneslist[Scene]Podscény vnorené v tejto scéne
asset_infoAssetInfoMetadáta aktíva ako autor, dátum vytvorenia a jednotky
animation_clipslist[AnimationClip]Animácie definované v scéne
current_animation_clip`AnimationClipNone`
librarylist[CustomObject]Objekty metadát definované používateľom pripojené k scéne.
namestrNázov objektu scény
propertiesPropertyCollectionVlastné vlastnosti pripojené k scéne

Návratový typ
save(file_path)NoneUloží scénu do súboru; formát je odvodený od prípony
save(file_path, format)NoneUloží scénu do súboru v určenom FileFormat
save(file_path, options)NoneUloží scénu pomocou špecifických možností ukladania pre formát
get_property(name)AnyZíska hodnotu vlastnosti podľa názvu
find_property(name)Optional[Property]Nájde vlastnosť podľa názvu
create_animation_clip(name)AnimationClipVytvorí nový pomenovaný animačný klip a pridá ho do scény
get_animation_clip(name)`AnimationClipNone`
clear()NoneVymaže celý obsah scény

Poznámka: root_node je vlastnosť na Scene triede, nie metóda. Nepíšte scene.root_node(); správny prístup je scene.root_node.

Vytvorte scénu, pridajte uzol siete a uložte do 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)

Pozri tiež

 Slovenčina