【问题标题】:How to draw points images on edge of circle of image如何在图像圆的边缘绘制点图像
【发布时间】:2013-08-07 09:37:11
【问题描述】:

我真的被困在如何进行编程上。如何在Android Canvas 中画一个圆,半径和点在边缘?

设计这个的最佳方法是什么?

【问题讨论】:

标签: android android-canvas


【解决方案1】:

你要绘制的点(cX,cY)

圆的中心点(centerX,centerY)

圆的半径

角度是圆上的点(cX,cY)。

另见图片:

http://i.stack.imgur.com/2Dx2r.jpg

代码:

cX = centerX + radius*Math.cos(angle*Math.PI/180);
cY = centerY + radius*Math.sin(angle*Math.PI/180);
canvas.drawCircle(cX, cY, radius, paint); 

【讨论】:

  • 虽然这个代码块可能会回答这个问题,但最好能稍微解释一下为什么会这样。
  • 你的答案是套件结果最好
【解决方案2】:

好吧;画一个圆很简单,在你的 onDraw() 方法里面添加这一行

canvas.drawCircle(cX, cY, radius, paint); 

只需提供中心点的 x 和 y 值以及半径和绘制对象。

对于拐角处的大头针,你可以这样, 例如,你想要一个 30 度的大头针;通过简单的三角函数计算,您的 pin 的 x 和 y 值可以是这些;

pX = mX + radius * Math.cos(Math.toRadians(30));
pY = mY + radius * Math.sin(Math.toRadians(30));

因此您可以分别在这些 x 和 y 值处绘制图钉,也可以更改度数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-09-28
    • 1970-01-01
    • 2017-10-26
    • 2017-10-31
    • 2020-05-23
    • 2020-10-23
    • 1970-01-01
    • 2021-08-19
    相关资源
    最近更新 更多