示例#1
0
文件: Wave.cs 项目: andrich48/pcsconv
 protected virtual WaveFunction Join(WaveFunction wave)
 {
     return(new WaveFunction(
                x => wave[this[x]],
                wave[this.Amplitude]
                ));
 }
示例#2
0
文件: Wave.cs 项目: andrich48/pcsconv
 protected virtual WaveFunction Combine(Func <double, double> func, WaveFunction wave, double amplitude)
 {
     return(new WaveFunction(
                func,
                amplitude
                ));
 }
示例#3
0
文件: Wave.cs 项目: andrich48/pcsconv
 public void PlayWave(WaveFunction wave, int duration)
 {
     PlayWave(new Wave(1, duration)
     {
         Type = wave
     });
 }
示例#4
0
文件: Wave.cs 项目: andrich48/pcsconv
 protected override WaveFunction Join(WaveFunction wave)
 {
     if (wave is PeriodicWave)
     {
         return(new PeriodicWave(
                    x => wave[this[x]],
                    wave[this.Amplitude]
                    ));
     }
     else
     {
         return(base.Join(wave));
     }
 }
示例#5
0
文件: Wave.cs 项目: andrich48/pcsconv
 protected override WaveFunction Combine(Func <double, double> func, WaveFunction wave, double amplitude)
 {
     if (wave == null || wave is PeriodicWave)
     {
         return(new PeriodicWave(
                    func,
                    amplitude
                    ));
     }
     else
     {
         return(base.Combine(func, wave, amplitude));
     }
 }
示例#6
0
文件: Wave.cs 项目: andrich48/pcsconv
        public static WaveFunction Noise(WaveFunction coef)
        {
            Random rnd = new Random();

            return(new WaveFunction(x => (rnd.NextDouble() * 2 - 1) * coef[x], coef.Amplitude));
        }
示例#7
0
文件: Wave.cs 项目: andrich48/pcsconv
 public Wave(double frequency, double duration, WaveFunction type) : this(frequency, duration)
 {
     Type = type;
 }