A3DObject, SceneObject, CustomObject — Aspose.3D FOSS for Java
패키지: com.aspose.threed (aspose-3d-foss 26.1.0)
이 세 클래스는 Aspose.3D 클래스 계층 구조의 기반을 형성합니다. 라이브러리의 모든 공개 객체는 다음으로부터 상속받습니다. A3DObject, 이름과 동적 속성 컬렉션을 제공합니다. SceneObject extends A3DObject 씬 멤버십 추적을 포함합니다. CustomObject 임의의 사용자 메타데이터를 저장하기 위한 가벼운 구체 서브클래스입니다.
A3DObject
모든 Aspose.3D 관리 객체의 최상위 기본 클래스입니다. 라이브러리의 모든 명명된 객체는 – Node, Mesh, AnimationClip, Material, 등등 – 상속받음 A3DObject.
import com.aspose.threed.A3DObject;Example
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
name | String | getName() | setName(String) | 객체의 사람이 읽을 수 있는 이름입니다. 기본값은 빈 문자열입니다. |
properties | PropertyCollection | getProperties() | – | 이 객체에 연결된 동적 속성 컬렉션입니다. 반복하거나 사용 findProperty() 이름이 지정된 조회에. |
Example
findProperty(String propertyName)
이 객체의 명명된 속성을 검색 PropertyCollection 그리고 반환합니다 Property 인스턴스, 또는 null 찾을 수 없는 경우.
| Example | Example | Example |
|---|---|---|
propertyName | String | 검색할 이름. |
반환: 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 속성이 존재하지 않을 경우.
| Example | Example | Example |
|---|---|---|
property | String | 속성 이름. |
반환: Object
Object val = node.getProperty("name");
System.out.println(val); // "origin"setProperty(String property, Object value)
지정된 이름의 속성 값을 설정합니다. 해당 속성이 아직 존재하지 않으면 새로 생성합니다.
| Example | Example | Example |
|---|---|---|
property | String | 속성 이름. |
value | Object | 새 값. |
반환: void
node.setProperty("layer", 3);
System.out.println(node.getProperty("layer")); // 3removeProperty(String property)
컬렉션에서 지정된 이름의 속성을 제거합니다.
| Example | Example | Example |
|---|---|---|
property | String 또는 Property | 속성 이름 또는 Property 제거할 인스턴스. |
반환값: boolean – true 속성이 찾아서 제거된 경우.
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
추가 속성
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
scene | Scene | getScene() | setScene(Scene) | Example Scene 이 객체가 속한, 또는 null 아직 연결되지 않은 경우. |
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene); // trueCustomObject
경량 구체 서브클래스 A3DObject 이름과 임의의 PropertyCollection. 엔티티 유형을 서브클래싱하지 않고 장면에 자유 형식 메타데이터를 첨부하는 데 사용하십시오.
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