Scene
Methods
Methods Scene Η κλάση στο Aspose.3D λειτουργεί ως ο ριζικός container για περιεχόμενο 3D, διαχειρίζεται τα αντικείμενα ανώτερου επιπέδου και επιτρέπει τη διαχείριση σχέσεων γονέα/παιδιού για την ιεραρχία της σκηνής. Παρέχει πρόσβαση στους ριζικούς κόμβους και στις υπο-σκηνές, αποτελώντας το σημείο εισόδου για τη φόρτωση, την κατασκευή και την αποθήκευση σκηνών 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_nodeMethods
Methods Scene Η κλάση μπορεί να δημιουργηθεί χωρίς ορίσματα για να δημιουργήσει μια κενή σκηνή, ή με προαιρετικές παραμέτρους.
| Methods | Methods | Methods |
|---|---|---|
name | str | Προαιρετικό όνομα της σκηνής |
entity | Entity | Προαιρετική οντότητα για προσάρτηση στον ριζικό κόμβο κατά τη δημιουργία |
parent_scene | Scene | Προαιρετική γονική σκηνή (για υπο-σκηνές) |
from aspose.threed import Scene
# Empty scene
scene = Scene()
# Access the root node (property, not a method)
root = scene.root_nodeΜέθοδοι της κλάσης
| Methods | Τύπος Επιστροφής | Methods |
|---|---|---|
Scene.from_file(file_path) | Scene | Φορτώνει μια σκηνή από τη συγκεκριμένη διαδρομή αρχείου, ανιχνεύοντας αυτόματα τη μορφή. Δέχεται ακριβώς ένα όρισμα. |
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 και άλλα χαρακτηριστικά επιπέδου σκηνής είναι ιδιότητες; προσπελάστε τα χωρίς παρενθέσεις.
| Methods | Methods | Methods |
|---|---|---|
root_node | Node | Ριζικός κόμβος της ιεραρχίας της σκηνής. Πρόσβαση ως ιδιότητα: scene.root_node |
sub_scenes | list[Scene] | Υπο-σκηνές ενσωματωμένες σε αυτή τη σκηνή |
asset_info | AssetInfo | Μεταδεδομένα περιουσιακού στοιχείου όπως ο δημιουργός, η ημερομηνία δημιουργίας και οι μονάδες |
animation_clips | list[AnimationClip] | Animation clips που ορίζονται στη σκηνή |
current_animation_clip | `AnimationClip | None` |
library | list[CustomObject] | Αντικείμενα μεταδεδομένων ορισμένα από τον χρήστη που είναι προσαρτημένα στη σκηνή. |
name | str | Όνομα του αντικειμένου σκηνής |
properties | PropertyCollection | Προσαρμοσμένες ιδιότητες που συνδέονται με τη σκηνή |
Methods
| Methods | Τύπος επιστροφής | Methods |
|---|---|---|
save(file_path) | None | Αποθηκεύει τη σκηνή σε αρχείο· η μορφή προκύπτει από την επέκταση |
save(file_path, format) | None | Αποθηκεύει τη σκηνή σε ένα αρχείο στο καθορισμένο FileFormat |
save(file_path, options) | None | Αποθηκεύει τη σκηνή χρησιμοποιώντας επιλογές αποθήκευσης ειδικές για τη μορφή |
get_property(name) | Any | Λαμβάνει την τιμή μιας ιδιότητας με βάση το όνομα |
find_property(name) | Optional[Property] | Βρίσκει μια ιδιότητα με βάση το όνομα |
create_animation_clip(name) | AnimationClip | Δημιουργεί ένα νέο ονομασμένο απόσπασμα κίνησης και το προσθέτει στη σκηνή |
get_animation_clip(name) | `AnimationClip | None` |
clear() | None | Καθαρίζει όλο το περιεχόμενο από τη σκηνή |
Σημείωση: root_node είναι ένα ιδιότητα στο Scene κλάση, όχι μέθοδο. Μην γράψετε scene.root_node(); η σωστή πρόσβαση είναι scene.root_node.
Methods
Δημιουργήστε μια σκηνή, προσθέστε έναν κόμβο πλέγματος και αποθηκεύστε σε 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)