Property — Aspose.3D FOSS for Java
Example
Property представлява едноименено, типизирано метаданно поле, прикрепено към всяко A3DObject (включително Node, Mesh, AnimationClip, др.). Свойствата се достъпват чрез PropertyCollection върнато от obj.getProperties(). Можете да четете, записвате и изброявате свойства, за да съхранявате потребителски дефинирани данни заедно със сценичните елементи.
Example: com.aspose.threed
import com.aspose.threed.Property;Example
Property обектите обикновено не се конструират директно от кода на приложението. Те се създават чрез извикване на A3DObject.getProperty() или се намират чрез A3DObject.findProperty().
| Example | Example | Example |
|---|---|---|
name | String | Име на свойство |
value | Object | Начална стойност (по избор) |
Example
| Example | Example | Example | Example | Example |
|---|---|---|---|---|
name | String | getName() | – | Име на свойството само за четене |
value | Object | getValue() | setValue(Object) | Текуща стойност; четима и записваема |
valueType | Class<?> | getValueType() | – | Java Class на текущата стойност |
Example
| Example | Тип на връщане | Example |
|---|---|---|
getExtra(String name) | Object | Получава именувано допълнително поле с метаданни, съхранено в това свойство |
setExtra(String name, Object value) | void | Задава именувано допълнително поле с метаданни |
getBindPoint(AnimationNode anim, boolean create) | BindPoint | Връща точката за свързване на анимацията за това свойство в дадения AnimationNode; пропусни true за създаване, ако липсва |
getKeyframeSequence(AnimationNode anim, boolean create) | KeyframeSequence | Връща последователността от ключови кадри за това свойство в дадения AnimationNode |
Example
import com.aspose.threed.Scene;
import com.aspose.threed.Node;
import com.aspose.threed.Property;
import com.aspose.threed.PropertyCollection;
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("tagged_node");
// Access the property collection
PropertyCollection props = node.getProperties();
// Get a property by name (read raw value)
Object val = node.getProperty("name");
System.out.println(val); // "tagged_node"
// Find a property object
Property prop = node.findProperty("name");
if (prop != null) {
System.out.println(prop.getName()); // "name"
System.out.println(prop.getValue()); // "tagged_node"
System.out.println(prop.getValueType()); // class java.lang.String
}
// Enumerate all properties
for (Property p : props) {
System.out.println(" " + p.getName() + " = " + p.getValue());
}
// Store a custom value on a property (extra metadata)
if (prop != null) {
prop.setExtra("ui_label", "Scene Origin Node");
Object label = prop.getExtra("ui_label");
System.out.println(label); // "Scene Origin Node"
}