C# 如何从圆中点求外长度

C# 如何从圆中点求外长度,c#,math,data-structures,geometry,C#,Math,Data Structures,Geometry,如何根据与圆中点的角度计算从圆的中心点到矩形边界的长度 我试试AC^2=√AB^2-BC^2 样本图像 从圆的中心开始画一条线,向右移动,直到它与矩形相交。现在有一个直角三角形,它的腿有长度(rect_高度-半径)和(rect_宽度-半径)。你可以通过计算斜边来计算黄线的长度 ?=sqrt((矩形高度-半径)^2+(矩形宽度-半径)^2)让正方形的大小为S。 让圆的半径为R 其中S>R 设A为角度(以度为单位),其中0该答案假设您已经知道矩形的尺寸,并且黄线始终与矩形的角相交。如果这些假设中的任

如何根据与圆中点的角度计算从圆的中心点到矩形边界的长度

我试试AC^2=√AB^2-BC^2

样本图像


从圆的中心开始画一条线,向右移动,直到它与矩形相交。现在有一个直角三角形,它的腿有长度(rect_高度-半径)和(rect_宽度-半径)。你可以通过计算斜边来计算黄线的长度

?=sqrt((矩形高度-半径)^2+(矩形宽度-半径)^2)

让正方形的大小为S。
让圆的半径为R
其中S>R

设A为角度(以度为单位),其中0该答案假设您已经知道矩形的尺寸,并且黄线始终与矩形的角相交。如果这些假设中的任何一个不正确,请告诉我。这确实应该发布在
Let the size of the square be S.
Let the radius of the circle be R
Where S > R

Let A be the angle in degrees, where 0 <= A <= 90
Let L be the required diagonal length.

Then if 0 <= A <= 45, L = (S-R)/Cos(A)
And if 45 < A <= 90, L = (S-R)/Sin(A)