2 *ar { arg inArray, spread=1, level=1, center=0.0, levelComp=true;
3 var n, n1; n = inArray.size.max(2); n1 = n-1;
5 if (levelComp, { level = level * n.reciprocal.sqrt });
9 ((0 .. n1) * (2 / n1) - 1) * spread + center
13 *arFill { arg n, function, spread=1, level=1, center=0.0, levelComp=true;
14 ^this.ar((function ! n), spread, level, center, levelComp)
19 *ar { arg numChans=4, inArray, spread=1, level = 1, width = 2, center = 0.0,
20 orientation = 0.5, levelComp=true;
22 var n, n1; n = inArray.size.max(2); n1 = n-1;
23 if (levelComp, { level = level * n.reciprocal.sqrt });
25 "SplayZ is deprecated, because its geometry is wrong.
26 Please convert to SplayAz.".inform;
31 ((0 .. n1) * (2 / n1) - 1) * spread + center,
38 *arFill { arg numChans=4, n, function, spread=1, level=1, width = 2, center=0.0,
39 orientation = 0.5, levelComp=true;
40 ^this.ar(numChans, function ! n, spread, level, width, center,
41 orientation, levelComp)
47 *ar { arg numChans=4, inArray, spread=1, level = 1, width = 2, center = 0.0,
48 orientation = 0.5, levelComp=true;
50 var n = inArray.size.max(1);
51 var moreOuts = numChans > n;
53 if (levelComp, { level = level * n.reciprocal.sqrt });
54 if (moreOuts, { inArray = inArray * level });
59 ((0 .. n-1) / n * 2) * spread + center,
63 ).sum * if (moreOuts, 1, level);
66 *arFill { arg numChans=4, n, function, spread=1, level=1, width = 2, center=0.0,
67 orientation = 0.5, levelComp=true;
68 ^this.ar(numChans, function ! n, spread, level, width, center,
69 orientation, levelComp)