我有一个Java中的CubicCurve,由4个控制点定义。我可以画出最终的形状,但是如何在这个形状的给定分辨率中获得有效的每一点? 顺便说一句,PathIterator“only”返回控制点,但不返回曲线本身的点。
答案 0 :(得分:0)
2D 参数三次曲线只是两个多项式
x(t)=ax0+ax1*t+ax2*t*t+ax3*t*t*t
y(t)=ay0+ay1*t+ay2*t*t+ay3*t*t*t
其中t=<0.0,1.0>
所以您从控制点计算a?0...a?3
系数,然后只需要循环t
,只需要获得所需的所有点,例如{{1}其中dt=1.0/(n-1)
是点数。
系数取决于用于 BEZIER / SPLINE或插值的曲线,请参阅: