我希望能够在HTML 5画布中放大鼠标下的点,例如放大Google地图.我怎样才能做到这一点?
我需要相对于画布获得触摸x和y,以便在我移动并缩放画布后检查碰撞和类似的事情.
每当我翻译画布时,我已经设法获得了触摸坐标,或者使用以下代码在原点(0,0)周围缩放它:
private float convertToCanvasCoordinate(float touchx, float touchy) {
float newX=touchx/scale-translatex;
float newY=touchy/scale-translatey
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我将画布围绕另一个点进行缩放,例如canvas.scale(scale,scale,50,50),它就不起作用了.
我知道它应该不起作用,但我无法弄清楚如何解决它.我已经查看了其他问题,但如果按照特定点进行缩放,没有一个答案谈到如何获得坐标.