我正在使用KineticJS,我将一些形状添加到两组中。 我可以在组中拖动和移动形状,然后在另一组中移动形状。
当我将形状从一个组移动到另一个组时,我失去了形状的位置,它们返回到原始位置,与我在另一组中移动之前的位置相同。
可能需要同步两组中的形状位置,KineticJS是否为此提供了任何功能?
答案 0 :(得分:0)
你的直觉是正确的。
当形状从一个组移动到另一个组时,x,y坐标不变。这导致形状跳跃"跳跃"相对于其新组。
因此,如果您将形状移动到新组:
circle1.moveTo(group2);
然后你必须调整形状的x,y相对于新组:
circle1.x(circle1.x()-group2.x()+group1.x());
circle1.y(circle1.y()-group2.y()+group1.y());