Необходимо мне было разобраться с кривыми Безье, вернее с самым простым случаем, высчитать точки через которые проходит кривая построенная через 3 опорные точки. Немного порывшись в сети, даже не так, набрав в вики “Кривая Безье“, сразу нашел то что мне нужно.
Перевел формулу примерно так:
[/as3] p3.x = Math.pow((1-t), 2)*p0.x + 2*t*(1-t)*p1.x + Math.pow(t, 2)*p2.x; p3.y = Math.pow((1-t), 2)*p0.y + 2*t*(1-t)*p1.y + Math.pow(t, 2)*p2.y; //Здесь p0, p1, p2 - опорные (белые) точки //t - промежуток от 0 до 1 //p3 - точка в промежутке t [as3]
И вот пример того что вышло за 15 минут работы.
Белые, опорные, точки можно тягать изменяя траекторию полета красной.
RSS Feed
Twitter
Posted in
Tags: 