File: Ball.schelp

package info (click to toggle)
supercollider 1%3A3.11.2%2Brepack-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 71,152 kB
  • sloc: cpp: 387,846; lisp: 80,328; ansic: 76,515; sh: 22,779; python: 7,932; makefile: 2,333; perl: 1,123; javascript: 915; java: 677; xml: 582; yacc: 314; lex: 175; objc: 152; ruby: 136
file content (68 lines) | stat: -rw-r--r-- 1,219 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
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;
)
::