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 هو فئة فرعية خفيفة الوزن من Concrete لتخزين بيانات تعريف المستخدم العشوائية.


A3DObject

فئة القاعدة الجذرية لجميع الكائنات المدارة بواسطة Aspose.3D. كل كائن مسمى في المكتبة — Node, Mesh, AnimationClip, Material,، وما إلى ذلك — يرث من A3DObject.

from aspose.threed import A3DObject

Example

ExampleExampleExampleExample
namestrقراءة/كتابةاسم قابل للقراءة من قبل الإنسان للكائن. القيمة الافتراضية هي سلسلة فارغة.
propertiesPropertyCollectionقراءةمجموعة الخصائص الديناميكية المرتبطة بهذا الكائن. قم بالتكرار عليها أو استخدم find_property() للبحث بالاسم.

Example

find_property(property_name)

ابحث عن خاصية مسماة في كائن هذا PropertyCollection وأعد الـ Property مثيل، أو None إذا لم يتم العثور عليه.

ExampleExampleExample
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 إذا لم تكن الخاصية موجودة.

ExampleExampleExample
propertystrاسم الخاصية.

يعيد: Any

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

set_property(property, value)

عيّن قيمة خاصية مسماة. ينشئ الخاصية إذا لم تكن موجودة مسبقًا.

ExampleExampleExample
propertystrاسم الخاصية.
valueAnyالقيمة الجديدة.

يعيد: None

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

remove_property(property)

أزل خاصية مسماة من المجموعة.

ExampleExampleExample
property`strProperty`

الإرجاع: boolTrue إذا تم العثور على الخاصية وإزالتها.


Example

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

Example A3DObject مع إشارة إلى المالك Scene. Node, Entity, والفئات ذات الصلة ترث من SceneObject.

from aspose.threed import SceneObject

Example

A3DObjectSceneObject

خصائص إضافية

ExampleExampleExampleExample
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 التي تحمل اسمًا فقط و عشوائي PropertyCollection. استخدمه لإرفاق بيانات وصفية حرة الشكل إلى مشهد دون إنشاء فئة فرعية لأي نوع كيان.

from aspose.threed import CustomObject

Example

A3DObjectCustomObject

Example

CustomObject(name: str = None)

Example

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

انظر أيضًا

 العربية