在此处查看jsfiddle 示例
我正在尝试放大图表并在其周围平移,然后在图表上的特定位置放置一个大头针,但我不确定动力学缩放是如何工作的。当我需要计算相对于观察口的下降坐标时,这是一个问题。
该演示在 scale = 1 时运行良好,但是当您使用滚轮鼠标滚动或滚动时,引脚会掉到错误的位置。
不正确的功能是这个:
function getRelativePos(shape,stage) {
var mousePos = stage.getUserPosition();
var pos = shape.getAbsolutePosition();
var size = shape.getSize();
var scale = shape.getScale();
var x = (mousePos.x - pos.x) * scale.x ;
var y = (mousePos.y - pos.y) * scale.y ;
return {
x:x,
y:y
};
}