問題タブ [quaternions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3685 参照

3d - OGRE でオブジェクトの方向を取得する

私は体と頭を持つキャラクターを持っています。頭は骨として体とつながっていて、骨の名前はもう知っている。今、私は頭の方向を取得したいですか?それは可能ですか?私はこれを試しましたが、うまくいかないようです:

単位xベクトル以外で掛けるべきだと思ったので、全ての組み合わせを試してみました。この場合(すなわちスミスエンティティ)、 を使用して正解を得た-Vector3::UNIT_Xので、これが正解だと思いました。他のエンティティで試しましたが、正しい答えが得られませんでした。

何か案が?

0 投票する
4 に答える
3033 参照

distance - クォータニオンを使用した最近傍

クォータニオン値が与えられた場合、一連のクォータニオンで最も近いものを見つけたいと思います。これを行うには、2 つの四元数間の「距離」を比較する方法が明らかに必要です。このような比較にはどのような距離表現が必要で、どのように計算されますか?

ありがとう、

ジョシュ

0 投票する
2 に答える
4084 参照

math - クォータニオンにはまだジンバルロックがあります

オイラー角の代わりに、立方体の回転を3Dで表現および処理するために、クォータニオンに移動しました。ジンバルロックは解決しますが、まだこの問題が発生しています。

私のコードは次のとおりです。

rotate関数はhttp://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation#Pseudo-code_for_rotating_using_a_quaternion_in_3D_space(JavaScriptに変換)から取得れます。

x y z問題は、ジンバルロックの主な問題である軸の順序()をまだ使用しているためだと思います。

ジンバルロックが解決されるように、クォータニオンローテーションをどのように実装しますか?

前もって感謝します。

0 投票する
1 に答える
223 参照

rotation - 1つの軸のオイラー回転がゼロになるようにクォータニオンを変更するにはどうすればよいですか?

2つのノードがあり、そのうちの1つだけの回転を知っています。

ノード1の回転をノード2に適用したいのですが、1つの軸がゼロになっています(オイラーの用語で)。

どのように?

0 投票する
3 に答える
5743 参照

latitude-longitude - 経度/緯度から四元数へ

経度と緯度があり、これを四元数に変換したいのですが、どうすればこれができるのでしょうか? これを使用したいのは、球体に地球を投影するアプリがあり、ある場所から別の場所に回転したいからです。

一番!

0 投票する
1 に答える
6640 参照

iphone - Roll、pitch、Yaw、Quaternion、または Rotation Matrix を使用して、CMAttitude から高度と方位角を計算します。

問題が発生しました。iPhoneのCMAttitude情報をAltitude(0~90度)とAzimuth(0~360度)に変換したい。私はグーグルで検索して、それについて議論しているいくつかのスレッドを見つけましたが、肯定的な答えが得られるスレッドはなく、クォータニオンとオイラー角について議論している記事のほとんどは、私の脳に詰め込むには数学が多すぎます!

この作業を簡単にするオープンソースの資料はありますか? または、誰かがこの変換を実行するコードを書いていますか?

編集:まず、抽象的で申し訳ありません!

方位角は、デバイスが向いている地球の表面上の方向です。北 = 0 度、北東 = 45 度、東 = 90 度、南 = 180 度などです。0 度から 360 度までの範囲:

ここに画像の説明を入力

高度は、地球の平面から空のオブジェクトまでの角度です。 ここに画像の説明を入力

ありがとう、

ラージ

0 投票する
6 に答える
58014 参照

math - クォータニオンからヨーを抽出する

回転クォータニオンがあり、アップ軸 (ヨー) を中心とした回転角度を抽出したいと考えています。私は XNA を使用していますが、私が知る限り、このための組み込み関数はありません。これを行う最善の方法は何ですか?

助けてくれてありがとう、ヴェナトゥ

0 投票する
7 に答える
2087 参照

java - クォータニオン比較?

クォータニオン比較は可能ですか? Comparableクォータニオンの Java クラスを作成しており、この機能を使用するためのインターフェイスを実装したいと考えていますCollections.sort(List<Quaternion>)。私は数学の専門家ではありません。クォータニオンについて読んだことを本当に理解していません。compareToでは、 Quaternions のメソッドをオーバーライドする方法を教えてもらえますか?

私のクラス宣言:

0 投票する
2 に答える
1592 参照

c++ - SLERP&スケルタルアニメーション補間ヘルプ!

プログラムのスケルタルアニメーションは正常に機能していましたが、フレーム間の各ボーンに格納されている4x4マトリックス間を線形に補間していました。

もちろん、マトリックスに大量の回転がない限り、これは問題ありません。モデルは、キーフレーム間でわずかに押しつぶされます。

そこで、 4x4マトリックスの回転部分のみをクォータニオンに変換し、SLERPを実行し、マトリックスの回転部分のみをクォータニオンのマトリックスバージョンに置き換える別の補間アルゴリズムを作成しました。マトリックスの変換部分については、線形に補間しました。

結果を見ると、これは明らかに間違っています!!! :'(

(私とは異なり)これらすべてをよく理解している場合は、おそらく「いいえ!それはあなたのやり方ではありません!」と考えているでしょう。-もしそうなら、私が間違っていることを教えてください!!

四元数と3x3行列の間で相互に変換する方法を説明するリソースしか見つからないため、行列の変換部分をどうするかわかりません。

どんな助けでも大歓迎です!!!!

0 投票する
1 に答える
587 参照

objective-c - まだクォータニオンを使用したジンバルロックがあるようです

参照クォータニオンを使用してオブジェクトの位置を維持します ...

次のコードを使用して、2D xy タッチ スワイプから参照クォータニオンを回転させます ...

オブジェクトを回転するには、オブジェクトの各ベクトル ポイントに次のコードを適用します ...

次の方法を使用するもの...

私の問題は、オブジェクトが約 180 度のときに x 方向に回転すると、y 方向に移動できないことです。逆に、y方向に回転させた場合、約180度回転すると、x方向に移動できなくなります。何が間違っているのかわからない!


ポストスクリプト...

コメンテーターへの回答として、現在の Quaternion クラス全体は次のとおりです。