Android围绕公共轴心点旋转一组位图

时间:2012-11-16 06:30:40

标签: android bitmap rotation custom-view

我正在尝试创建像拼图游戏一样的游戏。我正在使用一个扩展View的类,在其绘制方法中,我正在绘制不同的位图片段。当用户点击位图时,我将该位图旋转90度角。它的工作完美。但是用户组合了一些位图片然后旋转组,位图围绕它们的中心点旋转,从而破坏了组结构。

我的问题是如何围绕公共枢轴点旋转一组位图,以便当一组位图旋转时,它会保留其形状结构?

1 个答案:

答案 0 :(得分:0)

我假设您的每个部分都是中心加权的,这会导致您的问题。

可能性是将背景设为中心加权对象或查看背景并将中心声明为旋转点。

然后,计算每个拼图块的近似框大小(如果您使用Zoom,这可能是动态的)。在Draw()中找出它在屏幕上的位置对象。

现在,想象一条从中心到屏幕边缘的线条被旋转以获得你的角度。

因此,根据这些新信息,您需要根据屏幕旋转中心设置的角度计算每个中心加权对象(拼图块)的新角度。由于屏幕中心设置的新线或旋转角度,每个部件在其轴上将具有不同的旋转角度。

这更像是一种算法/计算而不是编程,更多关于你的问题的细节会有所帮助。