按轴计算画布中的点坐标

时间:2015-09-02 09:33:44

标签: android canvas coordinates geometry

我需要在我的Android应用程序上制作旋转轮。为此,我创建了一个自定义视图,以便将它放在App活动中的任何位置。 在车轮周围,我需要放置TextViews。 由于视图的宽度和高度,我可以得到画布的中心点。视图。 我知道角度,我知道半径,所以现在我需要通过计算画布上的坐标将文本视图放在圆的边缘。

enter image description here

有谁知道如何实现这一目标?

提前致谢!

1 个答案:

答案 0 :(得分:2)

中心为(x0,y0)且半径为r的圆上角θ的点为(x0 + r cos theta,y0 + r sin theta)

或者 绘制圆形后,必须旋转画布,将文本按所需角度放置,然后再将其恢复为

canvas.save();
canvas.rotate(45, x, y);
canvas.drawText("your text here", x, y, paint);
canvas.restore();

希望有所帮助.. !!