class:: PanAz summary:: Azimuth panner related:: Classes/Balance2, Classes/LinPan2, Classes/Pan2, Classes/Pan4 categories:: UGens>Multichannel>Panners Description:: Multichannel equal power panner. classmethods:: method::ar, kr argument::numChans Number of output channels. argument::in The input signal. argument::pos pan position. Channels are evenly spaced over a cyclic period of 2.0 in pos with 0.0 equal to channel zero and 2.0/numChans equal to channel 1, 4.0/numChans equal to channel 2, etc. Thus all channels will be cyclically panned through if a sawtooth wave from -1 to +1 is used to modulate the pos. argument::level A control rate level input. argument::width The width of the panning envelope. Nominally this is 2.0 which pans between pairs of adjacent speakers. Width values greater than two will spread the pan over greater numbers of speakers. Width values less than one will leave silent gaps between speakers. argument::orientation Should be zero if the front is a vertex of the polygon. The first speaker will be directly in front. Should be 0.5 if the front bisects a side of the polygon. Then the first speaker will be the one left of center. section::Comparison to Pan2 Despite a certain similarity, link::Classes/Pan2:: and link::Classes/PanAz:: with 2 channels behave differently. code:: // one full cycle for PanAz: from 0 to 1 { PanAz.ar(2, DC.ar(1), Line.ar(0, 1, 0.1)) }.plot(0.1) // one full cycle for Pan2: from -1 to 1 and back to -1 { Pan2.ar(DC.ar(1), EnvGen.kr(Env([-1, 1, -1], [0.05, 0.05]))) }.plot(0.1) // in other words, while Pan2 makes one full transition { Pan2.ar(DC.ar(1), Line.ar(-1, 1, 0.1)) }.plot(0.1) // we need only a half one in PanAz: { PanAz.ar(2, DC.ar(1), Line.ar(0, 1/2, 0.1)) }.plot(0.1) :: Examples:: code:: // five channel circular panning s.boot; ( { PanAz.ar( 5, // numChans ClipNoise.ar, // in LFSaw.kr(MouseX.kr(0.2, 8, 'exponential')), // pos 0.5, // level 3 // width ); }.play; s.scope; ) ::