Entity
Methods
Methods Entity class является абстрактным базовым классом для объектов, которые могут быть присоединены к Node в Aspose.3D графе сцены. Конкретные подклассы включают Mesh, Camera, Light, и 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}")