Scene
Methods
Methods Scene class in Aspose.3D slouží jako kořenový kontejner pro 3D obsah, spravuje objekty nejvyšší úrovně a umožňuje správu vztahů rodič/dítě v hierarchii scény. Poskytuje přístup ke kořenovým uzlům a podscénám, čímž tvoří vstupní bod pro načítání, vytváření a ukládání 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_nodeMethods
Methods Scene class lze vytvořit bez argumentů pro vytvoření prázdné scény, nebo s volitelnými parametry.
| Methods | Methods | Methods |
|---|---|---|
name | str | Volitelný název scény |
entity | Entity | Volitelná entita, která se při vytvoření připojí ke kořenovému uzlu |
parent_scene | Scene | Volitelná nadřazená scéna (pro podscény) |
from aspose.threed import Scene
# Empty scene
scene = Scene()
# Access the root node (property, not a method)
root = scene.root_nodeMetody třídy
| Methods | Návratový typ | Methods |
|---|---|---|
Scene.from_file(file_path) | Scene | Načte scénu ze zadané cesty k souboru a automaticky detekuje formát. Přijímá přesně jeden argument. |
from aspose.threed import Scene
from aspose.threed.formats import ObjLoadOptions
# Load from file (format detected from extension)
scene = Scene.from_file("model.obj")
# To pass load options, use scene.open() instead:
opts = ObjLoadOptions()
scene = Scene()
scene.open("model.obj", opts)Methods
root_node a další atributy na úrovni scény jsou vlastnosti; přistupujte k nim bez závorek.
| Methods | Methods | Methods |
|---|---|---|
root_node | Node | Kořenový uzel hierarchie scény. Přístup jako vlastnost: scene.root_node |
sub_scenes | list[Scene] | Podscény vnořené v této scéně |
asset_info | AssetInfo | Metadata aktiva, jako je autor, datum vytvoření a jednotky |
animation_clips | list[AnimationClip] | Animace definované ve scéně |
current_animation_clip | `AnimationClip | None` |
library | list[CustomObject] | Uživatelem definované objekty metadat připojené ke scéně. |
name | str | Název objektu scény |
properties | PropertyCollection | Vlastní vlastnosti přiřazené scéně |
Methods
| Methods | Návratový typ | Methods |
|---|---|---|
save(file_path) | None | Uloží scénu do souboru; formát je odvozen z přípony |
save(file_path, format) | None | Uloží scénu do souboru ve specifikovaném FileFormat |
save(file_path, options) | None | Uloží scénu pomocí formátově specifických možností uložení |
get_property(name) | Any | Získá hodnotu vlastnosti podle názvu |
find_property(name) | Optional[Property] | Najde vlastnost podle názvu |
create_animation_clip(name) | AnimationClip | Vytvoří nový pojmenovaný animační klip a přidá jej do scény |
get_animation_clip(name) | `AnimationClip | None` |
clear() | None | Vymaže veškerý obsah ze scény |
Poznámka: root_node je vlastnost na Scene třídě, ne metodě. Nepište scene.root_node(); správný přístup je scene.root_node.
Methods
Vytvořte scénu, přidejte uzel mesh 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
# Note: control_points returns a copy — use _control_points to add vertices
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)