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

时间:2013-05-23 13:02:24

标签: math graph lua 2d

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

我试图围绕圆圈表示绘制的图线。

  1. 中心为0
  2. 45度/ 8值的间隔。
  3. 最大值= 1 /圆的外边界。
  4. 我想在每个时间间隔绘制图表
  5. 直角点是直截了当的
  6. 我可以很容易地破解这个,但我宁愿知道数学,以防万一我想做更复杂的事情。

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

    为什么选择Lua? 我在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?

1 个答案:

答案 0 :(得分:0)

最简单的方法是polar coordinates,其中:

x = r cos φ y = r φ

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

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

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

对于目前只有8个角度的问题,你可以很容易地用手计算出这些问题,因为知道45°的cos和sin都是0.707左右。