图元管理
图元管理是图元容器的基本功能,图元容器具有Array和Map的功能,内部通过数组和ID映射表对图元进行管理,支持元素的增加删除,次序修改以及获取遍历操作
增减操作:
- #add(data, index) - 添加图元
- #clear() - 清除图元
- #remove(data)
- #removeById(id)
- #set(data)
其他集合操作函数
- #contains(data) - 是否包含图元
- #containsById(id) - 是否包含指定id的图元
- #get(index) - 按数组位置获取图元
- #getById(id) - 通过ID获取图元
- #indexOf(data) - 获取图元的数组位置
- #setIndex(data, index) - 设置图元的数组位置
- #size() - 集合大小
- #length - 集合大小
- #forEach(call, scope, params) - 按数组集合遍历
- #forEachReverse(call, scope, params) - 按数组集合反向遍历
示例
向图元容器中添加图元,并反向遍历容器
var model = new Q.GraphModel();
model.add(new Q.Node('A'));
model.add(new Q.Node('B'));
model.add(new Q.Node('C'));
Q.log('model size: ' + model.length);
model.forEachReverse(function(node){
Q.log(node.name);
});
Q.log('the first node is: ' + model.get(0).name);
打印结果
model size: 3
C
B
A