XMMATRIX XMMatrixAffineTransformation(
[in] XMVECTOR Scaling,
[in] XMVECTOR RotationOrigin,
[in] XMVECTOR RotationQuaternion,
[in] XMVECTOR Translation
);
这个函数接受四个参数:
- Scaling: 缩放向量,表示在每个轴上的缩放比例。
- RotationOrigin: 旋转的原点。
- RotationQuaternion: 旋转的四元数。
- Translation: 平移向量。
函数返回一个仿射变换矩阵 (XMMATRIX),它包含了指定的缩放、旋转和平移变换。
这个函数的典型用法如下:
XMVECTOR scaling = XMVectorSet(2.0f, 1.5f, 1.0f, 1.0f);
XMVECTOR rotationOrigin = XMVectorSet(0.0f, 0.0f, 0.0f, 1.0f);
XMVECTOR rotationQuaternion = XMQuaternionRotationRollPitchYaw(0.0f, XMConvertToRadians(45.0f), 0.0f);
XMVECTOR translation = XMVectorSet(1.0f, 2.0f, 3.0f, 1.0f);
XMMATRIX affineMatrix = XMMatrixAffineTransformation(scaling, rotationOrigin, rotationQuaternion, translation);
在这个例子中,affineMatrix 将包含指定的缩放、旋转和平移变换。这个矩阵可以用于将顶点进行仿射变换。
转载请注明出处:http://www.zyzy.cn/article/detail/26935/Win32 API/Directxmath.h/XMMatrixAffineTransformation