在Android画布中绘制2D曲线?

时间:2012-12-20 21:43:27

标签: android 2d android-canvas curve

我们如何在Canvas

中绘制这样的2D曲线

enter image description here enter image description here enter image description here

所有类似的曲线都有mathematical formulafractals,但画布只有一些绘制简单形状的方法,如三角形或矩形。我知道大多数曲线可以划分为更简单的形状,例如绘制Heart Curve,但是有更简单的方法用画布绘制2D曲线吗?

3 个答案:

答案 0 :(得分:3)

使用Path对象,您可以在Canvas中执行一些更漂亮的线条和曲线。随便找到了这两个问题;我希望他们可以指出你正确的方向,因为我个人没有使用它们。

Draw a perfect curve connecting three points

Bezier curve and canvas

答案 1 :(得分:1)

如果你一直在查看如何绘制2D曲线,你可能会绘制点或线,它只是看起来很平滑。

您的问题有两种参数形式和一种分形形式。所有都可以用线和点绘制。参数形式可以通过您问题中的算法直接完成,也可以转换为更为通用的形式,如@leenephi提到的Bezier曲线

大多数情况下,用于生成分形的方程式/算法使用的是线条,Koch Snowflake或点,Mandelbrot集合。如果你真的了解如何生成它们,你会发现分形不是关于绘制'曲线'而是关于过程(递归)和结果(自相似性)的更多信息。

答案 2 :(得分:0)

您必须通过更简单的基元来近似曲线,例如短线段。