[PD-cvs] doc/pddp all_about_looping.pd,1.1,1.2

Hans-Christoph Steiner eighthave at users.sourceforge.net
Tue Apr 26 22:28:38 CEST 2005


Update of /cvsroot/pure-data/doc/pddp
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21291

Modified Files:
	all_about_looping.pd 
Log Message:
better documented first loop, got 2nd loop working properly

Index: all_about_looping.pd
===================================================================
RCS file: /cvsroot/pure-data/doc/pddp/all_about_looping.pd,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** all_about_looping.pd	27 May 2004 16:53:47 -0000	1.1
--- all_about_looping.pd	26 Apr 2005 20:28:35 -0000	1.2
***************
*** 1,9 ****
! #N canvas 255 95 856 623 10;
  #X text 460 79 looping objects:;
  #X obj 462 101 until;
  #X obj 572 102 loop;
! #X obj 458 504 susloop~;
! #X obj 527 504 loop~;
! #X text 455 483 for looping samples:;
  #X obj 0 2 cnv 15 850 20 empty empty all_about_looping 20 10 1 18 -233017
  -66577 0;
--- 1,9 ----
! #N canvas 255 95 864 631 10;
  #X text 460 79 looping objects:;
  #X obj 462 101 until;
  #X obj 572 102 loop;
! #X obj 437 504 susloop~;
! #X obj 506 504 loop~;
! #X text 434 483 for looping samples:;
  #X obj 0 2 cnv 15 850 20 empty empty all_about_looping 20 10 1 18 -233017
  -66577 0;
***************
*** 12,28 ****
  #X obj 519 127 gem_counter;
  #X obj 604 127 cxc.counter;
! #X obj 463 551 pdp_loop;
! #X obj 534 551 pdp_qtloop~;
! #X obj 572 504 loopsampler;
! #X text 480 395 examples:;
! #X obj 480 424 test-loop~;
  #X obj 695 126 for++;
! #X obj 60 167 +;
! #X floatatom 89 170 5 0 0 0 - - -;
! #X msg 59 138 1;
! #X obj 139 186 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
  -1;
! #X msg 98 138 0;
! #X obj 60 209 t f f;
  #X text 214 302 X;
  #X text 76 306 Y;
--- 12,27 ----
  #X obj 519 127 gem_counter;
  #X obj 604 127 cxc.counter;
! #X obj 442 551 pdp_loop;
! #X obj 513 551 pdp_qtloop~;
! #X obj 551 504 loopsampler;
! #X obj 429 424 test-loop~;
  #X obj 695 126 for++;
! #X obj 90 167 +;
! #X floatatom 119 170 5 0 0 0 - - -;
! #X msg 89 138 1;
! #X obj 169 186 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
  -1;
! #X msg 128 138 0;
! #X obj 90 209 t f f;
  #X text 214 302 X;
  #X text 76 306 Y;
***************
*** 30,37 ****
  #N canvas 0 22 450 300 graph2 0;
  #X array \$0-array 100 float 1;
! #A 0 0 0.950467 0.973181 0.989041 0.997937 0.999806 0.994635 0.982459
! 0.963366 0.937489 0.905011 0.866159 0.821209 0.770476 0.714317 0.653128
! 0.587341 0.517417 0.44385 0.367158 0.28788 0.206575 0.123815 0.040184
! 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
--- 29,36 ----
  #N canvas 0 22 450 300 graph2 0;
  #X array \$0-array 100 float 1;
! #A 0 0 0.946674 0.967388 0.983095 0.993714 0.999191 0.999497 0.99463
! 0.984615 0.969505 0.949378 0.924337 0.894513 0.860059 0.821154 0.778
! 0.730819 0.679856 0.625375 0.567657 0.507002 0.443722 0.378147 0.310614
! 0.241474 0.171084 0.0998083 0.0280163 0.000796274 0.000796274 0.000796274
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
***************
*** 45,109 ****
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
! 0.000796274 0.000796274 0.000796274 0.000796274;
  #X coords 0 1 99 -1 300 100 1;
  #X restore 82 405 graph;
  #X obj 90 314 tabwrite \$0-array;
! #X obj 60 186 moses 100;
! #X obj 59 111 bng 20 250 50 0 empty empty start 0 -6 1 10 -4033 -1
  -1;
! #X text 136 166 <-- counter;
! #X text 158 186 <-- split at array size to stop;
! #X text 186 199 and reset counter to 0;
  #X text 57 336 ^--bang for next step;
- #X obj 39 198 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
- -1;
- #X text 422 36 inf;
  #X obj 60 249 expr abs(cos( min (1.57 \, ($f1 / $f2 - 0.4)) ) );
  #X obj 263 227 hsl 128 15 1 127 0 1 empty empty change_graph_shape
! -130 8 1 12 -208896 -1 -1 1100 0;
! #X text 7 29 Programming with Pd is a different way of thinking that
! standard procedural or object-oriented programming. Looping illustrates
! this. Instead of setting up a C-like [counter] or [for++] \, set up
! a condition to continue the loop \, and a condition that ends the loop.
! ;
  #X text 13 362 In this example \, the "bang" from [t b f] continues
  the loop. The [moses 100] ends the loop.;
