A3DObject / SceneObject / CustomObject

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

Pakiet: aspose.threed (aspose-3d-foss 26.1.0)

Te trzy klasy tworzą podstawę hierarchii klas Aspose.3D. Każdy publiczny obiekt w bibliotece dziedziczy po A3DObject, które zapewnia nazwę i dynamiczną kolekcję właściwości. SceneObject rozszerza A3DObject z śledzeniem przynależności do sceny. CustomObject jest lekką, konkretną podklasą służącą do przechowywania dowolnych metadanych użytkownika.


A3DObject

Podstawowa klasa bazowa dla wszystkich zarządzanych obiektów Aspose.3D. Każdy nazwany obiekt w bibliotece — Node, Mesh, AnimationClip, Material, i tak dalej — dziedziczy po A3DObject.

from aspose.threed import A3DObject

Enumerations

EnumerationsEnumerationsEnumerationsEnumerations
namestrodczyt/zapisCzytelna dla człowieka nazwa obiektu. Domyślnie jest pustym ciągiem.
propertiesPropertyCollectionodczytDynamiczna kolekcja właściwości dołączona do tego obiektu. Iteruj ją lub użyj find_property() do wyszukiwań nazwanych.

Enumerations

find_property(property_name)

Wyszukaj nazwane właściwości w obiekcie PropertyCollection i zwróć Property instancję, lub None jeśli nie zostanie znaleziona.

EnumerationsEnumerationsEnumerations
property_namestrNazwa do wyszukania.

Zwraca: 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)

Zwróć bieżącą wartość nazwanej właściwości, lub None jeśli właściwość nie istnieje.

EnumerationsEnumerationsEnumerations
propertystrNazwa właściwości.

Zwraca: Any

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

set_property(property, value)

Ustawia wartość nazwanej właściwości. Tworzy właściwość, jeśli jeszcze nie istnieje.

EnumerationsEnumerationsEnumerations
propertystrNazwa właściwości.
valueAnyNowa wartość.

Zwraca: None

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

remove_property(property)

Usuwa nazwanej właściwość z kolekcji.

EnumerationsEnumerationsEnumerations
property`strProperty`

Zwraca: boolTrue jeśli właściwość została znaleziona i usunięta.


Enumerations

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

Enumerations A3DObject z odniesieniem do właściciela Scene. Node, Entity, a powiązane klasy dziedziczą po SceneObject.

from aspose.threed import SceneObject

Enumerations

A3DObjectSceneObject

Dodatkowe właściwości

EnumerationsEnumerationsEnumerationsEnumerations
scene`SceneNone`odczyt/zapis
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

Lekka konkretna podklasa A3DObject która zawiera tylko nazwę i dowolny PropertyCollection. Użyj jej, aby dołączyć metadane w formie dowolnej do sceny bez tworzenia podklasy żadnego typu encji.

from aspose.threed import CustomObject

Enumerations

A3DObjectCustomObject

Enumerations

CustomObject(name: str = None)

Enumerations

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

Zobacz także

 Polski