0

以圆圈表示的图形可视化:如何

我试图代表围绕一个圆圈绘制的图形线。

  1. 中心为0的地方
  2. 间隔 45 度 / 8 个值。
  3. 最大值 = 1 / 圆的外边界。
  4. 我想在每个间隔绘制图表
  5. 直角的点是直的

我可以很容易地破解这个,但我宁愿知道数学,以防我想做更复杂的事情。

我正在寻找数学来确定 45 度增量应该在哪里。例如:如果点是 1 的 0.33,那么我怎么知道它将在 45 度或 13 度等位置。等等。

为什么是卢亚?我正在用lua编码,所以这将是可取的

编辑:拍了一张照片,但我没有足够的代表:(

Bar 1 @ 0 Deg   = Lenght of 1    = x,y of  0,1 
Bar 2 @ 45 Deg  = Lenght of .33  = x,y of  ?,?
Bar 3 @ 90 Deg  = Lenght of .5   = x,y of .5,0
Bar 4 @ 105 Deg = Lenght of .66  = x,y of  ?,?

如何获得 Bar 2 和 Bar 4 的 x,y?

4

1 回答 1

0

最简单的方法是使用极坐标,其中:

x = r cos φy = r sin φ

r是你的长度,φ是你的角度)

一个问题是在极坐标中,φ = 0 沿着正 x 轴,并且增加的角度逆时针旋转。要考虑 0° 的偏移量,我们只需从所需角度减去 90°。然后将旋转更改为顺时针,我们只取结果的负数。所以,

phi = -(angle - 90)
x = length * cos(phi)
y = length * sin(phi)

对于您当前只有 8 个角度的问题,您可以很容易地手动计算这些角度,因为 45° 的 cos 和 sin 都约为 0.707。

于 2013-05-23T16:24:10.877 回答