|
일일 결과물 | |||
이 름 |
유 진명 |
일 시 |
2010-10-20 19:00 |
소요시간 |
1 시간 |
|
|
주 제 명 |
C#에서 주파수 생성하기 |
C#에서 주파수를 생성하여 해당 음을 내기 위해 주파수를 생성해 보았다.
먼저 전체적인 틀과 실행 결과는 다음과 같다.
주파수를 생성하기 위한 코드는 다음과 같다.
여기에서는 적정인 short 배열을 생성하여 사용하였다.
short[] buf = new short[8000]; |
SampleRate와 Frequency를 입력하고 생성하기를 누르면 실제적으로 주파수를 생성하는 코드이다.
private void button1_Click(object sender, EventArgs e) { double amplitude = 0.25 * short.MaxValue;
double frequency = double.Parse(textBox2.Text); double samplerate = double.Parse(textBox1.Text);
for (int i = 0; i < buf.Length; i++) { buf[i] =(short)(amplitude * Math.Sin((2 * Math.PI * i * frequency)/samplerate)); } Invalidate(); } |
마지막으로 생성된 주파수를 Form에 출력하는 코드이다.
private void Form1_Paint(object sender, PaintEventArgs e) { Pen pen = Pens.Blue; int i = 0; Graphics g = e.Graphics; Point op = new Point(0, 150 + buf[0] / 100); Point np; for (i = 0; i < 8000-1; i++) { np = new Point(i / 32, 150 + buf[i] / 100); g.DrawLine(pen, op, np); op = np; } } |
|