問題タブ [atan2]
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.
javascript - Math.atan2 を使用した角度とその逆数
これは、ベクトル角度とその逆数を見つけるために使用した元のコードです。これらは、コードの後半でいくつかの異なる計算に使用されます。2 番目の Math.atan2 関数を削除し、コードを次のように最適化するために置き換えたいと思いました。
両方のバージョンの obsAngle の結果を出力すると、obsAngle は同じ (または十分に近い) ですが、プログラムの動作は同じではありません。どちらの場合も、obsAngle は -pi と pi の間にあります。
問題を引き起こす可能性のあるこれら 2 つのバージョンの違いは何ですか?
python - 2 つの回転オブジェクト間の角距離
これは些細な質問かもしれませんが、満足のいく解決策が見つかりません。
x、y 座標が指定されている 2 つの回転オブジェクト間の距離 (角度、放射) を計算したいと思います。(xc=0.0, yc=0.0, r=0.0)
オブジェクトが円上を回転すると仮定しましょう。関数 'atan2' を使用して、関連する角度をポイント 1 と 2 にそれぞれ取得できa1
ますa2
。
atan2
結果を滑らかな関数に変換する小さな関数をコーディングしました0: 2pi
。
と の場合a1 = 0.3
、正常a2 = 0.2
にa1 - a2
動作します。ただし、最初のオブジェクトが最初のラップを完了し、2 番目のオブジェクトがまだ遅れている場合にどのように対応すればよいでしょうか? たとえば、a1=0.1
とa2=6.2
.
編集
私は例を考え出しました:
これが複雑すぎないかどうか疑問に思っていたのですが、コードをそれほど肥大化させずにこれを行うための基本的なトリガー トリックを見逃していました。
慣例により、a1
が進んでいる場合、角度は正、それ以外の場合は負になります これは、ある種の速度というよりも推定の問題であり、ラッピングはありません
javascript - ライン フォーム atan2 と距離のポイントを取得します。
2 点あり,この 2 点が結ばれた線の点を取得したいです。これらの 2 点のうちの 1 点からの距離を知っています。
ちょうどこのような
http://jsfiddle.net/icai/2pmk3/
しかし、私はすべて黒い線上に緑の点を置きたい.
java - atan2 を使用して box2d で衝突の角度を取得する際の問題
だから私はbox2d
で物理と衝突を処理するために使用していlibGDX
ます。特定の角度で特定の効果を適用できるように、衝突の角度を把握しようとしています。
いくつかの調査を行ったところ、正しい角度を取得するために必要な数学関数は atan2 であることがわかりましたが、興味深い結果が返されています。第 2 象限にあるはずの接触については、90 未満の角度を取得しています。第 3 および第 4 象限にある接触については、正の数の接触角を取得しています。ここで私が間違っている可能性があることについて、誰かが何か洞察を持っていますか?
はい、世界多様体のインデックスには座標情報が含まれています。なぜatan2
これらの値を返すのか理解できないようです。
編集だから私は、問題は atan2 ではなく、WorldManifold によって返される連絡先情報にあると考えています。だから私の質問は、連絡先情報がこのようにずれているような問題は何でしょうか?
matlab - 角度の直感的なグラフをプロットする
オブジェクトの見出しをプロットしようとしています。ポイントの 4 つのベクトルがあります - それらを呼びましょう
mdex
mdey
(別名x1,y1
)、thpx
thpy
(別名x2,y2
)。
y
の変化とx
(dy
と) の変化を見つけて、dx
それを関数に入力していatan2d
ます。次に、結果を調べてグラフにプロットします。
グラフの目盛りは -180 から 180 までです。私の問題は、線が -180 度または 180 度を通過するときに発生します。次に、グラフの反対側に「ポップ」します (つまり、181 が実際には -179 になります)。
これは、実際には角度が大きく変化していないのに、角度が大きく変化しているように見えるため、問題があります。さらに、これにより、ポイント間の変化量に基づいた角速度の計算が台無しになります。もともと、0 未満のすべての値に 180 を追加して、グラフを 0 ~ 360 スケールに変換しようとしましたが、うまくいきませんでした。
問題をよりよく理解できるように、グラフを次に示します (グラフは、0-360 変換を試みた後のものです)。
私の質問
増加し続ける値を与える角度を計算するために使用できる別の関数があるかどうか、データを変更してデータを適切にプロットする方法、またはグラフを変更して直感的に見えるようにする方法があるかどうか疑問に思っています?
前もって感謝します!
matlab - すべてを同じ方向に展開する
を使用するときにデータの「ジャンプ」を回避する方法について、昨日同様の質問をしatan2d
ました。この関数は、次のように -180 から 180 のスケールで動作します。
数値が 180 を超えると、直接 -180 になり、折れ線グラフが非常に見苦しく、直感的に読めなくなります。これを修正するために使用することが提案されました。unwrap
しかし、今日、次のようなグラフに遭遇しました。
.
ジャンプは固定されていますが、その場所で線が上に移動します。これらの 3 つの線をプロットすると、本来あるべきように非常に近くなっています (atan2d
グラフのように、-180 と 180 は同じ場所です)。角度が実際にどのようになっているかをグラフに反映させたい - 非常に近い。
David K のリクエストに応じて、線の 1 つの角度を計算するために使用しているコードを次に示します。rec,ret
は座標の順序付けられたセットで、recx
とrecy
はそれぞれそれらの x 値と y 値です。次に、theta_r の結果を通常の Figure にプロットします。
私の質問
最も近い方向にアンラップするのではなく、アンラップ関数を一方向にのみアンラップするようにするにはどうすればよいですか (円の時計回りまたは反時計回りに対してすべての角度を作成します)。unwrap
または、グラフの見栄えを良くする以外に何かを使用する必要がありますか?
ios - UIView の回転 (再度)
uiview を再び回転させると、いくつかの問題が発生します。今回は、通常の速度で回転している別の uiview の速度の 1/12 の速度で uiview を回転させようとしています。ただし、このタスクを達成しようとすると、移動しようとしている uiview が次のようにゆっくりと移動します。
第1回更新 https://www.youtube.com/watch?v=wj3nRJo5CMM&feature=youtu.be
2回目の更新 https://www.youtube.com/watch?v=YLRkUzXSDtQ&feature=youtu.be
これが私のコードです:
opengl - OpenGL GLSL の atan(y/x) と atan2(y,x) との違いは何ですか?
glsl の関数 atan の結果を理解するのに問題があります。ドキュメントも不足しています。
たとえば、頂点を球座標に変換し、球座標の半径を変換してからデカルト座標に戻す必要があります。0 を中心とした半径 2 の icosphere の頂点に次の変換を使用しています。
atan(y/x)
しかし、またはを使用すると結果が異なりますatan2(y,x)
。1E-18
極を避けるために小さな定数を入れました。
なぜこの振る舞いをするのですか?と によって返される値の範囲が異なるatan(y/x)
と思います。特に、この実装では、範囲はから まででatan2(y,x)
あると思います。theta
[0-Pi]
Phi
[0,2Pi]
私は正しいですか?球面座標変換のより数値的に正確な実装はありますか?
mysql - T-SQL で atan2 関数を実行するにはどうすればよいですか?
MS SQL Server で ATAN2 関数を実行する必要があります。どうすればいいですか?
T-SQL には、cos、sin、radians などの通常の数学関数がすべて含まれているように見えますが、ATAN2 は含まれていません。これの機能は何ですか?
MySQLでこれを行う方法を知っていると、非常に役立ちますか?