Metodo ID3DXMATRIXStack::RotateAxis (D3dx9math.h)

Nota

La libreria di utilità D3DX è deprecata. È consigliabile usare DirectXMath insieme a questa intestazione da GitHub.

Ruota (relativo allo spazio di coordinate del mondo) intorno a un asse arbitrario.

Sintassi

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

Parametri

pV [in]

Tipo: const D3DXVECTOR3*

Puntatore all'asse arbitrario di rotazione. Vedere D3DXVECTOR3.

Angolo [in]

Tipo: FLOAT

Angolo di rotazione sull'asse arbitrario, nei radianti. Gli angoli vengono misurati in senso antiorario quando si guarda lungo l'asse arbitrario verso l'origine.

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, il valore restituito è D3D_OK. Se il metodo ha esito negativo, il valore restituito può essere D3DERR_INVALIDCALL.

Commenti

Questo metodo aggiunge la rotazione allo stack di matrice con la matrice di rotazione calcolata simile alla seguente:

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

Poiché la rotazione è moltiplicata a destra nello stack di matrice, la rotazione è relativa allo spazio di coordinate del mondo.

Requisiti

Requisito Valore
Intestazione
D3dx9math.h
Libreria
D3dx9.lib

Vedi anche

ID3DXMATRIXStack

D3DXMatrixRotationAxis

ID3DXMATRIXStack::RotateAxisLocal

ID3DXMATRIXStack::RotateYawPitchRoll

ID3DXMATRIXStack::RotateYawPitchRollLocal