本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:3点円弧の中心座標の求め方)

3点円弧の中心座標の求め方

2023/09/06 20:59

このQ&Aのポイント
  • 3点円弧の中心座標の求め方を教えてください。
  • 3点を通る円弧の中心座標と半径を求める方法についてお知りになりたいです。
  • CADを使用せずに、3点円弧の中心座標を計算する方法について教えてください。
※ 以下は、質問の原文です

3点円弧の中心座標の求め方

2005/09/07 10:26

いつも、お世話になります。

チョット、ジャンルは違うんですが、どこに聞けばよいか分からなくて、

3点を、通る円弧の中心座標と、半径の求め方
点X、Y,Zを通る円弧の中心点をC、半径をrとするとき

(Xx-Cx)^2 + (Xy-Cy)^2 = r^2
(Yx-Cx)^2 + (Yy-Cy)^2 = r^2
(Zx-Cx)^2 + (Zy-Cy)^2 = r^2
^2は2乗

のような関係式が成り立ちそうなんですが
ここから
Cx=
Cy=
の式に要約できずに悩んでおります。

どなたか、上記に限らず、3点円弧の中心座標の求め方をご教授ください。
CADで書けば、すぐわかるんですが、そうじゃなくて計算で求める方法

みなさま、ご回答いただきありがとうございました。
結果報告させていただきます。
質問には書いていませんでしたが、コンピュータでの計算を前提としておりましたので
数学的な解にはなりませんでした。
2番、4番のご回答を参考にさせていただきました。

3点を(a,b)(c,d)(e,f)、(a,b)(c,d)を直線1、(c,d)(e,f)を直線2
各中点を(p1x,p1y)(p2x,p2y)として

直線1に直行する直線3の傾き f1=(c-a)/(b-d)
直線2に直行する直線4の傾き f2=(e-c)/(d-f)

中点1は p1x=(a+c)/2  p1y=(b+d)/2
中点2は p2x=(c+e)/2  p2y=(d+f)/2

直線3をy=f1x+A1で表した時の
A1=p1y-f1p1x
直線4は
A2=p2y-f2p2x

交点は
y=f1x+A1
y=f2x+A2
なので
f1x-f2x+A1-A2=0

x=(A2-A1)/(f1-f2)

それぞれを、変数として計算すると解決できました。

ご指導ありがとうございました。

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

ベストアンサー
2005/09/08 00:28
回答No.4

私も回答2と同じ方法で計算していますので、その式を書いてみます。
3点の座標をP1(I,J), P2(L,M), P3(U,V)とします。
P1とP2の中点座標(P,Q)をもとめます。
P=(I+L)÷2   Q=(J+M)÷2
(P,Q)を通って線分P1,P2に直交する線の角度をAとすると
A=tan-1{(M-J)÷(L-I)}+90
となります。同様にしてP2,P3の中点座標(S,T)と線分P2,P3に直交する線の角度Bを求めます。
S=(L+U)÷2    T=(M+V)÷2
B=tan-1{(V-M)÷(U-L)}+90
となります。
ここで、(P,Q)を通る角度Aの直線の方程式と(S,T)を通る角度Bの直線の方程式をつくり、連立方程式を解くと中心座標(X,Y)が求まります。
X=P+{(T-Q)-(S-P) tan B }÷(tan A - tan B)
Y=Q+(X-P)tan A

私は以上の式と半径ををとめる式をカシオのプログラム電卓に入れています。3点の座標を入力するだけで、瞬時に中心座標と半径が求められます。

お礼

2005/09/08 13:11

ukiyaさま
ご回答ありがとうございます。

三角関数に置き換えると、簡単に求められるんですね。

コンピュータに計算させるので、この式がそまま使えそうです。

質問者

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する

その他の回答 (6件中 1~5件目)

2005/09/08 13:28
回答No.6

