A3DObject, SceneObject, CustomObject — Aspose.3D Python API Reference
Package : aspose.threed (aspose-3d-foss 26.1.0)
Ces trois classes constituent la base de la hiérarchie de classes Aspose.3D. Chaque objet public de la bibliothèque hérite de A3DObject, qui fournit un nom et une collection de propriétés dynamiques. SceneObject étend A3DObject avec le suivi d’appartenance à la scène. CustomObject est une sous‑classe concrète légère pour stocker des métadonnées utilisateur arbitraires.
A3DObject
La classe de base racine pour tous les objets gérés Aspose.3D. Chaque objet nommé dans la bibliothèque — Node, Mesh, AnimationClip, Material, etc. — hérite de A3DObject.
from aspose.threed import A3DObjectMethods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
name | str | lecture/écriture | Nom lisible par l’homme de l’objet. Par défaut, une chaîne vide. |
properties | PropertyCollection | lire | La collection dynamique de propriétés attachée à cet objet. Parcourez‑la ou utilisez find_property() pour des recherches nommées. |
Methods
find_property(property_name)
Recherchez une propriété nommée dans cet objet PropertyCollection et renvoie le Property instance, ou None si non trouvé.
| Methods | Methods | Methods |
|---|---|---|
property_name | str | Le nom à rechercher. |
Renvoie : 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)
Renvoie la valeur actuelle d’une propriété nommée, ou None si la propriété n’existe pas.
| Methods | Methods | Methods |
|---|---|---|
property | str | Nom de la propriété. |
Renvoie : Any
val = node.get_property("name")
print(val) # "origin"set_property(property, value)
Définit la valeur d’une propriété nommée. Crée la propriété si elle n’existe pas déjà.
| Methods | Methods | Methods |
|---|---|---|
property | str | Nom de la propriété. |
value | Any | Nouvelle valeur. |
Renvoie : None
node.set_property("layer", 3)
print(node.get_property("layer")) # 3remove_property(property)
Supprime une propriété nommée de la collection.
| Methods | Methods | Methods |
|---|---|---|
property | `str | Property` |
Renvoie : bool — True si la propriété a été trouvée et supprimée.
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 avec une référence à l’entité propriétaire Scene. Node, Entity, et les classes associées héritent de SceneObject.
from aspose.threed import SceneObjectMethods
A3DObject → SceneObject
Propriétés supplémentaires
| Methods | Methods | Methods | Methods |
|---|---|---|---|
scene | `Scene | None` | lecture/écriture |
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
Une sous‑classe concrète légère de A3DObject qui ne porte qu’un nom et une valeur arbitraire PropertyCollection. Utilisez‑le pour attacher des métadonnées libres à une scène sans sous‑classer aucun type d’entité.
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