考虑this basic case,人们可能希望更新图层的坐标......但他们不会。
相反,有可能记住起点,计算鼠标偏移然后更新坐标,就像在this test中一样,但......效果非常极端。 预期:点x1,y1是静态的 结果:点x1,y1移动得非常快
如果将坐标设置为常量,则拖动保持不变。 这里的主要问题是拖动动作适用于整个图层。
修复:在拖动结束时应用修改,例如in this snippet。 但它相对难看。
有更好的方法期待您的建议,
答案 0 :(得分:1)
为了保持拖动图层的效率,jCanvas仅偏移任何可拖动图层(包括路径)的x
和y
属性。因此,在拖动时,您可以使用以下行中的某些内容计算任何路径坐标集的绝对位置:
var absX1 = layer.x + layer.x1;
var absY1 = layer.y + layer.y1;
(假设layer
引用jCanvas层,当然)