KonvaJs:拖动时更改线条

时间:2016-02-26 09:40:06

标签: javascript canvas konvajs

我在我的项目中使用KonvaJs。我通过设置Konva.Line使用closed:true创建多边形。我需要弄清楚一个点是否在多边形内部。我正在使用Ray-Casting算法在多边形中找到点并且它工作正常。但拖动多边形时会出现问题。当它被拖动时,顶点(点)仍然保持不变,因此我无法获得新的坐标。如何更改多边形的点以便我可以使用它们?这是plunkr

1 个答案:

答案 0 :(得分:4)

拖动Konva会改变Node的{x,y}属性(Circle,Rect,Line等)。您只需要将xy添加到points

vs.push({
  x: points[i] + poly.x(),
  y: points[i + 1] + poly.y()
});

http://plnkr.co/edit/P6xTokR4bR8o1D180k40?p=preview