绘制正弦/余弦图

时间:2014-01-06 13:07:22

标签: java swt sine

我在Eclipse中使用SWT创建了一个轴(x和y)的图形,现在我想绘制一个 f(x)= a1 * sin(n1 * x) 和f(x)= a2 * cos(n2 * x)函数。我该怎么开始?我需要说我在数学方面很弱;)

另一件事 - 图表不能用点制作,它必须是直线。

马丁

1 个答案:

答案 0 :(得分:1)

执行此操作的一种方法是使用循环并增加X。

int y = 0; for(int x = -10; x< 10; x + = 0.01) {     y = Math.sin(x);     //在这里为这个x,y对绘制一个点 }

您需要考虑x开始和停止的位置,具体取决于您要显示的内容。此外,x + = 0.01可能需要调整为更小。如果你的图形中有间隙,那就意味着x值与光滑的线条相差太远。

编辑:如果你需要使用线条制作图形,那么程序就不同了。有两个要使用的点,具有不同的X值。例如,以第一个点“A”为X = 0开始,第二个点“B”为X = 0.01。在这些之间画一条线。现在,将“A”设置为“B”具有的值(x = 0.01),并将“B”点更新为x = 0.02的点。现在在这些新点之间画一条线并继续前进。同样,您必须调整这些点之间的差异量,以使其尽可能平滑。考虑到点之间较小的差异也会花费更多的计算时间。