A3DObject, SceneObject, CustomObject — Aspose.3D Python API Reference
Paquete: aspose.threed (aspose-3d-foss 26.1.0)
Estas tres clases forman la base de la jerarquía de clases Aspose.3D. Cada objeto público en la biblioteca hereda de A3DObject, que proporciona un nombre y una colección de propiedades dinámicas. SceneObject extiende A3DObject con seguimiento de membresía de escena. CustomObject es una subclase concreta ligera para almacenar metadatos de usuario arbitrarios.
A3DObject
La clase base raíz para todos los objetos gestionados Aspose.3D. Cada objeto con nombre en la biblioteca — Node, Mesh, AnimationClip, Material, y así sucesivamente — hereda de A3DObject.
from aspose.threed import A3DObjectMethods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
name | str | lectura/escritura | Nombre legible por humanos del objeto. Por defecto es una cadena vacía. |
properties | PropertyCollection | lectura | La colección dinámica de propiedades adjunta a este objeto. Itera sobre ella o usa find_property() para búsquedas con nombre. |
Methods
find_property(property_name)
Buscar una propiedad con nombre en el objeto PropertyCollection y devuelve el Property instancia, o None si no se encuentra.
| Methods | Methods | Methods |
|---|---|---|
property_name | str | El nombre a buscar. |
Devuelve: 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)
Devuelve el valor actual de una propiedad con nombre, o None si la propiedad no existe.
| Methods | Methods | Methods |
|---|---|---|
property | str | Nombre de la propiedad. |
Devuelve: Any
val = node.get_property("name")
print(val) # "origin"set_property(property, value)
Establece el valor de una propiedad con nombre. Crea la propiedad si aún no existe.
| Methods | Methods | Methods |
|---|---|---|
property | str | Nombre de la propiedad. |
value | Any | Nuevo valor. |
Devuelve: None
node.set_property("layer", 3)
print(node.get_property("layer")) # 3remove_property(property)
Elimina una propiedad con nombre de la colección.
| Methods | Methods | Methods |
|---|---|---|
property | `str | Property` |
Devuelve: bool — True si la propiedad fue encontrada y eliminada.
Methods
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
Methods A3DObject con una referencia al propietario Scene. Node, Entity, y las clases relacionadas heredan de SceneObject.
from aspose.threed import SceneObjectMethods
A3DObject → SceneObject
Propiedades adicionales
| Methods | Methods | Methods | Methods |
|---|---|---|---|
scene | `Scene | None` | lectura/escritura |
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
Una subclase concreta ligera de A3DObject que lleva solo un nombre y un arbitrario PropertyCollection. Úselo para adjuntar metadatos de forma libre a una escena sin crear una subclase de ningún tipo de entidad.
from aspose.threed import CustomObjectMethods
A3DObject → CustomObject
Methods
CustomObject(name: str = None)Methods
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