【发布时间】:2014-07-05 05:16:13
【问题描述】:
我正在开发简单的游戏。我有cca。 50 个矩形排列成 10 列和 5 行。以某种方式放置它们以适应整个屏幕并不是问题。但是当我旋转画布时,假设大约 7° 角,旧坐标不适合坐标的新位置。在构造函数中,我已经创建并定义了该矩形的位置,在 onDraw 方法中,我正在绘制这个矩形(当然有区域旋转),我需要一些与当前矩形碰撞的方法。我尝试使用这样的东西(我围绕屏幕的中心点进行了旋转)
int newx = (int) ((x * Math.cos(ROTATE_ANGLE) - (y * Math.sin(ROTATE_ANGLE))) + width / 2);
int newy = (int) ((y * Math.cos(ROTATE_ANGLE) + (x * Math.sin(ROTATE_ANGLE))) + height / 2);
但它不起作用(因为它给了我绝对错误的新坐标)。 x 和 y 是我试图以旋转方式计算新位置的触摸坐标。 ROTATE_ANGLE 是屏幕的旋转角度。
有人知道如何解决这个问题吗,我已经浏览了很多文章、wiki、wolframalpha 类别,但不走运。也许我只需要一些链接来更多地了解问题。
谢谢
【问题讨论】: