Base Classes — Aspose.3D FOSS for Java
Pakej: com.aspose.threed (aspose-3d-foss 26.1.0)
Ketiga kelas ini membentuk asas hierarki kelas Aspose.3D. Setiap objek awam dalam perpustakaan mewarisi daripada A3DObject, yang menyediakan nama dan koleksi sifat dinamik. SceneObject memperluas A3DObject dengan penjejakan keahlian adegan. CustomObject adalah subkelas konkrit ringan untuk menyimpan metadata pengguna secara sewenang-wenangnya.
A3DObject
Kelas asas akar untuk semua objek terurus Aspose.3D. Setiap objek bernama dalam perpustakaan – Node, Mesh, AnimationClip, Material, dan seterusnya – mewarisi dari 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)
Cari sifat bernama dalam objek ini PropertyCollection dan kembalikan Property instans, atau null jika tidak ditemui.
Mengembalikan: Property atau 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)
Kembalikan nilai semasa bagi sifat yang dinamakan, atau null jika sifat tidak wujud.
Mengembalikan: Object
Object val = node.getProperty("name");
System.out.println(val); // "origin"setProperty(String property, Object value)
Tetapkan nilai bagi sifat yang dinamakan. Cipta sifat tersebut jika ia belum wujud.
Mengembalikan: void
node.setProperty("layer", 3);
System.out.println(node.getProperty("layer")); // 3removeProperty(String property)
Buang sifat yang dinamakan daripada koleksi.
Mengembalikan: boolean – true jika sifat ditemui dan dibuang.
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 dengan rujukan kepada pemilik Scene. Node, Entity, dan kelas berkaitan mewarisi dari SceneObject.
import com.aspose.threed.SceneObject;Example
A3DObject -> SceneObject
Ciri tambahan
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene); // trueCustomObject
Sebuah subkelas konkrit ringan A3DObject yang hanya membawa nama dan satu nilai sewenang-wenanya PropertyCollection. Gunakan ia untuk melampirkan metadata bentuk bebas kepada satu adegan tanpa subclassing mana-mana jenis entiti.
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