*** empty log message ***
[chuck-blob.git] / v2 / examples / stk / bandedwg.ck
blob3abf817756308300510d963042248ff77e68d3eb
1 // STK BandedWG
3 // patch
4 BandedWG bwg => dac;
6 // scale
7 [0, 2, 4, 7, 8, 11] @=> int scale[];
9 // infinite time loop
10 while( true )
12     // ding!
13     Std.rand2f( 0, 1 ) => bwg.bowRate;
14     Std.rand2f( 0, 1 ) => bwg.bowPressure;
15     Std.rand2f( 0, 1 ) => bwg.strikePosition;
16     Std.rand2(0, 3) => bwg.preset;
18     // set freq
19     scale[Std.rand2(0,scale.cap()-1)] => int winner;
20     57 + Std.rand2(0,2)*12 + winner => Std.mtof => bwg.freq;
22     // print some parameters
23     <<< "---", "" >>>;
24     <<< "preset:", bwg.preset() >>>;    
25     <<< "bow rate:", bwg.bowRate() >>>;
26     <<< "bow Pressure:", bwg.bowPressure() >>>;
27     <<< "strike position:", bwg.strikePosition() >>>;
28     <<< "frequency:", bwg.freq() >>>;
29     <<< "---", "" >>>;
31     <<< "bow -> pluck", "" >>>;
32     Std.rand2f( .5, 1 ) => bwg.pluck;
33     // advance time
34     2::second => now;
36     <<< "pluck -> bow", "" >>>;
37     .8 => bwg.startBowing;
38     Std.rand2f(2,4)::second => now;
39     1.0 => bwg.stopBowing;
40     1::second => now;