Entity — Aspose.3D FOSS for Java

Example

Example Entity class est la classe de base abstraite pour les objets qui peuvent être attachés à un Node dans le graphe de scène Aspose.3D. Les sous‑classes concrètes incluent Mesh, Camera, Light, et Geometry. Entity fournit un accès à la hiérarchie des nœuds parents et expose le getExcluded() méthode de contrôle de la visibilité.

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

Sous‑classes : Geometry -> Mesh, Camera, Light, et d’autres.

Example

Entity est une classe de base abstraite et n’est pas instanciée directement. Utilisez une sous‑classe concrète telle que Mesh.

Example

ExampleExampleExampleExampleExample
parentNodesList<Node>getParentNodes()Tous les nœuds parents auxquels cette entité est attachée. Prend en charge l’instanciation (même entité référencée depuis plusieurs nœuds).
parentNodeNodegetParentNode()setParentNode(Node)Le nœud parent principal, ou null si l’entité n’est pas attachée.
excludedbooleangetExcluded()setExcluded(boolean)Example true, cette entité est exclue du rendu.
nameStringgetName()setName(String)Nom lisible par l’homme pour cette entité.
propertiesPropertyCollectiongetProperties()Collection de propriétés personnalisées.

Example

ExampleType de retourExample
getProperty(String name)ObjectObtient la valeur d’une propriété par son nom.
findProperty(String name)PropertyTrouve une propriété par son nom.

Example

Inspectez l’état de l’entité après le chargement d’une scène :

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());
    }
}

Voir aussi

 Français