
こんにちは、私は今DirectXを使って物理シミュレーションを行おうとしております。
そこで物体を任意軸回転させて表示したいのですが、どういった方法を用いれば実現できますか?
http://marupeke296.com/DXGSmp_No10_Quaternion.html
このサイトで解説されているようにクォータニオンを使うのでしょうか?
ただこのサイトで示されているサンプルでは、玉ひとつひとつが回転しているわけではなく、位置がある軸に関して回転させた位置へ「並進させる」ということを行っています。
私は物体を回転させるときに、任意軸回転を使いたいなと思っています。
--
D3DXMatrixRotationX(&Rot_X, angle);
D3DXMatrixMultiply(&World, &World, &Rot_X);
--
以上はX軸回転を行う行列をワールド座標変換行列に掛けるコマンドですが、この勢いで任意軸回転行列を作成・掛けるといったことはできますか?
知識が足りなく稚拙な表現で申し訳ありませんが・・・
任意軸回転をXYZ軸回転の組み合わせに分解できれば
D3DXMatrixRotationX(YやZ)とD3DXMatrixMultiply関数のみを使って簡単にできちゃうのですがそのような数学的手法は存在しますか?
それとも、任意軸回転関数を自前で既に作ってあるので
D3DXMATRIX型の変数にその値を手動で注入(構造体の中身を知る必要あり)、D3DXMatrixMultiply関数で掛けるといった操作でいけちゃうでしょうか?
あとでちょっとやってみます。すみません。しかしD3DX~系の用意された関数の域を出て気持ちよくはないですが。
No.2ベストアンサー
- 回答日時:
D3DXMatrixRotationAxis で任意軸回転できるのでそれでどうでしょうか。
No.1
- 回答日時:
任意軸回転というのは、任意の方向を向いた軸を中心に回転する、という意味でしょうか?
これをX,Y,Z軸を中心とした回転に分解するには、ベクトルの考え方を使います。
(けっこう難しいので、次のページにふってしまいます。)
http://hooktail.sub.jp/mechanics/infinitesimalRo …
foomufoomu様、ご回答ありがとうございます。
無限小回転でXYZに分解する・・・ですかーーー
チャンスがあれば挑んでみます。ご紹介ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
始点、終点の二つの座標と半径...
-
ワード上Shapeの位置情報を統一...
-
タッチパッドのタッチ座標取得
-
交差する2線分の交点座標の求め方
-
C言語 配列で座標
-
図形が重なりあっているかどうか
-
ピクチャボックスの座標取得
-
画像の円形内による画素検出に...
-
緊急 ベーシックで国旗の作り方...
-
ガウシアンフィルタのCプログラム
-
有限要素法について教えてください
-
エクセルで回転する座標の出し方
-
最小二乗平面
-
直線上にある点の座標の求め方
-
平面の方程式
-
DirectInputでの現在のマウス座...
-
画像ファイルに座標が記録され...
-
当たり判定後に面に沿って動か...
-
3次元空間上の2つの座標から...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
マインクラフト(pc版)で座標...
-
3次元空間上の2つの座標から...
-
シーケンサー(PLC?)で制...
-
ダイアログ内コントロールの位...
-
エクセルで回転する座標の出し方
-
ワード上Shapeの位置情報を統一...
-
始点、終点の二つの座標と半径...
-
Excel VBA で自在に図形を変化...
-
C言語で制作するピラミッドアー...
-
C言語 配列で座標
-
閉図形の座標の配列が右回りか...
-
ガウシアンフィルタのCプログラム
-
任意点を中心とした回転
-
c言語でキーボードから2点の座...
-
3D→2Dの座標変換で、スクリーン...
-
求積表の計算方法
-
以下のプログラムは重心を求め...
-
複数の回転する長方形の衝突判定
-
直線上にある点の座標の求め方
おすすめ情報