首页 > 解决方案 > 如何在Android中使用Canvas Paint在弧顶上绘制线条路径

问题描述

我正在一个 android 应用程序中工作,我需要在其中绘制这样的图表。

我已经使用油漆和画布绘制了弧线,但我不知道如何绘制线条路径以及下图中提到的文本!

对此的任何提醒都会对我很有帮助。提前致谢。

在此处输入图像描述

标签: javaandroidcanvaspaintmpandroidchart

解决方案


为了真正保持线的方向,您必须使用许多三角函数和微积分。但是,对于这种情况,您可以使用canvas.rotate()棘手的解决方案。对于解决方案,首先根据值计算线的角度。例如,假设你的圆弧代表总值200。左边是0,右边是200,那么你得到的值是80。有了这些值,你可以计算出180度*(80f)/( 200 - 0) 它给出 72 度。然后您可以旋转画布进行绘图canvas.rotate(70f,centerX,centerY)。CenterX 和 CenterY 是圆弧中心点的值。之后,您可以在画布左下角画线时画线canvas.drawLine(0,100,20,100,paint)

canvas.save()
canvas.rotate(70f,centerX,centerY)
canvas.drawLine(0,100,20,100,paint)
canvas.restore()

推荐阅读