Угловое расстояние в радианах
возвращает угловое расстояние в радианах между операторами вращения кватерниона для distance = dist(quatA,quatB)quatA и quatB.
dist функция возвращает угловое расстояние между двумя операторами вращения кватерниона.
Кватернион может быть задан осью (ub, uc, ud) и угол вращения θq: .

Учитывая кватернион в форме, , где a является действительной частью, можно решить для θq: .
Рассмотрите два кватерниона, p и q и продукт . В операторе вращения z вращается p и derotates q. Когда p приближается к q, угол z переходит в 0, и продукт приближается к модульному кватерниону.
Угловое расстояние между двумя кватернионами может быть выражено как .
Используя quaternion синтаксис типа данных, угловое расстояние вычисляется как:
angularDistance = 2*acos(parts(p*conj(q)));