A3DObject, SceneObject, CustomObject — Aspose.3D FOSS for Java
Paket: com.aspose.threed (aspose-3d-foss 26.1.0)
Ketiga kelas ini membentuk dasar hierarki kelas Aspose.3D. Setiap objek publik dalam perpustakaan mewarisi dari A3DObject, yang menyediakan nama dan koleksi properti dinamis. SceneObject memperluas A3DObject dengan pelacakan keanggotaan adegan. CustomObject adalah subclass konkret ringan untuk menyimpan metadata pengguna yang arbitrer.
A3DObject
Kelas dasar akar untuk semua objek terkelola Aspose.3D. Setiap objek bernama dalam perpustakaan – Node, Mesh, AnimationClip, Material, dan seterusnya – mewarisi dari A3DObject.
import com.aspose.threed.A3DObject;Example
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
name | String | getName() | setName(String) | Nama objek yang dapat dibaca manusia. Defaultnya string kosong. |
properties | PropertyCollection | getProperties() | – | Koleksi properti dinamis yang terlampir pada objek ini. Iterasi atau gunakan findProperty() untuk pencarian bernama. |
Example
findProperty(String propertyName)
Cari properti bernama dalam objek ini PropertyCollection dan kembalikan Property instance, atau null jika tidak ditemukan.
| Example | Example | Example |
|---|---|---|
propertyName | String | Nama yang akan dicari. |
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 saat ini dari properti yang bernama, atau null jika properti tidak ada.
| Example | Example | Example |
|---|---|---|
property | String | Nama properti. |
Mengembalikan: Object
Object val = node.getProperty("name");
System.out.println(val); // "origin"setProperty(String property, Object value)
Atur nilai properti yang bernama. Membuat properti jika belum ada.
| Example | Example | Example |
|---|---|---|
property | String | Nama properti. |
value | Object | Nilai baru. |
Mengembalikan: void
node.setProperty("layer", 3);
System.out.println(node.getProperty("layer")); // 3removeProperty(String property)
Hapus properti yang bernama dari koleksi.
| Example | Example | Example |
|---|---|---|
property | String atau Property | Nama properti atau Property instance yang akan dihapus. |
Mengembalikan: boolean – true jika properti ditemukan dan dihapus.
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 referensi ke pemilik Scene. Node, Entity, dan kelas terkait inherit dari SceneObject.
import com.aspose.threed.SceneObject;Example
A3DObject -> SceneObject
Properti tambahan
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
scene | Scene | getScene() | setScene(Scene) | Example Scene objek ini milik, atau null jika belum terlampir. |
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene); // trueCustomObject
Sebuah subclass beton ringan dari A3DObject yang hanya membawa sebuah nama dan sesuatu yang sewenang-wenang PropertyCollection. Gunakan itu untuk melampirkan metadata bentuk bebas ke sebuah adegan tanpa membuat subclass dari tipe entitas apa pun.
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