次の入力があるとします。
- 1..n 地点の既知の経度/緯度
- 位置 1..n と別の位置 "m" の間の既知の距離
場所「m」の経度/緯度を計算するにはどうすればよいですか?
次の入力があるとします。
場所「m」の経度/緯度を計算するにはどうすればよいですか?
これは、緯度と経度の三角測量の基本的な質問のように思えます。一般的なアプローチは、Yahoo! ここでトピックに回答します。多くの言語でこれを行うライブラリが存在する可能性があります。「緯度経度三角測量」と選択した言語をグーグルで検索すると、使用する既存のコードが明らかになる可能性があります。「ジオコーディング」は、同様のライブラリに含まれるもう 1 つの一般的なタスクであるため、別の便利なキーワードになる可能性があります。
編集:他の人が言及したように、「三辺測量」が最良の用語のようです。ただし、データと要件によっては、要件を満たすより単純な近似ソリューションがあります。
ヤフー!Answers の投稿は、便宜上以下に引用されています。
「距離が長い場合は、球面ジオメトリ。比較的小さい場合は、地球を平面として扱い、座標を xy 座標として扱います。距離を座標の度数で処理するには、余弦関数を使用して 1 から変換する必要があります。 (緯度は地球全体で約 69 マイルですが、経度は赤道での同じ値から極での 0 まで変化します。)
3 つの円の中心点とそれらの円の半径があります。それらは一点で交差するはずなので、それらをペアで処理してそれぞれの交点を見つけ、一致しないものを捨てることができます http://mathworld.wolfram.com/Circle-CircleIntersection.html ." ( mike1942f )
三辺測量はあなたが望むものです。これには基準点が 3 つしか必要ありませんが、本当に賢くしたい場合は、残りを使用して精度を上げることができます。
特に地球は完全な球体ではないため、デカルト座標ではなく経度/緯度を使用するのが最も難しい部分です。
これは三辺測量の問題です。あなたの場合、複数の基準点があるため、指定された距離と m の最適位置に対応する距離との間の二乗誤差の合計を最小限に抑えることができます。