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 A3DObjectExample
| Example | Example | Example | Example |
|---|---|---|---|
name | str | 읽기/쓰기 | 객체의 사람이 읽을 수 있는 이름입니다. 기본값은 빈 문자열입니다. |
properties | PropertyCollection | 읽기 | 이 객체에 연결된 동적 속성 컬렉션입니다. 이를 반복하거나 사용하십시오 find_property() 명명된 조회에 사용합니다. |
Example
find_property(property_name)
이 객체의 명명된 속성을 검색합니다 PropertyCollection 그리고 반환합니다. Property 인스턴스, 또는 None 찾지 못한 경우.
| Example | Example | Example |
|---|---|---|
property_name | str | 검색할 이름. |
반환: 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 속성이 존재하지 않을 경우.
| Example | Example | Example |
|---|---|---|
property | str | 속성 이름. |
반환: Any
val = node.get_property("name")
print(val) # "origin"set_property(property, value)
지정된 이름의 속성 값을 설정합니다. 속성이 아직 존재하지 않으면 새로 생성합니다.
| Example | Example | Example |
|---|---|---|
property | str | 속성 이름. |
value | Any | 새 값. |
반환: None
node.set_property("layer", 3)
print(node.get_property("layer")) # 3remove_property(property)
컬렉션에서 지정된 이름의 속성을 제거합니다.
| Example | Example | Example |
|---|---|---|
property | `str | Property` |
반환: bool — True 속성이 찾아서 제거된 경우.
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 SceneObjectExample
A3DObject → SceneObject
추가 속성
| Example | Example | Example | Example |
|---|---|---|---|
scene | `Scene | None` | 읽기/쓰기 |
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
경량 구체 서브클래스의 A3DObject 오직 이름과 임의의 PropertyCollection. 엔티티 유형을 서브클래싱하지 않고 장면에 자유 형식 메타데이터를 첨부하려면 사용하십시오.
from aspose.threed import CustomObjectExample
A3DObject → CustomObject
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