Javascript 相对指针位置
我需要一些帮助,弄清楚如何计算舞台上的相对指针位置 在我的情况下,我的阶段改变了,并且 以下是演示: 我希望红色圆圈出现在单击鼠标的位置。Javascript 相对指针位置,javascript,canvas,kineticjs,Javascript,Canvas,Kineticjs,我需要一些帮助,弄清楚如何计算舞台上的相对指针位置 在我的情况下,我的阶段改变了,并且 以下是演示: 我希望红色圆圈出现在单击鼠标的位置。 当舞台改变了它的偏移量和比例时,我遇到了问题。你对x和y坐标的计算有点偏差。这是您的示例的工作演示: 以下是相关的变更代码: function getRelativePointerPosition() { var pointer = stage.getPointerPosition(); var pos = stage.getPosition
当舞台改变了它的偏移量和比例时,我遇到了问题。你对
x
和y
坐标的计算有点偏差。这是您的示例的工作演示:
以下是相关的变更代码:
function getRelativePointerPosition() {
var pointer = stage.getPointerPosition();
var pos = stage.getPosition();
var offset = stage.getOffset();
var scale = stage.getScale();
return {
x : ((pointer.x / scale.x) - (pos.x / scale.x) + offset.x),
y : ((pointer.y / scale.y) - (pos.y / scale.y) + offset.y)
};
}
function getRelativePointerPosition() {
var pointer = stage.getPointerPosition();
var pos = stage.getPosition();
var offset = stage.getOffset();
var scale = stage.getScale();
return {
x : ((pointer.x / scale.x) - (pos.x / scale.x) + offset.x),
y : ((pointer.y / scale.y) - (pos.y / scale.y) + offset.y)
};
}