Entity

Methods

Methods Entity class ist die abstrakte Basisklasse für Objekte, die an ein Node im Aspose.3D Szenengraphen. Konkrete Unterklassen umfassen Mesh, Camera, Light, und Geometry. Entity bietet Zugriff auf die übergeordnete Knotenhierarchie und stellt die excluded Eigenschaft für die Sichtbarkeitssteuerung.

Alle unten aufgeführten Attribute sind Eigenschaften; greife darauf zu, ohne Klammern zu verwenden.

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

A3DObjectSceneObjectEntity

Unterklassen: GeometryMesh, Camera, Light, und andere.

Methods

Entity ist eine abstrakte Basisklasse und wird nicht direkt instanziiert. Verwenden Sie eine konkrete Unterklasse wie Mesh.

Methods

MethodsMethodsMethods
parent_nodeslist[Node] (schreibgeschützt)Alle übergeordneten Knoten, an die diese Entität angehängt ist. Unterstützt Instancing (dieselbe Entität wird von mehreren Knoten referenziert).
parent_nodeOptional[Node] (lesbar/schreibbar)Der primäre übergeordnete Knoten, oder None wenn die Entität nicht angehängt ist.
excludedbool (lesbar/schreibbar)Methods True, diese Entität ist vom Rendering ausgeschlossen. Zugriff und Festlegung als Eigenschaft: entity.excluded = True.
namestr (lesbar/schreibbar)Menschlich lesbarer Name für diese Entität.
propertiesPropertyCollection (schreibgeschützt)Sammlung benutzerdefinierter Eigenschaften.

Methods

MethodsRückgabetypMethods
get_property(name)AnyRuft den Wert einer Eigenschaft anhand ihres Namens ab.
find_property(name)Optional[Property]Findet eine Eigenschaft anhand des Namens.

Wichtig: parent_node, parent_nodes, und excluded sind Eigenschaften, keine Methoden. Rufen Sie sie nicht mit Klammern auf. Die korrekten Muster sind:

# 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

Um zu setzen parent_node, weisen Sie der Eigenschaft zu:

entity.parent_node = some_node    # CORRECT

Methods

Untersuche den Zustand der Entity nach dem Laden einer Szene:

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}")

Siehe auch

 Deutsch