• ベストアンサー

二地点の直線距離

教えてください。 ある地点とある地点の緯度と経度がそれぞれわかっています。 このとき、この二地点の直線距離を求めたいのですが、どうしたらいいのかわかりません。 緯度と経度をそれぞれ引き算すれば縦と横の距離は出るので、直角三角形になるため残りの一辺の長さを求めれば直線距離にはなると思うのですが、その計算方法もわからなければ、そこで出てきた数字は km なのかまったく別の単位なのか・・緯度・経度から km単位にするにはどうしたらいいのでしょう・・ 教えていただければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • tnt
  • ベストアンサー率40% (1358/3355)
回答No.6

東京付近では 東経は1分=1.52km 北緯は1分=1.87km に、なります。 60分=1度であることに注意して 東西方向、南北方向の経度差、緯度差を算出してから この数値で距離に変換して、 最後に3平方の定理 (経度方向距離の2乗+緯度方向距離の2乗  =最短距離の2乗) で、距離を算出して下さい。

seltzer
質問者

お礼

ありがとうございます! まさにこの方法でした。簡単に割り出せるんですね。よかったです。ありがとうございました!

その他の回答 (5)

回答No.5

利用範囲を東京都23区内に限るとして、三角関数を使わないで三平方の定理で近似計算するのでしたら、 二地点間の緯度差を秒単位にしたものをdB、 二地点間の経度差を秒単位にしたものをdLとすると 二地点間の距離D[m]は D = √( (dB * 30.82)^2 + (dL * 25.15)^2 ) で計算できます。 先に述べた利用範囲内での誤差は最大でも50mは超えないと思います。チェックが不十分なので「思います」という表現になっています。 以前の東京測地系(ベッセル楕円体)での経緯度でも、新測量法での採用楕円体(GRS80)の経緯度どちらでも計算できますが、 二地点の経緯度の測地系は同じである必要がありますので注意してください。 もし測地系が異なる場合は、どちらかをまず相手側の測地系座標に変換する必要があります。 例えば東京都23区の各区のホームページを見てみると区役所の位置の測地系が示されていなく、 また区によって測地系がばらばらですのでこのような計算のときは注意が必要です。 あと参考になるページとして、 @nifty「山の展望と地図のフォーラム」(FYAMAP)の紹介用ホームページ http://forum.nifty.com/fyamap/ 「地図の広場」→「距離と方位に関する議論」と辿って下さい。 いくつかの計算方法について紹介や説明などが載っています。 ここに出てくる ヒュベニイの式 はK.Hubenyの本来の計算式ではなくその簡略版ですが、 精度の点では先の三平方の定理を使った式とはもちろん比べ物にならないですし、球面三角法を使った式よりも優れています。ただ式に出てくる定数は東京測地系に合わせたものです。 【参考文献】 「現代測量学 第4巻 測地測量(1)」(社)日本測量協会

参考URL:
http://forum.nifty.com/fyamap/
  • yo-kan-62
  • ベストアンサー率18% (18/98)
回答No.4

オハヨウ御座います。 2点間の座標から、直線距離を求める方法ですね? 3平方の定理を使用します。 a(x1、y1)-b(x2、y2)の場合。  a-bの矩形を求めます。:(x1、y1)(x1、y2)(x2、y2)(x2、y1)の座標で囲まれます。  矩形の対角線長を求めます。√(x2-x1)^2+(y2-y1)^2で算出します。 この方法は、平面上の算出方法なので、実際の直線距離と違いますが、この方法を知りたっかたのでは無いのですか?

回答No.3

アークEFI航空情報センター http://www.arknext.com/ のページから「パイロットユーティリティー」→「真針路・距離計算プログラム」と辿ります。 地球の形状の近似モデルを球体の他に各種楕円体から選べます。またユーザー定義のパラメーターを設定しての計算も出来ます。 JavaScriptなのでファイルにセーブすればオフラインでも利用できます。 地球上の二地点の最短距離の経路は数学上の直線では無いのはご存知だと思います。 地球を球体と近似した場合その最短経路を「大圏コース」と呼びその距離を「大圏距離」と呼びます。 また地球を回転楕円体で近似した場合その最短経路を「測地線」と呼びます。 実際の地球は回転楕円体に近い形状をしていますから、二地点間の距離が大きい場合は回転楕円体としての計算式を使わないと誤差が大きくなります。 仮に地球を球形として計算した場合数十kmの誤差が生じることがあります。 しかしそれは用途によっては全く問題無いレベルでしょう。 ですから用途によって地球の形状の選択をすればいいのです。

