A3DObject / SceneObject / CustomObject

A3DObject, SceneObject, CustomObject — Aspose.3D Python API Reference

Πακέτο: aspose.threed (aspose-3d-foss 26.1.0)

Αυτές οι τρεις κλάσεις αποτελούν τη βάση της ιεραρχίας κλάσεων Aspose.3D. Κάθε δημόσιο αντικείμενο στη βιβλιοθήκη κληρονομεί από A3DObject, η οποία παρέχει ένα όνομα και μια δυναμική συλλογή ιδιοτήτων. SceneObject επεκτείνει A3DObject με παρακολούθηση συμμετοχής στη σκηνή. CustomObject είναι μια ελαφριά υποκλάση concrete για την αποθήκευση αυθαίρετων μεταδεδομένων χρήστη.


A3DObject

Η ριζική βασική κλάση για όλα τα διαχειριζόμενα αντικείμενα Aspose.3D. Κάθε ονομαστικό αντικείμενο στη βιβλιοθήκη — Node, Mesh, AnimationClip, Material, κ.λπ. — κληρονομεί από A3DObject.

from aspose.threed import A3DObject

Example

ExampleExampleExampleExample
namestrανάγνωση/εγγραφήΑνθρώπινα αναγνώσιμο όνομα του αντικειμένου. Προεπιλογή είναι κενή συμβολοσειρά.
propertiesPropertyCollectionανάγνωσηΗ δυναμική συλλογή ιδιοτήτων που συνδέεται με αυτό το αντικείμενο. Επανάλαβε την ή χρησιμοποίησε find_property() για ονομαστικές αναζητήσεις.

Example

find_property(property_name)

Αναζήτηση για μια ονομαστική ιδιότητα στο αντικείμενο αυτό του PropertyCollection και επέστρεψε το Property παράδειγμα, ή None αν δεν βρεθεί.

ExampleExampleExample
property_namestrΤο όνομα προς αναζήτηση.

Επιστρέφει: Property | None

from aspose.threed import Scene

scene = Scene()
node = scene.root_node.create_child_node("origin")
prop = node.find_property("name")
if prop is not None:
    print(prop.value)   # "origin"

get_property(property)

Επιστρέψτε την τρέχουσα τιμή μιας ονομασμένης ιδιότητας, ή None αν η ιδιότητα δεν υπάρχει.

ExampleExampleExample
propertystrΌνομα ιδιότητας.

Επιστρέφει: Any

val = node.get_property("name")
print(val)   # "origin"

set_property(property, value)

Ορίστε την τιμή μιας ονομασμένης ιδιότητας. Δημιουργεί την ιδιότητα εάν δεν υπάρχει ήδη.

ExampleExampleExample
propertystrΌνομα ιδιότητας.
valueAnyΝέα τιμή.

Επιστρέφει: None

node.set_property("layer", 3)
print(node.get_property("layer"))   # 3

remove_property(property)

Αφαιρέστε μια ονομασμένη ιδιότητα από τη συλλογή.

ExampleExampleExample
property`strProperty`

Επιστρέφει: boolTrue αν η ιδιότητα βρέθηκε και αφαιρέθηκε.


Example

from aspose.threed import Scene

scene = Scene()
node = scene.root_node.create_child_node("my_node")

# Set and retrieve a custom property
node.set_property("export_lod", 2)
print(node.get_property("export_lod"))   # 2

# Enumerate all properties
for prop in node.properties:
    print(f"  {prop.name} = {prop.value!r}")

# Find and inspect a specific property
p = node.find_property("name")
if p:
    print(p.value_type)   # <class 'str'>

SceneObject

Example A3DObject με μια αναφορά στον ιδιοκτήτη Scene. Node, Entity, και οι σχετικές κλάσεις κληρονομούν από SceneObject.

from aspose.threed import SceneObject

Example

A3DObjectSceneObject

Πρόσθετες Ιδιότητες

ExampleExampleExampleExample
scene`SceneNone`ανάγνωση/εγγραφή
from aspose.threed import Scene

scene = Scene()
node = scene.root_node.create_child_node("child")
print(node.scene is scene)   # True (Node inherits SceneObject)

CustomObject

Μια ελαφριά συγκεκριμένη υποκατηγορία του A3DObject που μεταφέρει μόνο ένα όνομα και ένα αυθαίρετο PropertyCollection. Χρησιμοποιήστε το για να συνδέσετε μετα-δεδομένα ελεύθερης μορφής σε μια σκηνή χωρίς να δημιουργήσετε υποκατηγορία κανενός τύπου οντότητας.

from aspose.threed import CustomObject

Example

A3DObjectCustomObject

Example

CustomObject(name: str = None)

Example

from aspose.threed import CustomObject, Scene

# Attach pipeline metadata to a node as a custom object
meta = CustomObject("render_settings")
meta.set_property("max_bounces", 8)
meta.set_property("use_denoiser", True)

scene = Scene()
# Store as a user property on the root node
scene.root_node.set_property("render_meta", meta.name)
print(meta.get_property("max_bounces"))   # 8

Δείτε επίσης

 Ελληνικά