プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

2点の位置(緯度、経度)がわかっており、
各2点を中心に各々の距離を半径とした2つの円があります。
その二つの円が重なっているとき
まさに重なる2点の位置を知りたいのですが
求め方を教えていただけないでしょうか?

説明下手なので図らしきものを書いてみました
http://cid-7eba03119b354396.skydrive.live.com/se …

よろしくお願いいたします。

A 回答 (2件)

1.地球上のはなし


地表のでこぼこは無視する。
経度緯度のわかっている2点間の距離(弧)は、ヒュベニ式としてしられている。GPSなどで使われているようだ。
質問は、球面上にコンパスで円を書くようなので、半径は弦になる。
そこで、ヒュベニ式を弦を表すように変える。たぶん、こんなになる。

ヒュベニ式

D=sqrt((M*dP)^2+(N*cos(Pa)*dR)^2)

D: 2点間の距離(弧)(m)
Pa: 2点の平均緯度Pa=(P1+P2)/2
dP: 2点の緯度差dP=P1-P2
dR: 2点の経度差dR=R1-R2
M: 子午線曲率半径 M=6334834/sqrt((1-0.006674*sin(Pa)^2)^3)
N: 卯酉線曲率半径 N=6377397/sqrt(1-0.006674*sin(Pa)^2)

r: 2点間の距離(弦)(m)にすると、

r=sqrt((2*M*sin(dP/2))^2+(2*N*cos(Pa)*sin(dR/2))^2)

これで、2点の(緯度,経度)をそれぞれ、
(P1,R1)、(P2,R2)とし、それぞれの円の半径をr1、r2、円を描いたときの交点の(緯度,経度)を(Px,Rx)として、

Pa: 2点の平均緯度Pa1=(P1+Px)/2
dP: 2点の緯度差dP1=P1-Px
dR: 2点の経度差dR1=R1-Rx
M: 子午線曲率半径 M1=6334834/sqrt((1-0.006674*sin(Pa1)^2)^3)
N: 卯酉線曲率半径 N1=6377397/sqrt(1-0.006674*sin(Pa1)^2)
などとすれば、

r1=sqrt((2*M1*sin(dP1/2))^2+(2*N1*cos(Pa)*sin(dR1/2))^2)
r2=sqrt((2*M2*sin(dP2/2))^2+(2*N2*cos(Pa2)*sin(dR2/2))^2)

の2式ができて、未知数(Px,Rx)の2つだからこれを解けばよい。
Px=なんとか
とか、
Rx=こうとか
みたいに数学的には解くのは難しいと思うが、数値計算なら楽に解ける。
Excelのソルバーでも使うえばいいだろう。

2.地図上のはなし
地図は、球面を平面に表すためにいろいろ工夫された図法がある。だから、この上に円を書いて、交点の緯度、経度を一般的には求められないだろう。近距離なら、平面の直交座標として求めてもそれほどの誤差はないと思うが。それだけ。

ところで、あなたはこれを求めるために努力はしないのかい。
上の計算ぐらいは自分でどうぞ。
    • good
    • 0
この回答へのお礼

okormazdさん
ありがとうございます。
これをもとにしてやってみます。

努力、確かに重要です。気をつけましょう。
しかしながら自分は数学に全く弱く、
自力でそこまで到達することはなかったでしょう。
また、この問題は本来自分の担当ではなかったのですが
なんとか手伝えないかと安易にここへ投げてしまいました。
反省すべき点です。
とはいえこれで前に進むことができます、ありがとうございました。

お礼日時:2008/06/13 20:29

地図上での話ですか。


地球上での話ですか。

この回答への補足

お返事ありがとうございます。
地球上での話です。
地図上でもあると思います。(日本です)

補足日時:2008/06/12 01:01
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!