Loading AI tools
З Вікіпедії, вільної енциклопедії
В комп'ютерній графіці, SLERP (spherical linear interpolation) — лінійна інтерполяція на сфері, що використовується для анімації обертання з постійною кутовою швидкістю за допомогою кватерніонів.
SLERP має геометричну інтерпретацію незалежну від кватерніонів та розмірності простору. Вона базується на тому, що довільна точка на кривій повинна представлятись у вигляді лінійної комбінації кінців кривої. Якщо простором, в якому беруться точки, буде сфера, то геодезичний відрізок, який їх з'єднує буде не евклідовим відрізком (він не належить сфері), а буде дугою великого кола на сфері.
Якщо p0 та p1 початок і кінець дуги, а t параметр, 0 ≤ t ≤ 1.
Обчислимо Ω — кут дуги, отримаємо cos Ω = p0 ∙ p1, n-вимірний скалярний добуток одиничних векторів. Отримаємо формулу
Вона симетрична відносно кінців дуги Slerp(p0,p1,t) = Slerp(p1,p0,1−t).
Якщо — дуже маленький кут, настільки, що можуть виникнути помилки при діленні на , тому можна використовувати звичайну лінійну інтерполяцію (оскільки при маленьких значеннях , і так далі).
Записавши одиничний кватерніон у вигляді q = cos Ω + v sin Ω, де v тривимірний одиничний вектор, отримаємо q t = cos tΩ + v sin tΩ.
записавши q = q1q−1
0, отримаємо
Використовується лінійна залежність між кутом повороту і степенем кватерніона.
Ця стаття потребує додаткових посилань на джерела для поліпшення її перевірності. (серпень 2013) |
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.