問題タブ [cartesian-coordinates]

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

c - 平面上の他の N 点から最小距離にある直線上の点を見つける

私は行 L と言う行を持っていますlx + my + n = 0。ここで、いくつかの K ポイントが与えられた場合、ライン L 上の xy 平面上で、またはそうでない場合、 X と「N」ポイント間の距離の合計が最小になるよう(x1,y1),(x2, y2)...(xk,yk)に、ライン L 上のポイントを見つけたいとします。(x0,y0)そんな疑問を解決するアルゴリズムとは。最初に、各点から線 L に垂直な点の座標を見つける解決策を考えました(x1,y1),(x2, y2)...(xk,yk)。次に、垂線が線 L と交わるすべての点の平均点を見つけて、最小点を見つけました。しかし、そのようなアプローチは間違っています。問題を解決するための正しい方法を提案してください。これが私のコードです

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

javascript - javascriptは2つの座標ペアの位置を比較します

と という名前のオブジェクトとして保存されている 2 つの座標ペアがap1 {x:x, y:y}ありap2 {x:x, y:y}ます。if ステートメントを作成して、次のいずれかであるかどうかを確認しようとしています。

  • 1つは、他の方向から斜めの1つのスペースです
  • 1つは他のスペースの上または下の1つのスペースです

これまでのところ、以下は私のコードです:

しかし、これでは、別の左下または右上に 1 つのスペースである正方形は true を返しません。この機能を希望どおりにするにはどうすればよいですか? ここに画像があります:

コードの別の変更を試みましたが、どちらも機能しません。

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

c++ - std::less を使用して std::map を作成する

序章

こんにちは!自明ではない空間で動作するシミュレーションを書いています。このシステムは、中心の原点の周りに不確定な量のスペースを占有します。現在、xy ポイント クラス 'Pos' を実装して座標を結合し、コンテナー (データの有限ブロックを含む) のキーとして機能しています。原点周辺のデータがメモリ内で空間的に一貫していることを望みます。

この質問に対する私の目標は、std::less の特殊化を作成することです。(整数の) 位置がマップに挿入された場合、それらは反時計回りの巻き順に従って順序付けられます。

私はその細胞を想像します:

4 3 2
5 0 1
6 7 8 9

になるだろう

0、1、2、3、...。

質問

このようにポイントをラップできるように、std::less を書くことにどのように気を配ればよいでしょうか? ソリューションが厳密な弱い順序付けに従い、他の落とし穴を回避する方法を理解するにはどうすればよいですか?
最後に、C++11 で利用可能なツールを使用して、この関数にどのようにアプローチまたは記述するのが最善でしょうか?

(順序付けされていないマップを使用し、動的原点を囲む境界ボックスを直線的に反復することが、私の目的にとってはるかに柔軟で効率的なソリューションである場合は、その実装を自由に記述してください。ただし、それを最良の回答としてマークすることはしません) .)


さておき

私は素朴な試みを実行して学んできましたが、運よりも議論と適切な説明でこれを解決する方が自分にとって良いと思います。

これがコンテキストのスナップです。

これは私の最初の質問であり、ルールに従おうとしました。私が何か悪いことをした場合は、ご協力をお願いします。物事を整理するために最善を尽くします。ご協力ありがとうございました!

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

optimization - 角度 + バウンスに基づく「グレネード」プロジェクション

高度なオブジェクト射影式の合成に問題があります。私はすでに、次のようないくつかの基本的な物理シミュレーション式を把握しています。

  • オブジェクトの速度: x += cos(angle); y += sin(angle); *角度は、マウスの位置または tan(...ターゲット値と初期値) のいずれかによって取得できます

