Oleh :
2021
TUGAS GRAFIKA KOMPUTER
Buat laporan hasil pemrograman gelombang sinus yang sudah dikerjakan tadi,
dengan menggabungkan penerapan function minggu kemarin. Gelombang sinus
bisa dimodifikasi sesuai keinginan yang lebih kreatif lagi.
laporan dari koding yang sudah diupload berikut. Laporan berupa .docx dengan
times new roman 12, spasi normal, margin normal, ukuran a4. Untuk kodingnya
dilarang printscreen. Copy paste dalam bentuk font consolas/lucida console 10,
line spacing 1. Sedangkan output berupa gambar (tanpa cropping gambar).
1. Coding Program
var sine;
function setup() {
createCanvas(440, 440);
// create and start the sine oscillator
sine = new p5.SinOsc();
sine.start();
}
function draw() {
background(0);
suaraX();
suaraY();
suaraZ();
}
function suaraX(){
// map the mouseX value from 20Hz to 440Hz for frequency
var hertz = map(mouseX, 0, width, 20.0, 940.0);
sine.freq(hertz);
// draw wave to visualize the frequency of the sound
stroke(204);
for(var x = 0; x < width; x++){
var angle = map(x, 0, width, 0, TWO_PI * hertz);
var sinValue = cos(angle) * 120;
line(x, 0, x, height/2 + sinValue);
}
}
function suaraY(){
// map the mouseX value from 20Hz to 440Hz for frequency
var hertz = map(mouseY, 0, width, 50.0, 330.0);
sine.freq(hertz);
// draw wave to visualize the frequency of the sound
stroke(204);
for(var x = 0; x < width; x++){
var angle = map(x, 0, width, 0, TWO_PI * hertz);
var sinValue = cos(angle) * 120;
line(x, 0, x, height/2 + sinValue);
}
}
function suaraZ(){
// map the mouseX value from 20Hz to 440Hz for frequency
var hertz = map(50, 0, 220, 20.0, 1040.0);
sine.freq(hertz);
// draw wave to visualize the frequency of the sound
stroke(204);
for(var x = 0; x < width; x++){
var angle = map(x, 0, width, 0, TWO_PI * hertz);
var sinValue = cos(angle) * 120;
line(x, 0, x, height/2 + sinValue);
}
}
2. Ouput
3. Penjelasan Program
Pada Program diatas saya tambahkan function FreqX dan frexY untuk mendesain
frekuensi biar menarik dan pada angle saya tambahkan 150 dan height saya gunakan
2 dan Frekuensi menggunakan 950Hz