Entity
Methods
Methods Entity class es la clase base abstracta para objetos que pueden adjuntarse a un Node en el grafo de escena Aspose.3D. Las subclases concretas incluyen Mesh, Camera, Light, y Geometry. Entity proporciona acceso a la jerarquía de nodos padre y expone el excluded propiedad para el control de visibilidad.
Todos los atributos enumerados a continuación son propiedades; acceda a ellos sin paréntesis.
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
Subclases: Geometry → Mesh, Camera, Light, y otros.
Methods
Entity es una clase base abstracta y no se instancia directamente. Use una subclase concreta como Mesh.
Methods
| Methods | Methods | Methods |
|---|---|---|
parent_nodes | list[Node] (solo lectura) | Todos los nodos padre a los que está adjunta esta entidad. Soporta instanciación (misma entidad referenciada desde varios nodos). |
parent_node | Optional[Node] (lectura/escritura) | El nodo padre principal, o None si la entidad no está adjunta. |
excluded | bool (lectura/escritura) | Methods True, esta entidad está excluida del renderizado. Acceda y establezca como una propiedad: entity.excluded = True. |
name | str (lectura/escritura) | Nombre legible por humanos para esta entidad. |
properties | PropertyCollection (solo lectura) | Colección de propiedades personalizadas. |
Methods
| Methods | Tipo de retorno | Methods |
|---|---|---|
get_property(name) | Any | Obtiene el valor de una propiedad por nombre. |
find_property(name) | Optional[Property] | Busca una propiedad por nombre. |
Importante: parent_node, parent_nodes, y excluded son propiedades, no son métodos. No los llames con paréntesis. Los patrones correctos son:
# 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() # TypeErrorPara establecer parent_node, asigna a la propiedad:
entity.parent_node = some_node # CORRECTMethods
Inspecciona el estado de la entidad después de cargar una escena:
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}")