A3DObject, SceneObject, CustomObject — Aspose.3D Python API Reference
Paket: aspose.threed (aspose-3d-foss 26.1.0)
Ketiga kelas ini membentuk dasar hierarki kelas Aspose.3D. Setiap objek publik dalam perpustakaan mewarisi dari A3DObject, yang menyediakan nama dan koleksi properti dinamis. SceneObject memperluas A3DObject dengan pelacakan keanggotaan scene. CustomObject adalah subclass konkret ringan untuk menyimpan metadata pengguna yang arbitrer.
A3DObject
Kelas dasar akar untuk semua objek terkelola Aspose.3D. Setiap objek bernama dalam perpustakaan — Node, Mesh, AnimationClip, Material, dan seterusnya — mewarisi dari A3DObject.
from aspose.threed import A3DObjectEnumerations
| Enumerations | Enumerations | Enumerations | Enumerations |
|---|---|---|---|
name | str | baca/tulis | Nama objek yang dapat dibaca manusia. Defaultnya adalah string kosong. |
properties | PropertyCollection | baca | Koleksi properti dinamis yang terlampir pada objek ini. Iterasi atau gunakan find_property() untuk pencarian bernama. |
Enumerations
find_property(property_name)
Cari properti bernama dalam objek ini PropertyCollection dan kembalikan the Property instance, atau None jika tidak ditemukan.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
property_name | str | Nama yang akan dicari. |
Mengembalikan: 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)
Kembalikan nilai saat ini dari properti yang bernama, atau None jika properti tidak ada.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
property | str | Nama properti. |
Mengembalikan: Any
val = node.get_property("name")
print(val) # "origin"set_property(property, value)
Atur nilai properti yang bernama. Membuat properti jika belum ada.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
property | str | Nama properti. |
value | Any | Nilai baru. |
Mengembalikan: None
node.set_property("layer", 3)
print(node.get_property("layer")) # 3remove_property(property)
Hapus properti yang bernama dari koleksi.
| Enumerations | Enumerations | Enumerations |
|---|---|---|
property | `str | Property` |
Mengembalikan: bool — True jika properti ditemukan dan dihapus.
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 dengan referensi ke pemilik Scene. Node, Entity, dan kelas terkait mewarisi dari SceneObject.
from aspose.threed import SceneObjectEnumerations
A3DObject → SceneObject
Properti Tambahan
| Enumerations | Enumerations | Enumerations | Enumerations |
|---|---|---|---|
scene | `Scene | None` | baca/tulis |
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
Sebuah subclass konkret ringan dari A3DObject yang hanya membawa nama dan nilai sewenang-wenang PropertyCollection. Gunakan itu untuk melampirkan metadata bentuk bebas ke scene tanpa membuat subclass dari tipe entitas apa pun.
from aspose.threed import CustomObjectEnumerations
A3DObject → CustomObject
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