Base Classes — Aspose.3D FOSS for Java
Package : com.aspose.threed (aspose-3d-foss 26.1.0)
Ces trois classes constituent la base de la hiérarchie de classes Aspose.3D. Chaque objet public de la bibliothèque hérite de A3DObject, qui fournit un nom et une collection de propriétés dynamiques. SceneObject étend A3DObject avec le suivi d’appartenance à la scène. CustomObject est une sous‑classe concrète légère pour stocker des métadonnées utilisateur arbitraires.
A3DObject
La classe de base racine pour tous les objets gérés Aspose.3D. Chaque objet nommé dans la bibliothèque — Node, Mesh, AnimationClip, Material, et ainsi de suite – hérite de A3DObject.
import com.aspose.threed.A3DObject;Example
| Class | Description |
|---|---|
A3DObject | Root base class for all Aspose.3D managed objects. Provides a name property and a Properties collection for user-defined metadata. |
SceneObject | Base class shared by Node and Entity . Provides the property collection interface used for user-defined metadata. |
CustomObject | Lightweight A3DObject subclass that carries only a name and an arbitrary PropertyCollection . Used for storing user-defined metadata on scene objects. |
Entity | Base class for all scene entities ( Mesh , Camera , Light , etc.). Attached to a Node via Node.addEntity() . |
Deformer | Base class for deformers that modify mesh geometry (e.g., skinning, morph targets). |
Example
findProperty(String propertyName)
Rechercher une propriété nommée dans cet objet PropertyCollection et renvoyer le Property instance, ou null si non trouvé.
Renvoie : Property ou null
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("origin");
Property prop = node.findProperty("name");
if (prop != null) {
System.out.println(prop.getValue()); // "origin"
}getProperty(String property)
Retourne la valeur actuelle d’une propriété nommée, ou null si la propriété n’existe pas.
Renvoie : Object
Object val = node.getProperty("name");
System.out.println(val); // "origin"setProperty(String property, Object value)
Définit la valeur d’une propriété nommée. Crée la propriété si elle n’existe pas déjà.
Renvoie : void
node.setProperty("layer", 3);
System.out.println(node.getProperty("layer")); // 3removeProperty(String property)
Supprime une propriété nommée de la collection.
Retours : boolean – true si la propriété a été trouvée et supprimée.
Example
import com.aspose.threed.Scene;
import com.aspose.threed.Node;
import com.aspose.threed.Property;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("my_node");
// Set and retrieve a custom property
node.setProperty("export_lod", 2);
System.out.println(node.getProperty("export_lod")); // 2
// Enumerate all properties
for (Property prop : node.getProperties()) {
System.out.println(" " + prop.getName() + " = " + prop.getValue());
}
// Find and inspect a specific property
Property p = node.findProperty("name");
if (p != null) {
System.out.println(p.getValueType()); // java.lang.String
}SceneObject
Example A3DObject avec une référence à l’entité propriétaire Scene. Node, Entity, et les classes associées héritent de SceneObject.
import com.aspose.threed.SceneObject;Example
A3DObject -> SceneObject
Propriété supplémentaire
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene); // trueCustomObject
Une sous‑classe concrète légère de A3DObject qui ne porte qu’un nom et un(e) PropertyCollection. Utilisez‑le pour attacher des métadonnées libres à une scène sans sous‑classer aucun type d’entité.
import com.aspose.threed.CustomObject;Example
A3DObject -> CustomObject
Example
CustomObject()
CustomObject(String name)Example
import com.aspose.threed.CustomObject;
import com.aspose.threed.Scene;
// Attach pipeline metadata to a scene as a custom object
CustomObject meta = new CustomObject("render_settings");
meta.setProperty("max_bounces", 8);
meta.setProperty("use_denoiser", true);
Scene scene = new Scene();
scene.getRootNode().setProperty("render_meta", meta.getName());
System.out.println(meta.getProperty("max_bounces")); // 8