Baidu Map で、座標点に基づいてデータベース内の特定の距離内にある N 個の座標点を検索するにはどうすればよいですか?

WBOY
リリース: 2016-06-13 13:43:51
オリジナル
1048 人が閲覧しました

Baidu Map で、座標点に基づいてデータベース内の特定の距離内にある N 個の座標点を検索する方法
環境: php+mysql

既存のデータベースにはある程度の経度と緯度 (100W 以上) が保存されています座標点、

座標点に基づいて、近隣 1 キロ以内のすべての一致情報を取得するにはどうすればよいですか?

データベース内の経度フィールド lng と緯度フィールド lat。 。

百度地図の使用。

オンラインでお待ちしています。ありがとうございます。


-----解決策---------
座標列の並べ替え
ユークリッド距離に基づいて条件を満たすレコードをフィルタリングする
------解決策------------------


中心点の経度と緯度がわかったので、寸法に基づいて N キロメートルを満たす経度と緯度のおおよその範囲を計算できます。 。この検索の結果は 2N*2N の正方形になります。

たとえば、北緯 34.5 度の場合、1 キロメートルにわたって北緯 35 度以上または 34 度以上の点を見つける必要はありません。詳細については、最初にプログラムで変換できます

しかし、フィルタリングする部分がまだあります。円の半径 N の外側の部分です。

これが可能であれば、lng lat Joint Index だけを実行してください。 、数百万規模、非常に高速

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート