xxxxxxxxxx
48
let root = 24;
let octave = 0;
let major = [0, 2, 4, 5, 7, 9, 11, 12];
let minor = [0, 2, 3, 5, 7, 9, 10, 12];
let scale = major;
function setup(){
createCanvas(400, 400);
console.log("Press keys 1 through 8 to trigger different notes; move the mouse around the canvas to change the octave")
console.log("When the mouse is pressed, the scale is set to minor");
}
function draw(){
background(0);
if(mouseIsPressed){
scale = minor;
}
else{
scale = major;
}
}
function keyPressed(){
// root = floor(map(mouseX, 0, width, 24, 36));
octave = floor(map(mouseX, 0, width, 0, 3));
let pos = (parseInt(key) - 1) % 8;
let note = root + scale[pos] + octave * 12;
let noteObject = Tone.Frequency(note, "midi");
player.triggerAttack(noteObject);
}
let player = new Tone.Sampler(
{
"A1" : "samples/casio/A1.mp3",
// "B1" : "samples/casio/B1.mp3",
"C2" : "samples/casio/C2.mp3",
// "D2" : "samples/casio/D2.mp3",
"E2" : "samples/casio/E2.mp3",
// "F2" : "samples/casio/F2.mp3",
"G2" : "samples/casio/G2.mp3",
// "A2" : "samples/casio/A2.mp3"
}
);
player.toMaster();