問題タブ [rotational-matrices]

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 投票する
1 に答える
207 参照

javascript - Three.js メッシュのスケールを変更すると回転がおかしくなるのはなぜですか?

世界の x 軸と y 軸を中心に球を回転させたいと思いました。私はこのコードでそれを成功させました:

ballMeshただし、(1,1,1) から何らかの方法でをスケーリングすると、説明が難しい方法で回転がうまくいきません。ここに jsfiddle の例を示します。

http://jsfiddle.net/pxTTv/26/ (矢印キーで回転)

スケール (jsfiddle コードに示されている) を (1,1,1) に戻すと、期待どおりに動作します。

何が原因で、どうすれば修正できますか?

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

opengl-es-2.0 - センサーの向き->GLRotationが正しく機能しない

GLESカメラにAndroidの向きセンサーデータを使用したいのですが、回転行列を使用します。私はここで非常に良い例を見つけました:

onSensorChangedセンサーデータをOpenGLと組み合わせて使用​​する方法

ただし、これはGL1.0でのみ機能し、GLES2.0で機能する必要があります。私自身のシェーダーを使用すると、すべてが機能し、カメラを手動で移動することは問題ありません。しかし、例のように回転行列を使用した瞬間、実際には機能しません。

次のように回転行列を生成します。

私のアプリケーションはLANDSCAPeで実行されているので、後でそのメソッドを使用します(サンプルコードのように):

それは彼のコードでは私の電話ではうまくいきましたが、私のものではうまくいきませんでした。私の画面は次のようになります。

ここに画像の説明を入力してください

回転行列は右に90°回転しているようです(アクティビティのために横向きに切り替えるのを忘れたかのように)。

remap()この方法を間違った方法で使用することを考えていましたが、この例では、カメラの動きが機能するようになりました。左に回転すると、画面も左に回転しますが、すべてが回転しているため、「上」に回転します(下ではなく右にある地面と比較して)。地面ではなく壁を作ったように見えますが、私の座標は頂点に合っていると確信しています。

の描画方法を調べましたが、GLSurfaceここで何が間違っていたのかわかりません。

私が言ったように、カメラを手動で動かすと、すべてが完璧に機能します。では、私が得た回転行列の何が問題になっていますか?

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

math - 連続する座標回転での浮動小数点エラー

曲線の反射セグメント間の距離に関するいくつかの操作を実行する必要があるコード (Python) があります。

考え方とコードをより明確にするために、実際の計算を実行する前に (行列乗算を使用して) 2 つのローテーションを適用します。まったく回転せずに計算を実行することは可能だと思いますが、コードと考え方はもっとぎこちなくなります。

私が尋ねなければならないのは、浮動小数点の丸め誤差のために精度が失われるという点で、3 つのローテーションはペナルティが大きすぎるということですか? この誤差の大きさを推定する方法はありますか?

読んでくれてありがとう

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

computer-vision - 2 番目のカメラに対する 1 つのカメラの外部パラメータを計算する方法は?

いくつかの世界座標系に関して 2 台のカメラを調整しました。ワールドフレームに対するそれぞれの回転行列と並進ベクトルを知っています。これらの行列から、あるカメラの回転行列と平行移動ベクトルを他のカメラに対してどのように計算するのですか??

ヘルプや提案をお願いします。ありがとう!

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

iphone - y軸に沿った方向の変化率(角度測定)を計算しますか?

iPhoneのy軸方向の変化率を計算したい。1.最初に参照をy軸として定義する必要があります。2。次に、定義された参照から方向の変化率(角度測定)を測定します。

CMAttitudeは、これを実装するための信頼できる角度測定を提供しますか?または、回転行列を使用したり、ジャイロスコープのデータを統合したりできますか(この方法を実装しましたが、ジャイロスコープのドリフトのために機能しません)。それで、これを成し遂げるための信頼できる方法を私に提案してください?

前もって感謝します!

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

iphone - iPhoneからヨー、ピッチ、ロールを計算するためにクォータニオンを使用しますか?

