Entity — Aspose.3D FOSS for Java

Example

Example 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 getExcluded() método para el control de visibilidad.

import com.aspose.threed.Scene;
import com.aspose.threed.*;

Scene scene = Scene.fromFile("model.obj");

for (Node node : scene.getRootNode().getChildNodes()) {
    Entity entity = node.getEntity();
    if (entity != null) {
        if (!entity.getExcluded()) {
            Node parent = entity.getParentNode();
            System.out.println("Active entity '" + entity.getName()
                + "', parent: " + (parent != null ? parent.getName() : "None"));
        }
    }
}

Example

A3DObject -> SceneObject -> Entity

Subclases: Geometry -> Mesh, Camera, Light, y otros.

Example

Entity es una clase base abstracta y no se instancia directamente. Use una subclase concreta como Mesh.

Example

ExampleExampleExampleExampleExample
parentNodesList<Node>getParentNodes()Todos los nodos padre a los que está adjunta esta entidad. Soporta la instanciación (misma entidad referenciada desde múltiples nodos).
parentNodeNodegetParentNode()setParentNode(Node)El nodo padre principal, o null si la entidad no está adjunta.
excludedbooleangetExcluded()setExcluded(boolean)Example true, esta entidad está excluida de la renderización.
nameStringgetName()setName(String)Nombre legible por humanos para esta entidad.
propertiesPropertyCollectiongetProperties()Colección de propiedades personalizadas.

Example

ExampleTipo de retornoExample
getProperty(String name)ObjectObtiene el valor de una propiedad por nombre.
findProperty(String name)PropertyBusca una propiedad por nombre.

Example

Inspeccione el estado de la entidad después de cargar una escena:

import com.aspose.threed.Scene;
import com.aspose.threed.Node;
import com.aspose.threed.Entity;
import com.aspose.threed.*;

Scene scene = Scene.fromFile("model.stl");

for (Node node : scene.getRootNode().getChildNodes()) {
    Entity entity = node.getEntity();
    if (entity == null) continue;

    System.out.println("Entity: " + (entity.getName().isEmpty() ? "(unnamed)" : entity.getName()));
    System.out.println("  Type: " + entity.getClass().getSimpleName());
    System.out.println("  Excluded: " + entity.getExcluded());
    System.out.println("  Parent node: "
        + (entity.getParentNode() != null ? entity.getParentNode().getName() : "None"));

    if (entity instanceof Mesh) {
        Mesh mesh = (Mesh) entity;
        System.out.println("  Vertices: " + mesh.getControlPoints().size());
        System.out.println("  Polygons: " + mesh.getPolygonCount());
    }
}

Ver también

 Español