# Библиотека *quat* Библиотека для работы с кватернионами. ## Кватернион из матрицы - *mat4.from_quat(...)* ```lua -- создает кватернион на основе матрицы вращения quat.from_mat4(m: matrix) -- записывает кватернион по матрице вращения в dst quat.from_mat4(m: matrix, dst: quat) ``` ## Сферическая линейная интерполяция - *quat.slerp(...)* Интерполяция всегда выполняется по короткому пути, а вращение выполняется с постоянной скоростью. ```lua -- создает кватернион как интерполяцию между a и b, -- где t - фактор интерполяции quat.slerp(a: quat, b: quat, t: number) -- записывает кватернион как интерполяцию между a и b в dst, -- где t - фактор интерполяции quat.slerp(a: quat, b: quat, t: number, dst: quat) ``` ## Перевод в строку - *quat.tostring(...)* ```lua -- возвращает строку представляющую содержимое кватерниона quat.tostring(q: quat) ```