クォータニオンを使用して、直接ヨー、ピッチ、ロールの読み取り値を読み取るのではなく、iPhone からより正確で安定したヨー、ピッチ、ロールの読み取り値を取得できることに言及している多くの質問や記事を見てきました。しかし同時に、iPhone プラットフォームにクォータニオンを実装する適切な方法は見たことがありません。初心者として, 知るのは本当に難しいです. これらのクォータニオンがどのように機能し、それらをコードに実装するのですか? (Apple の xcode プラットフォームでどのように動作するか分からないため、コードを提供できなくて申し訳ありません)

それで、ほとんどのユーザーが恩恵を受けるという私の質問に親切に答えてください!

前もって感謝します!

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

android - Android デバイス座標系を「ユーザー」座標系に変換する

私の質問はAndroid のセンサー座標系の変更に似ています

デバイスの向きに関係なく、ユーザーの動きを互いに比較できるようにしたい。そのため、ユーザーが携帯電話を縦向きに差し出して腕を曲げた場合、加速度の読み取り値は、携帯電話を横向きに差し出して腕を同じ方向に曲げた場合と同じになります。

これを私は「ユーザー」座標系と呼んでいます。ユーザーが向いている風向きは関係ないため、ワールド座標系とは異なります。ユーザーが自分のデバイスをどのように保持するかは問題ではないため、デバイス座標とは異なります。

私のアプリケーションでは、ベース/静止方向マトリックスを決定できるように、各移動の前にキャリブレーションステップを実行してもかまいません。おそらく、最初の楽章の行列に 2 番目の楽章の逆数を掛けるだけの問題でしょうか (そして、新しい値を掛けますか?)

言及された質問の答えはほぼ正しいようですが、より具体的な説明が必要です。実際のコード サンプルが理想的です。

注意 remapCoordinateSystem は十分ではなく、直角のみを受け入れます。デバイスは手首に固定されているため、腕と常に直角であるとは限らないため、わずかなずれで作業できる必要があります。

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

ios - How to flip a CALayer around its Y-axis?

I use this code inside a subclass of CALayer which instances are sublayers of the root CALayer.

When the selected property to set to TRUE, here is what happens: the rotation is done until the angle is equal to M_PI/2, then the layer disappears because it is orthogonal. The end of the animation is wrong: the edge that appeared to grow in the first part of the animation (for example on the left side), ends the animation on the left side instead of the right side. However the content is flipped.

I think this has something to do with the interpolation between the two rotation matrices but I can't understand exactly what is happening.

Details: The animation looks like it is doing this:

  1. increment rotation around Y axis by +Pi/2
  2. content flipping
  3. increment rotation around Y axis by -Pi/2, as if it bounced of the (yz)plane

The flipped content is what I am trying to achieve.

Here are the frames of the animation I get. As you can see, the small side of the trapezoid is always of the left; it should be on the right on at the end of the animation (top right frame). A layer rotating around the Y-axis

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

c - 回転行列はオブジェクトを縮小しますか?

私の数学は間違っていますか?ユーザーは度単位で角度を入力できるはずであり、それぞれ行列を回転させます。代わりに、オブジェクトを縮小して反転します...呼び出します

(modelviewは単位行列です)は次のようになります。

通常: http: //i.imgur.com/eX7Td.png

回転:http ://i.imgur.com/YnMEn.png

これがglmxRotateです:

また、変換行列が最後の4列の変換で定義されている場合、結果は常に0になるため、単位行列を変換するにはどうすればよいでしょうか。

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

orientation - 回転行列からヨー、ピッチロールを計算する方法は?

ジャイロスコープのスマートフォン出力から Android のヨー、ロール、ピッチを計算する必要があり、次のコードを書きました。

if(event.sensor.getType()==Sensor.TYPE_GYROSCOPE){

こんにちは、ジャイロスコープからの出力を使用してヨーロール、ピッチを計算する必要があり、次のコードを書きました。

どこに問題があるのか​​ わかりませんが、このコードを使用して取得したヨー、ロール、ピッチの値は間違っています。これは、電話が同じ向きにある場合でも、合計で異なる値を取得したためです。コードの最後の 3 行で、回転行列からそれらを計算します。また、式に書かれているヨー、ピッチロールの値はラジアンですか?