A3DObject, SceneObject, CustomObject — Aspose.3D FOSS for Java
Pacote: com.aspose.threed (aspose-3d-foss 26.1.0)
Essas três classes formam a base da hierarquia de classes Aspose.3D. Cada objeto público na biblioteca herda de A3DObject, que fornece um nome e uma coleção de propriedades dinâmicas. SceneObject estende A3DObject com rastreamento de associação à cena. CustomObject é uma subclasse concreta leve para armazenar metadados de usuário arbitrários.
A3DObject
A classe base raiz para todos os objetos gerenciados Aspose.3D. Cada objeto nomeado na biblioteca – Node, Mesh, AnimationClip, Material, e assim por diante – herda de A3DObject.
import com.aspose.threed.A3DObject;Example
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
name | String | getName() | setName(String) | Nome legível por humanos do objeto. O padrão é uma string vazia. |
properties | PropertyCollection | getProperties() | – | A coleção de propriedades dinâmicas anexada a este objeto. Itere-a ou use findProperty() para buscas nomeadas. |
Example
findProperty(String propertyName)
Pesquisar uma propriedade nomeada no objeto PropertyCollection e retornar o Property instância, ou null se não encontrado.
| Example | Example | Example |
|---|---|---|
propertyName | String | O nome a ser pesquisado. |
Retorna: Property ou 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)
Retorne o valor atual de uma propriedade nomeada, ou null se a propriedade não existir.
| Example | Example | Example |
|---|---|---|
property | String | Nome da propriedade. |
Retorna: Object
Object val = node.getProperty("name");
System.out.println(val); // "origin"setProperty(String property, Object value)
Defina o valor de uma propriedade nomeada. Cria a propriedade se ela ainda não existir.
| Example | Example | Example |
|---|---|---|
property | String | Nome da propriedade. |
value | Object | Novo valor. |
Retorna: void
node.setProperty("layer", 3);
System.out.println(node.getProperty("layer")); // 3removeProperty(String property)
Remove uma propriedade nomeada da coleção.
| Example | Example | Example |
|---|---|---|
property | String ou Property | Nome da propriedade ou Property instância a remover. |
Retorna: boolean – true se a propriedade foi encontrada e removida.
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 com uma referência ao proprietário Scene. Node, Entity, e as classes relacionadas herdam de SceneObject.
import com.aspose.threed.SceneObject;Example
A3DObject -> SceneObject
Propriedade adicional
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
scene | Scene | getScene() | setScene(Scene) | Example Scene a que este objeto pertence, ou null se ainda não estiver anexado. |
import com.aspose.threed.Scene;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("child");
System.out.println(node.getScene() == scene); // trueCustomObject
Uma subclasse concreta leve de A3DObject que contém apenas um nome e um valor arbitrário PropertyCollection. Use-o para anexar metadados de formato livre a uma cena sem criar subclasses de nenhum tipo de entidade.
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