sclang: ServerShmInterface - try to avoid multiple destructor calls
[supercollider.git] / HelpSource / Classes / Splay.schelp
blob3d89fb692665724eb2341a258aff5019659ff6b9
1 class:: Splay
2 summary:: Splay spreads an array of channels across the stereo field
3 categories:: UGens>Multichannel>Panners
4 related:: Classes/SplayAz, Classes/SplayZ
6 description::
7 Splay spreads an array of channels across the stereo field.
8 Optional spread and center controls, and levelComp(ensation) (equal power).
10 classmethods::
11 method:: ar
12 argument:: inArray
13 argument:: spread
14 argument:: level
15 argument:: center
16 argument:: levelComp
18 method:: arFill
19 argument:: n
20 argument:: function
21 argument:: spread
22 argument:: level
23 argument:: center
24 argument:: levelComp
26 examples::
28 code::
30 x = { arg spread=1, level=0.2, center=0.0;
31  Splay.ar(
32   SinOsc.ar( { |i| LFNoise2.kr( rrand(10, 20), 200, 400) } ! 10),
33   spread,
34   level,
35   center
36  );
37 }.play;
40 x.set(\spread, 1,   \center, 0);  // full stereo
41 x.set(\spread, 0.5, \center, 0);  // less wide
42 x.set(\spread, 0,   \center, 0);  // mono center
43 x.set(\spread, 0.5, \center, 0.5);
44 // spread from center to right
45 x.set(\spread, 0,   \center, -1); // all left
46 x.set(\spread, 1,   \center, 0);  // full stereo
49  // the same example written with arFill:
51 x = { arg spread=1, level=0.2, center=0.0;
52  Splay.arFill(10,
53   { |i| SinOsc.ar( LFNoise2.kr( rrand(10, 20), 200, i + 3 * 100))  },
54   spread,
55   level,
56   center
57  );
58 }.play;
62  // with mouse control
64 x = { var src;
65  src = SinOsc.ar( { |i| LFNoise2.kr( rrand(10, 20), 200, i + 3 * 100) } ! 10);
66  Splay.ar(src, MouseY.kr(1, 0), 0.2, MouseX.kr(-1, 1));
67 }.play;