回答(5)さんへ
saitoさんの答えは基本に線形代数の考え方に基づいての考えで質問者にとってかなり難しいと思います。理系大学を卒業をしておれば理解はできると思われますが・・。
もう少しやさしくお答えになられたほうがよろしいのではと思います。
このサイトでは今回の質問のような質問が時々ありますが、出来る限り回答者の使命としてできる限りやさしく、分かりやすくと私は考えます。私自身はせめて高校学問までと思いますが、どうですか?
ちなみに行列式を使うことはものづくりをしていく職人にとって王道ではないと思います。それでは王道は?と聞かれれば、回答を拝見させている限り一番言い回答は回答(4)さんの回答だと私は思います。
生意気を申しました。申し訳ございません。

2005/09/08 03:07
回答No.5

x1^2+ax1+y1^2+y1^2+by1+c=0
x2^2+ax2+y2^2+y2^2+by2+c=0
x3^2+ax3+y3^2+y3^2+by3+c=0

という3つの連立方程式を立てるのが王道でしょう。
連立方程式の解は行列式の公式を調べてください。
すべて、式で表すことが出来るはずです。
α1a+β1b+c=0
α2a+β2b+c=0
α3a+β3b+c=0
という形になります。
(a/2)^2+(b/2)^2-c=r^2 です。
よって、(a/2)^2+(b/2)^2-c<0 となれば、円になることはありえません。
中心座標は(-a/2,-b/2)となります。

お礼

2005/09/08 13:20

saitoさま
ご回答いただき、ありがとうございました。

数学は、苦手なので、式の意味がまったくわかりません(^^;
興味が有りますので、行列式を調べて見ますが、
有用なサイトとか、あるいはもう少し補足していただけると
有りがたいのですがm(,,)m

質問者
2005/09/07 12:57
回答No.3

答えは出ているのですが、考え方(見方)を少し変えて考えてみましょう。
ある点(a,b)とある点(A,B)の2点間の距離(r)は
三平方の定理を使って
(a-A)^2+(b-B)^2=r^2    -?ですよね。
この問題の場合、円の中心点より3点のそれぞれの距離(r)の2乗はすべて等しくなります。(2乗しなくても?の√をしても良いです。rは半径)
(Xx-Cx)^2 + (Xy-Cy)^2=(Yx-Cx)^2 + (Yy-Cy)^2 =(Zx-Cx)^2 + (Zy-Cy)^2 で回答(1)さんと同じになります。
別解(別の考え方)としては
先に求めたい円の方程式を考えます。円の中心点を(c,d),半径rとすると
(x-c)^2+(y-d)^2=r^2    -?
となります。
この円上に3点があるはずですから、?の式のxとyにそれぞれの点を代入して3つの式が出来ます。後は同じ結果になります。
参考になれば幸いです。

2005/09/07 12:44
回答No.2

計算式を考えるのが、めんどくさいので、いつもCADで書いてしまいますが
CADなどで書く時

3点円(3点に接する円)というコマンドがない時
手動で、書く方法を書いておきます、
計算式は、考えてください

点X、Y、Zを通る円を書くには

辺X[X(x,y)~Y(x,y)]の中点から辺Xに対して、垂直な線と
辺Y[Y(x,y)~Z(x,y)]の中点から辺Yに対して、垂直な線との交点が、円の中心O

中心Oから点Xまでの距離が半径

って感じです

お礼

2005/09/08 13:31

この方法も考えてんですが、
2点(a,b) (c,d)とすると
傾きが(d-b)/(c-a)と直行して、((c+a)/2,(d+b)/2)を通る
1次直線とか考えてると、なんか微分のときにそんなのが
有ったような、でもサッパリ式が分かりませんm(,,)m

質問者
2005/09/07 12:06
回答No.1

(Xx-Cx)^2 + (Xy-Cy)^2 = r^2・・・・(1)
(Yx-Cx)^2 + (Yy-Cy)^2 = r^2・・・・(2)
(Zx-Cx)^2 + (Zy-Cy)^2 = r^2・・・・(3)

(1)-(2)=0
(2)-(3)=0
それぞれ計算するとCx,Cyに関する1次連立方程式が求まり
連れてrも求まります。愚直に計算すれば求まります。

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。