我正在尝试让Processing绘制正弦波。但是,它看起来像是输出中正弦波的采样错误版本。我需要用一系列线条代替形状,还是有其他解决方案?
我尝试将变量强制转换为float,然后更改c++为c += 1。
noFill();
stroke(255);
beginShape();
translate(0, 100);
for (int c = 0; c <= width; c += 1)
{
vertex(c, (float) 100 * sin(c / 50));
}
endShape();
Run Code Online (Sandbox Code Playgroud)
我希望它逐个像素地遍历窗口,从而创建一个平滑的形状。我实际得到的是似乎要采样的东西,如下所示。
量化正弦波
表达方式
Run Code Online (Sandbox Code Playgroud)c / 50
是一个不可分割的部门。结果是整数值。如果为0 <= c < 50,则结果为0,如果50 <= c < 100为1。
要进行浮点除法并得到浮点结果,必须将2个值中的一个作为浮点(例如c / 50.0)。
更改表达式以解决问题:
c / 50
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |