查找圆边缘的坐标

发布于 2024-08-18 00:31:23 字数 1455 浏览 8 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

冧九 2024-08-25 00:31:23

以下是适用于任何语言的数学解决方案:

x = x0 + r * cos(theta)
y = y0 + r * sin(theta)

x0y0 是中心坐标,r 是半径,< code>theta 以弧度为单位。该角度是从 x 轴逆时针测量的。

这是 C# 的代码,特别是如果您的角度以度为单位:

double x = x0 + r * Math.Cos(theta * Math.PI / 180);
double y = y0 + r * Math.Sin(theta * Math.PI / 180);

Here's the mathematical solution which can be applied in any language:

x = x0 + r * cos(theta)
y = y0 + r * sin(theta)

x0 and y0 are the coordinates of the centre, r is the radius, and theta is in radians. The angle is measured anticlockwise from the x-axis.

This is the code for C# specifically if your angle is in degrees:

double x = x0 + r * Math.Cos(theta * Math.PI / 180);
double y = y0 + r * Math.Sin(theta * Math.PI / 180);
高跟鞋的旋律 2024-08-25 00:31:23

使用毕达哥拉斯定理(其中 x1,y1 是边缘点):

x1 = x + rcos(theta)
y1 = y + rsin(theta)


,这看起来像:

x1 = x + radius * Math.Cos(angle * (Math.PI / 180));
y1 = y + radius * Math.Sin(angle * (Math.PI / 180));

其中所有变量都是双精度数,而角度以度为单位

using Pythagoras Theorem (where x1,y1 is the edge point):

x1 = x + rcos(theta)
y1 = y + r
sin(theta)

in C#, this would look like:

x1 = x + radius * Math.Cos(angle * (Math.PI / 180));
y1 = y + radius * Math.Sin(angle * (Math.PI / 180));

where all variables are doubles and angle is in degrees

内心激荡 2024-08-25 00:31:23

对于原点 (j, k)、半径 r 和角度 t(以弧度表示)的圆:

   x(t) = r * cos(t) + j       
   y(t) = r * sin(t) + k

For a circle with origin (j, k), radius r, and angle t in radians:

   x(t) = r * cos(t) + j       
   y(t) = r * sin(t) + k
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文