0
A
回答
0
这是我的解决方案,使用新的ID及其边缘创建节点的副本。然后删除旧的节点。
changeId(current, newId) {
let g = this.getGraph();
// Change on graph
let node = g.node(current);
let inEdges = g.inEdges(current);
let outEdges = g.outEdges(current);
// Create new node
node.id = newId;
g.setNode(newId, node);
// Create new edges
for (let i = 0; i < inEdges.length; i++) {
let edge = inEdges[i];
let conn = g.edge(edge.v, current);
conn.target = newId;
g.setEdge(edge.v, newId, conn);
}
for (let i = 0; i < outEdges.length; i++) {
let edge = outEdges[i];
let conn = g.edge(current, edge.w);
conn.source = newId;
g.setEdge(newId, edge.w, conn);
}
// Remove old node
g.removeNode(current);
}
相关问题
- 1. 的Javascript:在ID更改CSS子节点
- 2. 如何更改节点值
- 3. Firebase数据库更改节点ID
- 4. 通过替换节点更改节点id
- 5. 具有ID的同一列中的节和子节点,如何更改结构
- 6. 如何更改kubernetes节点的名称
- 7. 如何更改JCR节点的名称?
- 8. 如何更改jsTree节点的文本?
- 9. 如何更改我的节点文本
- 10. 如何更改节点的值
- 11. 如何更改TreeMenu中的节点?
- 12. 如何更改Jena中TriplePath的节点?
- 13. 如何更改细胞节点节点的标签
- 14. 如何更改画布上的ID
- 15. 如何更改DOM中每个节点上的命名空间?
- 16. 如何更改neo4j中节点上显示的内容?
- 17. 如何更改XML节点值?
- 18. Javascript:如何更改节点名称?
- 19. 如何批量更改节点语言?
- 20. 如何动态更改xml节点?
- 21. 如何更改ID?
- 22. 如何更改ID?
- 23. 更改的XML节点值
- 24. 用Netlogo中的每个安装程序更改节点ID
- 25. 更改treeview节点颜色
- 26. 选定节点已更改
- 27. 节点js更改网址
- 28. 更改节点服务器
- 29. Neo4jClient节点ID
- 30. 如何更改XML节点值,如果另一个节点是空