A3DObject / SceneObject / CustomObject

A3DObject, SceneObject, CustomObject — Aspose.3D FOSS for Java

Pakiet: com.aspose.threed (aspose-3d-foss 26.1.0)

Te trzy klasy stanowią podstawę hierarchii klas Aspose.3D. Każdy publiczny obiekt w bibliotece dziedziczy po A3DObject, które zapewnia nazwę i dynamiczną kolekcję właściwości. SceneObject rozszerza A3DObject z śledzeniem przynależności do sceny. CustomObject jest lekką, konkretną podklasą służącą do przechowywania dowolnych metadanych użytkownika.


A3DObject

Podstawowa klasa bazowa dla wszystkich zarządzanych obiektów Aspose.3D. Każdy nazwany obiekt w bibliotece — Node, Mesh, AnimationClip, Material, i tak dalej – dziedziczy po A3DObject.

import com.aspose.threed.A3DObject;

Example

ExampleExampleExampleExampleExample
nameStringgetName()setName(String)Czytelna dla człowieka nazwa obiektu. Domyślnie jest pustym ciągiem.
propertiesPropertyCollectiongetProperties()Dynamiczna kolekcja właściwości dołączona do tego obiektu. Iteruj ją lub użyj findProperty() dla nazwanych wyszukiwań.

Example

findProperty(String propertyName)

Wyszukaj nazwane własności w tym obiekcie PropertyCollection i zwróć Property instancję, lub null jeśli nie zostanie znaleziona.

ExampleExampleExample
propertyNameStringNazwa do wyszukania.

Zwraca: Property lub 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)

Zwróć bieżącą wartość nazwanej właściwości, lub null jeśli właściwość nie istnieje.

ExampleExampleExample
propertyStringNazwa właściwości.

Zwraca: Object

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

setProperty(String property, Object value)

Ustaw wartość nazwanej własności. Utworzy własność, jeśli jeszcze nie istnieje.

ExampleExampleExample
propertyStringNazwa właściwości.
valueObjectNowa wartość.

Zwraca: void

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

removeProperty(String property)

Usuwa nazwaną właściwość z kolekcji.

ExampleExampleExample
propertyString lub PropertyNazwa właściwości lub Property instancja do usunięcia.

Zwraca: booleantrue jeśli właściwość została znaleziona i usunięta.


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 z odwołaniem do właściciela Scene. Node, Entity, a powiązane klasy dziedziczą po SceneObject.

import com.aspose.threed.SceneObject;

Example

A3DObject -> SceneObject

Dodatkowa właściwość

ExampleExampleExampleExampleExample
sceneScenegetScene()setScene(Scene)Example Scene do którego należy ten obiekt, lub null jeśli jeszcze nie jest podłączony.
import com.aspose.threed.Scene;

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

CustomObject

Lekka konkretna podklasa A3DObject która zawiera tylko nazwę i dowolny PropertyCollection. Użyj jej, aby dołączyć dowolne metadane do sceny bez dziedziczenia po żadnym typie encji.

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

Zobacz także

 Polski