
いつもお世話になっています。
緯度と経度が分っている2点の方位角をプログラム(C言語)求めたいのですが、国土地理院のHPにあるような計算式だと計算に時間が掛かってしまいます。
精度はそこそこで簡単な計算方法があれば教えてください。
【国土地理院HP】
http://vldb.gsi.go.jp/sokuchi/surveycalc/algorit …
No.2ベストアンサー
- 回答日時:
その「そこそこの精度」が一体どの程度かお示し下さらないと回答する方はちょっと困ります。
例えば目的が測量とカーナビゲーションとでは月と鼈ほどの大きな差があります。
以下の方法は地球を球体とみなして球面三角法で解く簡便なものなので測量には使えませんが、
日本付近の緯度での2点間の距離400kmほどで誤差は0.1度を少し超える程度です。
地点Aの経度と緯度をそれぞれL1,B1とし、
地点Bの経度と緯度をそれぞれL2,B2とし、
地点Aからみた地点Bの方位(真北を0度として東回りにはかった角度)をθとすると以下の手順で
求められます。
Y = cos(B2) * sin(L2 - L1)
X = cos(B1) * sin(B2) - sin(B1) * cos(B2) * cos(L2 - L1)
θ[rad] = atan2(Y, X)
もし θ[rad]<0 なら θ = θ + 2π とし結果を0から2π未満に収めます。
θ[deg] = θ[rad] * 180 / π
※ 「*」は乗算、「/」は除算、sin()は正弦関数、cos()は余弦関数、
atan2(y, x)は逆正接関数(返り値は-2π~+2π)、
θ[rad]は弧度法でのラジアン単位の角度、θ[deg]は度単位の角度をそれぞれ表す。
経度は東経を「+」西経を「-」、緯度は北緯を「+」南緯を「-」の数として扱います。
地球を回転楕円体として扱うもっと精度の高い式もありますので先の式で不足なら必要な精度をお示し下さった上でお尋ね下さい。
まずは参考ページをご覧下さい。
http://forum.nifty.com/fyamap/kyorihoi.htm
@niftyでの距離と方位の計算に関する書き込みのLOGです。
http://www.arknext.com/utility/contents/gccj.html
様々な回転楕円体要素(球体を含む)での距離と方位を計算してくれるページです。
書籍では「現代測量学 第4巻 測地測量1」社団法人日本測量協会 をお薦めします。
参考URL:http://forum.nifty.com/fyamap/kyorihoi.htm
No.3
- 回答日時:
http://vldb.gsi.go.jp/sokuchi/surveycalc/algorit …
を使って出したいということですよね?
見ると三角関数と四則演算しか使ってませんが
これで時間がかかるということは、
1.パソコン自体が遅い
2.大量のデータを使う
のどちらかだと思いますが、
1.だったら買いなおすことをお勧めします。
今のPCは感動するほど速いです。
2.ならどうしようもないと思います。
問題を分割して、複数のPCで計算させる・・・とか。
を使って出したいということですよね?
見ると三角関数と四則演算しか使ってませんが
これで時間がかかるということは、
1.パソコン自体が遅い
2.大量のデータを使う
のどちらかだと思いますが、
1.だったら買いなおすことをお勧めします。
今のPCは感動するほど速いです。
2.ならどうしようもないと思います。
問題を分割して、複数のPCで計算させる・・・とか。
No.1
- 回答日時:
そこの計算式が難しいなら、曲率半径だの、
場所による座標系の違いを無視して、完全球体の
座標で考えればいいんじゃないですか?
その程度の精度でいいのならば。
計算方法というか、考え方は、国土地理院の
方法をそのまま利用すればいいと思います。
というか、その方法以外にないんじゃないのかな?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ノルム空間でノルムが連続であ...
-
純正ロイヤルストレートフラッ...
-
Quantam Mechanicsとは
-
(x^2 -y)y'=xy-1
-
lecture noteがある場合の板書...
-
高1数学二次関数の問題です!
-
2次関数
-
正規分布は一見、円と何も関係...
-
数学の思考プロセスを理解する...
-
【問題】 f(x) = x^2 - 4a x + ...
-
数学の問題点を尋ねることがで...
-
2m=8はわかるのですが、2n=6...
-
コピーしたい本のページ数
-
この余りが1、余りが3という...
-
n!=m^2-1
-
上が✖で下が〇になる理由が、何...
-
(0,1)=[0,1]?
-
この問題、解き方は理解したの...
-
3つの無理数a,b,cでf(x)=x^3+ax...
-
三角形の面積は、底辺✕高さ÷2 ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報