参考URL:
http://www.arknext.com/
seltzer
質問者

補足

説明ありがとうございます。 言葉が足りずに申し訳ないです。実は、求めたい距離は非常に近いもので、都内の何区から何区といったものなのです。 なので、平面状で考えてもまったく問題ない誤差だと思います。 もし、引き続き情報がございましたら教えてください。 でも、球面上での距離の求め方は、非常に参考になりました。ありがとうございます。

  • kony0
  • ベストアンサー率36% (175/474)
回答No.2

直線距離とは、球面上の最短距離でしょうか? そうであるならば、球の中心といま考えている2点を含む平面で切断した円弧が最短距離となります。(大円コース) この円弧の中心角を求めてしまえば終わりですが、それは内積から求めることができます。 例として、半径2の球の「東経135度、北緯0度」A(-√2,√2,0)と「東経0度、北緯45度」B(√2,0,√2)を考えると、 OA・OB(内積)=-2よりcos∠AOB=(OA・OB)/|OA||OB|=120度 よって、弧AOB=2π×120/360=(2/3)π

seltzer
質問者

補足

言葉が足りずにごめんなさい、本当に数学的な計算ではなくて、どちらかというと実用的というか、実際に地図の上で緯度と経度が分かったときの直線距離はおよそ何kmでしょうというのを知りたいのです。 しかも、その距離も東京都の何区から何区といった非常に小さな距離のことです。せっかくの回答なのに、失礼いたしました。 引き続き、どうぞよろしくお願いいたします。

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

この計算サービスは使えそうです。

参考URL:
http://www2.neweb.ne.jp/wd/nobuaki/New_Homepage/okinawa703.htm
seltzer
質問者

お礼

ありがとうございます。こんなに複雑な計算が必要なんですね。 参考にさせていただきます!

