A3DObject / SceneObject / CustomObject

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

แพคเกจ: aspose.threed (aspose-3d-foss 26.1.0)

คลาสสามคลาสนี้เป็นฐานของลำดับชั้นคลาส Aspose.3D ทุกอ็อบเจ็กต์สาธารณะในไลบรารีสืบทอดจาก A3DObject, ซึ่งให้ชื่อและคอลเลกชันคุณสมบัติแบบไดนามิก. SceneObject ขยาย A3DObject พร้อมการติดตามการเป็นสมาชิกของซีน. CustomObject เป็นซับคลาสคอนกรีตแบบเบาที่ใช้สำหรับเก็บเมทาดาต้าผู้ใช้แบบ任意.


A3DObject

คลาสฐานรากสำหรับอ็อบเจ็กต์ที่จัดการโดย Aspose.3D ทั้งหมด ทุกอ็อบเจ็กต์ที่มีชื่อในไลบรารี — Node, Mesh, AnimationClip, Material, และอื่น ๆ — สืบทอดจาก A3DObject.

from aspose.threed import A3DObject

Overview

OverviewOverviewOverviewOverview
namestrอ่าน/เขียนชื่อที่มนุษย์อ่านได้ของอ็อบเจ็กต์ ค่าเริ่มต้นเป็นสตริงว่าง.
propertiesPropertyCollectionอ่านคอลเลกชันคุณสมบัติแบบไดนามิกที่แนบกับอ็อบเจ็กต์นี้ สามารถวนซ้ำหรือใช้ find_property() สำหรับการค้นหาตามชื่อ.

Overview

find_property(property_name)

ค้นหาคุณสมบัติตามชื่อในอ็อบเจ็กต์นี้ PropertyCollection และคืนค่า Property อินสแตนซ์, หรือ None หากไม่พบ.

OverviewOverviewOverview
property_namestrชื่อที่ต้องการค้นหา.

คืนค่า: 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)

คืนค่าปัจจุบันของคุณสมบัติที่มีชื่อ, หรือ None หากคุณสมบัตินั้นไม่มีอยู่.

OverviewOverviewOverview
propertystrชื่อคุณสมบัติ.

คืนค่า: Any

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

set_property(property, value)

ตั้งค่าค่าของคุณสมบัติที่มีชื่อ หากคุณสมบัตินั้นยังไม่มีอยู่จะสร้างขึ้น.

OverviewOverviewOverview
propertystrชื่อคุณสมบัติ.
valueAnyค่ใหม่.

คืนค่า: None

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

remove_property(property)

ลบคุณสมบัติที่มีชื่อออกจากคอลเลกชัน.

OverviewOverviewOverview
property`strProperty`

คืนค่า: boolTrue หากพบและลบคุณสมบัติแล้ว.


Overview

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

Overview A3DObject พร้อมอ้างอิงถึงเจ้าของ Scene. Node, Entity, และคลาสที่เกี่ยวข้องสืบทอดจาก SceneObject.

from aspose.threed import SceneObject

Overview

A3DObjectSceneObject

คุณสมบัติเพิ่มเติม

OverviewOverviewOverviewOverview
scene`SceneNone`อ่าน/เขียน
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

คลาสย่อย concrete น้ำหนักเบาของ A3DObject ที่บรรจุเพียง name และค่าใด ๆ PropertyCollection. ใช้เพื่อแนบ free-form metadata ไปยัง scene โดยไม่ต้อง subclass ใด ๆ ของ entity type.

from aspose.threed import CustomObject

Overview

A3DObjectCustomObject

Overview

CustomObject(name: str = None)

Overview

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

ดูเพิ่มเติม

 ภาษาไทย