A3DObject / SceneObject / CustomObject

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

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

Dessa tre klasser utgör basen för Aspose.3D-klasshierarkin. Varje offentligt objekt i biblioteket ärver från A3DObject, som tillhandahåller ett namn och en dynamisk egenskapskollektion. SceneObject ärver A3DObject med spårning av scenmedlemskap. CustomObject är en lättviktig konkret underklass för att lagra godtycklig användarmetadata.


A3DObject

Rotbas-klassen för alla Aspose.3D hanterade objekt. Varje namngivet objekt i biblioteket – Node, Mesh, AnimationClip, Material, och så vidare – ärver från A3DObject.

import com.aspose.threed.A3DObject;

Example

ExampleExampleExampleExampleExample
nameStringgetName()setName(String)Mänskligt läsbart namn på objektet. Standardvärdet är en tom sträng.
propertiesPropertyCollectiongetProperties()Den dynamiska egenskapskollektionen som är bifogad till detta objekt. Iterera den eller använd findProperty() för namngivna uppslag.

Example

findProperty(String propertyName)

Sök efter en namngiven egenskap i detta objekts PropertyCollection och returnera Property instans, eller null om den inte hittas.

ExampleExampleExample
propertyNameStringNamnet att söka efter.

Returnerar: Property eller 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)

Returnera det aktuella värdet för en namngiven egenskap, eller null om egenskapen inte finns.

ExampleExampleExample
propertyStringEgenskapsnamn.

Returnerar: Object

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

setProperty(String property, Object value)

Sätt värdet för en namngiven egenskap. Skapar egenskapen om den inte redan finns.

ExampleExampleExample
propertyStringEgenskapsnamn.
valueObjectNytt värde.

Returnerar: void

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

removeProperty(String property)

Ta bort en namngiven egenskap från samlingen.

ExampleExampleExample
propertyString eller PropertyEgenskapsnamn eller Property instans att ta bort.

Returnerar: booleantrue om egenskapen hittades och togs bort.


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 med en referens till den ägande Scene. Node, Entity, och relaterade klasser ärver från SceneObject.

import com.aspose.threed.SceneObject;

Example

A3DObject -> SceneObject

Ytterligare egenskap

ExampleExampleExampleExampleExample
sceneScenegetScene()setScene(Scene)Example Scene detta objekt tillhör, eller null om den ännu inte är bifogad.
import com.aspose.threed.Scene;

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

CustomObject

En lättviktsbetongsubklass av A3DObject som bara bär ett namn och ett godtyckligt PropertyCollection. Använd den för att bifoga fritt formulerad metadata till en scen utan att subklassa någon entitetstyp.

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

Se även

 Svenska