Android - 垂直绘制线条

时间:2017-01-05 20:16:48

标签: android

我有一个自定义视图,我覆盖了onDraw方法并绘制了一个圆圈。现在我想画一条从圆心到圆顶的线。

这是我的代码..

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);

    canvas.drawRect(0, 0, getWidth(), getHeight(), backgroundPaint);
    canvas.drawCircle(centerX, centerY, outerRadius, outerCirclePaint);

    double angleRadians = Math.toRadians(0);

    double x = (outerRadius * Math.cos(angleRadians)) + centerX;
    double y = (outerRadius * Math.sin(angleRadians)) + centerY;

    canvas.drawLine((float)x, (float)y, centerX, centerY, innerCirclePaint);
}

centerX和centerY是圆的中心 outerRadius是圆的半径

当我运行此时,线条从中心向右绘制90度而不是圆顶0度,即使我告诉它角度为0

这让我感到困惑,看起来我做错了。 如果有人对此有任何想法,我将非常感激

1 个答案:

答案 0 :(得分:1)

在数学中,单位圆的0度(也是0弧度)从圆的右边开始。

Unit circle

从顶部开始添加90度或pi / 2弧度。