2016-12-03 9 views
1

私はこの数式をarticleに変換し、それをPythonやそのコードに変換するのに苦労しています。主に数式を読むのが難しいためです。理想的には、、BCは、半径を見つけるの位置を与えられた 'B'C」左の画像のために。どんな助けも本当に配慮されるでしょう。正三角形の正接円

Tangent Circles At Triangle Vertices

答えて

2

頂点座標がポイントCのためのポイントAため(xa, ya)、ポイントBため(xb, yb)、および(xc, yc)ている場合は、

a = math.sqrt((xb - xc)**2 + (yb - yc)**2) 
b = math.sqrt((xa - xc)**2 + (ya - yc)**2) 
c = math.sqrt((xb - xa)**2 + (yb - ya)**2) 
ra = (b + c - a)/2 
rb = (c + a - b)/2 
rc = (a + b - c)/2 

し、所望の半径を使用することができra, rb, rcです。 (私はa'などをPythonに変換する方法を知らないので、raなどを使用しました)値a, b, cは、三角形の辺の長さです。私はリンクされた記事から数式を少し変更して、より対称で気に入ったものにしました。

+0

ありがとう、それは素晴らしい作品です!これを3次元に適用するのは簡単でしょうか?だからポイント 'B'のためのポイント 'A'、' xb、yb、zb'とポイント 'C'の' xc、yc、zc'の 'xa、ya、 – justachap

+1

3点の平面上の3つの接線*の半径を見つけることを意味するならば、それを容易に3つの次元に適用できます。 'a = math.sqrt((xb-xc)** 2 +(yb-yc)** 2 +(zb-xc) 'という三角形の辺を見つけるために、' a、b、 zc)** 2) '。あなたは、半径rの等式を調整する必要はありません。 –

関連する問題