Compartir a través de


Método ID3DXMATRIXStack::RotateAxisLocal (D3dx9math.h)

Nota

La biblioteca de utilidades D3DX está en desuso. Se recomienda usar DirectXMath en su lugar junto con este encabezado de GitHub.

Gira (en relación con el espacio de coordenadas local del objeto) alrededor de un eje arbitrario.

Sintaxis

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

Parámetros

pV [in]

Tipo: const D3DXVECTOR3*

Puntero al eje arbitrario de rotación. Consulte D3DXVECTOR3.

Ángulo [in]

Tipo: FLOAT

Ángulo de rotación sobre el eje arbitrario, en radianes. Los ángulos se miden en sentido contrario a las agujas del reloj cuando miran el eje arbitrario hacia el origen.

Valor devuelto

Tipo: HRESULT

Si el método se realiza correctamente, el valor devuelto es D3D_OK. Si se produce un error en el método, el valor devuelto se puede D3DERR_INVALIDCALL.

Comentarios

Este método agrega la rotación a la pila de matrices con la matriz de rotación calculada similar a la siguiente:

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

Dado que la rotación se multiplica por la izquierda a la pila de matrices, la rotación es relativa al espacio de coordenadas local del objeto.

Requisitos

Requisito Value
Encabezado
D3dx9math.h
Biblioteca
D3dx9.lib

Consulte también

ID3DXMATRIXStack

D3DXMatrixRotationAxis

ID3DXMATRIXStack::RotateAxis

ID3DXMATRIXStack::RotateYawPitchRoll

ID3DXMATRIXStack::RotateYawPitchRollLocal