2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

yuriacatsAdvent Calendar 2022

Day 20

緯度経度から比較的小さい範囲の店をサーチするための計算式

Posted at

MapAPIから緯度・経度情報をとってくるのは簡単です。
一方でMAPAPI単体ではN km内にOOな業態の店があるかを調べるのは少し難しく思えます。 今回は十分に小さい(大体10km以内)であれば緯度経度情報だけで簡単な式で範囲内検索を行えることを紹介していこうと思います。

緯度経度についてですがkm換算した場合には5km程度では誤差の範囲に収まると考えています。
wikipediaによると地球の扁平率は1/300であり、これをもとに地球を真円(球)と仮定したときに出る実際の位置との誤差は1kmあたり3m程度であり5km程度の範囲であれば十分に無視できる誤差であるといえるだろう。そのため、今回は地球のゆがみについて考慮せずに議論を行うことができる。

  1. 調べたいもののざっくりとした緯度経度情報を取得する。
    例えば、Nkm県内には何市と何市が含まれるのでそれぞれの市内の〇〇業態の住所のリストからGoogleMapAPI等で緯度経度情報を調べCSVなどにまとめる。

  2. 1kmあたりに増える緯度経度は(赤道半径をもとに計算すると)約0.010966(°)とわかる。ので基準の場所の緯度経度を(X,Y)対象の緯度経度を(x,y)とすると以下の式を満たしている場合に条件が満たされていることがわかる。

    (x-X)^2+(y-Y)^2 =< 0.0030063289
    
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?