From 32c0db6c582f221a5e572c532e737b6033742b5b Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Fri, 3 Sep 2010 21:54:57 +0000 Subject: added example of instrument built from mouse data and mapping objects svn path=/trunk/externals/mapping/; revision=13962 --- Makefile | 2 +- examples/mouse_instrument.pd | 72 ++++++++++++++++++++ examples/paf.control.pd | 157 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 230 insertions(+), 1 deletion(-) create mode 100644 examples/mouse_instrument.pd create mode 100644 examples/paf.control.pd diff --git a/Makefile b/Makefile index 0084820..6befa9b 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ SOURCES = PDOBJECTS = amplitude_n.pd autoscale.pd breakpoint.pd breakpoint_smooth.pd buttongate.pd bytemask.pd cartesian2spherical.pd center_point.pd circular.pd circular_seat.pd circular_sigmoid.pd correlation.pd cubic_seat.pd curve_draw.pd curve_exp.pd curve_fade.pd curve_graph.pd curve_log.pd curve.pd debounce.pd debytemask.pd degrees2mapping.pd delay_n.pd desegment.pd diff_n.pd disjoin.pd distance2d.pd distance_n.pd distance.pd downsample.pd elliptic.pd elliptic_seat.pd elliptic_sigmoid.pd env-.pd env.pd env+.pd exponential_curve.pd exponential_seat.pd exponential_sigmoid.pd fir.pd gaussian.pd hysteresis.pd iir.pd join.pd keygate.pd last_n.pd listto.pd local_max.pd local_min.pd logistic_sigmoid.pd lop.pd mapping2degrees.pd mapping2midi.pd mapping2radians.pd max_n.pd mean_n.pd median_3.pd median_5.pd median_7.pd median_n.pd median.pd midi2mapping.pd min_n.pd multi_slider.pd nl.pd notescale.pd one2four.pd one2three.pd one2two.pd oscillo.pd pmattractor_2d.pd pmattractor_3d.pd pmcloud_1d.pd pmcloud_2d.pd pmcloud_3d.pd pmcube_3d.pd pmfilter_2d.pd pmfilter_3d.pd pmfilter.pd pmmulti_stable_2d.pd pmopen_string_1d.pd pmrepulsor_1d.pd pmrepulsor_2d.pd pmrepulsor_3d.pd pmrigid_open_string_2d.pd pmrigid_string_2d.pd pmsquare_2d.pd pmstring_1d.pd polar2cartesian.pd polar.pd quadratic.pd quartic.pd radians2mapping.pd rec_play.pd resample.pd reverse.pd rnd-stat.pd segment.pd sigmoide.pd simplified_cubic_seat.pd simplified_quadratic.pd sinusoid.pd smooth_double.pd smooth.pd smooth_triple.pd speedlimiter-.pd speedlimiter.pd speedlimiter+.pd spherical2cartesian.pd spiral.pd split_n.pd stepper.pd stream_check.pd test_n.pd threshold_max.pd threshold.pd timeroll.pd tolist.pd track_max.pd track_min.pd upsample.pd variance.pd vector.pd wave_loop.pd wave.pd # example patches and related files, in the 'examples' subfolder -EXAMPLES = +EXAMPLES = mouse_instrument.pd paf.control.pd # manuals and related files, in the 'manual' subfolder MANUAL = diff --git a/examples/mouse_instrument.pd b/examples/mouse_instrument.pd new file mode 100644 index 0000000..4f4c588 --- /dev/null +++ b/examples/mouse_instrument.pd @@ -0,0 +1,72 @@ +#N canvas 382 22 691 642 12; +#X declare -lib mapping; +#X obj 532 14 import mapping; +#X obj 33 363 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X obj 65 390 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X obj 259 440 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X obj 310 592 dac~; +#X text 321 7 pddp/dsp; +#X obj 388 9 pddp/dsp; +#X obj 35 490 paf.control; +#X obj 181 13 tgl 15 0 empty empty empty 17 7 0 10 -204786 -1 -1 0 +1; +#X obj 181 83 route button motion; +#X obj 245 110 route x y; +#X obj 197 162 autoscale; +#X floatatom 202 185 5 0 0 0 - - -; +#X obj 275 165 autoscale; +#X floatatom 280 188 5 0 0 0 - - -; +#X obj 30 280 notescale 60 80; +#X obj 322 549 *~; +#X obj 340 523 line~; +#X obj 507 342 pack 0 50; +#X obj 497 291 exponential_curve 0.7; +#X floatatom 294 459 5 0 0 0 - - -; +#X obj 241 332 notescale 40 70; +#X obj 245 288 disjoin 0.9; +#X obj 353 332 notescale 70 100; +#X msg 587 341 \$1 50; +#X obj 498 377 pddp/print; +#X floatatom 78 414 5 0 0 0 - - -; +#X obj 79 333 notescale 75 95; +#X obj 81 309 circular_sigmoid 0.6; +#X obj 35 235 stepper 20 0.3; +#X obj 181 51 hcs/cursor; +#X text 122 489 <-- the synthesizer; +#X text 76 8 start here -->; +#X text 8 34 then move your mouse!; +#X connect 1 0 7 0; +#X connect 2 0 7 1; +#X connect 2 0 26 0; +#X connect 3 0 7 2; +#X connect 3 0 20 0; +#X connect 7 0 16 0; +#X connect 8 0 30 0; +#X connect 9 1 10 0; +#X connect 10 0 11 0; +#X connect 10 1 13 0; +#X connect 11 0 12 0; +#X connect 11 0 28 0; +#X connect 11 0 29 0; +#X connect 13 0 14 0; +#X connect 14 0 19 0; +#X connect 14 0 22 0; +#X connect 15 0 1 0; +#X connect 16 0 4 0; +#X connect 16 0 4 1; +#X connect 17 0 16 1; +#X connect 18 0 17 0; +#X connect 18 0 25 0; +#X connect 19 0 18 0; +#X connect 19 0 24 0; +#X connect 21 0 3 0; +#X connect 22 0 21 0; +#X connect 22 1 23 0; +#X connect 23 0 3 0; +#X connect 27 0 2 0; +#X connect 28 0 27 0; +#X connect 29 0 15 0; +#X connect 30 0 9 0; diff --git a/examples/paf.control.pd b/examples/paf.control.pd new file mode 100644 index 0000000..67eadf1 --- /dev/null +++ b/examples/paf.control.pd @@ -0,0 +1,157 @@ +#N canvas 742 43 605 628 12; +#X obj 90 423 cos~; +#X obj 90 400 *~; +#X obj 133 423 cos~; +#X obj 188 368 wrap~; +#X obj 152 368 -~; +#X obj 133 400 +~; +#X obj 126 453 -~; +#X obj 146 485 *~; +#X obj 108 485 +~; +#X obj 152 336 samphold~; +#X floatatom 152 136 4 0 127 0 - - -; +#X obj 152 203 line~; +#X obj 152 180 pack 0 50; +#X obj 43 279 phasor~; +#X floatatom 43 185 4 0 127 0 - - -; +#X text 34 146 fundamental; +#X floatatom 350 199 4 0 127 0 - - -; +#X obj 350 270 line~; +#X obj 261 399 *~; +#X obj 350 247 pack 0 50; +#N canvas 94 264 600 388 make-table 0; +#X msg 81 44 bang; +#X obj 81 73 t b b; +#X obj 159 142 f; +#X obj 197 142 + 1; +#X msg 175 112 0; +#X obj 81 102 until; +#X obj 161 177 t f f; +#X obj 76 306 tabwrite bell-curve; +#X obj 52 270 expr exp(-$f1*$f1); +#X obj 63 168 sel 199; +#X obj 51 241 expr ($f1-100)/25; +#N canvas 0 22 450 300 (subpatch) 0; +#X array bell-curve 200 float 1; +#A 0 1.12535e-07 1.54727e-07 2.12059e-07 2.89706e-07 3.94519e-07 5.35535e-07 +7.24633e-07 9.77371e-07 1.31404e-06 1.76105e-06 2.35258e-06 3.13275e-06 +4.15832e-06 5.50199e-06 7.25659e-06 9.54016e-06 1.25023e-05 1.63317e-05 +2.1266e-05 2.76026e-05 3.57128e-05 4.60584e-05 5.92113e-05 7.58768e-05 +9.69224e-05 0.00012341 0.000156634 0.000198167 0.000249912 0.000314163 +0.000393669 0.000491721 0.000612231 0.000759842 0.000940028 0.00115923 +0.00142498 0.00174605 0.00213263 0.00259648 0.00315111 0.00381201 0.00459678 +0.0055254 0.0066204 0.00790705 0.0094136 0.0111714 0.013215 0.0155826 +0.0183156 0.0214592 0.0250621 0.0291763 0.0338573 0.0391639 0.0451575 +0.0519019 0.0594631 0.0679081 0.0773047 0.0877205 0.0992216 0.111872 +0.125732 0.140858 0.1573 0.1751 0.194291 0.214896 0.236928 0.260383 +0.285247 0.311486 0.339053 0.367879 0.397882 0.428956 0.46098 0.493812 +0.527292 0.561244 0.595473 0.62977 0.663916 0.697676 0.730811 0.763074 +0.794216 0.823987 0.852144 0.878447 0.902668 0.924595 0.944027 0.960789 +0.974725 0.985703 0.99362 0.998401 1 0.998401 0.99362 0.985703 0.974725 +0.960789 0.944027 0.924595 0.902668 0.878447 0.852144 0.823987 0.794216 +0.763074 0.730811 0.697676 0.663916 0.62977 0.595473 0.561244 0.527292 +0.493812 0.46098 0.428956 0.397882 0.367879 0.339053 0.311486 0.285247 +0.260383 0.236928 0.214896 0.194291 0.1751 0.1573 0.140858 0.125732 +0.111872 0.0992216 0.0877205 0.0773047 0.0679081 0.0594631 0.0519019 +0.0451575 0.0391639 0.0338573 0.0291763 0.0250621 0.0214592 0.0183156 +0.0155826 0.013215 0.0111714 0.0094136 0.00790705 0.0066204 0.0055254 +0.00459678 0.00381201 0.00315111 0.00259648 0.00213263 0.00174605 0.00142498 +0.00115923 0.000940028 0.000759842 0.000612231 0.000491721 0.000393669 +0.000314163 0.000249912 0.000198167 0.000156634 0.00012341 9.69224e-05 +7.58768e-05 5.92113e-05 4.60584e-05 3.57128e-05 2.76026e-05 2.1266e-05 +1.63317e-05 1.25023e-05 9.54016e-06 7.25659e-06 5.50199e-06 4.15832e-06 +3.13275e-06 2.35258e-06 1.76105e-06 1.31404e-06 9.77371e-07 7.24633e-07 +5.35535e-07 3.94519e-07 2.89706e-07 2.12059e-07 1.54727e-07; +#X coords 0 1 199 0 200 140 1; +#X restore 342 85 graph; +#X connect 0 0 1 0; +#X connect 1 0 5 0; +#X connect 1 1 4 0; +#X connect 2 0 3 0; +#X connect 2 0 6 0; +#X connect 2 0 9 0; +#X connect 3 0 2 1; +#X connect 4 0 2 1; +#X connect 5 0 2 0; +#X connect 6 0 10 0; +#X connect 6 1 7 1; +#X connect 8 0 7 0; +#X connect 9 0 5 1; +#X connect 10 0 8 0; +#X restore 499 462 pd make-table; +#X obj 261 373 cos~; +#X obj 261 348 -~ 0.25; +#X obj 261 425 +~ 100; +#X obj 261 448 tabread4~ bell-curve; +#X obj 147 514 *~; +#X text 293 473 waveshaper; +#X obj 43 209 mtof; +#X obj 174 228 expr 1/$f1; +#X obj 152 156 mtof; +#X text 147 113 freq.; +#X obj 152 252 *~; +#X text 348 172 bandwidth; +#X obj 350 221 mtof; +#X obj 350 306 *~; +#X obj 350 330 *~ 25; +#X text 390 305 divide by fundamental; +#X text 408 329 range for table; +#X text 327 424 offset to middle of table; +#X text 159 274 C.F. relative; +#X text 160 290 to fundamental; +#X text 32 161 (MIDI units); +#X text 183 512 ring mod; +#X obj 261 323 *~ 0.5; +#X obj 43 74 inlet; +#X obj 353 76 inlet; +#X obj 154 76 inlet; +#X obj 148 590 outlet~; +#X text 37 51 fundamental; +#X text 196 73 center freq; +#X text 398 75 bandwidth; +#X text 41 11 used for mouse_instrument.pd \, take from doc/3.audio.examples/F13.paf.control.pd +; +#X connect 0 0 6 1; +#X connect 0 0 8 0; +#X connect 1 0 5 0; +#X connect 1 0 0 0; +#X connect 2 0 6 0; +#X connect 3 0 4 1; +#X connect 3 0 7 1; +#X connect 4 0 1 1; +#X connect 5 0 2 0; +#X connect 6 0 7 0; +#X connect 7 0 8 1; +#X connect 8 0 25 0; +#X connect 9 0 4 0; +#X connect 9 0 3 0; +#X connect 10 0 29 0; +#X connect 11 0 31 0; +#X connect 12 0 11 0; +#X connect 13 0 9 1; +#X connect 13 0 1 0; +#X connect 13 0 5 1; +#X connect 13 0 43 0; +#X connect 14 0 27 0; +#X connect 16 0 33 0; +#X connect 17 0 34 0; +#X connect 18 0 23 0; +#X connect 19 0 17 0; +#X connect 21 0 18 0; +#X connect 22 0 21 0; +#X connect 23 0 24 0; +#X connect 24 0 25 1; +#X connect 25 0 47 0; +#X connect 27 0 28 0; +#X connect 27 0 13 0; +#X connect 28 0 31 1; +#X connect 28 0 34 1; +#X connect 29 0 12 0; +#X connect 31 0 9 0; +#X connect 33 0 19 0; +#X connect 34 0 35 0; +#X connect 35 0 18 1; +#X connect 43 0 22 0; +#X connect 44 0 14 0; +#X connect 45 0 16 0; +#X connect 46 0 10 0; -- cgit v1.2.1