! #X text 17 601 by Hans-Christoph Steiner <hans at at.or.at>;
! #X text 629 603 updated for Pd version 0.37.1;
! #X text 125 138 <-- stop;
! #X text 451 466 There are also specific loops for samples and video:
  ;
! #X text 458 530 video looping:;
! #X obj 660 504 xgroove~;
! #X obj 619 353 readsf~;
! #X obj 431 338 bng 15 250 50 0 empty empty play_sound 17 7 0 10 -4033
! -1 -1;
! #X obj 619 328 spigot;
! #X obj 656 306 tgl 15 0 empty empty allow_looping 17 7 0 10 -4033 -1
  -1 0 1;
! #X text 429 271 For the most basic looping of samples \, you can use
  [readsf~]:;
! #X msg 430 307 open ../sound/voice.wav;
! #X text 664 373 ^- "bang"ed when complete;
! #X connect 17 0 18 0;
! #X connect 17 0 28 0;
! #X connect 18 0 17 1;
! #X connect 19 0 17 0;
! #X connect 20 0 21 0;
! #X connect 21 0 18 0;
! #X connect 21 0 17 1;
! #X connect 22 0 36 0;
! #X connect 22 1 27 1;
! #X connect 25 0 34 0;
! #X connect 25 1 27 0;
! #X connect 28 0 22 0;
! #X connect 28 1 20 0;
! #X connect 29 0 19 0;
! #X connect 34 0 19 0;
! #X connect 36 0 25 0;
! #X connect 37 0 36 1;
! #X connect 46 1 48 0;
! #X connect 47 0 46 0;
  #X connect 48 0 46 0;
! #X connect 49 0 48 1;
! #X connect 51 0 46 0;
--- 44,118 ----
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
  0.000796274 0.000796274 0.000796274 0.000796274 0.000796274 0.000796274
! 0.000796274 0.000796274 0.000796274;
  #X coords 0 1 99 -1 300 100 1;
  #X restore 82 405 graph;
  #X obj 90 314 tabwrite \$0-array;
! #X obj 90 186 moses 100;
! #X obj 89 111 bng 20 250 50 0 empty empty start 0 -6 1 10 -4033 -1
  -1;
! #X text 166 166 <-- counter;
! #X text 188 186 <-- split at array size to stop;
! #X text 216 199 and reset counter to 0;
  #X text 57 336 ^--bang for next step;
  #X obj 60 249 expr abs(cos( min (1.57 \, ($f1 / $f2 - 0.4)) ) );
  #X obj 263 227 hsl 128 15 1 127 0 1 empty empty change_graph_shape
! -130 8 1 12 -208896 -1 -1 1300 0;
  #X text 13 362 In this example \, the "bang" from [t b f] continues
  the loop. The [moses 100] ends the loop.;
! #X text 155 138 <-- stop;
! #X text 430 466 There are also specific loops for samples and video:
  ;
! #X text 437 530 video looping:;
! #X obj 639 504 xgroove~;
! #X obj 619 373 readsf~;
! #X obj 619 306 spigot;
! #X obj 656 284 tgl 15 0 empty empty allow_looping 17 7 0 10 -4033 -1
  -1 0 1;
! #X text 429 251 For the most basic looping of samples \, you can use
  [readsf~]:;
! #X msg 628 350 open ../sound/voice.wav;
! #X text 664 393 ^- "bang"ed when complete;
! #X msg 592 350 1;
! #X obj 611 405 dac~;
! #X obj 592 328 t b b;
! #X obj 592 285 bng 20 250 50 0 empty empty start 0 -6 1 10 -4033 -1
! -1;
! #X text 226 608 released under the GNU GPL;
! #X text 9 594 (C) Copyright 2005 Hans-Christoph Steiner <hans at at.or.at>
! ;
! #X text 629 603 updated for Pd version 0.38.2;
! #X obj 38 201 bang;
! #X text 2 137 continue -->;
! #X text 7 29 Programming with Pd is a different way of thinking that
! standard procedural or object-oriented programming. Looping illustrates
! this. Instead of setting up a C-like [counter] or [for++] \, set up
! a condition to continue the loop \, and a condition that stops the
! loop.;
! #X text 429 395 other examples:;
! #X connect 16 0 17 0;
! #X connect 16 0 27 0;
! #X connect 17 0 16 1;
! #X connect 18 0 16 0;
! #X connect 19 0 20 0;
! #X connect 20 0 17 0;
! #X connect 20 0 16 1;
! #X connect 21 0 33 0;
! #X connect 21 1 26 1;
! #X connect 24 0 53 0;
! #X connect 24 1 26 0;
! #X connect 27 0 21 0;
! #X connect 27 1 19 0;
! #X connect 28 0 18 0;
! #X connect 33 0 24 0;
! #X connect 34 0 33 1;
! #X connect 40 0 47 0;
! #X connect 40 0 47 1;
! #X connect 40 1 41 0;
! #X connect 41 0 48 0;
! #X connect 42 0 41 1;
! #X connect 44 0 40 0;
! #X connect 46 0 40 0;
  #X connect 48 0 46 0;
! #X connect 48 1 44 0;
! #X connect 49 0 48 0;
! #X connect 53 0 18 0;





More information about the Pd-cvs mailing list