ID3DXMATRIXStack::RotateAxis method (D3dx9math.h)

Note

The D3DX utility library is deprecated. We recommend that you use DirectXMath instead along with this header from GitHub.

Rotates (relative to world coordinate space) around an arbitrary axis.

Syntax

HRESULT RotateAxis(
  [in] const D3DXVECTOR3 *pV,
  [in]       FLOAT       Angle
);

Parameters

pV [in]

Type: const D3DXVECTOR3*

Pointer to the arbitrary axis of rotation. See D3DXVECTOR3.

Angle [in]

Type: FLOAT

Rotation angle about the arbitrary axis, in radians. Angles are measured counterclockwise when looking along the arbitrary axis toward the origin.

Return value

Type: HRESULT

If the method succeeds, the return value is D3D_OK. If the method fails, the return value can be D3DERR_INVALIDCALL.

Remarks

This method adds the rotation to the matrix stack with the computed rotation matrix similar to the following:

D3DXMATRIX tmp;
D3DXMatrixRotationAxis( &tmp, pV, angle );
m_stack[m_currentPos] = m_stack[m_currentPos] * tmp;

Because the rotation is right-multiplied to the matrix stack, the rotation is relative to world coordinate space.

Requirements

Requirement Value
Header
D3dx9math.h
Library
D3dx9.lib

See also

ID3DXMATRIXStack

D3DXMatrixRotationAxis

ID3DXMATRIXStack::RotateAxisLocal

ID3DXMATRIXStack::RotateYawPitchRoll

ID3DXMATRIXStack::RotateYawPitchRollLocal