Javascript 如何将节点移动到所需位置?

Javascript 如何将节点移动到所需位置?,javascript,graph-visualization,arbor.js,Javascript,Graph Visualization,Arbor.js,我想将一个特定的节点(比如说我有节点引用)移动到一个所需的位置(比如说画布的左上角)。我尝试了与示例项目中类似的操作,在示例项目中,它们在使用鼠标拖动的同时移动节点。但它似乎不起作用。我没有看到节点按预期移动。这是我的密码 $("#someElement").click(function() { sys.eachNode(function(node, pt) { if (node.name === "specificNode") { // moveToOrigin

我想将一个特定的节点(比如说我有节点引用)移动到一个所需的位置(比如说画布的左上角)。我尝试了与示例项目中类似的操作,在示例项目中,它们在使用鼠标拖动的同时移动节点。但它似乎不起作用。我没有看到节点按预期移动。这是我的密码

$("#someElement").click(function() {
  sys.eachNode(function(node, pt) {
    if (node.name === "specificNode") {
      // moveToOrigin
      var s = arbor.Point(1, 1);
      var p = sys.fromScreen(s);
      node.fixed = true;
      node.p = p;
      node.fixed = false;
      node.tempMass = 1000;
    }
  }
});

要将节点移动到所需位置,请获取相对于画布的所需位置,并通过粒子系统的
fromScreen(…)
功能进行设置:

var point = point;
var pos = canvas.offset();
var s = arbor.Point(point.x-pos.left, point.x-pos.top);
node.p = particleSystem.fromScreen(s);

您需要首先设置节点的位置,然后再次为节点迭代每个循环

重画:函数(){
gfx.clear()
particleSystem.eachNode(函数(节点,pt){
//var节点=particleSystem.getNode(“Carrol Wahi”)
如果(node.data.color==“黄色”){
var pos=$(canvas.offset();
变量点=屏幕上的粒子系统(轴点(位置左侧+150,位置顶部));
节点。_fixed=true;
节点。_p=点;
//console.log(“x=“+point.x+”,y=“+point.y”);
node.tempMass=.1
}
});
particleSystem.eachhedge(功能(边缘、pt1、pt2){
//你的密码在这里
}
particleSystem.eachNode(函数(节点,pt){
//你的密码在这里
})
}

也许可以调用一些类似Refresh()的方法?您已经成功完成了吗?我也在尝试。。。