三角測量で座標を求めるプログラム

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
たか0011
記事: 2
登録日時: 7年前

三角測量で座標を求めるプログラム

#1

投稿記事 by たか0011 » 7年前

3点の座標と距離を基に、三点測量で現在地のxy座標を求めるプログラムを書きたいと考えております。以下のようにして座標ち距離を入力してもらい、計算してobtainという構造体に入れて求めたいと思っているのですが、なにぶん数学が苦手なもので、どのようにして三角測量のプログラムを書いたらよいか全くと言っていいほどわかりません。もしよろしければ、計算部分のプログラムを教えていただける方おりましたら幸いです。

コード:

#include <stdio.h>
struct line{
int a[3];
int b[3];
};

int main()
{
struct line dot;  
struct line obtain;
int i;
int n[3];

for(i=0;i<3;i++){
printf(">>座標を入力してください:");
scanf("(%d,%d)%*c",&dot.a[i],&dot.b[i]);
printf(">>距離を入力してください:");
scanf("%d%*c",&n[i]);
}

printf("求めた座標は(%d, %d)です。\n",obtain.a[0],obtain.b[0]);

return 0;
}


たいちう
記事: 418
登録日時: 13年前

Re: 三角測量で座標を求めるプログラム

#2

投稿記事 by たいちう » 7年前

> 三角測量のやり方はなんとなくは分かるんですが

と別スレでありますが、一般には手で計算する方がプログラムを作るよりも簡単です。
適当な座標と距離から、たか0011さんの言うところの三角測量で、
手計算で座標を求めることができますか?

たいちう
記事: 418
登録日時: 13年前

Re: 三角測量で座標を求めるプログラム

#3

投稿記事 by たいちう » 7年前

オフトピック
三角測量は既知の2点からの角度を使って3点目の座標を求める手法です。
https://ja.wikipedia.org/wiki/%E4%B8%89 ... C%E9%87%8F

既知の3点からの距離だと、求める点が存在しなかったり、
存在しても平面上になかったりする場合もあるので、
そのような入力の場合にどう扱うのかを決める必要もあるでしょう。

たか0011
記事: 2
登録日時: 7年前

Re: 三角測量で座標を求めるプログラム

#4

投稿記事 by たか0011 » 7年前

了解です。ちゃんと存在しない場合も考えなきゃなんないんですね。ありがとうございます。また質問させていただきます。

fm

Re: 三角測量で座標を求めるプログラム

#5

投稿記事 by fm » 7年前

良く分からないですが、3次元か2次元の座標のプログラムを作りたいのであれば
次のURLのアルゴリズムが良いと個人的に感じました。

marupeke296.com/COL_main.html

http://を先頭に付けてください。

閉鎖

“C言語何でも質問掲示板” へ戻る