Platform SDK: DirectX

ID3DXMatrixStack::RotateAxis

ID3DXMatrixStack::RotateAxis メソッドは、現在の行列と算出された回転行列の積を算出する。

HRESULT RotateAxis(
  const D3DXVECTOR3* pV,
  float angle
); 

パラメータ

pV
軸の角度を指定する D3DXVECTOR3 構造体へのポインタ。
angle
回転角度 (ラジアン単位)。角度は、回転軸から原点に向かって時計回りに計測される。

戻り値

成功すれば S_OK を返し、失敗すれば D3DXERR_NULLPOINTER を返す。

注意

このメソッドは、現在の行列に算出された回転行列を積算する。これは、指定した軸に対して反時計回りに指定した角だけ回転させる (回転は、現在のワールド原点を中心として行われる)。

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

動作環境

  Windows NT/2000 : Windows 2000 が必要。
  Windows 95/98 : Windows 95 以上が必要。Windows 95 用に再配布可能な形で使用可能。
  バージョン : DirectX 7.0 が必要。
  ヘッダー : d3dxmath.h で宣言。
  ライブラリ : d3dx.lib を使用。

参照

ID3DXMatrixStack::RotateAxisLocalID3DXMatrixStack::RotateYawPitchRollID3DXMatrixStack::RotateYawPitchRollLocal