视口外的Konva元素

问题描述 投票:0回答:1

如果用户将元素拖动到视口之外,则需要移动它。 offsetX和offsetY在这里没有帮助。如何解决呢?我尝试通过多种方式来做到这一点,但没有任何有效的示例。

简单的例子:当我将红色矩形从视图中拖出时(例如,拖到左上角),我希望视图随之移动。

codepen.io/dimabytes/pen/WNNORyZ
javascript canvas konvajs
1个回答
0
投票

当指针移到屏幕外时,您必须移动图层坐标。假设您在更大的阶段中有一个层。

要知道如何更好地操纵图层坐标,这会很有用:https://konvajs.org/docs/sandbox/Canvas_Scrolling.html

要获得指针位置,您需要类似:

node.on('onDragMove', (e) => {
   stageRef.getPointerPosition().x // That's your x position
   stageRef.getPointerPosition().y // That's your y position
});

通过这两个方向,您应该能够找到解决问题的方法。

© www.soinside.com 2019 - 2024. All rights reserved.