我使用這個公式沿着二次曲線計算出一系列的點:計算均勻分佈的點沿曲線
// Returns a point on a quadratic bezier curve with Robert Penner's optimization of the standard equation
result.x = sx + t * (2 * (1 - t) * (cx - sx) + t * (ex - sx));
result.y = sy + t * (2 * (1 - t) * (cy - sy) + t * (ey - sy));
可悲的是這些點分佈不均,你可以在虛線見在下面呈現。點在曲線中間更密集,並且在邊緣附近進一步間隔開。如何計算沿二次貝塞爾曲線均勻分佈的一組點?
請注意,我用這個渲染虛線,所以在MATLAB緩慢溶液或什麼也不會做。我需要一個適合渲染器的快速解決方案。這不適用於研究或一次性計算!
編輯:我不問如何實現以上。以上是MY RENDERING!我已經知道如何估計貝塞爾的長度,計算積分的數量,等等,等等。我需要的是一個更好的貝塞爾點插值算法,因爲我有計算沿曲線分佈不均分!
與此類似(HTTP://計算器.COM /問題/ 18244305 /如何對再分發點,均勻,過一個曲線),但我想在JS更簡單的東西和代碼。 –
https://github.com/MadLittleMods/svg-curve-lib, https://gamedev.stackexchange.com/questions/5373/moving-ships-between-two-planets-along-a-bezier-missing- some-equations-for-acce/5427#5427 ....當爲這個查找一個答案甚至沿着一條路徑的速度運動,或類似的東西,這就是我通常如何找到答案 – PAEz