随着时间的推移,我需要一个函数来无限地激活正弦波。正弦波向左移动。
我的正弦波是用以下公式建立的:
A * sin(B * x + C) + D
现在,为了将正弦波动画化,就好像它正在向左移动一样,每次刷新屏幕时,我只需将C值增加1。现在,这一切都很好和花花公子几分钟,但我需要让动画运行数小时。我不能让一个整数永远累积到每秒60次。有人怎么处理这事?我是否只是试图找到正弦波横过0的点,然后从0重新启动动画?
我只需要解释一下这样的逻辑。
编辑#1我忘了提到正弦波有一个随机成分。正弦并不是连续不变的。A和D是与该整数相关的正弦波函数。正弦需要随周期和振幅的变化而随机变化。
编辑#2
编辑见编辑3
我创建了一个.wav文件,它准确地显示了一个完整的正弦波。您可以通过使用Audacity或类似的方法打开它来验证。
我想使用C# .Net SoundPlayer播放这个文件。就像这里:
static void Main(string[] args)
{
using (SoundPlayer sad = new SoundPlayer("D:\\Soundlocator\\test.wav"))
{
while (true)
{
sad.PlaySync()