Base Classes

Base Classes — Aspose.3D FOSS for Java

แพคเกจ: com.aspose.threed (aspose-3d-foss 26.1.0)

คลาสสามคลาสนี้เป็นฐานของลำดับชั้นคลาส Aspose.3D ทุกวัตถุสาธารณะในไลบรารีสืบทอดจาก A3DObject, ซึ่งให้ชื่อและคอลเลกชันของคุณสมบัติดินามิก. SceneObject extends A3DObject พร้อมการติดตามการเป็นสมาชิกของฉาก. CustomObject เป็นคลาสย่อย lightweight ของ Concrete สำหรับจัดเก็บเมตาดาต้าผู้ใช้แบบ任意.


A3DObject

คลาสฐานรากสำหรับวัตถุที่จัดการโดย Aspose.3D ทั้งหมด. ทุกวัตถุที่มีชื่อในไลบรารี – Node, Mesh, AnimationClip, Material, และต่อไป – สืบทอดจาก A3DObject.

import com.aspose.threed.A3DObject;

Example

ClassDescription
A3DObjectRoot base class for all Aspose.3D managed objects. Provides a name property and a Properties collection for user-defined metadata.
SceneObjectBase class shared by Node and Entity . Provides the property collection interface used for user-defined metadata.
CustomObjectLightweight A3DObject subclass that carries only a name and an arbitrary PropertyCollection . Used for storing user-defined metadata on scene objects.
EntityBase class for all scene entities ( Mesh , Camera , Light , etc.). Attached to a Node via Node.addEntity() .
DeformerBase class for deformers that modify mesh geometry (e.g., skinning, morph targets).

Example

findProperty(String propertyName)

ค้นหาคุณสมบัติตามชื่อในอ็อบเจ็กต์ของนี้ PropertyCollection และคืนค่า Property อินสแตนซ์, หรือ null หากไม่พบ.

คืนค่า: Property หรือ 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)

คืนค่าปัจจุบันของคุณสมบัติที่มีชื่อ, หรือ null หากคุณสมบัตินั้นไม่มีอยู่.

คืนค่า: Object

Object val = node.getProperty("name");
System.out.println(val);   // "origin"

setProperty(String property, Object value)

ตั้งค่าของ property ที่มีชื่อ. สร้าง property หากยังไม่มีอยู่.

คืนค่า: void

node.setProperty("layer", 3);
System.out.println(node.getProperty("layer"));   // 3

removeProperty(String property)

ลบคุณสมบัติที่ระบุชื่อออกจากคอลเลกชัน.

คืนค่า: booleantrue ถ้าพบและลบคุณสมบัติแล้ว.


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 พร้อมอ้างอิงถึงเจ้าของ Scene. Node, Entity, และคลาสที่เกี่ยวข้องสืบทอดจาก SceneObject.

import com.aspose.threed.SceneObject;

Example

A3DObject -> SceneObject

คุณสมบัติเพิ่มเติม

import com.aspose.threed.Scene;

Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene);   // true

CustomObject

คลาสย่อยของคอนกรีตเบา A3DObject ที่บรรจุเพียงชื่อและค่าตามอำเภอใจ PropertyCollection. ใช้มันเพื่อแนบ free-form metadata ไปยังฉากโดยไม่ต้องสร้างซับคลาสของ entity type ใดๆ.

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

ดูเพิ่มเติม

 ภาษาไทย