【发布时间】:2011-02-16 03:11:19
【问题描述】:
我是 Android 的新开发人员。试图以圆周运动旋转MapView。
但我不知道如何开始。
你有一个简单的代码来旋转MapView吗?
【问题讨论】:
我是 Android 的新开发人员。试图以圆周运动旋转MapView。
但我不知道如何开始。
你有一个简单的代码来旋转MapView吗?
【问题讨论】:
我过去做过这个,它需要创建一个自定义 ViewGroup 来在 dispatchDraw() 方法中旋转 Canvas。您还需要增加 MapView 的大小(以便在旋转时绘制足够的像素。)您还需要在 dispatchTouchEvent() 中旋转触摸事件。或者,如果您使用 Android 3.0,您可以简单地调用 theMapView.rotate() :)
【讨论】:
一般情况下,您始终可以使用所需的角度旋转创建Affine Transform。在一般情况下,您执行以下形式的矩阵乘法:
|x'| |cosθ -sinθ 0| |x|
|y'| = |sinθ cosθ 0|*|y|
|1 | |0 0 1| |1|
其中 (x,y) 是您的初始坐标,θ 是您的旋转角度,(x',y') 是结果变换。
【讨论】: