特定の点から約50km離れた場所の長さと長さを見つける必要があります。どうすればいいのですか?場所から約50km離れた場所の長さと長さを見つける必要があります
答えて
これは、それがhere可能な方程式とサンプルコードをベースにしています、あなたは非常に近い取得します:
ひどい変数名のため申し訳ありませんwindow.pointsAround = function(centerLat, centerLng, radius) {
var result = [];
//do annoying trig maths to work out the delta in latitude between our start and end points
var targetD = radius; //km
var R = 6371; //km
var c = (targetD/R)/2;
var sqrtA = Math.sin(c);
var a = sqrtA * sqrtA;
var sinHalfDLat = Math.sqrt(a);
var dLat = Math.asin(sinHalfDLat) * 2;
var dLatDegrees = ((dLat/(2 * Math.PI)) * 360);
var minLat = centerLat - dLatDegrees; //furthest valid latitude above the origin
var maxLat = centerLat + dLatDegrees; //furthest valid latitude below the origin
//alert("minLat=" + minLat + ", maxLat=" + maxLat + ", dLat=" + dLat + ", dLatDegrees=" + dLatDegrees);
//topmost and bottommost points in the circle
result.push({lat: minLat, lng: centerLng});
result.push({lat: maxLat, lng: centerLng});
//step from minLat to maxLat, interpolating coordinates that lie upon the circle
var step = (maxLat - minLat)/180.0;
for (var count = 0; count < 179; count++) {
minLat += step;
dLat = (centerLat - minLat) * Math.PI/180;
//more annoying trig to work out the delta in longitude for our interpolated coordinate
var dLon = 2 * Math.asin(Math.sqrt((a - (Math.sin(dLat/2) * Math.sin(dLat/2)))/(Math.cos(minLat) * Math.cos(centerLat))));
var dLonDegrees = ((dLon/(2 * Math.PI)) * 360);
var newLng = centerLng + dLonDegrees;
var deltaLng = newLng - centerLng;
result.push({lat: minLat, lng: newLng});
result.push({lat: minLat, lng: centerLng - deltaLng});
}
return result;
};
、私は彼らがサンプル実装に基づいています言ったように、同じ名前を使用します。ここで
は実施例である:http://jsfiddle.net/HmchC/8/
プロットは、より多くの私が望むよりも、楕円が、まあまあです。それは私がそれを得ることができるほど近いです、今のところ。
更新
私はそれだけで度からラジアンに変換を欠けていた、楕円形のプロットで問題を修正しました。数学者は、度だけが理にかなっていることをいつ学びますか?ここではどのような場合には
、作業例:http://www.movable-type.co.uk/scripts/latlong: http://jsfiddle.net/HmchC/11/hmmm、ここであなたの後ろにあるものは特に明確ではありません。
既知の点(既知の緯度および経度)を持ち、既知の点を中心とする50kmの円周上にある点の緯度および経度を超えている場合は、
私はそれをどうにか読んでいます....あなたは私が仮定するいくつかの数学でこれを行うことができます。キロメートルのような一定の距離は、あなたが計算し定義できる緯度/経度の一定の変化と同じです。この変化のどれくらいが緯度に適用されるか、どのくらい長く適用されるかを判断することが難しい場合は、デバイスが1つをサポートしている場合、コンパスベアリングを使用することができます。
編集: Arothのコメントのリンクがあなたを助けてくれるはずです
あなたはハーベスン公式または空間充填曲線または空間インデックスを探したいと思います。ハーベイジン式は2つの円の衝突を計算し、空間充填曲線はマップをタイルに再帰的に細分する。クアッドツリーのように見え、2dの複雑さが1dの複雑さになります。近くのポイントを検索するためのユニークなキーまたはクォドラントを探したいとします。あなたはNickのヒルベルト曲線空間インデックスquadtreeブログを調べたいと思う。
- 1. Chromeでファイルが要求された場所を見つける
- 2. 現在の場所からオートコンプリートの結果が得られた場所の距離を見つけるIOS
- 3. 現在の場所と指定された場所の間の道路の距離を見つける
- 4. インデックスと長さは文字列内の場所を参照する必要がありますか?
- 5. C#インデックスと長さは、文字列内の場所を参照する必要があります。パラメータ名:length
- 6. インデックスと長さは、シーケンス内の場所を参照する必要があります
- 7. インデックスと長さは、文字列内の場所を参照する必要があります。
- 8. ピンを2か所に落とす必要があります...現在の場所とイベントの場所
- 9. Androidスタジオでメソッドがオーバーライドされた場所を見つける
- 10. E195012:リポジトリの場所を見つけることができませんが、場所があります。
- 11. 購入した製品ごとに場所の数を見つける必要がありますか?
- 12. 3次元オブジェクトの鼻から離れた場所を見つける
- 13. フォントが保存されている場所を見つける
- 14. 特定の場所の最も近い場所からドライバーを見つける
- 15. XCodeのレポートを見つける場所コマンドラインから開始されたUITests
- 16. Pythonクラスがあると、定義されている場所でコード内の場所を調べて見つける方法はありますか?
- 17. locahostを見つける場所:ポートの場所
- 18. 場所を見つける私の場所から180度(南)に1キロメートル
- 19. GWT:CellでEventBusを使用する場合の長所と短所
- 20. 分離ログファイルの場所を見つける方法は?
- 21. 場所間の距離を見つける方法
- 22. Apple Macの場合、ホームディレクトリまたはアプリケーションディレクトリにAnacondaをインストールする必要がありますか?長所と短所は何ですか?
- 23. 指定された緯度経度の場所から特定の距離内のすべての緯度経度の場所を見つけるアルゴリズム
- 24. グレーアウトされた命令で気の利いたテキストボックスを見つける場所はありますか?
- 25. Flash actionscript 3ビデオが渡された場所から後で再生するために渡された場所を見つける
- 26. 長さがNULLの場合、条件を渡す必要があります
- 27. JavaFXの場所が必要です。ファイルが見つかりません。
- 28. 場所からの最小総距離のポイントを見つけるアルゴリズム
- 29. 変数が設定されている場所を見つけるResharperコマンドがありますか?
- 30. 依存するオブジェクトが呼び出された場所を見つける
を見上げる「大圏距離」 – Randy
はこれが開始するには良い場所でしょう.html – aroth
私は前にこの問題を抱えていました。解決策はこちら http://stackoverflow.com/questions/5632406/how-to-find-latitude-and-longitude – Rasel