空間円の半径

 三次元空間における任意の三点を直線で結んだ三角形を考え、三角形の頂点A、B、Cに対応する辺の長さをa、b、cとすると、
三角形の面積Sは、S=c H/2、高さHは角Aを用いて、H=b sinA

 ここから高さHを消去するとS=b c sinA/2
正弦定理は、a/sinA=b/sinB=c/sinC=2R、Rは三角形に外接する円の半径
だから、S=b c sinA/2、sinA=a/(2R)より、sinAを消去すると、S=a b c/(4R)となり,
半径Rは、R=a b c/(4S)です。

f:id:silver_dragon:20211223140403p:plain

三次元空間の円

 三角形の面積Sは、ヘロンの公式 S=sqrt(k(k-a)(k-b)(k-c))、k=(a+b+c)/2 から求めることができます。
よって、三次元空間の三点の位置座標が分かれば、その三点を通る円の半径が分かります。

 点Aの位置座標をTp1、点Bの位置座標をTp2、点Cの位置座標をTp3とすると、各頂点に対応する辺の長さa、b、cは
 a=║Tp2-Tp3║=sqrt(pow(Tp2.x-Tp3.x,2)+pow(Tp2.y-Tp3.y,2)+pow(Tp2.z-Tp3.z,2))
 b=║Tp3-Tp1║=sqrt(pow(Tp3.x-Tp1.x,2)+pow(Tp3.y-Tp1.y,2)+pow(Tp3.z-Tp1.z,2))
 c=║Tp1-Tp2║=sqrt(pow(Tp1.x-Tp2.x,2)+pow(Tp1.y-Tp2.y,2)+pow(Tp1.z-Tp2.z,2))

です。