Merge pull request #506 from andrewcsmith/patch-2
[supercollider.git] / HelpSource / Classes / Ball.schelp
blob4e6c53228dfd6b0babbb6d2ae306e709d19b4730
1 class:: Ball
2 summary:: physical model of bouncing object
3 categories:: UGens>Filters>Nonlinear, UGens>Generators>PhysicalModels
4 related:: Classes/TBall, Classes/Spring
6 Description::
7 Ball models the path of a bouncing object that is reflected by a vibrating surface.
9 classmethods::
10 private:: categories
12 method:: ar, kr
14 argument::in
15 modulated surface level
17 argument::g
18 gravity
20 argument::damp
21 damping on impact
23 argument::friction
24 proximity from which on attraction to surface starts
26 examples::
27 mouse x controls switch of level:
28 code::
31         var f, sf;
32         sf = K2A.ar(MouseX.kr > 0.5) > 0;
33         f = Ball.ar(sf, MouseY.kr(0.01, 20, 1), 0.01);
34         f = f * 10 + 500;
35         SinOsc.ar(f, 0, 0.2)
36 }.play;
40 mouse x controls modulation rate, mouse y controls gravity:
41 code::
44         var f, sf, g;
45         sf = LFNoise0.ar(MouseX.kr(1, 100, 1));
46         g = MouseY.kr(0.1, 10, 1);
47         f = Ball.ar(sf, g, 0.01, 0.01);
48         f = f * 140 + 500;
49         SinOsc.ar(f, 0, 0.2)
50 }.play;
54 the general german police choir. mouse x controls damping, mouse y controls gravity:
55 code::
58         var f, sf, g;
59         sf = LFPulse.ar(0.6, 0.2, 0.5);
60         g = MouseY.kr(0.1, 10, 1);
61         d = MouseX.kr(0.0001, 1, 1);
62         f = Ball.ar(sf, g, d);
63         f = f * 140 + 400;
64         SinOsc.ar(f, 0, 0.2)
65 }.play;