Ссылка GLKQuaternion
GLKQuaternion тип определяет структуру, представляющую кватернион. Кватернион определяется скалярным компонентом s и вектор XYZ v. Кватернионы часто используются в графике, программируя как компактное представление вращения объекта в трех измерениях.
Управляющие функции GLKQuaternion структуры обрабатывают вводы как неизменные, вместо этого возвращая новый кватернион, которые представляют результаты работы.
-
Возвращает кватернион, создаваемый из его отдельных компонентов.
Объявление
Objective C
GLKQuaternion GLKQuaternionMake ( float x, float y, float z, float w );Параметры
xxкомпонент кватерниона.yyкомпонент кватерниона.zzкомпонент кватерниона.wwкомпонент кватерниона.Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает кватернион, создаваемый из массива компонентов.
Объявление
Objective C
GLKQuaternion GLKQuaternionMakeWithArray ( float values[4] );Параметры
float values[4]Четыре компонента, включающие новый кватернион.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает кватернион, создаваемый из вектора и скаляра.
Объявление
Objective C
GLKQuaternion GLKQuaternionMakeWithVector3 ( GLKVector3 vector, float scalar );Параметры
vectorВекторная часть нового кватерниона.
scalarСкалярная часть нового кватерниона.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Создает кватернион, представляющий вращение вокруг оси.
Объявление
Objective C
GLKQuaternion GLKQuaternionMakeWithAngleAndAxis ( float radians, float x, float y, float z );Параметры
radiansУгол вращения в радианах (положительный угол против часовой стрелки).
xxкомпонент оси.yyкомпонент оси.zzкомпонент оси.Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Создает кватернион, представляющий вращение вокруг оси.
Объявление
Objective C
GLKQuaternion GLKQuaternionMakeWithAngleAndVector3Axis ( float radians, GLKVector3 axisVector );Параметры
radiansУгол вращения в радианах (положительный угол против часовой стрелки).
axisVectorОсь вращения.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Создает кватернион из матрицы вращения.
Объявление
Objective C
GLKQuaternion GLKQuaternionMakeWithMatrix3 ( GLKMatrix3 matrix );Параметры
matrixМатрица вращения для преобразования в кватернион.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Создает кватернион из матрицы вращения.
Объявление
Objective C
GLKQuaternion GLKQuaternionMakeWithMatrix4 ( GLKMatrix4 matrix );Параметры
matrixМатрица вращения для преобразования в кватернион.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает длину кватерниона.
Объявление
Objective C
float GLKQuaternionLength ( GLKQuaternion quaternion );Параметры
quaternionКватернион.
Возвращаемое значение
Длина кватерниона.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает ось вращения кватерниона.
Объявление
Objective C
GLKVector3 GLKQuaternionAxis ( GLKQuaternion quaternion );Параметры
quaternionКватернион.
Возвращаемое значение
Ось вращения.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает угол вращения кватерниона.
Объявление
Objective C
float GLKQuaternionAngle ( GLKQuaternion quaternion );Параметры
quaternionКватернион.
Возвращаемое значение
Угол вращения в радианах (положительный угол против часовой стрелки).
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает нормализованную версию кватерниона.
Объявление
Objective C
GLKQuaternion GLKQuaternionNormalize ( GLKQuaternion quaternion );Параметры
quaternionКватернион.
Возвращаемое значение
Новый кватернион, нормализованный для имения длины
1.0.Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает инверсию кватерниона.
Объявление
Objective C
GLKQuaternion GLKQuaternionInvert ( GLKQuaternion quaternion );Параметры
quaternionКватернион.
Возвращаемое значение
Новый кватернион, который является инверсией исходного кватерниона.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает сопряженный из кватерниона.
Объявление
Objective C
GLKQuaternion GLKQuaternionConjugate ( GLKQuaternion quaternion );Параметры
quaternionКватернион.
Возвращаемое значение
Новый кватернион, который является сопряженным из исходного кватерниона.
Обсуждение
Сопряженный из кватерниона имеет то же скалярное значение, но зеркально отражаются знаки векторных компонентов.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает сумму двух кватернионов.
Объявление
Objective C
GLKQuaternion GLKQuaternionAdd ( GLKQuaternion quaternionLeft, GLKQuaternion quaternionRight );Параметры
quaternionLeftПервый кватернион.
quaternionRightВторой кватернион.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает различие между двумя кватернионами.
Объявление
Objective C
GLKQuaternion GLKQuaternionSubtract ( GLKQuaternion quaternionLeft, GLKQuaternion quaternionRight );Параметры
quaternionLeftУменьшаемое.
quaternionRightВычитаемое.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает продукт двух кватернионов.
Объявление
Objective C
GLKQuaternion GLKQuaternionMultiply ( GLKQuaternion quaternionLeft, GLKQuaternion quaternionRight );Параметры
quaternionLeftПервый кватернион.
quaternionRightВторой кватернион.
Возвращаемое значение
Новый кватернион.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает сферическую линейную интерполяцию двух кватернионов.
Объявление
Objective C
GLKQuaternion GLKQuaternionSlerp ( GLKQuaternion quaternionStart, GLKQuaternion quaternionEnd, float t );Параметры
quaternionStartНачальная точка.
quaternionEndКонечная точка.
tКоэффициент интерполяции.
Возвращаемое значение
Новый кватернион. Когда
t=0, результатом является кватернион запуска. Когдаt=1.0, результатом является кватернион конца. Для любого другого значенияt, результатом является сферическая линейная интерполяция между этими двумя кватернионами.Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает новый вектор, вычисляющийся путем применения вращения кватерниона к вектору.
Объявление
Objective C
GLKVector3 GLKQuaternionRotateVector3 ( GLKQuaternion quaternion, GLKVector3 vector );Параметры
quaternionКватернион.
vectorИсходный вектор.
Возвращаемое значение
Новый вектор.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Применяет вращение кватерниона к массиву векторов.
Объявление
Objective C
void GLKQuaternionRotateVector3Array ( GLKQuaternion quaternion, GLKVector3 *vectors, size_t vectorCount );Параметры
quaternionКватернион.
vectorsНа записи, массиве входных векторов. По возврату, массиву выходных векторов.
vectorCountЧисло векторов в массиве.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Возвращает новый вектор, вычисленный путем применения вращения кватерниона к вектору.
Объявление
Objective C
GLKVector4 GLKQuaternionRotateVector4 ( GLKQuaternion quaternion, GLKVector4 vector );Параметры
quaternionКватернион.
vectorИсходный вектор.
Возвращаемое значение
Новый вектор.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Применяет вращение кватерниона к массиву векторов.
Объявление
Objective C
void GLKQuaternionRotateVector4Array ( GLKQuaternion quaternion, GLKVector4 *vectors, size_t vectorCount );Параметры
quaternionКватернион.
vectorsНа записи, массиве входных векторов. По возврату, массиву выходных векторов.
vectorCountЧисло векторов в массиве.
Оператор импорта
Objective C
@import GLKit;Доступность
Доступный в OS X v10.8 и позже.
-
Представление кватерниона.
Объявление
Objective C
union _GLKQuaternion { struct { GLKVector3 v; float s; }; struct { float x, y, z, w; }; float q[4]; } typedef union _GLKQuaternion GLKQuaternion;Поля
vВекторная часть кватерниона.
sСкалярный компонент кватерниона.
xxкомпонент векторной части кватерниона.yyкомпонент векторной части кватерниона.zzкомпонент векторной части кватерниона.wСкалярный компонент кватерниона.
qКомпоненты кватерниона, выраженного как массив элементов.
Доступность
Доступный в OS X v10.8 и позже.
