• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:三角測量のプログラム)

三角測量プログラムの正確な位置計算方法とソースコードダウンロードサイト

このQ&Aのポイント
  • 三角測量を使って自分の正確な位置と方向を計算する方法を教えてください。
  • A,B,Cの3つの灯台があり、その地図と見える方向を使って自分の位置と方位を計算します。
  • C言語かVBのプログラムソースコードがダウンロードできるサイトを教えていただきたいです。

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

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.2

 補足要求#1の条件が成り立っているものとして、先に行きましょう。  角度は例えば反時計回りで、符号付きで表すことにしましょう。Cを基準にして、AとBの見える方角を測り、それぞれα,βとします。  さて、海図を広げましょう。AとCの角度がα。ある点Xa:Xaから見てAとCの角度がαになるような点、を適当に見つけます。A,Xa,Cを通る円Raを描きます。するとこの円Ra上で、円弧A~Xa~C上ののどの点から見ても、AとCの角度はαである。(円周角の定理。幾何で習ったでしょう?)  同様に、BとCの角度がβ。ある点Xb:Xbから見てBとCの角度がβになるような点、を適当に見つけます。B,Xb,Cを通る円Rbを描きます。するとこの円Rb上で、円弧B~Xb~C上のどの点から見ても、BとCの角度はβである。  従って、円弧A~Xa~Cと円弧B~Xb~Cの交点が現在地点ですね。 *ある点Xa:Xaから見てAとCの角度がαになるような点、を適当に見つけるには? AとCの距離を|AC|とします。AとCを結ぶ線分Lの垂直二等分線Hを描き、LとHの交点をMとします。H上で(|AC|/2)(cot(α/2))の所に印をつけて、それをXaにしては如何でしょうか。(いや、Cを通りLと直交する直線Vを描いて、V上でCから|AC|cotαの所に印をつけるのでも良いんですよ。) *3点を通る円Raを描くには? XaとCを結ぶ線分の垂直二等分線と直線Hとの交点が円Raの中心です。 という作図をプログラムに置き換えるだけのことですが...

j_euro
質問者

お礼

ご回答ありがとうございました。 実際にプログラムで確認出来てから、お礼しようとしてました。 時間がかかりそうなので、お知らせしようと思います 実験環境そろえつつ、継続中です。

その他の回答 (1)

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.1

平面上の話だとすれば、現実の航法ではなく、別の問題を言い換えていらっしゃるのだろうと思われますが、 数学の問題としては、ご質問の条件だけでは、いつでも必ず自分の位置が決まるとは限りません。以下の条件が必要だと思いますよ。 ●3つの灯台が一つの直線上に並んでいないこと。 ●3つの灯台の光を見て、どれがどの灯台なのか見分けが付くこと。(色が違うとか、光る周期が違うとか)