嗨,我从http://matplotlib.sourceforge.net/users/path_tutorial.html开始。我正在寻找一个函数,以获得具有固定采样率的所有bezier点。
我要找的东西是这样的:
interpolate(t, samplingrate)其中t是0到1之间的曲线参数,采样率是返回点列表的长度。
在手册页面http://matplotlib.sourceforge.net/api/path_api.html?highlight=bezier和一些dir()调用中,我找不到任何有用的东西
帮帮忙?
发布于 2011-03-30 06:01:45
Path对象不存储沿Bezier曲线的点,仅存储它所需的最小参数。编写你自己的函数应该不难。遵循wikipedia中的表达式,这样如何?
def quadBrezPoints(P0, P2, P1, nSamples):
ans = numpy.zeros((nSamples,2))
for i in xrange(nSamples):
t = (i+0.0)/nSamples
ans[i,0] = (1-t)**2 * P0[0] + 2*(1-t)*P1[0] + t**2 * P2[0]
ans[i,1] = (1-t)**2 * P0[1] + 2*(1-t)*P1[1] + t**2 * P2[1]
return ans如果想要n次Bezier曲线,只需修改函数即可。
https://stackoverflow.com/questions/5479134
复制相似问题