69 lines
1.2 KiB
Text
69 lines
1.2 KiB
Text
|
class:: Ball
|
||
|
summary:: physical model of bouncing object
|
||
|
categories:: UGens>Filters>Nonlinear, UGens>Generators>PhysicalModels
|
||
|
related:: Classes/TBall, Classes/Spring
|
||
|
|
||
|
Description::
|
||
|
Ball models the path of a bouncing object that is reflected by a vibrating surface.
|
||
|
|
||
|
classmethods::
|
||
|
private:: categories
|
||
|
|
||
|
method:: ar, kr
|
||
|
|
||
|
argument::in
|
||
|
modulated surface level
|
||
|
|
||
|
argument::g
|
||
|
gravity
|
||
|
|
||
|
argument::damp
|
||
|
damping on impact
|
||
|
|
||
|
argument::friction
|
||
|
proximity from which on attraction to surface starts
|
||
|
|
||
|
examples::
|
||
|
mouse x controls switch of level:
|
||
|
code::
|
||
|
(
|
||
|
{
|
||
|
var f, sf;
|
||
|
sf = K2A.ar(MouseX.kr > 0.5) > 0;
|
||
|
f = Ball.ar(sf, MouseY.kr(0.01, 20, 1), 0.01);
|
||
|
f = f * 10 + 500;
|
||
|
SinOsc.ar(f, 0, 0.2)
|
||
|
}.play;
|
||
|
)
|
||
|
::
|
||
|
|
||
|
mouse x controls modulation rate, mouse y controls gravity:
|
||
|
code::
|
||
|
(
|
||
|
{
|
||
|
var f, sf, g;
|
||
|
sf = LFNoise0.ar(MouseX.kr(1, 100, 1));
|
||
|
g = MouseY.kr(0.1, 10, 1);
|
||
|
f = Ball.ar(sf, g, 0.01, 0.01);
|
||
|
f = f * 140 + 500;
|
||
|
SinOsc.ar(f, 0, 0.2)
|
||
|
}.play;
|
||
|
)
|
||
|
::
|
||
|
|
||
|
the general german police choir. mouse x controls damping, mouse y controls gravity:
|
||
|
code::
|
||
|
(
|
||
|
{
|
||
|
var f, sf, g;
|
||
|
sf = LFPulse.ar(0.6, 0.2, 0.5);
|
||
|
g = MouseY.kr(0.1, 10, 1);
|
||
|
d = MouseX.kr(0.0001, 1, 1);
|
||
|
f = Ball.ar(sf, g, d);
|
||
|
f = f * 140 + 400;
|
||
|
SinOsc.ar(f, 0, 0.2)
|
||
|
}.play;
|
||
|
)
|
||
|
::
|
||
|
|