A3DObject, SceneObject, CustomObject — Aspose.3D Python API Reference
Paket: aspose.threed (aspose-3d-foss 26.1.0)
Dessa tre klasser utgör basen för Aspose.3D-klasshierarkin. Varje offentligt objekt i biblioteket ärver från A3DObject, som tillhandahåller ett namn och en dynamisk egenskapskollektion. SceneObject ärver A3DObject med spårning av scenmedlemskap. CustomObject är en lättviktig konkret underklass för att lagra godtycklig användarmetadata.
A3DObject
Rotbas-klassen för alla Aspose.3D hanterade objekt. Varje namngivet objekt i biblioteket — Node, Mesh, AnimationClip, Material, och så vidare — ärver från A3DObject.
from aspose.threed import A3DObjectExample
| Example | Example | Example | Example |
|---|---|---|---|
name | str | läsa/skriva | Mänskligt läsbart namn på objektet. Standardvärdet är en tom sträng. |
properties | PropertyCollection | läsa | Den dynamiska egenskapskollektionen som är knuten till detta objekt. Iterera den eller använd find_property() för namngivna uppslag. |
Example
find_property(property_name)
Sök efter en namngiven egenskap i detta objekts PropertyCollection och returnera den Property instans, eller None om inte hittas.
| Example | Example | Example |
|---|---|---|
property_name | str | Namnet att söka efter. |
Returnerar: 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)
Returnera det aktuella värdet för en namngiven egenskap, eller None om egenskapen inte finns.
| Example | Example | Example |
|---|---|---|
property | str | Egenskapsnamn. |
Returnerar: Any
val = node.get_property("name")
print(val) # "origin"set_property(property, value)
Sätt värdet för en namngiven egenskap. Skapar egenskapen om den ännu inte finns.
| Example | Example | Example |
|---|---|---|
property | str | Egenskapsnamn. |
value | Any | Nytt värde. |
Returnerar: None
node.set_property("layer", 3)
print(node.get_property("layer")) # 3remove_property(property)
Ta bort en namngiven egenskap från samlingen.
| Example | Example | Example |
|---|---|---|
property | `str | Property` |
Returnerar: bool — True om egenskapen hittades och togs bort.
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 med en referens till den ägande Scene. Node, Entity, och relaterade klasser ärver från SceneObject.
from aspose.threed import SceneObjectExample
A3DObject → SceneObject
Ytterligare egenskaper
| Example | Example | Example | Example |
|---|---|---|---|
scene | `Scene | None` | läsa/skriva |
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
En lättviktig konkret underklass av A3DObject som bara bär ett namn och en godtycklig PropertyCollection. Använd den för att bifoga fritt formulerad metadata till en scen utan att underklassa någon entitetstyp.
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