Как нарисовать линию в конце дуги, например, так?
![example image](https://i.imgur.com/I0EbYA0.png)
Вот код, который я сейчас использую для рисования дуги
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
setMeasuredDimension(widthMeasureSpec, heightMeasureSpec);
canvasWidth = MeasureSpec.getSize(widthMeasureSpec);
canvasHeight = MeasureSpec.getSize(heightMeasureSpec);
padding = strokeWidth * 0.9f;
arcAngle = 360 * 0.8f;
rectF.set(padding, padding, canvasWidth - padding, canvasHeight - padding);
arcRadius = (canvasWidth - padding) / 2f;
arcBottomHeight = arcRadius * (float) (1 - Math.cos(angle / 180 * Math.PI));
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
float startAngle = 270 - arcAngle / 2f;
float finishedSweepAngle = progress / (float) getMax() * arcAngle;
float finishedStartAngle = startAngle;
canvas.drawArc(rectF, startAngle, arcAngle, false, unfinishedPaint);
canvas.drawArc(rectF, finishedStartAngle, finishedSweepAngle, false, finishedPaint);
}
Это рисует 2 дуги друг над другом, с цветной дугой (FinishedPaint), представляющей прогресс.
Я хочу использовать canvas.drawLine (), чтобы нарисовать линию наконец дуги, но я не уверен, как получить координаты, чтобы указать начальную и конечную координаты линии.