我需要通过平滑曲线连接三个点。我已经查看了StackOverflow上已经回答的相同问题,但它们都建议使用Path.quadTo()
。我不明白为什么这被认为是正确答案,因为贝塞尔曲线只是接近中间(控制)点而不是穿过它。在我的情况下,我必须准确地穿过它。那么我该如何实现呢?
确实,你需要的是Catmull Rom样条线,它们保证会经过每个点。然而,我不知道Android API中是否有任何函数来绘制它们。你也可以“欺骗”quadTo函数,并传递一个虚拟中间点,该点根据当前点和下一个点进行计算。
关于cubicTo函数(或者如果你需要从相对点开始,则是rCubicTo函数)怎么样呢? http://developer.android.com/reference/android/graphics/Path.html#cubicTo(float, float, float, float, float, float)