Base Classes — Aspose.3D FOSS for Java
Overview
These classes form the inheritance spine shared by all Aspose.3D managed objects. Understanding the hierarchy helps when iterating properties, handling custom metadata, or writing generic scene-traversal code.
Package: com.aspose.threed
Inheritance hierarchy:
A3DObject
└── SceneObject
├── Node
├── Entity
│ ├── Mesh
│ ├── Camera
│ ├── Light
│ └── (other entities)
└── CustomObjectClasses
| 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). |
PropertyCollection
All A3DObject descendants expose a property bag via getProperties(). Use findProperty(name) to retrieve a Property by name, or iterate with getProperties().
import com.aspose.threed.A3DObject;
import com.aspose.threed.Property;
A3DObject obj = scene.getRootNode().getChildNode("myNode");
Property p = obj.findProperty("CustomTag");
if (p != null) {
System.out.println(p.getValue());
}