Base Classes — Aspose.3D FOSS for Java
Paketas: com.aspose.threed (aspose-3d-foss 26.1.0)
Šios trys klasės sudaro Aspose.3D klasės hierarchijos pagrindą. Kiekvienas viešas objektas bibliotekoje paveldi iš A3DObject, kuri suteikia pavadinimą ir dinaminę savybių kolekciją. SceneObject plečia A3DObject su scenos narystės sekimu. CustomObject yra lengvas konkretus po‑klasis, skirtas saugoti bet kokius naudotojo metaduomenis.
A3DObject
Pagrindinė bazinė klasė visiems Aspose.3D valdomiems objektams. Kiekvienas pavadintas objektas bibliotekoje — Node, Mesh, AnimationClip, Material, ir t.t. – paveldi iš 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)
Ieškokite pavadintos savybės šiame objekte PropertyCollection ir grąžinkite Property instance, arba null jei nerasta.
Grąžina: Property arba 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)
Grąžinkite nurodytos savybės dabartinę reikšmę, arba null jei savybės nėra.
Grąžina: Object
Object val = node.getProperty("name");
System.out.println(val); // "origin"setProperty(String property, Object value)
Nustato pavadintos savybės reikšmę. Sukuria savybę, jei ji dar neegzistuoja.
Grąžina: void
node.setProperty("layer", 3);
System.out.println(node.getProperty("layer")); // 3removeProperty(String property)
Pašalina pavadintą savybę iš kolekcijos.
Grąžina: boolean – true jei savybė buvo rasta ir pašalinta.
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 su nuoroda į savininką Scene. Node, Entity, ir susijusios klasės paveldi iš SceneObject.
import com.aspose.threed.SceneObject;Example
A3DObject -> SceneObject
Papildoma savybė
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene); // trueCustomObject
Lengvo svorio betono subklasė, priklausanti A3DObject kuris nešioja tik pavadinimą ir bet kokį PropertyCollection. Naudokite jį, kad scenai pridėtumėte laisvos formos metaduomenis nesukuriant jokios subklasės jokio entiteto tipo.
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