地図/信号/音の合成

まず正弦波ひとつ

いちばん単純な波は正弦波1本。y = sin(2πf·t + φ) を横軸を時間にしてそのまま引く。f は周波数で1秒あたりの振動数、φ は位相で波のスタート位置。

正弦波は倍音をひとつも持たない純音。sin の引数 2πf·tf が1秒あたりの振動回数で、音の高さ(ピッチ)を決める。φ の位相は波形の横ずれで、音色には効かない。WebAudio の OscillatorNodetype = "sine" を選ぶと、内部でこの一本の正弦波が鳴る。

横幅を時間 t(0〜1)に見立てて、各 x で sin を一回計算している。freq の数だけ山ができ、3 なら三周ぶんの波が並ぶ。phase を毎フレーム足すと波が横へずれて、右から左へ流れる。freq を上げると同じ幅に山が増えて波が詰まり、音なら高くなる。h * 0.32 が振幅で、下げると波の振れ幅が小さくなって中心線に寄る。