Функция D3DXMatrixAffineTransformation2D (D3DX10Math.h)
Примечание
Служебная библиотека D3DX устарела. Вместо этого рекомендуется использовать DirectXMath .
Создает двухd-матрицу аффинного преобразования в плоскости x-y. Аргументы NULL обрабатываются как преобразования удостоверений.
Синтаксис
D3DXMATRIX* D3DXMatrixAffineTransformation2D(
_In_ D3DXMATRIX *pOut,
_In_ FLOAT Scaling,
_In_ const D3DXVECTOR2 *pRotationCenter,
_In_ FLOAT Rotation,
_In_ const D3DXVECTOR2 *pTranslation
);
Параметры
-
pOut [in]
-
Тип: D3DXMATRIX*
Указатель на D3DXMATRIX , который является результатом операции.
-
Масштабирование [в]
-
Тип: FLOAT
Коэффициент масштабирования.
-
pRotationCenter [in]
-
Тип: const D3DXVECTOR2*
Указатель на D3DXVECTOR2, точку, определяющую центр поворота. Если этот аргумент имеет значение NULL, к формуле в примечаниях применяется матрицаrc identity M.
-
Поворот [в]
-
Тип: FLOAT
Угол поворота.
-
pTranslation [in]
-
Тип: const D3DXVECTOR2*
Указатель на D3DXVECTOR2, представляющий перевод. Если этот аргумент имеет значение NULL, к формуле в примечаниях применяется матрица удостоверений Mt.
Возвращаемое значение
Тип: D3DXMATRIX*
Указатель на структуру D3DXMATRIX, которая является матрицей аффинного преобразования.
Комментарии
Эта функция вычисляет матрицу аффинного преобразования с помощью следующей формулы, при этом объединение матриц вычисляется в порядке слева направо:
Mout = Ms * (Mrc)-1 * Mr * M rc * Mrc * Mt
где:
Mout = матрица вывода (pOut)
Ms = матрица масштабирования (масштабирование)
Mrc = центр матрицы поворота (pRotationCenter)
Mr = матрица поворота (поворот)
Mt = матрица перевода (pTranslation)
Возвращаемое значение для этой функции совпадает с значением, возвращаемым в параметре pOut. Таким образом, функцию D3DXMatrixAffineTransformation2D можно использовать в качестве параметра для другой функции.
Для трехмерных аффинных преобразований используйте D3DXMatrixAffineTransformation.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел