Ian*_*ink 25 c# math geometry trigonometry
使用C#:
如果我有中心坐标和半径,如何获得任何给定度数的圆边上的(x,y)坐标?
可能有SIN,TAN,COSIN等十年级数学... :)
Dav*_*d M 79
这与C#无关.只涉及一些基础数学.
x = x0 + r * cos(theta)
y = y0 + r * sin(theta)
Run Code Online (Sandbox Code Playgroud)
θ是弧度,x0和y0是中心的坐标,r是半径,角度是从x轴逆时针测量的.但是如果你想在C#中使用它,你的角度是度数:
double x = x0 + r * Math.Cos(theta * Math.PI / 180);
double y = y0 + r * Math.Sin(theta * Math.PI / 180);
Run Code Online (Sandbox Code Playgroud)
使用毕达哥拉斯定理(其中x1,y1是边缘点):
x1 = x + r cos(theta)
y1 = y + r sin(theta)
在C#中,这看起来像:
x1 = x + radius * Math.Cos(angle * (Math.PI / 180));
y1 = y + radius * Math.Sin(angle * (Math.PI / 180));
Run Code Online (Sandbox Code Playgroud)
其中所有的变量都doubles和angle为度