A3DObject, SceneObject, CustomObject — Aspose.3D Python API Reference
Pakket: aspose.threed (aspose-3d-foss 26.1.0)
Deze drie klassen vormen de basis van de Aspose.3D-klassehiërarchie. Elk openbaar object in de bibliotheek erft van A3DObject, die een naam en een dynamische eigenschapcollectie biedt. SceneObject breidt uit A3DObject met scene‑lidmaatschapsbijhouden. CustomObject is een lichtgewicht concrete subklasse voor het opslaan van willekeurige gebruikersmetadata.
A3DObject
De basisklasse voor alle Aspose.3D beheerde objecten. Elk benoemd object in de bibliotheek — Node, Mesh, AnimationClip, Material, enzovoort — erft van A3DObject.
from aspose.threed import A3DObjectExample
| Example | Example | Example | Example |
|---|---|---|---|
name | str | lezen/schrijven | Menselijk leesbare naam van het object. Standaard een lege tekenreeks. |
properties | PropertyCollection | lezen | De dynamische eigenschapcollectie die aan dit object is gekoppeld. Doorloop deze of gebruik find_property() voor genaamde opzoekingen. |
Example
find_property(property_name)
Zoek naar een genaamde eigenschap in dit object’s PropertyCollection en retourneer de Property instantie, of None indien niet gevonden.
| Example | Example | Example |
|---|---|---|
property_name | str | De naam om naar te zoeken. |
Retourneert: 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)
Retourneer de huidige waarde van een genaamde eigenschap, of None als de eigenschap niet bestaat.
| Example | Example | Example |
|---|---|---|
property | str | Eigenschapsnaam. |
Retourneert: Any
val = node.get_property("name")
print(val) # "origin"set_property(property, value)
Stel de waarde van een benoemde eigenschap in. Maakt de eigenschap aan als deze nog niet bestaat.
| Example | Example | Example |
|---|---|---|
property | str | Eigenschapsnaam. |
value | Any | Nieuwe waarde. |
Retourneert: None
node.set_property("layer", 3)
print(node.get_property("layer")) # 3remove_property(property)
Verwijder een benoemde eigenschap uit de collectie.
| Example | Example | Example |
|---|---|---|
property | `str | Property` |
Retourneert: bool — True als de eigenschap werd gevonden en verwijderd.
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 met een verwijzing naar de eigenaar Scene. Node, Entity, en gerelateerde klassen erven van SceneObject.
from aspose.threed import SceneObjectExample
A3DObject → SceneObject
Aanvullende eigenschappen
| Example | Example | Example | Example |
|---|---|---|---|
scene | `Scene | None` | lezen/schrijven |
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
Een lichtgewicht concrete subklasse van A3DObject die alleen een naam en een willekeurige PropertyCollection. Gebruik het om vrije‑vorm metadata aan een scene toe te voegen zonder een entiteittype te subklassen.
from aspose.threed import CustomObjectExample
A3DObject → CustomObject
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