Entity — Aspose.3D FOSS for Java

Example

Example Entity class és la classe base abstracta per a objectes que es poden adjuntar a un Node en el gràfic de escena Aspose.3D. Les subclasses concretes inclouen Mesh, Camera, Light, i Geometry. Entity proporciona accés a la jerarquia de nodes pare i exposa el getExcluded() mètode per al control de visibilitat.

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

Subclasses: Geometry -> Mesh, Camera, Light, i altres.

Example

Entity és una classe base abstracta i no s’instancia directament. Utilitzeu una subclasse concreta com ara Mesh.

Example

ExampleExampleExampleExampleExample
parentNodesList<Node>getParentNodes()Tots els nodes pare als quals aquesta entitat està adjunta. Admet la instanciació (la mateixa entitat referenciada des de múltiples nodes).
parentNodeNodegetParentNode()setParentNode(Node)El node pare principal, o null si l’entitat no està adjunta.
excludedbooleangetExcluded()setExcluded(boolean)Example true, aquesta entitat està exclosa de la renderització.
nameStringgetName()setName(String)Nom llegible per a humans d’aquesta entitat.
propertiesPropertyCollectiongetProperties()Col·lecció de propietats personalitzades.

Example

ExampleTipus de retornExample
getProperty(String name)ObjectObté el valor d’una propietat per nom.
findProperty(String name)PropertyTroba una propietat per nom.

Example

Inspeccioneu l’estat de l’entitat després de carregar 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());
    }
}

Vegeu també

 Català