Base Classes — Aspose.3D FOSS for Java
Pakket: com.aspose.threed (aspose-3d-foss 26.1.0)
Deze drie klassen vormen de basis van de Aspose.3D-klassehiërarchie. Elk openbaar object in de bibliotheek erft van A3DObject, die een naam en een dynamische eigenschapcollectie biedt. SceneObject breidt uit A3DObject met scene‑lidmaatschapsbijhouden. CustomObject is een lichtgewicht concrete subklasse voor het opslaan van willekeurige gebruikersmetadata.
A3DObject
De basisklasse van de wortel voor alle Aspose.3D beheerde objecten. Elk benoemd object in de bibliotheek – Node, Mesh, AnimationClip, Material, enzovoort – erft van 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)
Zoek naar een benoemde eigenschap in dit object PropertyCollection en retourneer de Property instantie, of null indien niet gevonden.
Retourneert: Property of 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)
Retourneer de huidige waarde van een benoemde eigenschap, of null als de eigenschap niet bestaat.
Retourneert: Object
Object val = node.getProperty("name");
System.out.println(val); // "origin"setProperty(String property, Object value)
Stel de waarde van een benoemde eigenschap in. Maakt de eigenschap aan als deze nog niet bestaat.
Retourneert: void
node.setProperty("layer", 3);
System.out.println(node.getProperty("layer")); // 3removeProperty(String property)
Verwijder een benoemde eigenschap uit de verzameling.
Retourneert: boolean – true als de eigenschap werd gevonden en verwijderd.
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 met een verwijzing naar de eigenaar Scene. Node, Entity, en gerelateerde klassen erven van SceneObject.
import com.aspose.threed.SceneObject;Example
A3DObject -> SceneObject
Aanvullende eigenschap
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene); // trueCustomObject
Een lichtgewichtbetonsubklasse van A3DObject die alleen een naam en een willekeurige PropertyCollection. Gebruik het om vrije‑vorm metadata aan een scène toe te voegen zonder een entiteitstype te subklassen.
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