しかし、それは角度に基づいて直進するだけです。

  • 重力: Yvelocity = Yvelocity - gravity; if(!isHitPlatform) { Obj.y += YVelocity }

  • バウンス:// No point if we've not been sized... if (height > 0) { // Are we bouncing... if (bounce) { // Add the vDelta to the yPos // vDelta may be postive or negative, allowing // for both up and down movement... yPos += vDelta; // Add the gravity to the vDelta, this will slow down // the upward movement and speed up the downward movement... // You may wish to place a max speed to this vDelta += gDelta; // If the sprite is not on the ground... if (yPos + SPRITE_HEIGHT >= height) { // Seat the sprite on the ground yPos = height - SPRITE_HEIGHT; // If the re-bound delta is 0 or more then we've stopped // bouncing... if (rbDelta >= 0) { // Stop bouncing... bounce = false; } else { // Add the re-bound degregation delta to the re-bound delta rbDelta += rbDegDelta; // Set the vDelta... vDelta = rbDelta; } } } }

これらの 3 つの式を組み合わせて、角度によって決定されるアーチにオブジェクトを投影できる効率的で軽量なアルゴリズムを作成する方法が必要ですが、停止する前に数回跳ね続けます。各ポイント間の不連続。*注: 手榴弾を af(x) = -x^2 式で決定すると、傾斜が大きくなるにつれてジャンプの不連続性が大きくなり、式を逆にして x = +-y 値を見つける必要があります (+ または - 、境界を確認してください)。

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

3d - 球座標を直交座標に変換する

単純な 3D ピラミッドを描画するために、球座標をデカルト座標に変換しようとしています。

極角 yrad と方位角 xrad と頂上座標 x と y に応じて、ピラミッドの ​​4 つの主要な角を取得するコードを次に示します。

方位角軸は正常に動作しているように見えますが、極角を操作すると、ここに示すように、天頂または底を超えると左右が入れ替わることが問題です (よりスムーズに再生するには、上部の mp4 を選択してください): http: //gyazo.com/4a245713c232893960863cf4ea4186f6

なにが問題ですか?

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

algorithm - 回転した楕円のすべての緯度/経度の交点に対する最速のアルゴリズム?

私は、平行 (ただし回転可能) 投影を使用する 2.5D ゲームのタイル エンジンに取り組んでいます。タイルは、頂点が調整され、カメラの位置と x/y 回転に基づいて配置が設定された平らな四角形です。ヨー (z) はありません。Starling でエンジンを記述します。

カメラの可視領域は、任意に回転し、固定幅の任意の高さの楕円内に収まるグリッド領域として説明できます。

私が今やりたいのは、投影する前に、ズーム半径/ sin / cosに対して設定された各座標をテストすることなく、画面スペース内にあるタイルのリストを取得することです. これは、半径よりも大きい限り、ダーティ セットになる可能性があります。しかし、私は最も汚れが少なく、最も最適化されたソリューションを探しています。

0 投票する
0 に答える
67 参照

sql - 複数の開始点を持つ点を囲むセルの選択

次のように、各セルがテーブル mapdata の行で表される 2 次元グリッドを検索しようとしています。

x-loc と y-loc の個別のインデックスと、関心のある各属性値の個別のインデックスがあります。セルを選択するには、開始点を囲むセルの属性のいくつかを調べる必要があります。私は興味を持っている。

開始点がわかっている場合にこれを行うことができます (開始点が 10,10 で、次のようなクエリがあると仮定します;

これにより、開始点 10,10 を囲む、関心のある属性を持つセルのリストが表示されます。

ただし、これを拡張して、クエリによって複数の開始点を選択できるようにする必要があります。たとえば、潜在的な出発点を取得します

現在、JDBC を使用してこれを Java で実装しています。これは、2 番目のクエリを実行して可能な開始点を選択し、返された行ごとに最初のクエリを実行します。これは非常に遅いです。

サブクエリの結果を最初のクエリの IN 句または BETWEEN 句に強制して、潜在的な開始点のリストに対して x-loc と y.loc のみが返されるようにする方法を見つけようとしています。周囲のセルが指定された条件に一致する開始点の。

まず、私がやろうとしていることは実際に可能ですか?もしそうなら、誰かが私を正しい方向に向けてくれませんか。

よろしく

私は今、自分の意図を表現する何かを機能させることができました

しかし、率直に言って、これを実行するのにかかる時間内に、システィーナ礼拝堂を塗り直すことができました. もっと良い方法があるはずです。