diff options
Diffstat (limited to 'doc/tutorials')
-rw-r--r-- | doc/tutorials/intro/08.bang.pd | 4 | ||||
-rw-r--r-- | doc/tutorials/intro/12.right_to_left_order.pd | 8 | ||||
-rw-r--r-- | doc/tutorials/intro/15.inlets_and_outlets.pd | 18 | ||||
-rw-r--r-- | doc/tutorials/intro/17.atomic_messages.pd | 26 | ||||
-rw-r--r-- | doc/tutorials/intro/18.selectors.pd | 10 | ||||
-rw-r--r-- | doc/tutorials/intro/20.inlets_and_outlets.pd | 27 | ||||
-rw-r--r-- | doc/tutorials/intro/28.gui_objects.pd | 34 | ||||
-rw-r--r-- | doc/tutorials/intro/TODO | 5 |
8 files changed, 73 insertions, 59 deletions
diff --git a/doc/tutorials/intro/08.bang.pd b/doc/tutorials/intro/08.bang.pd index e0f259bb..37c38f24 100644 --- a/doc/tutorials/intro/08.bang.pd +++ b/doc/tutorials/intro/08.bang.pd @@ -1,4 +1,4 @@ -#N canvas 10 40 632 472 12; +#N canvas 10 40 636 476 12; #X obj 18 191 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 18 269 bang; @@ -23,7 +23,7 @@ on the object receiving the bang.; #X msg 279 350 send me!; #X obj 395 320 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; -#X floatatom 395 352 5 0 0 0 - - -; +#X msg 394 349 234; #X connect 0 0 11 0; #X connect 1 0 10 0; #X connect 7 0 8 0; diff --git a/doc/tutorials/intro/12.right_to_left_order.pd b/doc/tutorials/intro/12.right_to_left_order.pd index bfae4b27..32379786 100644 --- a/doc/tutorials/intro/12.right_to_left_order.pd +++ b/doc/tutorials/intro/12.right_to_left_order.pd @@ -1,4 +1,4 @@ -#N canvas 10 40 624 464 12; +#N canvas 10 40 628 468 12; #X obj 165 185 bng 25 250 50 0 empty empty empty -2 -8 1 10 -24198 -1 -1; #X obj 165 225 trigger bang bang bang; @@ -13,10 +13,10 @@ top to bottom. Objects also output from right to left; #X obj 32 412 pddp/pddplink http://crca.ucsd.edu/~msp/Pd_documentation/x2.htm#s3.3 ; -#X text 10 118 The [trigger] object is used to enforce execution order. -If you need things to run in a certain sequence \, then you use a [trigger]. -; #X text 97 369 then check the Pd window to see the order; +#X text 11 119 The [trigger] object is used to enforce execution order. +If you need things to run in a certain sequence \, then use a [trigger]. +; #X connect 0 0 1 0; #X connect 1 0 4 0; #X connect 1 1 3 0; diff --git a/doc/tutorials/intro/15.inlets_and_outlets.pd b/doc/tutorials/intro/15.inlets_and_outlets.pd index 3ae0828d..9e6187d6 100644 --- a/doc/tutorials/intro/15.inlets_and_outlets.pd +++ b/doc/tutorials/intro/15.inlets_and_outlets.pd @@ -1,22 +1,22 @@ -#N canvas 10 40 620 460 12; +#N canvas 14 57 624 464 12; #N canvas 10 40 620 460 object 0; #X obj 175 99 inlet; #X obj 174 206 outlet; #X text 14 39 this object does nothing but pass data thru; #X connect 0 0 1 0; #X restore 366 208 pd object; -#N canvas 10 40 620 460 another 0; +#N canvas 10 40 628 468 another 0; #X obj 17 94 inlet; -#X obj 431 320 outlet; -#X obj 16 324 print; -#X text 9 28 this object says hello in the Pd window \, then passes -the data thru; +#X obj 471 382 outlet; +#X obj 16 386 print; +#X msg 16 354 hi from inside [pd another object]!; #X obj 16 182 trigger bang anything; -#X msg 16 292 hi from inside [pd another object]!; +#X text 9 28 This object first passes the data thru \, then says hi +in the Pd window.; #X connect 0 0 4 0; -#X connect 4 0 5 0; +#X connect 3 0 2 0; +#X connect 4 0 3 0; #X connect 4 1 1 0; -#X connect 5 0 2 0; #X restore 365 254 pd another object; #X obj 12 13 cnv 15 400 40 empty empty inlets_and_outlets 20 12 0 24 -228992 -66577 0; diff --git a/doc/tutorials/intro/17.atomic_messages.pd b/doc/tutorials/intro/17.atomic_messages.pd index 451cb3ef..49d64edc 100644 --- a/doc/tutorials/intro/17.atomic_messages.pd +++ b/doc/tutorials/intro/17.atomic_messages.pd @@ -1,6 +1,24 @@ -#N canvas 10 40 620 460 12; +#N canvas 10 40 624 464 12; #X obj 10 12 cnv 15 400 40 empty empty atomic_messages 20 12 0 24 -228992 -66577 0; -#X msg 27 81 bang; -#X msg 27 197 symbol atom; -#X msg 29 300 float 1.234; +#X msg 69 191 symbol atom; +#X msg 47 343 float 1.234; +#X text 15 76 To send one piece of data to an object \, send an atomic +message. There are atomic message to match each of the atom types. +; +#X symbolatom 61 233 10 0 0 0 - - -; +#X msg 54 165 atom; +#X text 172 232 <-- the symbol box expects a symbol message; +#X text 106 165 <-- this gives an error (check the Pd window); +#X text 196 190 <-- this works; +#X text 14 134 When using symbolic atoms \, the symbol message is essential: +; +#X floatatom 74 410 5 0 0 0 - - -; +#X msg 84 374 362; +#X text 17 273 When using numeric atoms \, the float message is optional. +This is because the float message is automatically implied when sending +a numeric atom:; +#X connect 1 0 4 0; +#X connect 2 0 10 0; +#X connect 5 0 4 0; +#X connect 11 0 10 0; diff --git a/doc/tutorials/intro/18.selectors.pd b/doc/tutorials/intro/18.selectors.pd index 6a589ef4..eafd6f32 100644 --- a/doc/tutorials/intro/18.selectors.pd +++ b/doc/tutorials/intro/18.selectors.pd @@ -1,4 +1,4 @@ -#N canvas 10 40 624 464 12; +#N canvas 10 40 628 468 12; #X obj 8 -33 cnv 15 400 40 empty empty selectors 20 12 0 24 -228992 -66577 0; #N canvas 10 40 620 460 object 0; @@ -19,12 +19,12 @@ element in the message. It tells the object which receives that message what to do with it. A selector is basically like a command or a function. ; #X text 22 319 Here's the technical definition:; -#X text 22 350 The selector is a symbolic atom \, which is a non-numeric -string with no white space \, semicolons \, or commas. In the case -of messages whose first element is a numeric atom \, the selector is -implied.; #X text 220 129 <-- "output-left" is the selector; #X text 250 179 <-- "output-right" is the selector; +#X text 22 350 The selector is a symbolic atom \, which is a non-numeric +string with no white space \, semicolons \, or commas. In the case +of messages whose first element is a numeric atom \, the "float" selector +is implied.; #X connect 1 0 2 0; #X connect 1 1 3 0; #X connect 4 0 1 0; diff --git a/doc/tutorials/intro/20.inlets_and_outlets.pd b/doc/tutorials/intro/20.inlets_and_outlets.pd index f919eef3..c503c356 100644 --- a/doc/tutorials/intro/20.inlets_and_outlets.pd +++ b/doc/tutorials/intro/20.inlets_and_outlets.pd @@ -1,9 +1,9 @@ -#N canvas 10 40 620 460 12; +#N canvas 10 40 624 464 12; #X obj 10 10 cnv 15 400 40 empty empty inlets_and_outlets 20 12 0 24 -228992 -66577 0; #X text 14 72 When making your own objects and subpatchs \, you can create inlets and outlets using [inlet] and [outlet].; -#N canvas 10 40 620 460 look 0; +#N canvas 10 40 624 464 look 0; #X obj 24 34 inlet; #X obj 238 47 inlet; #X obj 469 41 inlet; @@ -25,24 +25,19 @@ create inlets and outlets using [inlet] and [outlet].; -1; #X obj 197 129 bng 20 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1; -#N canvas 10 40 620 460 look 0; -#X obj 24 34 inlet; +#N canvas 10 40 640 480 look 0; +#X obj 20 34 inlet; #X obj 334 33 inlet; #X obj 528 35 inlet; -#X obj 253 309 outlet; -#X msg 45 170 set; -#X obj 286 179 prepend add2; -#X msg 251 263; -#X obj 21 120 trigger bang bang anything; -#X connect 0 0 7 0; +#X obj 20 120 trigger bang anything; +#X obj 224 404 outlet; +#X obj 224 266 mapping/tolist; +#X connect 0 0 3 0; #X connect 1 0 5 0; #X connect 2 0 5 0; -#X connect 4 0 6 0; -#X connect 5 0 6 0; -#X connect 6 0 3 0; -#X connect 7 0 4 0; -#X connect 7 1 6 0; -#X connect 7 2 5 0; +#X connect 3 0 5 1; +#X connect 3 1 5 0; +#X connect 5 0 4 0; #X restore 199 376 pd look inside me; #X obj 198 416 pddp/print_long; #X msg 200 327 smokin!; diff --git a/doc/tutorials/intro/28.gui_objects.pd b/doc/tutorials/intro/28.gui_objects.pd index 950e5d4f..fd39c212 100644 --- a/doc/tutorials/intro/28.gui_objects.pd +++ b/doc/tutorials/intro/28.gui_objects.pd @@ -1,4 +1,4 @@ -#N canvas 10 40 640 480 10; +#N canvas 10 40 644 484 10; #X obj 420 33 import cyclone unauthorized; #X obj 11 57 cnv 15 600 650 empty empty empty 20 12 0 14 -262131 -66577 0; @@ -30,13 +30,13 @@ #X obj 49 404 button OK; #X obj 147 408 popup 124 25 #ffffff popup option; #X obj 333 404 ticker ; -#X obj 397 510 envgen 200 140 1 0 ; -#X obj 286 544 knob 32 32 0 127 0 0 empty empty empty 0 -8 32 8 -262144 +#X obj 324 529 envgen 200 140 1 0 ; +#X obj 491 454 knob 32 32 0 127 0 0 empty empty empty 0 -8 32 8 -262144 -1 -1 0 1; -#X text 280 518 [knob]; +#X text 485 428 [knob]; #X text 316 381 [ticker]; -#X text 463 486 [envgen]; -#X text 449 124 [cyclone/Scope~]; +#X text 390 505 [envgen]; +#X text 449 90 [cyclone/Scope~]; #X text 40 380 [button]; #X text 134 382 [popup]; #X text 250 107 [vu]; @@ -46,21 +46,21 @@ #X text 325 288 [hradio]; #X text 325 318 [hslider]; #X text 107 317 [vradio]; -#X obj 441 146 Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 51 135 +#X obj 441 112 Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 51 135 135 135 0; #X text 337 98 [nbx]; -#X obj 461 333 gcanvas 80 80; -#X text 472 308 [gcanvas]; -#X obj 21 472 grid grid1 200 0 199 200 0 199 1 1 1 10 10 103 520; -#X text 41 453 [unauthorized/grid]; -#X floatatom 462 420 5 0 0 0 - - -; -#X floatatom 534 421 5 0 0 0 - - -; +#X obj 461 299 gcanvas 80 80; +#X text 472 274 [gcanvas]; +#X obj 51 472 grid grid1 200 0 199 200 0 199 1 1 1 10 10 133 520; +#X text 71 453 [unauthorized/grid]; +#X floatatom 462 386 5 0 0 0 - - -; +#X floatatom 534 387 5 0 0 0 - - -; #X obj 10 10 cnv 15 400 40 empty empty gui_objects 20 12 0 24 -228992 -66577 0; -#X floatatom 214 680 5 0 0 0 - - -; -#X floatatom 21 679 5 0 0 0 - - -; -#X floatatom 286 582 5 0 0 0 - - -; -#X text 422 101 And various others:; +#X floatatom 244 680 5 0 0 0 - - -; +#X floatatom 51 679 5 0 0 0 - - -; +#X floatatom 491 492 5 0 0 0 - - -; +#X text 422 67 And various others:; #X connect 19 0 44 0; #X connect 35 0 39 0; #X connect 35 1 40 0; diff --git a/doc/tutorials/intro/TODO b/doc/tutorials/intro/TODO index 02c605df..c3e4e2f0 100644 --- a/doc/tutorials/intro/TODO +++ b/doc/tutorials/intro/TODO @@ -1,6 +1,4 @@ -- finish up content in 16.atoms.pd - - finish up 17.atomic_messages.pd - make new exercise in 23.EXERCISE.hmmmm @@ -13,6 +11,9 @@ - make looping sequence +- 20.inlets_and_outlets: explain the message building, prepend, add2, set, + etc. probalby, I should make a patch or two before that about message + buildling |