任意の軸に回転するためには?

解決


VERTEX  2005-10-18 22:25:19  No: 59313  IP: 192.*.*.*

現在私はDirectX9を使用して3Dプログラムをしています。
いろいろと初心者なため低レベルな質問かと思いますが、以下についてお願いします。

(物体を自転させたいために使用する)D3DXMatrixRotationAxis関数の第二引数、[軸の角度を識別するD3DXVECTOR3構造体へのポインタ]についてです。

引数としてD3DXVECTOR3型でXYZの座標情報を送ったとしても、これは頂点の座標であって軸の情報にはならないと思うのです。2点を指定するなら別ですが。

なぜこれだけで軸の情報になるのか・・・。この疑問についてお願いします。

編集 削除
jun  2005-10-19 00:36:14  No: 59314  IP: 192.*.*.*

第二引数のD3DXVECTOR3は位置ベクトルではなく方向ベクトルなので、このベクトル1つだけで軸情報を渡せます。
別の言い方をすれば、原点(0, 0, 0)と第二引数の位置にある点を結んだ直線を回転軸にするということです。

編集 削除
VERTEX  2005-10-19 17:39:24  No: 59315  IP: 192.*.*.*

なるほど、理解できました。ありがとうございました。

編集 削除