関連するQ&A

  • 2地点の緯度経度と2地点からの角度から一点の緯度経度を求められるのでしょうか?

    初めて質問いたします。 ある2地点AとBがあるとします。 AとBの緯度経度が実際の計測で分かっていて、その直線距離も分かっています。 その2点を結ぶ直線上から緯度経度不明の地点Cまでの、AとBからの角度(360°換算)と距離が分かっていたら地点C(つまりAとBからの直線の交点)の緯度経度は分かるのでしょうか? 自分の研究に関わることなので、これを機にきちんと理解したいと思います。 宜しくお願いいたします。

  • 4人の距離が等しくなる地点を計算出来ますか?

    飲み会等の開催場所を決定する時にメンバーが4人だとします。それぞれ別の地域にすんでいて同じ距離の地点を開催場所にしたいとするとどのように計算すればよいのでしょうか?緯度・経度が分かれば計算出来ますか?

  • 住所から2地点間の直線距離を測るには

    市区町村レベル(日本国内)の所在地情報を入力すると、2地点間の直線距離(km単位)を出してくれるソフトウェア、サイトはあるでしょうか 宜しくお願い致します

  • 指定地点(緯度・経度)から指定半径内にの地点情報(緯度・経度)を取得す

    指定地点(緯度・経度)から指定半径内にの地点情報(緯度・経度)を取得する方法がわかりません。 JavaとMySQLを使用して、DB内にデータ管理している施設情報を 現在地点(緯度・経度)と、半径距離数(100m,500m,1kmなど)を指定し、 その半径内の緯度・経度に含まれる施設情報を取得したいです。 http://d.hatena.ne.jp/ilo/20090212/1234448136 上記のサイトを参考にしていますが、距離からの度数の計算方法がわかりません。 Javaでの、距離からの度数の計算方法を教えてください。 宜しくお願いします。

  • 2地点間の距離を求める式

    緯度・経度・標高が与えられた2地点間の距離を求める式を教えてください。赤道半径6378.137Km極半径6356.752Kmとし標高は単純にこれに加算したものを使用してもかまいません。 Excelに数値を入力して求めたいのでExcelで使える式の形式がありがたいです。

  • 緯度・経度からの距離計算

    ある地点の緯度・経度ともう一方のある地点の緯度・経度が わかっているとして、その各緯度・経度より2地点間の距離を 計算できないのでしょうか? 計算方法を知りたいのです。 なんか公式みたいなものはないのでしょうか? なんかヒントになるサイトのURLでもかまいません。 お願いします。教えて下さい。

  • 緯度経度から2点間の距離を求める

    緯度経度から2点間の距離を求めることを考えております。 QNo.249931 http://oshiete1.goo.ne.jp/qa249931.html を参考に、色々、やっておりますが、どうも、うまく行きません。 サジェスチョンをお願いいたします。 今欲しいケースは、極めて近距離です。概略2Km程度ですので、 下記を使っております。 >ある地点の緯度・経度をδ1・λ1,もう一方の地点はδ2・λ2とします。 >2地点の緯度の平均(ふつうに足して2で割る)をδ0とすると, >d=√[{(λ1-λ2)×(cosδ0)}^2 + (δ1-δ2)^2] >角度は度でもラジアンでも構いません(式中の値がすべて同じ単位であれば)。 >あとは,距離(km)=6370×dで2地点間の距離が出ます。(6370kmは地球の平均半径です) 具体例 A地点 35度10分08秒、136度53分08秒 --> 126608秒 、492788秒 B地点 35度09分46秒、136度55分01 秒 --> 126586秒、492901秒 δ1= 35*60*60+10*60+08=126608 λ1=136*60*60+53*60+08=492788 δ2= 35*60*60+09*60+46=126586 λ2=136*60*60+55*60+01=492901 δ0=(126608+126586)/2=126597 d=Sqrt(((492788-492901)*cos(126597))^2+(126608-126586)^2)=111.9221523 従って、A-B、2地点の距離(km)は、 距離(km)=6370*111.9221523=712944.1101Km 一方で、荒っぽく、1秒を緯度、経度ともに、30.9mとすると、 (地球1周≒4万km、全周=360度→360*60*60=1296000秒 (∴ 40000km*1000m/1296000秒≒30.9m) δ1-δ2=(126608-126586)=22 λ1-λ2=(492788-492901)=-113 距離(m)=sqrt(22~2+113^2)=3557.25975 この2地点間の距離は、大体3Kmと分かっておりますから、 荒っぽい計算の方が合っています。 小生の計算は、合っているとは思いますが、サジェスチョンをお願いいたします。

  • 緯度・経度のA地点~B地点までの、直線距離が知りたいです

    A地点・・・北緯30.00、東経140.00 B地点・・・北緯35.00、東経142.00 このA地点~B地点までの、直線距離が知りたいです。 単位は、マイルかキロメートルのどちらか。 大体でもかまいません。 EXCELに位置を入力したら距離が出るようにしたいです。 または、わかるサイトがあったら教えてください。 みなさんは、どういう風に距離を出しているのか知りたいです。 教えてください。 よろしくお願いいたします。

  • PHPで2地点間の緯度経度の求め方を教えてください

    PHPで2地点間の緯度経度の求め方について教えてください。 地点A(始点)と地点Z(終点)までを直線とした場合に、 地点Aから地点Z間の緯度経度を求めたいです。 求める地点Aから地点Z間の緯度経度の数は php側で吸収し地点Aから地点Z間で、1地点(N)求めた場合、 地点Aから地点Nの距離 = 地点Nから地点Zの距離 としたい。(求める地点数を等間隔にしたい) 分かっている情報としては ・地点Aと地点Zの緯度経度 ・地点Aから地点Zの距離 です。 そもそも求めることができるのでしょうか? 地点A(始点)と地点Z(終点)までの距離を求める方法等は、 サイトに載っていますが。 どなたかよろしくお願いいたします

    • ベストアンサー
    • PHP
  • 緯度・経度から距離を計測するには、どう計算すればいいのでしょうか

    ある地点の、緯度・経度から、ある地点の、緯度・経度まで 距離を計測するには、どう計算すればいいのでしょうか? 教えてください。 よろしく、お願いいたします。