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"
}