Note
part of wslib
a placeholder for musical notes, based on the midiname methods in wslib
Note( name, midi, freq, cents )
from the first three arguments only one should be not nil.
Note( "G4" ); // -> will show as a name string in the post window (asString)
Note( "G4" ).asCompileString; // -> will show as a name string in the post window (asString)
Note( midi: 65 );
Note( freq: 456 ).asCompileString;
n = Note( "G#3", cents: 25 );
// all the folowing methods can also be used as setter:
n.cents;
n.name;
n.oct;
n.note;
n.sign;
n.alt; // + 1 means #
n.alt = 3;
n.simplifyName; // enharmonic shift
// possible binary operators
// +, -, *, /, min, max, wrap, clip, rand, round
n + Note( "A1" );
n + 1;
(n / 2).asCompileString;
n.rand; // only whole notes; no cents