0
我正在使用EaselJS在HTML5画布上处理一些非常简单的东西。我想要做的就是平移,缩放和旋转图像...我想要缩放图像,并且我知道这个问题有很多答案,但我已经完成了排序。当我旋转容器时,它变得非常糟糕。这是我的变焦功能:画布放大到旋转的鼠标点
function zoom(delta){
var p = container.globalToLocal(stage.mouseX, stage.mouseY);
var scale = Math.max(0.1, Math.min(container.scaleX + delta, 3));
container.scaleX = container.scaleY = scale;
var p2 = container.globalToLocal(stage.mouseX, stage.mouseY);
container.x += (p2.x - p.x) * scale;
container.y += (p2.y - p.y) * scale;
}
这里是我的JSFiddle看到它的工作很好,但不是当容器已经围绕其中心旋转。我似乎无法解决如何在容器上使用我的变换来解释任何旋转,任何帮助和解释都将不胜感激。
感谢这么多的回复!我曾想过要走这条路,但最终我想在移动设备上添加缩放和旋转,所以数学确实需要依赖于我给容器的任何旋转。 – adadad