Entity
Methods
Methods Entity class 是可以附加到 a 的对象的抽象基类 Node 在 Aspose.3D 场景图中。具体子类包括 Mesh, Camera, Light, and Geometry. Entity 提供对父节点层次结构的访问并公开 excluded 用于可见性控制的属性。.
以下列出的所有属性都是 属性;;访问它们时无需使用括号。.
from aspose.threed import Scene
from aspose.threed.entities import Mesh
scene = Scene.from_file("model.obj")
for node in scene.root_node.child_nodes:
entity = node.entity
if entity is not None:
# excluded is a property, not a method call
if not entity.excluded:
# parent_node is a property, not a method call
parent = entity.parent_node
print(f"Active entity '{entity.name}', parent: {parent.name if parent else 'None'}")Methods
A3DObject → SceneObject → Entity
子类:: Geometry → Mesh, Camera, Light,,以及其他。.
Methods
Entity 是一个抽象基类,不能直接实例化。请使用具体的子类,例如 Mesh.
Methods
| Methods | Methods | Methods |
|---|---|---|
parent_nodes | list[Node] (只读) | 此实体所附加的所有父节点。支持实例化(同一实体可从多个节点引用)。. |
parent_node | Optional[Node] (读/写) | 主要父节点,或 None 如果实体未附加。. |
excluded | bool (读/写) | Methods True, 此实体已从渲染中排除。可作为属性访问和设置:: entity.excluded = True. |
name | str (读/写) | 此实体的可读名称。. |
properties | PropertyCollection (只读) | 自定义属性的集合。. |
Methods
| Methods | 返回类型 | Methods |
|---|---|---|
get_property(name) | Any | 根据名称获取属性值。. |
find_property(name) | Optional[Property] | 按名称查找属性。. |
重要:: parent_node, parent_nodes,,并且 excluded 是 属性,,而不是方法。不要使用括号调用它们。正确的模式是::
# CORRECT
is_excluded = entity.excluded
parent = entity.parent_node
parents = entity.parent_nodes
# WRONG: do not do this
is_excluded = entity.excluded() # TypeError
parent = entity.parent_node() # TypeError设置 parent_node, 分配给属性::
entity.parent_node = some_node # CORRECTMethods
加载场景后检查实体状态::
from aspose.threed import Scene
from aspose.threed.entities import Mesh
scene = Scene.from_file("model.stl")
for node in scene.root_node.child_nodes:
entity = node.entity
if entity is None:
continue
# Properties accessed without parentheses
print(f"Entity: {entity.name or '(unnamed)'}")
print(f" Type: {type(entity).__name__}")
print(f" Excluded: {entity.excluded}")
print(f" Parent node: {entity.parent_node.name if entity.parent_node else 'None'}")
if isinstance(entity, Mesh):
print(f" Vertices: {len(entity.control_points)}")
print(f" Polygons: {entity.polygon_count}")