diff --git a/pd/doc/4.data.structures/07.sequencer.pd b/pd/doc/4.data.structures/07.sequencer.pd index 533d08b4cfbafa5e7fd383d9e5be2a1876909d3d..520d72341865196bc4eae36e8d31ec90d8389c1e 100644 --- a/pd/doc/4.data.structures/07.sequencer.pd +++ b/pd/doc/4.data.structures/07.sequencer.pd @@ -2,7 +2,7 @@ template-pitch array amp template-amp; #N struct template-pitch float x float y float w; #N struct template-amp float x float y float w; -#N canvas 424 19 448 576 10; +#N canvas 710 51 448 576 10; #N canvas 95 388 428 166 template-toplevel 0; #X obj 25 106 plot pitch voiceno 3 10 0; #X obj 25 133 plot amp 0 3 10 0; @@ -95,12 +95,23 @@ array pitch template-pitch array amp template-amp; #X msg 22 435 start; #X msg 73 435 stop; #N canvas 386 74 426 367 data 1; -#X scalar template-toplevel 3 86 0 \; 0 0 0 \; \; 0 0 0 \; \;; -#X scalar template-toplevel 14 80 0 \; 0 0 0 \; \; 0 0 0 \; \;; -#X scalar template-toplevel 38 43.25 0 \; 0 0 0 \; \; 0 0 0 \; \;; -#X scalar template-toplevel 64 80 0 \; 0 0 0 \; \; 0 0 0 \; \;; -#X scalar template-toplevel 142 105 0 \; 0 0 0 \; \; 0 0 0 \; \;; -#X scalar template-toplevel 319 63.5 0 \; 0 0 0 \; \; 0 0 0 \; \;; +#X scalar template-toplevel 22 86 900 \; 0 0 12 \; 10 0 12 \; \; 0 +0 0 \; 10 0 2.5 \; 11 0 0 \; \;; +#X scalar template-toplevel 33 80 990 \; 0 0 12 \; 10 0 12 \; \; 0 +0 2.5 \; 10 0 2.5 \; 11 0 0 \; \;; +#X scalar template-toplevel 57 43.25 90 \; 0 65 12 \; 100 10 0 \; 100 +10 12 \; 230 50 0 \; 230 10 3 \; 240 60 0 \; 240 25 10 \; 250 60 0 +\; 250 37 10 \; 260 65 0.5 \; 285 65 0.5 \; \; 1 0 2 \; 103 0 1 \; +195 0 2 \; 220 0 0.75 \; 225 0 1.25 \; 248 0 2.5 \; 251 0 2.25 \; 255 +0 0 \; 256 0 1.5 \; 260 0 0 \; 261 0 2 \; 265 0 0 \; 266 0 2.5 \; 270 +0 0 \; 271 0 3 \; 275 0 0 \; \;; +#X scalar template-toplevel 83 80 900 \; 0 5 0.25 \; 60 5 0.25 \; \; +0 0 0 \; 28 -0.25 3.5 \; 58 -0.25 0 \; \;; +#X scalar template-toplevel 161 105 900 \; 0 0 12 \; 70 -20 12 \; \; +0 0 0 \; 10 0 2.5 \; 20 0 0 \; 30 0 0 \; 40 0 2.5 \; 50 0 0 \; 60 0 +2.5 \; 70 0 0 \; \;; +#X scalar template-toplevel 338 63.5 909 \; 0 0 12 \; 50 0 12 \; \; +0 0 4 \; 10 0 2.5 \; 50 0 0 \; \;; #X coords 0 91.75 1 91.5 0 0 0; #X restore 22 318 pd data; #X obj 176 318 r tempo; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/australia.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/australia.pd index bf29d323e8b515ae1f5aab216c405fbd14dd39df..f9e70582202ca82a4f51d457a780bab38f62e37e 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/australia.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/australia.pd @@ -10,7 +10,7 @@ #X obj 504 611 struct australia float x float y; #X scalar australia 50 43 \;; #X obj 21 291 vradio 22 1 0 8 empty empty empty 0 -8 0 10 -262144 -1 --1 7; +-1 0; #X text 52 319 Northern Territory; #X text 52 341 Queensland; #X text 52 385 New South Wales; @@ -975,7 +975,7 @@ l -1.705 -2.129 l -1.276 1.491 l 0.853 0.212 V 224.637 z; #X scalar ausql 50 20 \;; #X scalar aust 50 20 \;; #X text 52 449 Reset; -#N canvas 159 139 578 421 sfx 1; +#N canvas 159 139 578 421 sfx 0; #X obj 435 118 noise~; #X obj 313 76 line~; #X obj 365 168 -~; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/bulbs.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/bulbs.pd index 252f96f170b63d5037d7e64bc996518a639ddb71..5c20a2628f6625a115789b14bcc2542ffa958224 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/bulbs.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/bulbs.pd @@ -1,80 +1,78 @@ #N struct bulb float x float y float r float g float b float a float s; -#N canvas 0 19 650 529 10; -#N canvas 808 20 538 662 bulb 0; -#X obj 87 137 loadbang; -#X obj 87 177 draw path M 100 100 m -43.3013 21.6987 a 50 50 0 1 1 +#N canvas -9 19 650 529 10; +#N canvas 644 19 538 195 bulb 0; +#X obj 87 87 loadbang; +#X msg 87 107 transform scale 0.5; +#X obj 87 57 outlet; +#X obj 87 21 struct bulb float x float y float r float g float b float +a float s; +#N canvas 342 361 450 300 (subpatch) 0; +#X obj 34 79 loadbang; +#X obj 34 119 draw path M 100 100 m -43.3013 21.6987 a 50 50 0 1 1 86.6025 0 c -6 12 -23.3013 18.3013 -23.3013 33.3013 a 50 50 0 0 1 -40 0 c 0 -15 -17.3013 -21.3013 -23.3013 -33.3013 z; -#X obj 87 223 loadbang; -#X msg 87 243; -#X obj 87 263 draw path M 100 100 m -20 82 a 50 50 0 0 0 40 -2 l 0 +#X obj 34 165 loadbang; +#X msg 34 185; +#X obj 34 205 draw path M 100 100 m -20 82 a 50 50 0 0 0 40 -2 l 0 3 -10 8 -20 0 -10 -8 z; -#X obj 87 296 loadbang; -#X msg 87 316; -#X obj 87 336 draw path M 100 100 m -20 55 a 50 50 0 0 0 40 -2 l 0 +#X obj 34 238 loadbang; +#X msg 34 258; +#X obj 34 278 draw path M 100 100 m -20 55 a 50 50 0 0 0 40 -2 l 0 27 a -50 50 0 0 1 -40 2 z; -#X obj 87 369 loadbang; -#X msg 87 389; -#X obj 87 409 draw path M 100 100 m -20 53 a 50 50 0 0 0 40 0; -#X obj 87 429 loadbang; -#X msg 87 449; -#X obj 87 469 draw path M 100 100 m -20 82 a 50 50 0 0 0 40 0; -#X obj 87 489 loadbang; -#X msg 87 509; -#X obj 87 529 draw path M 100 100 m -20 61.75 a 50 50 0 0 0 40 -2; -#X obj 87 549 loadbang; -#X msg 87 569; -#X obj 87 589 draw path M 100 100 m -20 70.75 a 50 50 0 0 0 40 -2; -#X obj 87 1355; -#X obj 87 609 loadbang; -#X msg 87 629; -#X obj 87 649 draw path M 100 100 m -20 79.75 a 50 50 0 0 0 40 -2; -#X obj 87 669 loadbang; -#X msg 87 689; -#X obj 87 709 draw path M 100 100 m -20 55 a 50 50 0 0 0 40 -2; -#X obj 87 729 loadbang; -#X msg 87 749; -#X obj 87 769 draw path M 100 100 m -20 64 a 50 50 0 0 0 40 -2; -#X obj 87 789 loadbang; -#X msg 87 809; -#X obj 87 829 draw path M 100 100 m -20 73 a 50 50 0 0 0 40 -2; -#X obj 87 849 loadbang; -#X msg 87 869; -#X obj 87 889 draw path M 100 100 m -20 82 a 50 50 0 0 0 40 -2; -#X obj 87 909 loadbang; -#X msg 87 929; -#X obj 87 949 draw path M 100 100 m -20 57.25 a 50 50 0 0 0 40 -2; -#X obj 87 969 loadbang; -#X msg 87 989; -#X obj 87 1009 draw path M 100 100 m -20 66.25 a 50 50 0 0 0 40 -2 -; -#X obj 87 1029 loadbang; -#X msg 87 1049; -#X obj 87 1069 draw path M 100 100 m -20 75.25 a 50 50 0 0 0 40 -2 +#X obj 34 311 loadbang; +#X msg 34 331; +#X obj 34 351 draw path M 100 100 m -20 53 a 50 50 0 0 0 40 0; +#X obj 34 371 loadbang; +#X msg 34 391; +#X obj 34 411 draw path M 100 100 m -20 82 a 50 50 0 0 0 40 0; +#X obj 34 431 loadbang; +#X msg 34 451; +#X obj 34 471 draw path M 100 100 m -20 61.75 a 50 50 0 0 0 40 -2; +#X obj 34 491 loadbang; +#X msg 34 511; +#X obj 34 531 draw path M 100 100 m -20 70.75 a 50 50 0 0 0 40 -2; +#X obj 34 551 loadbang; +#X msg 34 571; +#X obj 34 591 draw path M 100 100 m -20 79.75 a 50 50 0 0 0 40 -2; +#X obj 34 611 loadbang; +#X msg 34 631; +#X obj 34 651 draw path M 100 100 m -20 55 a 50 50 0 0 0 40 -2; +#X obj 34 671 loadbang; +#X msg 34 691; +#X obj 34 711 draw path M 100 100 m -20 64 a 50 50 0 0 0 40 -2; +#X obj 34 731 loadbang; +#X msg 34 751; +#X obj 34 771 draw path M 100 100 m -20 73 a 50 50 0 0 0 40 -2; +#X obj 34 791 loadbang; +#X msg 34 811; +#X obj 34 831 draw path M 100 100 m -20 82 a 50 50 0 0 0 40 -2; +#X obj 34 851 loadbang; +#X msg 34 871; +#X obj 34 891 draw path M 100 100 m -20 57.25 a 50 50 0 0 0 40 -2; +#X obj 34 911 loadbang; +#X msg 34 931; +#X obj 34 951 draw path M 100 100 m -20 66.25 a 50 50 0 0 0 40 -2; +#X obj 34 971 loadbang; +#X msg 34 991; +#X obj 34 1011 draw path M 100 100 m -20 75.25 a 50 50 0 0 0 40 -2 ; -#X obj 87 1089 loadbang; -#X msg 87 1109; -#X obj 87 1129 draw path M 100 100 m -20 59.5 a 50 50 0 0 0 40 -2; -#X obj 87 1149 loadbang; -#X msg 87 1169; -#X obj 87 1189 draw path M 100 100 m -20 68.5 a 50 50 0 0 0 40 -2; -#X obj 87 1209 loadbang; -#X msg 87 1229; -#X obj 87 1249 draw path M 100 100 m -20 77.5 a 50 50 0 0 0 40 -2; -#X obj 87 1269 loadbang; -#X msg 87 1289; -#X obj 87 1309 draw path M 100 100 m -43.3013 21.6987 a 50 50 0 1 1 +#X obj 34 1031 loadbang; +#X msg 34 1051; +#X obj 34 1071 draw path M 100 100 m -20 59.5 a 50 50 0 0 0 40 -2; +#X obj 34 1091 loadbang; +#X msg 34 1111; +#X obj 34 1131 draw path M 100 100 m -20 68.5 a 50 50 0 0 0 40 -2; +#X obj 34 1151 loadbang; +#X msg 34 1171; +#X obj 34 1191 draw path M 100 100 m -20 77.5 a 50 50 0 0 0 40 -2; +#X obj 34 1211 loadbang; +#X msg 34 1231; +#X obj 34 1251 draw path M 100 100 m -43.3013 21.6987 a 50 50 0 1 1 86.6025 0 c -6 12 -23.3013 18.3013 -23.3013 33.3013 l 0 28 -10 8 -20 0 -10 -8 0 -28 c 0 -15 -17.3013 -21.3013 -23.3013 -33.3013 z; -#X obj 87 77 loadbang; -#X obj 87 117 draw group; -#X msg 87 97 transform scale 0.5; -#X obj 120 47 outlet; -#X obj 120 11 struct bulb float x float y float r float g float b float -a float s; -#X msg 87 157 fill r g b a \, stroke-width s \, stroke r g b; -#X connect 0 0 62 0; +#X msg 34 99 fill r g b a \, stroke-width s \, stroke r g b; +#X connect 0 0 56 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 5 0 6 0; @@ -87,34 +85,35 @@ a float s; #X connect 15 0 16 0; #X connect 17 0 18 0; #X connect 18 0 19 0; +#X connect 20 0 21 0; #X connect 21 0 22 0; -#X connect 22 0 23 0; +#X connect 23 0 24 0; #X connect 24 0 25 0; -#X connect 25 0 26 0; +#X connect 26 0 27 0; #X connect 27 0 28 0; -#X connect 28 0 29 0; +#X connect 29 0 30 0; #X connect 30 0 31 0; -#X connect 31 0 32 0; +#X connect 32 0 33 0; #X connect 33 0 34 0; -#X connect 34 0 35 0; +#X connect 35 0 36 0; #X connect 36 0 37 0; -#X connect 37 0 38 0; +#X connect 38 0 39 0; #X connect 39 0 40 0; -#X connect 40 0 41 0; +#X connect 41 0 42 0; #X connect 42 0 43 0; -#X connect 43 0 44 0; +#X connect 44 0 45 0; #X connect 45 0 46 0; -#X connect 46 0 47 0; +#X connect 47 0 48 0; #X connect 48 0 49 0; -#X connect 49 0 50 0; +#X connect 50 0 51 0; #X connect 51 0 52 0; -#X connect 52 0 53 0; +#X connect 53 0 54 0; #X connect 54 0 55 0; -#X connect 55 0 56 0; -#X connect 57 0 59 0; -#X connect 59 0 58 0; -#X connect 61 0 60 0; -#X connect 62 0 1 0; +#X connect 56 0 1 0; +#X restore 87 128 group; +#X connect 0 0 1 0; +#X connect 1 0 4 0; +#X connect 3 0 2 0; #X restore 350 42 pd bulb; #X obj 350 66 route enter leave; #X obj 350 170 random 255; @@ -123,21 +122,21 @@ a float s; #X obj 350 134 trigger bang bang bang anything; #X obj 564 168 t a; #X obj 350 240 set bulb r g b a s; -#X scalar bulb 37 89 179 90 251 1 2 \;; -#X scalar bulb 207 89 106 151 55 1 2 \;; -#X scalar bulb 117 89 99 80 19 1 2 \;; -#X scalar bulb 37 189 217 29 78 1 2 \;; -#X scalar bulb 204 187 16 187 75 1 2 \;; -#X scalar bulb 117 189 240 80 48 1 2 \;; -#X scalar bulb 37 289 117 137 164 1 2 \;; -#X scalar bulb 207 289 26 137 146 1 2 \;; -#X scalar bulb 117 289 163 185 245 1 2 \;; -#X scalar bulb 287 289 237 164 142 1 2 \;; -#X scalar bulb 467 289 4 106 176 1 2 \;; -#X scalar bulb 377 289 244 154 225 1 2 \;; -#X scalar bulb 37 -11 199 4 205 1 2 \;; +#X scalar bulb 37 89 185 249 86 1 2 \;; +#X scalar bulb 207 89 152 43 161 1 2 \;; +#X scalar bulb 117 89 247 79 102 1 2 \;; +#X scalar bulb 37 189 184 112 128 1 2 \;; +#X scalar bulb 204 187 247 50 138 1 2 \;; +#X scalar bulb 117 189 116 180 26 1 2 \;; +#X scalar bulb 37 289 230 65 224 1 2 \;; +#X scalar bulb 207 289 144 9 157 1 2 \;; +#X scalar bulb 117 289 146 49 216 0.3 5 \;; +#X scalar bulb 287 289 163 141 80 1 2 \;; +#X scalar bulb 467 289 104 210 156 1 2 \;; +#X scalar bulb 377 289 70 140 69 1 2 \;; +#X scalar bulb 37 -11 184 112 128 1 2 \;; #X scalar bulb 207 -11 234 160 144 1 2 \;; -#X scalar bulb 117 -11 90 74 151 1 2 \;; +#X scalar bulb 117 -11 76 203 161 1 2 \;; #X obj 399 112 set bulb s a; #X obj 350 211 pack f f f 0.3 5; #X msg 399 91 2 1 \$1; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/clock.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/clock.pd index 33ae0a7c3e99fbbd3333842e89ebc8551d8838ec..596f44202e7dfeba7a17a8e274305a9af76f13e3 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/clock.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/clock.pd @@ -15,7 +15,7 @@ #X msg 391 82 stroke-width 4 \, stroke-linecap 1; #X obj 401 381 loadbang; #X msg 401 400 stroke "" \, fill gray50; -#X obj 487 228 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 +#X obj 487 228 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 488 294 f; #X obj 538 294 + 1; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/curve-bbox.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/curve-bbox.pd index da9430bafa0b9eb6eddf5bfaf82989974b0dc472..25f85ea9e8f9e44020b7bb5ffd0a1c2c86bdebcf 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/curve-bbox.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/curve-bbox.pd @@ -1,19 +1,20 @@ #N struct curvebbox float x float y; #N canvas -9 19 619 300 10; #X obj 151 34 struct curvebbox float x float y; -#X floatatom 189 84 5 0 0 0 - - -, f 5; -#X obj 189 128 draw path M 20 120 C 20 30 40 50 60 70; -#X msg 189 105 transform rotate \$1; -#X floatatom 441 110 5 0 0 0 - - -, f 5; -#X msg 441 131 transform rotate \$1; -#X obj 441 152 draw group; #X scalar curvebbox 47 43 \;; #X text 197 181 Short demo showing that Pd should find the correct bounding box for a transformed scalar in edit-mode.; #X text 197 221 Unfortunately it doesn't quite get it right for curves. You can see with rotation at some angles it doesn't include part of the curve.; -#X connect 1 0 3 0; -#X connect 3 0 2 0; -#X connect 4 0 5 0; +#N canvas 433 184 450 300 (subpatch) 0; +#X floatatom 163 116 5 0 0 0 - - -, f 5; +#X obj 163 160 draw path M 20 120 C 20 30 40 50 60 70; +#X msg 163 137 transform rotate \$1; +#X connect 0 0 2 0; +#X connect 2 0 1 0; +#X restore 417 94 group; +#X floatatom 408 21 5 0 0 0 - - -, f 5; +#X msg 408 42 transform translate \$1 0; #X connect 5 0 6 0; +#X connect 6 0 4 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/megaman.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/megaman.pd index 160a7739429883b66eb59af15c9f22732185ad61..bad620f606e96d09b7a091e724fd01b850bc8ae6 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/megaman.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/megaman.pd @@ -1,9 +1,8 @@ #N struct mm float x float y float a; -#N canvas 0 19 844 666 10; -#X obj 180 590 cnv 15 317 17 empty empty empty 20 12 0 14 -204786 -66577 +#N canvas -9 19 844 666 10; +#X obj -11 119 cnv 15 317 17 empty empty empty 20 12 0 14 -204786 -66577 0; -#X obj 0 24 drawsprite ./megaman 0 0 a; -#X scalar mm 73 495.272 3 \;; +#X scalar mm 301 434.322 3 \;; #X obj 333 -2 key; #X obj 510 348 pointer; #X obj 333 21 select 115; @@ -20,22 +19,24 @@ #X msg 258 42 0; #X obj 453 300 t a b; #X obj 333 62 metro 90; -#X obj 481 417 + 5; +#X obj 481 427 + 5; #X obj 525 270 t a b; #X obj 569 269 t a b; #X msg 561 378 4; #X msg 617 373 6; -#X text 181 590 Click the "s" key to make megaman run to the right! +#X text -10 119 Click the "s" key to make megaman run to the right! ; #X msg 510 327 traverse pd-megaman.pd \, next; #X obj 0 0 struct mm float x float y float a; #X obj 481 378 get mm x; -#X obj 453 446 set mm a x; +#X obj 453 456 set mm a x; #X obj 226 295 canvasinfo; #X msg 226 152 traverse pd-megaman.pd \, next; #X obj 226 173 pointer; #X obj 226 194 get mm x y; #X obj 292 221 + 20; +#X obj 98 192 cnv 15 40 60 empty empty empty 20 12 0 14 -233017 -66577 +0; #X obj 226 253 pack; #X msg 226 274 hitbox \$1 \$2; #X obj 226 316 route bang; @@ -44,6 +45,14 @@ #X obj 224 380 t b b b; #X obj 52 318 t b b; #X obj 52 360 line; +#X obj 138 192 cnv 15 40 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X obj 178 172 cnv 15 40 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X obj 28 212 cnv 15 40 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X obj 68 212 cnv 15 40 60 empty empty empty 20 12 0 14 -233017 -66577 +0; #X obj 385 93 spigot 1; #X msg 430 46 0; #X msg 460 67 1; @@ -96,78 +105,85 @@ #X connect 12 0 3 0; #X connect 12 0 10 0; #X restore 260 94 pd stand-and-blink; -#X text 527 443 ---------- 2014 Jonathan Wilkes ----------; -#X connect 3 0 5 0; -#X connect 4 0 27 0; -#X connect 4 0 28 2; -#X connect 5 0 18 0; +#X obj -12 232 cnv 15 40 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 487 147 ---------- 2014 Jonathan Wilkes ----------; +#X obj 26 73 draw sprite ./megaman 0 0 a; +#X msg 26 51 index a; +#X obj 26 29 loadbang; +#X connect 2 0 4 0; +#X connect 3 0 26 0; +#X connect 3 0 27 2; +#X connect 4 0 17 0; +#X connect 5 0 6 0; #X connect 6 0 7 0; +#X connect 7 0 5 1; #X connect 7 0 8 0; -#X connect 8 0 6 1; #X connect 8 0 9 0; -#X connect 9 0 10 0; -#X connect 9 1 11 0; -#X connect 9 2 12 0; -#X connect 9 3 13 0; -#X connect 10 0 17 0; -#X connect 11 0 17 0; +#X connect 8 1 10 0; +#X connect 8 2 11 0; +#X connect 8 3 12 0; +#X connect 9 0 16 0; +#X connect 10 0 16 0; +#X connect 11 0 19 0; #X connect 12 0 20 0; -#X connect 13 0 21 0; +#X connect 13 0 14 0; #X connect 14 0 15 0; -#X connect 15 0 16 0; -#X connect 16 0 18 0; -#X connect 17 0 28 0; -#X connect 17 1 25 0; -#X connect 18 0 42 0; -#X connect 18 0 63 0; -#X connect 19 0 28 1; -#X connect 20 0 17 0; +#X connect 15 0 17 0; +#X connect 16 0 27 0; +#X connect 16 1 24 0; +#X connect 17 0 46 0; +#X connect 17 0 67 0; +#X connect 18 0 27 1; +#X connect 19 0 16 0; +#X connect 19 1 21 0; +#X connect 20 0 16 0; #X connect 20 1 22 0; -#X connect 21 0 17 0; -#X connect 21 1 23 0; -#X connect 22 0 19 1; -#X connect 23 0 19 1; -#X connect 25 0 4 0; -#X connect 27 0 19 0; -#X connect 29 0 36 0; +#X connect 21 0 18 1; +#X connect 22 0 18 1; +#X connect 24 0 3 0; +#X connect 26 0 18 0; +#X connect 28 0 36 0; +#X connect 29 0 30 0; #X connect 30 0 31 0; -#X connect 31 0 32 0; -#X connect 32 0 58 0; -#X connect 32 1 33 0; -#X connect 33 0 34 1; +#X connect 31 0 62 0; +#X connect 31 1 32 0; +#X connect 32 0 34 1; #X connect 34 0 35 0; -#X connect 35 0 29 0; -#X connect 36 1 45 0; +#X connect 35 0 28 0; +#X connect 36 1 49 0; #X connect 37 0 38 0; -#X connect 38 0 52 0; -#X connect 38 0 62 3; +#X connect 38 0 56 0; +#X connect 38 0 66 3; #X connect 39 0 40 0; -#X connect 39 1 53 0; +#X connect 39 1 57 0; #X connect 39 2 37 0; -#X connect 40 0 55 0; -#X connect 41 0 47 0; -#X connect 42 0 54 0; -#X connect 43 0 42 1; -#X connect 44 0 42 1; -#X connect 45 0 39 0; -#X connect 45 1 46 0; -#X connect 45 1 57 0; -#X connect 46 0 43 0; -#X connect 46 0 56 0; -#X connect 47 0 59 0; -#X connect 47 1 50 0; -#X connect 48 0 49 0; -#X connect 49 0 60 0; -#X connect 50 0 48 0; -#X connect 51 0 62 0; -#X connect 52 0 51 1; -#X connect 52 1 61 1; -#X connect 53 0 62 2; -#X connect 54 0 30 0; -#X connect 54 1 6 0; -#X connect 55 0 41 0; -#X connect 56 0 44 0; -#X connect 58 0 34 0; -#X connect 59 0 51 0; -#X connect 60 0 61 0; -#X connect 61 0 62 1; +#X connect 40 0 59 0; +#X connect 41 0 51 0; +#X connect 46 0 58 0; +#X connect 47 0 46 1; +#X connect 48 0 46 1; +#X connect 49 0 39 0; +#X connect 49 1 50 0; +#X connect 49 1 61 0; +#X connect 50 0 47 0; +#X connect 50 0 60 0; +#X connect 51 0 63 0; +#X connect 51 1 54 0; +#X connect 52 0 53 0; +#X connect 53 0 64 0; +#X connect 54 0 52 0; +#X connect 55 0 66 0; +#X connect 56 0 55 1; +#X connect 56 1 65 1; +#X connect 57 0 66 2; +#X connect 58 0 29 0; +#X connect 58 1 5 0; +#X connect 59 0 41 0; +#X connect 60 0 48 0; +#X connect 62 0 34 0; +#X connect 63 0 55 0; +#X connect 64 0 65 0; +#X connect 65 0 66 1; +#X connect 71 0 70 0; +#X connect 72 0 71 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/notes.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/notes.pd index 564c8fcc56782fcb2bd017602fd8b143025b6982..35a5dd6aaa48fdf68afbbb4f32b4e0800a1ece55 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/notes.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/notes.pd @@ -1,27 +1,51 @@ #N struct staff float x float y; -#N canvas -7 0 681 643 10; -#X scalar staff 280 153 \;; -#N canvas 631 56 682 517 notes 0; -#X obj 1914 -324 struct staff float x float y; -#X obj 1902 -292 loadbang; -#X obj 2554 70 loadbang; -#X obj 2052 173 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 --56 -121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 -91 c 0 72 56 121 103 149 c 36 21 76 36 117 36 z; -#X obj 2052 114 loadbang; -#X obj 2052 229 loadbang; -#X obj 2052 343 loadbang; -#X obj 2052 451 loadbang; -#X obj 1686 -169 draw group; -#X obj 2554 126 draw path M 359 27 c -49 0 -75 42 -75 75 c 0 38 27 +#N canvas 407 19 712 643 10; +#X scalar staff 277 186 \;; +#X msg 194 372 0; +#X msg 234 372 2; +#X obj 194 413 + 69; +#X obj 360 322 keyup; +#X obj 195 491 osc~ 0; +#X obj 195 562 *~; +#X msg 243 486 1; +#X msg 325 486 0; +#X msg 243 507 \$1 100; +#X obj 243 528 line~; +#X obj 194 435 mtof; +#X obj 193 338 route 99 100 101 102; +#X obj 194 456 t a b; +#X obj 191 317 key; +#X msg 274 372 4; +#X msg 314 372 5; +#X text 336 594 Engraved by Lilypond :); +#X floatatom 447 379 5 0 0 1 Zoom(%) - -, f 5; +#X obj 447 330 loadbang; +#X msg 447 351 100; +#X text 187 52 Click a note name on the computer keyboard (in lower +case) to play one of the four notes shown:; +#X text 187 242 The notation software Lilypond can output svg files. +Pd can't automatically import such a file at the moment. Here I ported +the path instructions by hand.; +#X obj 195 583 output~; +#N canvas 864 140 450 300 (subpatch) 0; +#X obj 374 -494 loadbang; +#X obj 1026 -132 loadbang; +#X obj 524 -29 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 -56 +-121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 91 c +0 72 56 121 103 149 c 36 21 76 36 117 36 z; +#X obj 524 -88 loadbang; +#X obj 524 27 loadbang; +#X obj 524 141 loadbang; +#X obj 524 249 loadbang; +#X obj 1026 -76 draw path M 359 27 c -49 0 -75 42 -75 75 c 0 38 27 77 72 77 c 4 0 9 0 14 -1 c -28 37 -72 59 -120 59 c -106 0 -113 -73 -113 -186 v -51 v -51 c 0 -113 7 -187 113 -187 c 80 0 139 70 158 151 c 2 7 7 10 12 10 c 6 0 13 -4 13 -12 c 0 -94 -105 -174 -183 -174 c -68 0 -137 21 -184 70 c -49 51 -66 122 -66 193 s 17 142 66 193 c 47 49 116 69 184 69 c 87 0 160 -64 175 -150 c 1 -5 1 -9 1 -13 c 0 -40 -30 -72 -67 -72 z; -#X obj 1902 -235 draw path M 335 -262 c -188 0 -333 172 -333 374 c -0 181 132 314 251 452 c -22 70 -40 142 -49 215 c -6 55 -8 109 -8 165 +#X obj 374 -437 draw path M 335 -262 c -188 0 -333 172 -333 374 c 0 +181 132 314 251 452 c -22 70 -40 142 -49 215 c -6 55 -8 109 -8 165 c 0 119 55 230 150 302 c 3 2 7 4 10 4 c 4 0 7 -1 10 -4 c 77 -89 145 -263 145 -384 c 0 -149 -90 -265 -188 -379 c 23 -73 44 -147 63 -221 c 1 0 2 1 3 1 c 155 0 256 -128 256 -261 c 0 -76 -33 -154 -107 -210 @@ -37,196 +61,170 @@ c 5 -5 7 -10 7 -15 c 0 -11 -10 -22 -22 -22 c -3 0 -6 1 -9 2 c -80 43 -109 -125 -218 -250 -218 -415 c 0 -136 130 -249 266 -249 z M 406 1103 c -100 -53 -163 -157 -163 -270 c 0 -87 22 -158 43 -230 c 84 102 155 209 155 341 c 0 70 -7 98 -35 159 z; -#X msg 1902 -271 transform translate 15.0264 8.8453 scale 0.004 -0.004 +#X msg 374 -473 transform translate 15.0264 8.8453 scale 0.004 -0.004 \, fill black; -#X msg 2554 92 transform translate 19.2264 7.8453 scale 0.004 -0.004 +#X msg 1026 -110 transform translate 19.2264 7.8453 scale 0.004 -0.004 \, fill black; -#X msg 2052 135 transform translate 22.9264 10.8453 scale 0.004 -0.004 +#X msg 524 -67 transform translate 22.9264 10.8453 scale 0.004 -0.004 \, fill black; -#X msg 2052 250 transform translate 25.9406 10.3453 scale 0.004 -0.004 +#X msg 524 48 transform translate 25.9406 10.3453 scale 0.004 -0.004 \, fill black; -#X msg 2052 364 transform translate 28.9548 9.8453 scale 0.004 -0.004 +#X msg 524 162 transform translate 28.9548 9.8453 scale 0.004 -0.004 \, fill black; -#X msg 2052 472 transform translate 31.969 9.3453 scale 0.004 -0.004 +#X msg 524 270 transform translate 31.969 9.3453 scale 0.004 -0.004 \, fill black; -#X floatatom 1686 -287 5 0 0 0 - - -, f 5; -#X obj 2283 -260 draw line 0.05 -0 21.1469 -0; -#X obj 2283 -315 loadbang; -#X msg 2283 -294 transform translate 14.2264 9.8453 \, stroke-linejoin +#X obj 755 -462 draw line 0.05 -0 21.1469 -0; +#X obj 755 -517 loadbang; +#X msg 755 -496 transform translate 14.2264 9.8453 \, stroke-linejoin 1 \, stroke-linecap 1 \, stroke-width 0.1; -#X obj 2283 -235 loadbang; -#X obj 2283 -180 draw line 0.05 -0 21.1469 -0; -#X msg 2283 -216 transform translate 14.2264 8.8453 \, stroke-linejoin +#X obj 755 -437 loadbang; +#X obj 755 -382 draw line 0.05 -0 21.1469 -0; +#X msg 755 -418 transform translate 14.2264 8.8453 \, stroke-linejoin 1 \, stroke-linecap 1 \, stroke-width 0.1; -#X obj 2283 -155 loadbang; -#X msg 2281 -136 transform translate 14.2264 7.8453 \, stroke-linejoin +#X obj 755 -357 loadbang; +#X msg 753 -338 transform translate 14.2264 7.8453 \, stroke-linejoin 1 \, stroke-linecap 1 \, stroke-width 0.1; -#X obj 2281 -100 draw line 0.05 -0 21.1469 -0; -#X obj 2283 -75 loadbang; -#X obj 2281 -20 draw line 0.05 -0 21.1469 -0; -#X msg 2281 -55 transform translate 14.2264 6.8453 \, stroke-linejoin +#X obj 753 -302 draw line 0.05 -0 21.1469 -0; +#X obj 755 -277 loadbang; +#X obj 753 -222 draw line 0.05 -0 21.1469 -0; +#X msg 753 -257 transform translate 14.2264 6.8453 \, stroke-linejoin 1 \, stroke-linecap 1 \, stroke-width 0.1; -#X obj 2283 5 loadbang; -#X msg 2281 25 transform translate 14.2264 5.8453 \, stroke-linejoin +#X obj 755 -197 loadbang; +#X msg 753 -177 transform translate 14.2264 5.8453 \, stroke-linejoin 1 \, stroke-linecap 1 \, stroke-width 0.1; -#X obj 2281 60 draw line 0.05 -0 21.1469 -0; -#X text 1831 -140 clef ->; -#X text 2431 161 time signature ->; -#X text 1960 187 middle c ->; -#X text 1970 295 d ->; -#X text 1967 412 e ->; -#X text 1966 525 f ->; -#X obj 1775 22 loadbang; -#X obj 1775 80 draw rect 16.9068 -0.1 1.9743 0.2; -#X msg 1775 44 transform translate 5.6906 10.8453 \, stroke-width 0.1 -\, fill black; -#X text 1667 54 ledger-line ->; -#X obj 1704 119 key; -#X obj 1704 153 route 99 100 101 102; -#X msg 1704 184 99; -#X msg 1734 184 100; -#X msg 1764 184 101; -#X msg 1794 184 102; -#X obj 1704 260 t a b; -#X obj 1994 120 r c; -#X msg 1994 141 fill \$1; -#X obj 1994 230 r d; -#X msg 1994 251 fill \$1; -#X obj 1992 346 r e; -#X msg 1992 367 fill \$1; -#X obj 1995 461 r f; -#X msg 1995 482 fill \$1; -#X obj 1741 -311 loadbang; -#X msg 1731 287 \; c - black \; d - black \; e - black \; f - black -; -#X msg 1704 370 \; \$1 - red; -#X obj 1829 239 route 99 100 101 102; -#X obj 1829 218 keyup; -#X obj 1745 -19 r cl; -#X msg 1745 2 fill \$1 \, stroke \$1; -#X obj 2052 400 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 --56 -121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 -91 c 0 72 56 121 103 149 c 36 21 76 36 117 36 z; -#X obj 1686 -311 inlet; -#X obj 1686 -266 * 0.01; -#X msg 1741 -290 11; -#X obj 1686 -245 * 11; -#X msg 1686 -190 transform scale \$1 translate -20 -10; -#X obj 2052 509 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 --56 -121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 -91 c 0 72 56 121 103 149 c 36 21 76 36 117 36 z; -#X obj 2052 283 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 --56 -121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 -91 c 0 72 56 121 103 149 c 36 21 76 36 117 36 z; -#X obj 1936 141 s cl; -#X obj 1704 239 makefilename %c; -#X connect 1 0 11 0; -#X connect 2 0 12 0; -#X connect 4 0 13 0; -#X connect 5 0 14 0; -#X connect 6 0 15 0; -#X connect 7 0 16 0; -#X connect 11 0 10 0; -#X connect 12 0 9 0; -#X connect 13 0 3 0; -#X connect 14 0 72 0; -#X connect 15 0 65 0; -#X connect 16 0 71 0; -#X connect 17 0 67 0; +#X obj 753 -142 draw line 0.05 -0 21.1469 -0; +#X text 303 -342 clef ->; +#X text 903 -41 time signature ->; +#X text 432 -15 middle c ->; +#X text 442 93 d ->; +#X text 439 210 e ->; +#X text 438 323 f ->; +#X obj 247 -180 loadbang; +#X obj 247 -122 draw rect 16.9068 -0.1 1.9743 0.2; +#X msg 247 -158 transform translate 5.6906 10.8453 \, stroke-width +0.1 \, fill black; +#X text 139 -148 ledger-line ->; +#X obj 176 -83 key; +#X obj 176 -49 route 99 100 101 102; +#X msg 176 -18 99; +#X msg 206 -18 100; +#X msg 236 -18 101; +#X msg 266 -18 102; +#X obj 176 58 t a b; +#X obj 466 -82 r c; +#X msg 466 -61 fill \$1; +#X obj 466 28 r d; +#X msg 466 49 fill \$1; +#X obj 464 144 r e; +#X msg 464 165 fill \$1; +#X obj 467 259 r f; +#X msg 467 280 fill \$1; +#X msg 203 85 \; c - black \; d - black \; e - black \; f - black; +#X msg 176 168 \; \$1 - red; +#X obj 301 37 route 99 100 101 102; +#X obj 301 16 keyup; +#X obj 217 -221 r cl; +#X msg 217 -200 fill \$1 \, stroke \$1; +#X obj 524 198 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 -56 +-121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 91 c +0 72 56 121 103 149 c 36 21 76 36 117 36 z; +#X obj 524 307 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 -56 +-121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 91 c +0 72 56 121 103 149 c 36 21 76 36 117 36 z; +#X obj 524 81 draw path M 220 138 c 56 0 109 -29 109 -91 c 0 -72 -56 +-121 -103 -149 c -36 -21 -76 -36 -117 -36 c -56 0 -109 29 -109 91 c +0 72 56 121 103 149 c 36 21 76 36 117 36 z; +#X obj 408 -61 s cl; +#X obj 176 37 makefilename %c; +#X connect 0 0 9 0; +#X connect 1 0 10 0; +#X connect 3 0 11 0; +#X connect 4 0 12 0; +#X connect 5 0 13 0; +#X connect 6 0 14 0; +#X connect 9 0 8 0; +#X connect 10 0 7 0; +#X connect 11 0 2 0; +#X connect 12 0 63 0; +#X connect 13 0 61 0; +#X connect 14 0 62 0; +#X connect 16 0 17 0; +#X connect 17 0 15 0; +#X connect 18 0 20 0; +#X connect 20 0 19 0; +#X connect 21 0 22 0; +#X connect 22 0 23 0; +#X connect 24 0 26 0; +#X connect 26 0 25 0; +#X connect 27 0 28 0; +#X connect 28 0 29 0; +#X connect 36 0 38 0; +#X connect 38 0 37 0; +#X connect 40 0 41 0; +#X connect 41 0 42 0; +#X connect 41 1 43 0; +#X connect 41 2 44 0; +#X connect 41 3 45 0; +#X connect 42 0 65 0; +#X connect 43 0 65 0; +#X connect 44 0 65 0; +#X connect 45 0 65 0; +#X connect 46 0 56 0; +#X connect 46 1 55 0; +#X connect 47 0 48 0; +#X connect 47 0 64 0; +#X connect 48 0 2 0; +#X connect 49 0 50 0; +#X connect 50 0 63 0; +#X connect 51 0 52 0; +#X connect 52 0 61 0; +#X connect 53 0 54 0; +#X connect 54 0 62 0; +#X connect 57 0 55 0; +#X connect 57 1 55 0; +#X connect 57 2 55 0; +#X connect 57 3 55 0; +#X connect 57 4 55 0; +#X connect 58 0 57 0; +#X connect 59 0 60 0; +#X connect 60 0 37 0; +#X connect 65 0 46 0; +#X restore 447 519 group; +#X obj 447 408 * 0.01; +#X obj 447 432 * 11; +#X obj 447 304 struct staff float x float y; +#X obj 447 473 pack; +#X floatatom 495 409 5 0 0 1 Rotate - -, f 5; +#X obj 495 430 t b a; +#X msg 447 495 transform scale \$1 translate -20 -10 rotate \$2 25 +10; +#X connect 1 0 3 0; +#X connect 2 0 3 0; +#X connect 3 0 11 0; +#X connect 4 0 8 0; +#X connect 5 0 6 0; +#X connect 6 0 23 0; +#X connect 7 0 9 0; +#X connect 8 0 9 0; +#X connect 9 0 10 0; +#X connect 10 0 6 1; +#X connect 11 0 13 0; +#X connect 12 0 1 0; +#X connect 12 1 2 0; +#X connect 12 2 15 0; +#X connect 12 3 16 0; +#X connect 13 0 5 0; +#X connect 13 1 7 0; +#X connect 14 0 12 0; +#X connect 15 0 3 0; +#X connect 16 0 3 0; +#X connect 18 0 25 0; #X connect 19 0 20 0; #X connect 20 0 18 0; -#X connect 21 0 23 0; -#X connect 23 0 22 0; -#X connect 24 0 25 0; #X connect 25 0 26 0; -#X connect 27 0 29 0; -#X connect 29 0 28 0; -#X connect 30 0 31 0; -#X connect 31 0 32 0; -#X connect 39 0 41 0; -#X connect 41 0 40 0; -#X connect 43 0 44 0; -#X connect 44 0 45 0; -#X connect 44 1 46 0; -#X connect 44 2 47 0; -#X connect 44 3 48 0; -#X connect 45 0 74 0; -#X connect 46 0 74 0; -#X connect 47 0 74 0; -#X connect 48 0 74 0; -#X connect 49 0 60 0; -#X connect 49 1 59 0; -#X connect 50 0 51 0; -#X connect 50 0 73 0; -#X connect 51 0 3 0; -#X connect 52 0 53 0; -#X connect 53 0 72 0; -#X connect 54 0 55 0; -#X connect 55 0 65 0; -#X connect 56 0 57 0; -#X connect 57 0 71 0; -#X connect 58 0 68 0; -#X connect 61 0 59 0; -#X connect 61 1 59 0; -#X connect 61 2 59 0; -#X connect 61 3 59 0; -#X connect 61 4 59 0; -#X connect 62 0 61 0; -#X connect 63 0 64 0; -#X connect 64 0 40 0; -#X connect 66 0 17 0; -#X connect 67 0 69 0; -#X connect 68 0 70 0; -#X connect 69 0 70 0; -#X connect 70 0 8 0; -#X connect 74 0 49 0; -#X restore 417 392 pd notes; -#X msg 154 342 0; -#X msg 194 342 2; -#X obj 154 383 + 69; -#X obj 320 292 keyup; -#X obj 155 457 osc~ 0; -#X obj 155 542 *~; -#X msg 203 456 1; -#X msg 320 456 0; -#X msg 203 487 \$1 100; -#X obj 203 508 line~; -#X obj 154 405 mtof; -#X obj 153 308 route 99 100 101 102; -#X obj 154 426 t a b; -#X obj 151 287 key; -#X msg 234 342 4; -#X msg 274 342 5; -#X text 326 568 Engraved by Lilypond :); -#X floatatom 417 355 5 0 0 1 Zoom(%) - -, f 5; -#X obj 417 292 loadbang; -#X msg 417 313 100; -#X text 147 22 Click a note name on the computer keyboard (in lower -case) to play one of the four notes shown:; -#X text 147 222 The notation software Lilypond can output svg files. -Pd can't automatically import such a file at the moment. Here I ported -the path instructions by hand.; -#X obj 155 563 output~; -#X connect 2 0 4 0; -#X connect 3 0 4 0; -#X connect 4 0 12 0; -#X connect 5 0 9 0; -#X connect 6 0 7 0; -#X connect 7 0 24 0; -#X connect 8 0 10 0; -#X connect 9 0 10 0; -#X connect 10 0 11 0; -#X connect 11 0 7 1; -#X connect 12 0 14 0; -#X connect 13 0 2 0; -#X connect 13 1 3 0; -#X connect 13 2 16 0; -#X connect 13 3 17 0; -#X connect 14 0 6 0; -#X connect 14 1 8 0; -#X connect 15 0 13 0; -#X connect 16 0 4 0; -#X connect 17 0 4 0; -#X connect 19 0 1 0; -#X connect 20 0 21 0; -#X connect 21 0 19 0; +#X connect 26 0 28 0; +#X connect 28 0 31 0; +#X connect 29 0 30 0; +#X connect 30 0 28 0; +#X connect 30 1 28 1; +#X connect 31 0 24 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/objects.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/objects.pd index 73891e312de4b0b525aa45b91ba735dc7a72323b..f680595be07a9d09d128d3d83137f14b9a752839 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/objects.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/objects.pd @@ -1,5 +1,5 @@ #N struct instance-attr float x float y float a; -#N canvas 0 19 791 484 10; +#N canvas -8 19 791 484 10; #X obj 466 124 pointer; #X obj 600 124 pointer; #X floatatom 427 138 5 0 0 0 - - -, f 5; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/omgponies.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/omgponies.pd index 694cffcfada1d1bf74e09478da42eb9f4c48f25d..9928d5751860d2fb78b0ba0213dbc655b958b36d 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/omgponies.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/omgponies.pd @@ -45,12 +45,17 @@ #X connect 16 0 14 0; #X connect 17 0 0 0; #X connect 18 0 1 0; -#X restore 485 97 pd animate; +#X restore 425 148 pd animate; #X obj 365 14 struct pony float x float y float a float pizzazz; -#X text 33 27 Demo for drawing scalars in object boxes; -#X text 54 58 1) Create an object box; -#X text 54 78 2) type the word "pony" in it; -#X text 54 98 3) Repeat to get a pony with a different level of "pizzazz" +#X text 33 77 Demo for drawing scalars in object boxes; +#X text 54 108 1) Create an object box; +#X text 54 128 2) type the word "pony" in it; +#X text 54 148 3) Repeat to get a pony with a different level of "pizzazz" ; -#X text 54 118 4) Profit; -#X obj 365 46 drawsprite ./omgponies 0 0 a; +#X text 54 168 4) Profit; +#X obj 365 44 loadbang; +#X msg 365 65 index a; +#X obj 365 87 draw sprite /home/bud/Desktop/funstuff/pd-with-prefs/omgponies +; +#X connect 7 0 8 0; +#X connect 8 0 9 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/opacity.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/opacity.pd index 0ab62d6466362f1241e76f733c697dc491b01dda..30758bcac82794232bc8b6d35e2f391a7a4c2b7f 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/opacity.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/opacity.pd @@ -1,37 +1,37 @@ #N struct opacity float x float y; -#N canvas -7 5 753 586 10; -#X obj 20 24 struct opacity float x float y; -#X obj 82 541 loadbang; -#X msg 82 562 stroke "" \, fill red \, fill-opacity 0.5; -#X obj 82 583 draw circle 0 60 60; -#X obj 138 448 loadbang; -#X obj 138 490 draw circle 0 60 60; -#X obj 178 357 loadbang; -#X obj 178 399 draw circle 0 60 60; -#X msg 138 469 stroke "" \, fill green \, fill-opacity 0.5; -#X msg 178 378 stroke "" \, fill blue \, fill-opacity 0.5; -#X obj 63 120 f; -#X floatatom 90 147 5 0 0 1 speed - -, f 5; -#X obj 63 192 pack 0 100; -#X floatatom 120 169 5 0 0 1 rc - -, f 5; -#X obj 63 216 expr $f2*cos($f1*11./17.) \; $f2*sin($f1) \; $f2*cos($f1) +#N canvas 0 19 821 586 10; +#X obj 208 24 struct opacity float x float y; +#X obj 266 541 loadbang; +#X msg 266 562 stroke "" \, fill red \, fill-opacity 0.5; +#X obj 266 583 draw circle 0 60 60; +#X obj 326 448 loadbang; +#X obj 326 490 draw circle 0 60 60; +#X obj 366 357 loadbang; +#X obj 366 399 draw circle 0 60 60; +#X msg 326 469 stroke "" \, fill green \, fill-opacity 0.5; +#X msg 366 378 stroke "" \, fill blue \, fill-opacity 0.5; +#X obj 251 120 f; +#X floatatom 278 147 5 0 0 1 speed - -, f 5; +#X obj 251 192 pack 0 100; +#X floatatom 308 169 5 0 0 1 rc - -, f 5; +#X obj 251 216 expr $f2*cos($f1*11./17.) \; $f2*sin($f1) \; $f2*cos($f1) \; $f2*sin($f1*3./7.) \; $f2*cos($f1*23./29. + 1.) \; $f2*sin($f1 + 1.); -#X obj 162 311 pack; -#X obj 112 311 pack; -#X obj 62 311 pack; -#X msg 162 335 transform translate \$1 \$2; -#X msg 112 426 transform translate \$1 \$2; -#X msg 62 516 transform translate \$1 \$2; -#X scalar opacity 329 187 \;; -#X floatatom 186 96 5 0 0 0 - - -, f 5; -#X obj 63 99 metro 40; -#X obj 63 66 tgl 15 0 empty empty Go! 22 6 0 14 -4034 -1 -1 0 1; -#X obj 103 120 + 1; -#X obj 63 171 * 0.06; -#X text 340 39 Port of the tkpath opacity demo; -#X text 340 59 original screenshot here:; -#X obj 340 80 pddp/pddplink http://tclbitprint.sourceforge.net/tkpath/quartz/ +#X obj 350 311 pack; +#X obj 300 311 pack; +#X obj 250 311 pack; +#X msg 350 335 transform translate \$1 \$2; +#X msg 300 426 transform translate \$1 \$2; +#X msg 246 516 transform translate \$1 \$2; +#X scalar opacity 517 187 \;; +#X floatatom 374 96 5 0 0 0 - - -, f 5; +#X obj 251 99 metro 40; +#X obj 251 66 tgl 15 0 empty empty Go! 22 6 0 14 -4034 -1 -1 0 1; +#X obj 291 120 + 1; +#X obj 251 171 * 0.06; +#X text 448 59 Port of the tkpath opacity demo; +#X text 448 79 original screenshot here:; +#X obj 448 100 pddp/pddplink http://tclbitprint.sourceforge.net/tkpath/quartz/ ; #X connect 1 0 2 0; #X connect 2 0 3 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/pieslice.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/pieslice.pd index 6ebf52f8052874a076aa9e7368f8b4790d63e1a4..eda36eb41345ab104b302ec84e8c6551db662b77 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/pieslice.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/pieslice.pd @@ -1,55 +1,28 @@ #N struct pieslicer float x float y float cx float cy float x1 float y1 float r float flag float x2 float y2 float r1 float g float b float s float tx float ty; -#N canvas -7 0 929 536 10; +#N canvas -9 19 929 640 10; #X scalar pieslicer 380 -50 300 300 500 300 200 1 237.416 489.956 10 80 250 1 0 0 \;; #X scalar pieslicer 380 -50 300 300 237.416 489.956 200 0 491.793 356.705 255 0 255 1 0 0 \;; #X scalar pieslicer 380 -50 300 300 491.793 356.705 200 0 500 300 255 50 10 1 0 0 \;; -#X obj 69 -16 namecanvas c; -#X obj 69 200 draw path M cx cy L x1 y1 A r r 0 flag 0 x2 y2 z; -#X obj 69 143 loadbang; -#X obj 69 55 route enter leave; -#X obj 69 115 set pieslicer tx ty s; -#X msg 69 166 fill r1 g b \, fill-opacity 0.4 \, stroke black \, stroke-width -3 \, stroke-opacity 0.4 \, transform translate tx ty scale s; -#X obj 69 8 struct pieslicer float x float y float cx float cy float -x1 float y1 float r float flag float x2 float y2 float r1 float g float -b float s float tx float ty; -#X msg 69 84 -30 -30 1.1 \$1; -#X msg 174 84 0 0 1 \$1; -#X text 638 3 draw; -#X text 906 282 curve; -#X text 787 452 canvas; -#X text 67 244 A quick graph based on a Raphael demo. I left the messy -patch I used to generate the data from the sizes for the draw \, curve -\, and canvas classes. As you can see draw class is rather bloated -\, even compared to the canvas class.; -#X text 67 294 But it should be possible to make this more general -\, so you can plug in any classes and generate a pie chart.; -#X text 67 324 With this many members for the struct \, it becomes -obvious that the scalar "Properties" dialog needs to be more user-friendly. -Editing a long list of floats is simply too prone to error.; -#X text 268 436 Based on:; -#X obj 268 457 pddp/pddplink http://raphaeljs.com/pie.html; -#N canvas 159 103 522 352 bake 0; -#X obj 176 -13 classinfo draw; -#X msg 176 -35 size; -#X msg 294 -60 size; -#X obj 294 -39 classinfo canvas; -#X msg 311 -9 size; -#X obj 311 12 classinfo curve; -#X obj 280 58 +; -#X obj 297 97 +; -#X floatatom 298 127 5 0 0 1 total - -, f 5; -#X floatatom 133 159 5 0 0 0 angleplus - -, f 5; -#X obj 177 80 t a; -#X obj 177 101 * 360; -#X obj 177 132 /; -#X msg 229 153 0; -#X obj 214 189 f; +#X obj 227 275 classinfo draw; +#X msg 227 253 size; +#X msg 345 228 size; +#X obj 345 249 classinfo canvas; +#X msg 362 279 size; +#X obj 362 300 classinfo curve; +#X obj 331 346 +; +#X obj 348 385 +; +#X floatatom 349 415 5 0 0 1 total - -, f 5; +#X floatatom 184 447 5 0 0 0 angleplus - -, f 5; +#X obj 228 368 t a; +#X obj 228 389 * 360; +#X obj 228 420 /; +#X msg 280 441 0; +#X obj 265 477 f; #N canvas 178 176 726 457 sector 0; #X obj 60 35 inlet; #X text 100 36 cx; @@ -120,45 +93,68 @@ cy + r * sin(-1 * endangle * rad) \; (endangle - startangle) > 180 #X connect 34 3 30 0; #X connect 34 4 28 7; #X connect 34 4 29 0; -#X restore 132 253 pd sector; -#X floatatom 38 186 0 0 0 0 cx - -; -#X floatatom 88 186 0 0 0 0 cy - -; -#X floatatom 133 186 5 0 0 0 r - -, f 5; -#X obj 177 189 +; -#X obj 177 153 t a b; -#X text 21 -35 Quick-and-dirty subpatch; -#X text 21 -15 to create the pie slices; -#X connect 0 0 6 0; -#X connect 0 0 10 0; -#X connect 1 0 0 0; -#X connect 2 0 3 0; -#X connect 3 0 6 1; -#X connect 3 0 10 0; -#X connect 4 0 5 0; -#X connect 5 0 7 1; -#X connect 5 0 10 0; -#X connect 6 0 7 0; +#X restore 183 541 pd sector; +#X floatatom 89 474 0 0 0 0 cx - -; +#X floatatom 139 474 0 0 0 0 cy - -; +#X floatatom 184 474 5 0 0 0 r - -, f 5; +#X obj 228 477 +; +#X obj 69 -16 namecanvas c; +#X obj 69 200 draw path M cx cy L x1 y1 A r r 0 flag 0 x2 y2 z; +#X obj 228 441 t a b; +#X obj 69 143 loadbang; +#X obj 69 55 route enter leave; +#X obj 69 115 set pieslicer tx ty s; +#X msg 69 166 fill r1 g b \, fill-opacity 0.4 \, stroke black \, stroke-width +3 \, stroke-opacity 0.4 \, transform translate tx ty scale s; +#X obj 69 8 struct pieslicer float x float y float cx float cy float +x1 float y1 float r float flag float x2 float y2 float r1 float g float +b float s float tx float ty; +#X msg 69 84 -30 -30 1.1 \$1; +#X msg 174 84 0 0 1 \$1; +#X text 638 3 draw; +#X text 906 282 curve; +#X text 787 452 canvas; +#X text 367 474 A quick graph based on a Raphael demo. I left the messy +patch I used to generate the data from the sizes for the draw \, curve +\, and canvas classes. As you can see draw class is rather bloated +\, even compared to the canvas class.; +#X text 367 524 But it should be possible to make this more general +\, so you can plug in any classes and generate a pie chart.; +#X text 367 554 With this many members for the struct \, it becomes +obvious that the scalar "Properties" dialog needs to be more user-friendly. +Editing a long list of floats is simply too prone to error.; +#X text 778 516 Based on:; +#X obj 778 537 pddp/pddplink http://raphaeljs.com/pie.html; +#X connect 3 0 9 0; +#X connect 3 0 13 0; +#X connect 4 0 3 0; +#X connect 5 0 6 0; +#X connect 6 0 9 1; +#X connect 6 0 13 0; #X connect 7 0 8 0; -#X connect 7 0 12 1; +#X connect 8 0 10 1; +#X connect 8 0 13 0; +#X connect 9 0 10 0; #X connect 10 0 11 0; -#X connect 11 0 12 0; -#X connect 12 0 9 0; -#X connect 12 0 20 0; -#X connect 13 0 14 1; -#X connect 14 0 15 3; -#X connect 14 0 19 1; -#X connect 16 0 15 0; -#X connect 17 0 15 1; -#X connect 18 0 15 2; -#X connect 19 0 15 4; -#X connect 19 0 14 1; -#X connect 20 0 19 0; -#X connect 20 1 14 0; -#X restore 78 446 pd bake; -#X connect 5 0 8 0; -#X connect 6 0 10 0; -#X connect 6 1 11 0; -#X connect 8 0 4 0; -#X connect 9 0 6 0; -#X connect 10 0 7 0; -#X connect 11 0 7 0; +#X connect 10 0 15 1; +#X connect 13 0 14 0; +#X connect 14 0 15 0; +#X connect 15 0 12 0; +#X connect 15 0 25 0; +#X connect 16 0 17 1; +#X connect 17 0 18 3; +#X connect 17 0 22 1; +#X connect 19 0 18 0; +#X connect 20 0 18 1; +#X connect 21 0 18 2; +#X connect 22 0 18 4; +#X connect 22 0 17 1; +#X connect 25 0 22 0; +#X connect 25 1 17 0; +#X connect 26 0 29 0; +#X connect 27 0 31 0; +#X connect 27 1 32 0; +#X connect 29 0 24 0; +#X connect 30 0 27 0; +#X connect 31 0 28 0; +#X connect 32 0 28 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/polar-clock.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/polar-clock.pd index e1e550947abcbebf10fab07d58c4aa4f5b33e63d..7b3de9b8089def0cc84df12faa2c910ff78791cd 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/polar-clock.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/polar-clock.pd @@ -1,16 +1,17 @@ #N struct polar-clock float x float y float ax float ay float flag float xloc float yloc float mx float my float r; -#N canvas 0 4 966 636 10; -#X scalar polar-clock 201 342 245.63 8.41769 0 0 0 50 -150 200 \;; -#X obj 57 29 struct polar-clock float x float y float ax float ay float -flag float xloc float yloc float mx float my float r; -#X obj 59 65 loadbang; -#X scalar polar-clock 201 342 130 188.564 0 0 0 50 -110 160 \;; -#X scalar polar-clock 201 342 81.0584 -65.9111 0 0 0 50 -70 120 \; +#N canvas -9 19 1062 664 10; +#X scalar polar-clock 281 372 131.348 -132.709 0 0 0 50 -150 200 \; ; -#X scalar polar-clock 201 342 33.3672 128.252 1 0 0 50 -30 80 \;; -#X scalar polar-clock 201 352 84.641 30 0 0 0 50 10 40 \;; -#N canvas 45 51 917 566 guts 0; +#X obj 137 29 struct polar-clock float x float y float ax float ay +float flag float xloc float yloc float mx float my float r; +#X obj 139 65 loadbang; +#X scalar polar-clock 281 372 -29.9998 188.564 1 0 0 50 -110 160 \; +; +#X scalar polar-clock 281 372 -70 50.0003 1 0 0 50 -70 120 \;; +#X scalar polar-clock 281 372 33.3672 128.252 1 0 0 50 -30 80 \;; +#X scalar polar-clock 281 382 84.641 30 0 0 0 50 10 40 \;; +#N canvas 405 57 917 566 guts 0; #X floatatom 661 -13 5 0 0 0 total - -, f 5; #X msg 581 8 360 \$1; #X obj 581 29 /; @@ -151,47 +152,46 @@ flag float xloc float yloc float mx float my float r; #X connect 55 0 57 2; #X connect 56 0 55 0; #X connect 63 0 10 0; -#X restore 527 544 pd guts; -#X msg 59 86 stroke-width 30 \, stroke ay ax ay; -#X floatatom 703 594 5 0 0 0 - - -, f 5; -#X floatatom 658 594 5 0 0 1 / - -, f 5; -#X floatatom 608 594 5 0 0 0 - - -, f 5; -#X floatatom 568 594 5 0 0 0 - - -, f 5; -#X floatatom 527 594 5 0 0 1 : - -, f 5; -#X obj 429 29 namecanvas polar_clock; -#X obj 315 126 draw circle mx mx r; -#X msg 315 89 stroke gray \, stroke-width 5 \, stroke-dasharray 1 15 +#X restore 607 542 pd guts; +#X msg 139 86 stroke-width 30 \, stroke ay ax ay; +#X floatatom 783 592 5 0 0 0 - - -, f 5; +#X floatatom 738 592 5 0 0 1 / - -, f 5; +#X floatatom 688 592 5 0 0 0 - - -, f 5; +#X floatatom 648 592 5 0 0 0 - - -, f 5; +#X floatatom 607 592 5 0 0 1 : - -, f 5; +#X obj 509 29 namecanvas polar_clock; +#X obj 395 126 draw circle mx mx r; +#X msg 395 89 stroke gray \, stroke-width 5 \, stroke-dasharray 1 15 \, stroke-linecap 1 \, stroke-opacity 0.4; -#X obj 59 110 draw path M mx my A r r 0 flag 1 ax ay; -#X obj 315 65 loadbang; -#X text 524 125 Raphael Polar Clock; -#X text 524 125 ___________________; -#X text 524 300 If there's a lesson here \, it's this: if you make +#X obj 139 110 draw path M mx my A r r 0 flag 1 ax ay; +#X obj 395 65 loadbang; +#X text 604 148 Raphael Polar Clock; +#X text 604 148 ___________________; +#X text 604 253 In addition \, drawing the arcs for this patch has +revealed both an error in tkpath's calculations for the arc's bounding +box \, and an error somewhere in the drawing routine that causes the +"jitter" from 45 to 90 degrees in the animation.; +#X text 604 170 It turns out trigonometry is difficult to grasp and +just as hard to explain. This example is ported from Raphael's polar +clock \, which draws an arc that follows the circumference of a circle. +The original code is left uncommented \, causing more than one question +on Stackexchange.com equivalent to \, "how the heck does this thing +work?".; +#X text 604 323 If there's a lesson here \, it's this: if you make a spec like svg and you want other human beings to use it correctly \, make it clear and easy to use. Then go get a coffee and rewrite your incomprehensible \, ill-considered draft to actually make the documentation equally clear. Otherwise that part of the spec will be prone to errors and confusion \, from the backend to the wrapper libraries. ; -#X text 524 147 It turns out trigonometry is difficult to grasp and -just as hard to explain. This example is ported from Raphael's polar -clock \, which draws an arc that follows the circumference of a circle. -The original code is left uncommented \, causing more than one question -on the internet equivalent to \, "how the heck does this thing work?". -; -#X text 524 230 In addition \, drawing the arcs for this patch has -revealed both an error in tkpath's calculations for the arc's bounding -box \, and an error somewhere in the drawing routine that causes the -"jitter" from 3 to 6 o'clock in the animation.; -#X text 524 397 If you think that's the job of a textbook \, do realize -that the hypothetical textbook author is going to use your incomplete -spec as the main (and probably _only_) reference. So take a sip of -coffee \, think how much easier it is to write code for a living than -loading things into a truck \, and get to work.; -#X text 524 480 This is just a partial port from Raphael. For example -\, drawing commands don't support the easing style. I'm just using -[line] \, but it's not hard to build a wrapper. (See easing.pd for -an example); +#X text 604 488 This is just a partial port from Raphael. For example +\, drawing commands don't support svg's animation method/style. I'm +just using [line].; +#X text 604 418 If you think that's the job of a textbook \, do realize +that the hypothetical textbook author is going to use your inane spec +as the main (and probably _only_) reference. So take a sip of coffee +\, think how much easier it is to write code for a living than loading +shit into a truck \, and get to work; #X connect 2 0 8 0; #X connect 7 0 13 0; #X connect 7 1 12 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/quick-graph.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/quick-graph.pd index 2c6ffe33cf707172292f89a7f0797c30aab36ce4..b09147a938c9c72c2eadca7d0befff3b1d789a4d 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/quick-graph.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/quick-graph.pd @@ -2,14 +2,14 @@ y3 float y4 float y5 float y6; #N struct hotspot float x float y float y1 float idx float r float g float b float radius; -#N canvas 0 19 611 390 10; +#N canvas 1 88 611 390 10; #X scalar quick-graph 30 105 52 79 57 70 43 79 86 \;; #X msg 243 97 fill blue \, stroke blue \, stroke-width 2 \, fill-opacity 0.6; #X obj 24 33 struct quick-graph float x float y float y0 float y1 float y2 float y3 float y4 float y5 float y6; #X obj 243 76 loadbang; -#N canvas 667 49 641 427 hotspot 0; +#N canvas 667 50 641 427 hotspot 0; #X obj 189 402 set quick-graph y0 y1 y2 y3 y4 y5 y6; #X obj 186 328 get quick-graph y0 y1 y2 y3 y4 y5 y6; #X msg 186 252 traverse pd-quick-graph.pd \, next; @@ -82,9 +82,6 @@ r float g float b float radius; #X scalar hotspot 110 99 43 4 0 0 255 4 \;; #X scalar hotspot 130 99 79 5 0 0 255 4 \;; #X scalar hotspot 150 99 86 6 0 0 255 4 \;; -#X obj 243 120 draw path -x M 0 y0 C 10 y0 10 y1 20 y1 C 30 y1 30 y2 -40 y2 C 50 y2 50 y3 60 y3 C 70 y3 70 y4 80 y4 C 90 y4 90 y5 100 y5 -110 y5 110 y6 120 y6 L 120 150 0 150 z; #X text 241 217 Quick graph demo showing some mouseover animation. ; #X text 241 237 When you mouse over a scalar \, Pd will give you two @@ -96,5 +93,8 @@ scalar; #X text 241 317 Of course \, this would be more robust if the notifications only happened with the mouse enters a shape \, rather than the bbox. ; -#X connect 1 0 12 0; +#X obj 243 120 draw path M 0 y0 C 10 y0 10 y1 20 y1 C 30 y1 30 y2 40 +y2 C 50 y2 50 y3 60 y3 C 70 y3 70 y4 80 y4 C 90 y4 90 y5 100 y5 110 +y5 110 y6 120 y6 L 120 150 0 150 z; +#X connect 1 0 17 0; #X connect 3 0 1 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/spin-spin-spin.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/spin-spin-spin.pd index 5365091cade6dca84f6b3f10807ab9ded6824504..5a1c5e36e0118d368ceb0449ff4e2fe2b68a63bf 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/spin-spin-spin.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/spin-spin-spin.pd @@ -1,5 +1,5 @@ #N struct leaf float x float y; -#N canvas -9 19 910 680 10; +#N canvas 0 19 910 680 10; #N canvas 2 65 668 608 render 0; #X obj 92 557 draw rect 0 0 300 300; #X obj 53 47 struct leaf float x float y; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/splines.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/splines.pd index 423c13e040b52acc17605f96504b4d56f8a91357..aab40c6af5b1679dae0e0f321e15cca19c5e7a2b 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/splines.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/splines.pd @@ -1,69 +1,71 @@ #N struct splines float x float y float qmid float c1 float c2; -#N canvas -7 0 1008 546 10; -#X obj 318 76 loadbang; -#X obj 318 146 loadbang; -#X obj 318 216 loadbang; -#X obj 318 259 draw path M 15 100 h 10 m -5 -5 v 10; -#X msg 318 237 stroke red; -#X obj 318 286 loadbang; -#X msg 318 307 stroke red; -#X obj 318 366 loadbang; -#X msg 318 387 stroke red; -#X obj 318 409 draw path M 135 100 h 10 m -5 -5 v 10; -#X scalar splines 92 86 -2.4623 153.103 358.414 \;; -#X obj 688 26 loadbang; -#X obj 688 96 loadbang; -#X msg 688 47 stroke blue \, stroke-width 1; -#X msg 688 117 stroke black \, stroke-width 3; -#X obj 688 166 loadbang; -#X obj 688 212 draw path M 15 250 h 10 m -5 -5 v 10; -#X msg 688 187 stroke red; -#X obj 688 236 loadbang; -#X msg 688 257 stroke red; -#X obj 688 306 loadbang; -#X msg 688 327 stroke red; -#X obj 688 376 loadbang; -#X msg 688 397 stroke red; -#X obj 688 419 draw path M 135 250 h 10 m -5 -5 v 10; -#X msg 318 167 stroke black \, stroke-width 3; -#X msg 318 97 stroke blue \, stroke-width 1; -#X text 186 74 Quadratic spline; -#X text 189 268 Cubic spline; -#X obj 318 119 draw path M 20 100 L 80 qmid 140 100; -#X obj 318 189 draw path M 20 100 Q 80 qmid 140 100; -#X obj 317 331 draw path M 75 qmid h 10 m -5 -5 v 10; -#X obj 688 279 draw path M 55 c1 h 10 m -5 -5 v 10; -#X obj 308 33 struct splines float x float y float qmid float c1 float -c2; -#X obj 687 353 draw path M 95 c2 h 10 m -5 -5 v 10; -#X obj 688 70 draw path M 20 250 L 60 c1 100 c2 140 250; -#X obj 688 137 draw path M 20 250 C 60 c1 100 c2 140 250; -#X floatatom 691 462 5 0 0 0 - - -, f 5; -#X obj 691 504 draw group; -#X msg 691 483 transform rotate \$1; -#X text 305 459 Click-drag the inner red crosses to change the y-value -of the lines and curves. Works when transformed \, too ->; -#X connect 0 0 26 0; -#X connect 1 0 25 0; +#N canvas 0 19 700 527 10; +#X scalar splines 92 86 12.4121 179.988 327.414 \;; +#X floatatom 331 201 5 0 0 0 - - -, f 5; +#X msg 331 222 transform rotate \$1; +#N canvas 503 120 798 446 (subpatch) 0; +#X obj 319 -462 loadbang; +#X obj 319 -392 loadbang; +#X obj 319 -322 loadbang; +#X obj 319 -279 draw path M 15 100 h 10 m -5 -5 v 10; +#X msg 319 -301 stroke red; +#X obj 319 -252 loadbang; +#X msg 319 -231 stroke red; +#X obj 319 -172 loadbang; +#X msg 319 -151 stroke red; +#X obj 319 -129 draw path M 135 100 h 10 m -5 -5 v 10; +#X obj 639 -462 loadbang; +#X obj 639 -392 loadbang; +#X msg 639 -441 stroke blue \, stroke-width 1; +#X msg 639 -371 stroke black \, stroke-width 3; +#X obj 639 -322 loadbang; +#X obj 639 -276 draw path M 15 250 h 10 m -5 -5 v 10; +#X msg 639 -301 stroke red; +#X obj 639 -252 loadbang; +#X msg 639 -231 stroke red; +#X obj 639 -182 loadbang; +#X msg 639 -161 stroke red; +#X obj 639 -112 loadbang; +#X msg 639 -91 stroke red; +#X obj 639 -69 draw path M 135 250 h 10 m -5 -5 v 10; +#X msg 319 -371 stroke black \, stroke-width 3; +#X msg 319 -441 stroke blue \, stroke-width 1; +#X text 187 -464 Quadratic spline; +#X text 190 -270 Cubic spline; +#X obj 319 -419 draw path M 20 100 L 80 qmid 140 100; +#X obj 319 -349 draw path M 20 100 Q 80 qmid 140 100; +#X obj 318 -207 draw path M 75 qmid h 10 m -5 -5 v 10; +#X obj 639 -209 draw path M 55 c1 h 10 m -5 -5 v 10; +#X obj 638 -135 draw path M 95 c2 h 10 m -5 -5 v 10; +#X obj 639 -418 draw path M 20 250 L 60 c1 100 c2 140 250; +#X obj 639 -351 draw path M 20 250 C 60 c1 100 c2 140 250; +#X connect 0 0 25 0; +#X connect 1 0 24 0; #X connect 2 0 4 0; #X connect 4 0 3 0; #X connect 5 0 6 0; -#X connect 6 0 31 0; +#X connect 6 0 30 0; #X connect 7 0 8 0; #X connect 8 0 9 0; +#X connect 10 0 12 0; #X connect 11 0 13 0; -#X connect 12 0 14 0; -#X connect 13 0 35 0; -#X connect 14 0 36 0; -#X connect 15 0 17 0; -#X connect 17 0 16 0; -#X connect 18 0 19 0; -#X connect 19 0 32 0; -#X connect 20 0 21 0; -#X connect 21 0 34 0; +#X connect 12 0 33 0; +#X connect 13 0 34 0; +#X connect 14 0 16 0; +#X connect 16 0 15 0; +#X connect 17 0 18 0; +#X connect 18 0 31 0; +#X connect 19 0 20 0; +#X connect 20 0 32 0; +#X connect 21 0 22 0; #X connect 22 0 23 0; -#X connect 23 0 24 0; -#X connect 25 0 30 0; -#X connect 26 0 29 0; -#X connect 37 0 39 0; -#X connect 39 0 38 0; +#X connect 24 0 29 0; +#X connect 25 0 28 0; +#X restore 331 245 group; +#X obj 329 93 struct splines float x float y float qmid float c1 float +c2; +#X text 332 144 <- Click-drag the inner red crosses to change the y-value +of the lines and curves.; +#X text 473 221 <- works when transformed \, too; +#X connect 1 0 2 0; +#X connect 2 0 3 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/stroke-dasharray.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/stroke-dasharray.pd index bd4841648dfc0cae50b18ade2d4764d88c3a1344..6003788e739c022874c634b6b10104dee80bac04 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/stroke-dasharray.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/stroke-dasharray.pd @@ -1,5 +1,5 @@ #N struct blah float x float y; -#N canvas -7 0 618 300 10; +#N canvas 0 21 618 300 10; #X obj 99 13 struct blah float x float y; #X scalar blah 80 40 \;; #X msg 105 157 stroke-dasharray 1 2 3 4 5 6; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/tiger.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/tiger.pd index 61e3968bac95945bd029c589f9bfe074075ec4d8..ed00d6d43083cc26318b78207879bc7f921f4d67 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/tiger.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/tiger.pd @@ -1,6 +1,6 @@ #N struct tigerarray float x float y array a tiger; #N struct tiger float y; -#N canvas -9 19 591 612 10; +#N canvas 0 19 882 612 10; #X obj 194 276 textfile; #N canvas 230 315 678 300 tiger 0; #X obj 200 20 loadbang; @@ -1719,14 +1719,6 @@ C 256 273.5 269.5 292 269.5 299 C 269.5 299 272 291.5 270.5 287 z; #X obj 20 19200 draw path M 20.5 344.5 C 20.5 344.5 22 333.5 10.5 346.5 ; #X msg 20 19240 fill black \, stroke #000000; -#X obj 450 204 draw group; -#X obj 451 102 inlet; -#X obj 511 73 inlet; -#X obj 451 123 f; -#X obj 451 144 pack; -#X obj 511 94 t b a; -#X msg 449 173 transform translate \$1 0 scale \$2 \$2; -#X obj 298 37 struct tiger float y; #X connect 0 0 3 0; #X connect 0 0 5 0; #X connect 0 0 7 0; @@ -2447,14 +2439,7 @@ C 256 273.5 269.5 292 269.5 299 C 269.5 299 272 291.5 270.5 287 z; #X connect 477 0 476 0; #X connect 479 0 478 0; #X connect 481 0 480 0; -#X connect 483 0 485 0; -#X connect 484 0 487 0; -#X connect 485 0 486 0; -#X connect 486 0 488 0; -#X connect 487 0 485 0; -#X connect 487 1 486 1; -#X connect 488 0 482 0; -#X restore 442 170 pd tiger; +#X restore 442 170 group tiger; #X obj 197 16 bng 37 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 197 58 t b b; @@ -2487,15 +2472,13 @@ C 256 273.5 269.5 292 269.5 299 C 269.5 299 272 291.5 270.5 287 z; #X obj 231 472 list prepend; #X obj 231 493 list prepend msg; #X msg 298 306 2; -#N canvas -9 19 805 636 drawing 0; -#X obj 427 -1130; +#N canvas 125 47 805 636 drawing 0; #X obj 47 -1518 osc~ 550; #X obj 47 -1497 *~ 0.1; #X obj 47 -1476 dac~; -#X scalar tigerarray 212 -1477 \; 0 \; 0 \; 0 \; 0 \; 0 \; 0 \; 0 \; -0 \; 0 \; 0 \; \;; +#X scalar tigerarray -1 -1302 \; -96 \; 0 \; 0 \; \;; +#X connect 0 0 1 0; #X connect 1 0 2 0; -#X connect 2 0 3 0; #X restore 74 206 pd drawing; #X msg 32 20 scalar tiger 200 400; #X obj 32 41 s pd-drawing; @@ -2515,24 +2498,33 @@ C 256 273.5 269.5 292 269.5 299 C 269.5 299 272 291.5 270.5 287 z; #X floatatom 113 75 5 0 0 0 - - -, f 5; #X obj 113 96 t b a; #X msg 21 157 transform translate \$2 \$3 scale \$1 \$1; -#X floatatom 440 135 5 0 0 0 - - -, f 5; -#X floatatom 499 131 5 0 0 0 - - -, f 5; -#N canvas 74 285 450 300 tigerarray 0; +#X floatatom 609 89 5 0 0 0 - - -, f 5; +#X floatatom 682 82 5 0 0 0 - - -, f 5; +#N canvas 83 314 450 300 tigerarray 0; #X obj 105 40 struct tigerarray float x float y array a tiger; #X msg 293 105 transform scale \$1; -#X obj 293 126 draw group; #X floatatom 294 77 5 0 0 0 - - -, f 5; #X msg 178 180 traverse pd-drawing \, next; #X obj 178 201 pointer; #X obj 122 233 setsize tigerarray a; #X floatatom 120 178 5 0 0 0 - - -, f 5; -#X obj 117 139 plot a 0 0 0 0 500; -#X connect 1 0 2 0; -#X connect 3 0 1 0; -#X connect 4 0 5 0; -#X connect 5 0 6 1; -#X connect 7 0 6 0; +#N canvas 407 383 450 300 (subpatch) 1; +#X obj 77 87 plot a 0 3 0 0 600; +#X restore 76 127 group; +#X floatatom 38 59 5 0 0 0 - - -, f 5; +#X msg 38 79 transform scale \$1; +#X connect 2 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 5 1; +#X connect 6 0 5 0; +#X connect 8 0 9 0; +#X connect 9 0 7 0; #X restore 399 242 pd tigerarray; +#X obj 614 136 f; +#X obj 614 157 pack; +#X obj 674 107 t b a; +#X msg 612 186 transform translate \$1 0 scale \$2 \$2; +#X obj 440 105 struct tiger float y; #X connect 0 0 13 0; #X connect 0 1 8 0; #X connect 2 0 3 0; @@ -2590,5 +2582,10 @@ C 256 273.5 269.5 292 269.5 299 C 269.5 299 272 291.5 270.5 287 z; #X connect 49 0 46 0; #X connect 49 1 45 2; #X connect 50 0 40 0; -#X connect 51 0 1 0; -#X connect 52 0 1 1; +#X connect 51 0 54 0; +#X connect 52 0 56 0; +#X connect 54 0 55 0; +#X connect 55 0 57 0; +#X connect 56 0 54 0; +#X connect 56 1 55 1; +#X connect 57 0 1 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/unit-circle.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/unit-circle.pd index f077c893902319d0990fb091c7bdde178e1cf5be..8d7f47fa20a07933b29b3312eafc50abaa1d7057 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/unit-circle.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/unit-circle.pd @@ -1,150 +1,156 @@ #N struct unit_circle float x float y float rx float ry float lx array a balls float l2y; #N struct balls float y; -#N canvas -7 0 1026 585 10; -#X obj 645 215 draw circle 0 0 100; -#X scalar unit_circle 128 94 99.9997 -0.238894 778 -0.318509 \; 2.51094 -\; 5.01555 \; 7.5075 \; 9.98051 \; 12.4283 \; 14.8448 \; 17.2238 \; -19.5593 \; 21.8455 \; 24.0765 \; 26.2468 \; 28.3509 \; 30.3834 \; 32.3392 -\; 34.2134 \; 36.0013 \; 37.6983 \; 39.3002 \; 40.803 \; 42.2027 \; -43.496 \; 44.6795 \; 45.7502 \; 46.7055 \; 47.543 \; 48.2604 \; 48.8561 -\; 49.3285 \; 49.6764 \; 49.8989 \; 49.9955 \; 49.966 \; 49.8104 \; -49.529 \; 49.1227 \; 48.5924 \; 47.9395 \; 47.1656 \; 46.2727 \; 45.263 -\; 44.1391 \; 42.9038 \; 41.5603 \; 40.1118 \; 38.5622 \; 36.9152 \; -35.1751 \; 33.3462 \; 31.4331 \; 29.4408 \; 27.3741 \; 25.2384 \; 23.0389 -\; 20.7814 \; 18.4714 \; 16.1147 \; 13.7174 \; 11.2855 \; 8.82515 \; -6.34249 \; 3.84383 \; 1.33547 \; -1.17627 \; -3.68503 \; -6.18449 \; --8.66835 \; -11.1303 \; -13.5642 \; -15.9639 \; -18.3233 \; -20.6364 -\; -22.8975 \; -25.1008 \; -27.2407 \; -29.3119 \; -31.3091 \; -33.2274 -\; -35.0617 \; -36.8076 \; -38.4606 \; -40.0166 \; -41.4715 \; -42.8218 -\; -44.0641 \; -45.1951 \; -46.2121 \; -47.1125 \; -47.894 \; -48.5546 -\; -49.0928 \; -49.507 \; -49.7962 \; -49.9599 \; -49.9974 \; -49.9088 -\; -49.6942 \; -49.3542 \; -48.8897 \; -48.3018 \; -47.592 \; -46.7622 -\; -45.8143 \; -44.7507 \; -43.5743 \; -42.2879 \; -40.8948 \; -39.3985 -\; -37.8028 \; -36.1116 \; -34.3294 \; -32.4605 \; -30.5097 \; -28.4819 -\; -26.3822 \; -24.216 \; -21.9886 \; -19.7058 \; -17.3732 \; -14.9968 -\; -12.5825 \; -10.1365 \; -7.66492 \; -5.17398 \; -2.66999 \; -0.159255 -\; \;; -#X obj 318 440 pointer; -#X floatatom 57 119 5 0 0 0 - - -, f 5; -#X obj 41 338 * 6.28; -#X obj 41 389 sin; -#X obj 41 410 * 100; -#X obj 95 389 cos; -#X obj 41 359 t a a; -#X obj 95 410 * 100; -#X obj 41 313 + 0.25; -#X obj 645 278 draw line 0 0 rx ry; -#X obj 41 226 / 180; -#X obj 41 288 * -1; -#X obj 202 421 + 150; -#X obj 201 369 * 628; -#X obj 645 354 draw line 150 0 lx 0; -#X obj 296 492 setsize unit_circle a; -#X obj 287 520 element unit_circle a; -#X obj 224 545 set balls y; -#X obj 247 400 div 5; -#X obj 41 247 t a a a; -#X obj 148 369 * 6.28; -#X obj 148 390 sin; -#X obj 148 410 * 100; -#X msg 41 75 0 \, 180 5000; -#X obj 645 417 draw path M 0 100 L 0 120 0 -120 M 0 0 L -120 0 798 -0 M 0 -100 l 0 0 798 0 M 0 100 l 798 0 M 150 -120 l 0 0 0 240 m 157 -0 l 0 0 0 -240 m 157 0 l 0 0 0 240 m 157 0 l 0 0 0 -240 m 157 0 l 0 -0 0 240; -#X msg 645 396 stroke-width 2 \, stroke gray \, stroke-opacity 0.6 -; -#X msg 645 320 stroke-width 4 \, stroke blue \, stroke-opacity 0.6 -\, stroke-linecap 1; +#N canvas 84 19 1215 585 10; +#X scalar unit_circle 203 99 99.9997 -0.238894 778 -0.318509 \; 5.02189 +\; 10.0311 \; 15.015 \; 19.961 \; 24.8566 \; 29 \; 34 \; 35 \; 33 \; +30 \; 26.6667 \; 23.3333 \; 20 \; 13 \; 5.99999 \; -7.00001 \; -12 +\; -12 \; -12 \; -13 \; -14 \; -14.5714 \; -15.1429 \; -15.7143 \; +-16.2857 \; -16.8572 \; -17.4286 \; -18 \; -18 \; 23 \; 24 \; 24 \; +24.3333 \; 24.6667 \; 25 \; 26 \; 26 \; 27 \; 28 \; 28 \; 29 \; 29 +\; 29 \; 30 \; 30 \; 39 \; 71 \; 74 \; 73 \; 58.8815 \; 54.7482 \; +50.4768 \; 46.0779 \; 41.5627 \; 36.9427 \; 32.2295 \; 27.4349 \; 22.5711 +\; 17.6503 \; 12.685 \; 7.68767 \; 2.67094 \; -2.35253 \; -7.37006 +\; -12.369 \; -17.3367 \; -22.2607 \; -27.1284 \; -31.9278 \; -36.6466 +\; -41.2728 \; -45.795 \; -50.2015 \; -54.4814 \; -58.6238 \; -62.6183 +\; -66.4547 \; -70.1234 \; -73.6152 \; -76.9212 \; -80.0331 \; -82.9431 +\; -85.6437 \; -88.1282 \; -90.3903 \; -92.4243 \; -94.225 \; -95.788 +\; -97.1093 \; -98.1855 \; -99.0139 \; -99.5925 \; -99.9197 \; -99.9948 +\; -99.8176 \; -99.3884 \; -98.7085 \; -97.7794 \; -96.6037 \; -95.1841 +\; -93.5243 \; -91.6285 \; -89.5015 \; -87.1487 \; -84.5759 \; -81.7896 +\; -78.797 \; -75.6055 \; -72.2233 \; -68.6588 \; -64.921 \; -61.0194 +\; -56.9638 \; -52.7644 \; -48.4319 \; -43.9773 \; -39.4115 \; -34.7464 +\; -29.9935 \; -25.165 \; -20.273 \; -15.3298 \; -10.348 \; -5.33997 +\; -0.318509 \; \;; +#X obj 377 430 pointer; +#X floatatom 116 119 5 0 0 0 - - -, f 5; +#X obj 100 328 * 6.28; +#X obj 100 379 sin; +#X obj 100 400 * 100; +#X obj 154 379 cos; +#X obj 100 349 t a a; +#X obj 154 400 * 100; +#X obj 100 303 + 0.25; +#X obj 100 226 / 180; +#X obj 100 278 * -1; +#X obj 256 373 + 150; +#X obj 256 316 * 628; +#X obj 355 482 setsize unit_circle a; +#X obj 346 510 element unit_circle a; +#X obj 283 535 set balls y; +#X obj 298 381 t a a; +#X obj 231 474 spigot; +#X msg 346 409 0; +#X obj 298 408 change; +#X msg 264 440 1; +#X obj 100 247 t a a a; +#X obj 207 359 * 6.28; +#X obj 207 380 sin; +#X obj 207 400 * 100; +#X msg 100 75 0 \, 180 5000; #N canvas 433 184 450 300 nested 0; #X obj 171 35 struct balls float y; -#X restore 485 523 pd nested; -#X msg 645 181 fill black \, fill-opacity 0.1 \, stroke blue \, stroke-opacity -0.6 \, stroke-width 4; -#X obj 645 36 struct unit_circle float x float y float rx float ry +#X restore 704 173 pd nested; +#X obj 704 36 struct unit_circle float x float y float rx float ry float lx array a balls float l2y; -#X obj 645 526 draw line rx ry lx l2y; -#X msg 645 504 stroke orange \, stroke-width 2; -#X msg 645 257 stroke-width 3 \, stroke blue \, stroke-opacity 0.6 -; -#X obj 645 482 loadbang; -#X obj 645 160 loadbang; -#X obj 645 236 loadbang; -#X obj 645 299 loadbang; -#X obj 645 375 loadbang; -#X obj 318 398 loadbang; -#X msg 318 419 traverse pd-unit-circle.pd \, next; -#X obj 41 96 line 0 40; -#X obj 41 45 bng 21 250 50 0 empty empty Go! 28 10 0 10 -4034 -1 -1 +#X obj 100 535 set unit_circle rx ry lx l2y; +#X obj 377 388 loadbang; +#X obj 100 96 line 0 40; +#X obj 100 45 bng 21 250 50 0 empty empty Go! 28 10 0 10 -4034 -1 -1 ; -#X obj 645 135 draw group; -#X msg 645 114 transform translate 75 0 scale \$1; -#X obj 224 484 * 0.5; -#X obj 645 72 loadbang; -#X msg 645 93 0.5; -#X text 130 160 This unit circle demo (which I just realized spins +#X msg 704 114 transform translate 75 0 scale \$1; +#X obj 704 72 loadbang; +#X text 229 170 This unit circle demo (which I just realized spins the wrong direction-- oops) shows some of the benefits and drawbacks of [draw] as it's currently implemented:; -#X text 131 204 Benefits:; -#X text 131 219 * you can easily scale the entire group; -#X text 131 234 * a struct field can be used in different [draw] objects +#X text 230 214 Benefits:; +#X text 230 229 * you can easily scale the entire group; +#X text 230 244 * a struct field can be used in different [draw] objects ; -#X text 266 260 Drawbacks:; -#X text 266 277 * [draw group] doesn't affect [plot]. Thus I have to +#X text 345 264 Drawbacks:; +#X text 345 281 * [draw group] doesn't affect [plot]. Thus I have to manually scale the x-spacing and y value accordingly.; -#X text 266 303 * traversing the canvas is a pain. Fortunately \, you +#X text 345 307 * traversing the canvas is a pain. Fortunately \, you only need to do it once for arrays. But if you modify the patch at all you have to traverse again. This means it's way easier to send messages to [draw]-- which affect all scalars-- than it is to use field variables-- which are local to a particular scalar.; -#X obj 485 545 plot a 0 1 150 0 2.5; -#X obj 247 421 change; -#X obj 41 545 set unit_circle rx ry l2y lx; -#X connect 2 0 17 1; -#X connect 2 0 18 1; -#X connect 2 0 58 4; -#X connect 3 0 12 0; -#X connect 4 0 8 0; -#X connect 5 0 6 0; -#X connect 6 0 58 0; -#X connect 7 0 9 0; -#X connect 8 0 5 0; -#X connect 8 1 7 0; -#X connect 9 0 58 1; -#X connect 10 0 4 0; -#X connect 12 0 21 0; -#X connect 13 0 10 0; -#X connect 14 0 58 3; -#X connect 15 0 14 0; -#X connect 15 0 20 0; -#X connect 18 0 19 1; -#X connect 20 0 57 0; -#X connect 21 0 13 0; -#X connect 21 1 22 0; -#X connect 21 2 15 0; -#X connect 22 0 23 0; +#X obj 298 360 div 5; +#N canvas 655 108 616 478 (subpatch) 0; +#X obj 117 -140 draw circle 0 0 100; +#X obj 117 -77 draw line 0 0 rx ry; +#X obj 117 -1 draw line 150 0 lx 0; +#X obj 117 62 draw path M 0 100 L 0 120 0 -120 M 0 0 L -120 0 798 0 +M 0 -100 l 0 0 798 0 M 0 100 l 798 0 M 150 -120 l 0 0 0 240 m 157 0 +l 0 0 0 -240 m 157 0 l 0 0 0 240 m 157 0 l 0 0 0 -240 m 157 0 l 0 0 +0 240; +#X msg 117 41 stroke-width 2 \, stroke gray \, stroke-opacity 0.6; +#X msg 117 -35 stroke-width 4 \, stroke blue \, stroke-opacity 0.6 +\, stroke-linecap 1; +#X msg 117 -174 fill black \, fill-opacity 0.1 \, stroke blue \, stroke-opacity +0.6 \, stroke-width 4; +#X obj 117 171 draw line rx ry lx l2y; +#X msg 117 149 stroke orange \, stroke-width 2; +#X msg 117 -98 stroke-width 3 \, stroke blue \, stroke-opacity 0.6 +; +#X obj 117 127 loadbang; +#X obj 117 -195 loadbang; +#X obj 117 -119 loadbang; +#X obj 117 -56 loadbang; +#X obj 117 20 loadbang; +#X obj 119 213 plot a 0 1 150 0 5; +#X connect 4 0 3 0; +#X connect 5 0 2 0; +#X connect 6 0 0 0; +#X connect 8 0 7 0; +#X connect 9 0 1 0; +#X connect 10 0 8 0; +#X connect 11 0 6 0; +#X connect 12 0 9 0; +#X connect 13 0 5 0; +#X connect 14 0 4 0; +#X restore 704 136 group; +#X msg 704 93 0.3; +#X msg 377 409 traverse pd-unit-circle.pd \, next; +#X connect 1 0 14 1; +#X connect 1 0 15 1; +#X connect 1 0 29 4; +#X connect 2 0 10 0; +#X connect 3 0 7 0; +#X connect 4 0 5 0; +#X connect 5 0 29 0; +#X connect 6 0 8 0; +#X connect 7 0 4 0; +#X connect 7 1 6 0; +#X connect 8 0 29 1; +#X connect 9 0 3 0; +#X connect 10 0 22 0; +#X connect 11 0 9 0; +#X connect 12 0 29 2; +#X connect 13 0 12 0; +#X connect 13 0 42 0; +#X connect 15 0 16 1; +#X connect 17 0 20 0; +#X connect 17 1 19 0; +#X connect 18 0 29 3; +#X connect 18 0 16 0; +#X connect 19 0 18 1; +#X connect 20 0 14 0; +#X connect 20 0 15 0; +#X connect 20 0 21 0; +#X connect 21 0 18 1; +#X connect 22 0 11 0; +#X connect 22 1 23 0; +#X connect 22 2 13 0; #X connect 23 0 24 0; -#X connect 24 0 46 0; -#X connect 24 0 58 2; -#X connect 25 0 42 0; -#X connect 27 0 26 0; -#X connect 28 0 16 0; -#X connect 30 0 0 0; -#X connect 33 0 32 0; -#X connect 34 0 11 0; -#X connect 35 0 33 0; -#X connect 36 0 30 0; -#X connect 37 0 34 0; -#X connect 38 0 28 0; -#X connect 39 0 27 0; -#X connect 40 0 41 0; -#X connect 41 0 2 0; -#X connect 42 0 12 0; -#X connect 43 0 25 0; -#X connect 45 0 44 0; -#X connect 46 0 19 0; -#X connect 47 0 48 0; -#X connect 48 0 45 0; -#X connect 57 0 17 0; -#X connect 57 0 18 0; +#X connect 24 0 25 0; +#X connect 25 0 18 0; +#X connect 26 0 31 0; +#X connect 30 0 45 0; +#X connect 31 0 10 0; +#X connect 32 0 26 0; +#X connect 33 0 43 0; +#X connect 34 0 44 0; +#X connect 42 0 17 0; +#X connect 44 0 33 0; +#X connect 45 0 1 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/violin.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/violin.pd index b74368bd10e33d0e311d873194e03d69ee53f9d2..06ed514bf8eee16347d62e7f9a0c68fcefe85004 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/violin.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/violin.pd @@ -1,469 +1,9 @@ #N struct violin float x float y; -#N canvas 0 19 822 670 10; +#N canvas 442 19 822 670 10; #N canvas 482 264 604 438 data 0; #N canvas 470 155 450 300 farg 0; #X restore 261 52 pd farg; -#X restore 44 63 pd data; -#N canvas 458 34 785 608 violin-template 0; -#X msg 614 -165 scalar foo 20 20; -#X obj 614 -144 s c; -#X obj 614 -123 namecanvas c; -#X obj 781 -34 loadbang; -#X msg 781 -12 fill black \, fill-rule 1 \, stroke-width 0; -#X obj 385 -69 loadbang; -#X obj 385 -7 draw path M 147.365 8.91 l -5.868 -3.168 c -2.052 2.376 --4.752 3.708 -8.244 4.14 c -3.456 0.36 -5.148 -0.324 -12.564 -1.764 -c -7.632 -1.656 -21.636 -5.796 -32.436 -6.984 C 77.31 -0.09 66.33 -0.774 -56.285 1.602 C 46.277 3.906 36.593 8.046 28.781 15.426 C 20.79 22.878 -13.914 36.558 9.414 45.774 c -4.5 8.964 -6.336 16.596 -7.308 23.868 -C 1.062 76.95 1.529 83.286 3.365 89.19 c -2.232 1.728 -3.348 3.816 --3.348 6.66 c -0.072 2.771 1.044 6.012 3.204 9.865 c -0.972 6.695 0.252 -14.578 3.816 24.336 c 3.6 9.756 9.684 24.119 17.136 33.371 c 7.272 -9.035 16.344 16.633 26.388 20.988 c 9.972 4.211 22.572 5.436 33.228 -4.932 c 10.584 -0.611 21.708 -5.291 30.06 -7.813 c 8.208 -2.52 13.752 --6.191 19.548 -6.984 c 5.76 -0.863 10.692 -0.18 14.94 2.053 l 5.256 --3.313 c -1.944 -1.908 -2.952 -4.139 -3.024 -6.84 c -0.216 -2.844 -0.072 --6.119 2.52 -9.395 c 2.592 -3.35 6.696 -7.236 12.888 -10.01 c 6.156 --2.844 17.064 -5.146 23.688 -6.336 c 6.48 -1.223 11.088 -1.115 14.94 --0.504 c 3.672 0.434 5.76 0.865 7.632 3.816 c 1.836 2.953 3.096 7.668 -3.636 14.148 l 6.552 3.348 c 2.232 -2.053 4.86 -3.492 7.884 -4.463 -c 2.88 -1.045 4.932 -1.656 10.188 -1.262 c 5.22 0.504 13.463 3.168 -21.276 3.816 c 7.775 0.396 17.496 0.721 24.984 -0.971 c 7.416 -1.908 -13.32 -4.572 19.223 -9.504 c 5.725 -5.041 11.449 -11.484 15.084 -19.729 -c 3.529 -8.172 5.725 -17.785 6.445 -28.98 l 115.74 -8.424 c 3.959 -0.612 -8.1 -1.188 12.563 -1.584 c 4.43 -0.504 9.145 -0.828 14.148 -1.116 c -0.217 0.9 1.008 1.476 2.52 1.584 c 1.441 0.108 3.457 -0.252 6.193 -0.936 -c -0.576 2.556 -0.145 4.176 1.295 5.255 c 1.441 0.938 5.438 1.477 7.129 -0.793 c 1.584 -0.756 2.34 -2.412 2.412 -5.112 c 2.412 0 4.104 -0.468 -5.076 -1.26 c 0.936 -0.936 1.043 -1.98 0.467 -3.672 c 2.377 1.188 4.068 -0.972 5.076 -0.792 c 1.008 -1.8 1.801 -7.812 0.973 -9.684 c -0.936 --1.944 -3.061 -2.484 -6.516 -1.764 c 0.035 -1.944 -0.396 -3.132 -1.441 --3.96 c -1.08 -0.828 -2.664 -1.044 -4.752 -0.792 c 0.252 -2.484 -0.18 --4.104 -1.295 -5.256 c -1.225 -1.188 -3.852 -1.656 -5.4 -1.404 c -1.619 -0.216 -3.313 1.62 -3.959 2.844 c -0.686 1.08 -0.793 2.592 -0.182 4.14 -c -1.979 -0.576 -3.563 -0.684 -4.895 -0.18 c -1.369 0.396 -2.484 1.404 --3.205 2.88 c 0.469 -0.504 -2.34 -0.828 -8.424 -0.972 c -6.191 -0.18 --15.371 -0.18 -28.115 0 l -107.172 0.54 c 0.432 -4.788 -0.434 -10.224 --2.881 -16.704 c -2.447 -6.588 -6.336 -15.66 -11.664 -21.78 c -5.473 --6.12 -13.104 -11.34 -20.375 -14.292 c -7.201 -3.024 -14.725 -3.816 --22.861 -3.492 c -8.424 0.252 -19.764 3.744 -26.387 5.076 c -6.444 -1.224 -8.64 2.484 -12.42 2.232 c -3.96 -0.468 -7.668 -1.908 -11.124 --4.608 l -6.192 3.96 c 1.836 3.636 2.232 6.768 1.044 9.684 c -1.26 -2.808 -3.276 5.724 -8.136 7.344 c -4.968 1.548 -13.572 2.232 -20.808 -1.908 c -7.344 -0.468 -16.308 -1.908 -22.572 -4.608 c -6.372 -2.88 --12.42 -7.56 -14.796 -12.096 C 144.233 19.566 144.449 14.526 147.365 -8.91 z; -#X obj 403 715 draw path M 322.074 71.55 c 0.252 -3.24 -0.324 -7.164 --1.584 -11.916 c -1.369 -4.896 -2.27 -10.692 -6.193 -16.56 c -4.031 --6.012 -10.836 -14.148 -17.496 -18.432 c -6.803 -4.176 -15.623 -6.084 --22.572 -6.84 c -7.092 -0.828 -12.996 0.648 -19.223 1.908 c -6.409 -1.152 -12.924 4.14 -18.145 4.932 c -5.22 0.576 -9.504 0 -12.708 -0.612 -c -3.276 -0.648 -5.4 -1.512 -6.516 -2.88 l -2.376 1.116 c 1.152 2.916 -1.476 5.436 1.116 7.956 c -0.396 2.376 -0.972 4.644 -3.672 6.66 c -2.952 -2.052 -7.128 4.608 -13.5 5.58 c -6.552 0.828 -16.812 0.9 -24.804 -0.324 -c -8.028 -1.332 -17.172 -4.104 -22.572 -7.488 c -5.364 -3.492 -8.316 --9.036 -9.54 -13.032 c -1.368 -4.032 -0.684 -7.632 1.764 -10.944 l --1.908 -1.44 c -0.144 2.268 -2.772 3.384 -8.28 3.348 c -5.58 -0.144 --16.56 -2.34 -24.48 -3.816 c -7.848 -1.548 -14.904 -4.356 -22.716 -5.112 -C 78.605 2.79 70.434 2.07 61.865 3.834 c -8.64 1.692 -17.388 5.076 --26.532 10.152 c 6.084 4.716 11.016 10.872 14.94 18.468 c 3.816 7.596 -8.604 16.74 8.244 26.856 c -0.396 10.08 -3.996 20.772 -10.656 32.904 -c 5.688 -3.384 12.204 -6.336 20.376 -9.396 c 7.992 -3.132 21.276 -7.416 -27.648 -8.568 c 6.156 -1.188 8.244 -0.18 10.152 2.052 c 1.8 2.196 1.116 -6.372 1.44 10.98 c 0.36 4.5 0.576 11.269 0.648 15.876 c -0.072 4.393 -1.044 9.107 -0.972 10.836 c -2.16 1.656 -5.292 0.611 -11.736 -0.504 -c -6.66 -1.225 -17.532 -4.824 -27.18 -6.336 c -9.72 -1.621 -21.6 -2.844 --30.204 -2.701 c -8.604 0.182 -15.552 3.061 -20.844 3.637 c -5.292 -0.359 -9 0.18 -10.98 -0.936 c -1.476 2.699 -1.008 7.523 1.116 14.615 -c 2.124 7.057 6.696 19.297 11.772 27.828 c 5.004 8.461 10.404 16.74 -18.288 22.896 c 7.884 6.047 19.224 11.195 28.764 13.355 c 9.396 1.943 -18.612 0.469 27.648 -1.115 c 9 -1.693 19.728 -6.301 25.92 -8.424 c -6.012 -2.197 6.444 -3.637 10.188 -4.465 c 3.672 -0.863 8.748 -0.828 -11.772 -0.469 c 2.844 0.254 4.644 1.045 5.4 2.232 l 2.52 -1.619 c -2.052 --1.26 -3.06 -3.168 -3.024 -5.869 c -0.108 -2.879 -0.072 -6.516 3.024 --10.332 c 2.952 -3.887 7.524 -8.783 15.264 -11.916 c 7.848 -3.168 23.148 --5.902 31.176 -6.695 c 7.884 -0.9 12.24 -1.477 16.128 1.764 c 3.78 -3.277 5.904 8.928 6.516 17.496 l 2.52 2.053 c 2.412 -3.061 5.724 -4.824 -10.332 -5.58 c 4.572 -0.721 10.332 0.504 16.848 1.295 c 6.373 0.721 -14.58 2.594 21.312 2.846 c 6.553 0.143 12.096 0.287 18.432 -1.908 c -6.373 -2.377 13.861 -6.012 19.549 -11.736 c 5.58 -5.939 10.691 -15.66 -13.535 -22.752 c 2.771 -7.02 3.492 -13.285 2.701 -19.08 l -113.509 -10.188 c 1.008 -2.809 1.512 -6.264 1.908 -10.512 c 0.288 -4.393 0.468 --9.684 0 -14.76 c -0.576 -5.004 -1.584 -10.044 -3.168 -15.12 C 246.761 -71.406 284.418 71.478 322.074 71.55 z; -#X obj 813 1600 draw path M 124.793 44.262 l 3.204 -2.484 c 2.232 1.404 -3.96 1.764 5.58 1.08 c 1.512 -0.756 3.744 -3.852 3.636 -5.4 c -0.252 --1.728 -2.52 -4.284 -4.572 -4.464 c -2.088 -0.252 -5.904 1.26 -7.704 -3.564 c -1.944 2.232 -4.644 6.588 -3.384 10.008 c 1.26 3.456 5.652 -7.704 11.088 10.116 c 5.436 2.232 14.724 2.664 21.204 3.384 c 6.408 -0.468 12.492 -0.072 16.884 0.324 c 4.212 0.36 6.804 1.08 8.604 2.16 -c 1.764 0.972 2.556 2.304 2.232 3.996 l -2.232 1.656 c -2.196 -0.468 --3.708 -0.252 -4.536 0.648 c -0.936 0.864 -1.656 3.456 -0.756 4.464 -c 0.936 0.972 3.744 1.872 5.796 1.152 c 1.908 -0.9 4.932 -3.564 5.472 --6.192 c 0.432 -2.808 -0.324 -7.344 -2.808 -9.864 c -2.628 -2.484 -7.344 --4.14 -12.348 -4.968 c -5.112 -0.828 -11.664 -0.252 -17.712 -0.504 -c -6.192 -0.396 -13.752 -0.756 -18.396 -2.052 C 129.365 49.41 126.414 -47.25 124.793 44.262 z; -#X obj 810 1880 draw path M 98.657 80.73 l 59.724 -4.68 l 281.484 -1.98 -l -0.217 2.232 l -281.267 1.476 l -59.724 4.428 V 80.73 z; -#X obj 414 3669; -#X obj 403 3088 draw path M 451.494 71.334 v -14.22 c 0.611 -0.648 -0.863 -1.224 0.611 -1.728 c -0.289 -0.576 -1.08 -1.08 -2.232 -1.512 -c 1.045 -1.476 1.691 -3.168 2.088 -5.364 c 0.289 -2.16 -0.504 -6.156 -0 -7.56 c 0.432 -1.62 1.656 -1.476 2.701 -1.512 c 0.936 -0.18 2.412 --0.072 2.916 1.152 c 0.215 1.26 -0.865 3.816 -0.613 6.156 c 0.289 2.196 -1.152 4.572 2.592 7.128 c -0.646 0.324 -1.043 0.756 -1.188 1.152 s --0.107 0.864 0.252 1.404 v 14.652 l -6.299 0.576 L 451.494 71.334 z -; -#X obj 403 3262 draw path M 442.313 90.162 v 14.221 c 0.648 0.611 0.793 -1.188 0.576 1.727 c -0.324 0.541 -1.008 1.045 -2.195 1.512 c 1.045 -1.441 1.691 3.133 2.088 5.365 c 0.287 2.051 -0.504 6.047 0 7.559 c -0.324 1.514 1.764 1.369 2.664 1.514 c 0.936 0.072 2.412 -0.037 2.916 --1.152 c 0.324 -1.369 -0.936 -3.924 -0.576 -6.156 c 0.289 -2.232 1.188 --4.607 2.557 -7.129 c -0.613 -0.359 -1.045 -0.791 -1.152 -1.15 c -0.18 --0.434 -0.107 -0.9 0.217 -1.404 V 90.414 l -6.266 -0.612 L 442.313 -90.162 z; -#X obj 403 3444 draw path M 457.9 88.218 l -0.107 12.349 c -0.719 0.395 --0.9 0.863 -0.936 1.26 c 0.072 0.396 0.287 0.756 1.043 1.08 c 0.217 -0.9 -0.07 1.512 -0.467 1.98 c -0.576 0.432 -1.584 -0.072 -2.449 0.574 -c -1.008 0.469 -2.303 1.441 -2.771 2.773 c -0.576 1.26 -0.863 3.203 -0.109 5.148 c 1.008 1.906 3.742 4.932 5.832 6.154 c 1.979 1.117 3.779 -1.045 5.795 0.469 c 1.908 0.828 4.428 2.664 5.615 -4.535 c 1.152 -1.873 -1.693 -4.789 1.045 -6.518 c -0.756 -1.799 -4.752 -3.203 -5.58 -4.066 -c -0.973 -0.938 -0.936 -1.369 0.107 -1.297 c 0.324 -0.217 0.396 -0.576 -0.361 -0.936 c -0.072 -0.432 -0.396 -0.936 -0.828 -1.512 l 0.107 -12.097 -C 462.51 88.794 460.205 88.506 457.9 88.218 z; -#X obj 798 1316 draw path M 126.629 139.734 l 3.204 2.484 c 2.232 -1.477 -3.96 -1.836 5.58 -1.08 c 1.512 0.646 3.744 3.744 3.636 5.398 c -0.252 -1.621 -2.52 4.213 -4.572 4.465 c -2.088 0.145 -5.904 -1.367 -7.704 --3.564 c -1.944 -2.34 -4.644 -6.695 -3.384 -10.008 c 1.26 -3.564 5.652 --7.775 11.088 -10.115 s 14.724 -2.773 21.204 -3.385 c 6.408 -0.576 -12.492 -0.035 16.884 -0.324 c 4.212 -0.432 6.804 -1.152 8.604 -2.16 -c 1.764 -1.008 2.556 -2.375 2.232 -3.959 l -2.232 -1.656 c -2.196 0.359 --3.708 0.18 -4.536 -0.684 c -0.936 -0.973 -1.656 -3.529 -0.756 -4.465 -c 0.936 -1.043 3.744 -1.98 5.796 -1.152 c 1.908 0.793 4.932 3.457 5.472 -6.193 c 0.432 2.734 -0.324 7.271 -2.808 9.863 c -2.628 2.375 -7.344 -4.031 -12.348 4.969 c -5.112 0.756 -11.664 0.143 -17.712 0.504 c -6.192 -0.287 -13.752 0.646 -18.396 2.051 C 131.201 134.551 128.25 136.709 -126.629 139.734 z; -#X obj 403 655 loadbang; -#X msg 403 676 fill #A16121 \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 783 1079 loadbang; -#X obj 783 1136 draw path M 150.246 75.258 c 1.44 -0.612 2.988 -0.936 -4.5 -0.828 c 1.476 -0.036 3.636 -0.576 4.68 1.296 c 0.972 1.908 1.008 -5.868 1.368 9.648 c 0.36 3.6 0.72 7.524 0.648 12.204 c -0.216 4.715 --0.324 13.355 -1.836 15.623 c -1.62 2.018 -4.104 0.938 -7.596 -3.24 -l 0.18 -4.104 c 0.972 0.324 1.656 0.109 2.196 -0.936 c 0.36 -1.152 -0.576 -1.943 0.648 -5.148 c 0.144 -3.313 0.288 -11.339 0 -13.967 c --0.468 -2.628 -1.332 -2.988 -2.592 -1.368 c -0.252 -1.98 -0.504 -3.672 --0.9 -5.22 C 151.146 77.598 150.713 76.41 150.246 75.258 z; -#X obj 783 1261 loadbang; -#X obj 798 1529 loadbang; -#X obj 813 1803 loadbang; -#X obj 403 1308 loadbang; -#X msg 403 1332 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 403 1428 loadbang; -#X obj 403 1531 loadbang; -#X msg 403 1552 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 403 1635 loadbang; -#X obj 403 1746 loadbang; -#X msg 403 1767 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 403 1854 loadbang; -#X obj 403 1960 loadbang; -#X msg 403 1981 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 403 2057 loadbang; -#X obj 403 2241 loadbang; -#X obj 403 2424 loadbang; -#X msg 403 2445 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 403 2606 loadbang; -#X msg 403 2627 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 403 2803 loadbang; -#X obj 403 3027 loadbang; -#X obj 403 3200 loadbang; -#X obj 403 3387 loadbang; -#X msg 385 -48 fill-rule 1 \, stroke #000000 \, stroke-miterlimit 10 -\, stroke-width 0.036 \, fill black; -#X msg 403 1449 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 403 1656 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 403 1875 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 403 2824 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 403 3048 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 403 3221 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 403 3408 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 783 1100 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 783 1282 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 798 1550 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X msg 813 1824 fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036 \, fill black; -#X obj 403 1381 draw path M 99.197 80.946 l 58.464 -4.464 l 40.428 --0.216 l 241.2 -1.836 l -0.072 1.476 l -74.16 0.252 l -207.323 1.26 -l -58.752 4.428 L 99.197 80.946 z; -#X obj 403 1484 draw path M 98.226 110.789 l 59.976 1.08 l 281.736 --22.211 l -0.145 -1.692 l -281.736 22.177 l -59.76 -0.504 L 98.226 -110.789 z; -#X obj 403 1588 draw path M 98.549 110.467 l 58.896 1.043 l 40.32 -3.168 -L 439.541 89.37 l -0.145 -1.044 l -75.238 6.156 l -206.713 16.092 l --58.68 -0.576 L 98.549 110.467 z; -#X obj 403 1699 draw path M 99.197 99.486 l 59.976 1.08 l 279.684 -15.192 -l -0.072 -1.656 l -279.756 15.12 l -59.76 -0.504 L 99.197 99.486 z -; -#X obj 403 1807 draw path M 99.557 99.125 l 58.896 1.08 l 279.972 -15.119 -l -0.145 -0.936 L 158.417 99.234 l -58.68 -0.576 L 99.557 99.125 z -; -#X obj 403 1913 draw path M 99.666 90.414 l 59.76 -0.684 l 279.504 --9.144 l 0.035 -1.584 l -279.684 9.036 l -59.652 1.26 L 99.666 90.414 -z; -#X obj 403 2023 draw path M 99.989 90.162 l 58.68 -0.792 l 279.829 --9.18 v -0.864 l -279.829 9.108 l -58.644 1.08 L 99.989 90.162 z; -#X msg 403 2078 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X msg 403 2262 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit -10 \, stroke-width 0.036; -#X obj 403 2116 draw path M 102.869 79.362 c -0.576 0.036 -1.296 0.036 --2.16 0.144 c -0.936 0.108 -2.016 0.18 -3.24 0.36 c -0.468 -0.396 -0.972 --0.54 -1.368 -0.432 c -0.468 0.072 -0.9 0.468 -1.152 0.9 c -0.288 0.36 --0.864 0.756 -0.612 1.332 c 0.108 0.468 0.576 1.008 1.404 1.62 c -0.468 --0.036 -1.008 -0.36 -1.332 -0.684 c -0.468 -0.504 -1.044 -1.044 -1.044 --1.62 c -0.108 -0.648 0.612 -1.368 1.044 -1.764 c 0.432 -0.504 0.9 --0.576 1.548 -0.612 c 0.504 -0.072 1.224 0.288 1.872 0.684 C 99.485 -79.29 101.177 79.326 102.869 79.362 z; -#X obj 403 2299 draw path M 103.013 87.714 c -0.576 0 -1.296 0.108 --2.16 0.18 c -0.936 0.108 -2.016 0.18 -3.24 0.36 c -0.504 -0.432 -0.9 --0.54 -1.332 -0.468 c -0.432 0.108 -0.972 0.36 -1.188 0.9 c -0.288 -0.36 -0.864 0.756 -0.612 1.332 c 0.108 0.468 0.576 1.008 1.404 1.62 -c -0.468 -0.072 -1.008 -0.288 -1.332 -0.648 c -0.468 -0.396 -1.08 -1.116 --1.008 -1.62 c -0.072 -0.612 0.54 -1.44 1.008 -1.8 c 0.396 -0.432 0.972 --0.576 1.584 -0.576 c 0.54 -0.036 1.152 0.18 1.836 0.648 C 99.629 87.642 -101.321 87.678 103.013 87.714 z; -#X obj 403 2481 draw path M 102.365 97.146 c -0.504 -0.072 -1.26 -0.037 --2.124 -0.037 c -0.936 0 -1.98 0.037 -3.276 0.109 c -0.468 -0.434 -0.9 --0.613 -1.296 -0.541 c -0.504 0.037 -0.972 0.396 -1.26 0.793 c -0.324 -0.287 -0.936 0.756 -0.72 1.26 c 0.072 0.504 0.504 1.043 1.296 1.764 -c -0.504 -0.18 -0.936 -0.396 -1.296 -0.793 c -0.432 -0.539 -1.008 -1.15 --0.9 -1.691 c 0 -0.684 0.72 -1.295 1.188 -1.691 c 0.396 -0.324 0.972 --0.612 1.584 -0.469 c 0.54 0.107 1.188 0.252 1.8 0.828 C 99.018 96.822 -100.673 96.967 102.365 97.146 z; -#X obj 403 2665 draw path M 101.609 108.883 c -0.504 -0.182 -1.26 -0.145 --2.124 -0.289 c -0.936 -0.145 -1.98 -0.252 -3.276 -0.324 c -0.432 -0.539 --0.792 -0.648 -1.224 -0.719 c -0.468 -0.037 -1.008 0.215 -1.332 0.611 -c -0.36 0.252 -0.972 0.648 -0.864 1.188 c 0.072 0.469 0.288 1.152 1.044 -1.908 c -0.468 -0.18 -0.9 -0.539 -1.152 -0.936 c -0.36 -0.576 -0.864 --1.225 -0.684 -1.801 c 0.108 -0.648 0.792 -1.26 1.368 -1.547 c 0.432 --0.252 1.08 -0.469 1.656 -0.252 c 0.468 0.18 1.152 0.395 1.656 1.043 -C 98.297 108.125 99.954 108.486 101.609 108.883 z; -#X obj 403 2863 draw path M 432.414 71.91 l -0.109 -12.348 c -0.719 --0.432 -0.898 -0.9 -0.936 -1.26 c 0.072 -0.36 0.289 -0.756 1.045 -1.044 -c 0.215 -0.936 -0.072 -1.548 -0.469 -1.98 c -0.576 -0.504 -1.584 -0.108 --2.447 -0.612 c -1.008 -0.576 -2.305 -1.548 -2.773 -2.772 c -0.576 --1.368 -0.863 -3.276 0.109 -5.148 c 1.008 -2.016 3.744 -5.04 5.832 --6.156 c 1.979 -1.188 3.779 -1.152 5.795 -0.468 c 1.836 0.72 4.393 -2.556 5.58 4.536 c 1.08 1.764 1.764 4.716 1.08 6.516 c -0.863 1.764 --4.68 3.132 -5.615 4.104 c -0.9 0.828 -0.9 1.296 0.143 1.26 c 0.252 -0.18 0.361 0.54 0.324 0.936 c -0.107 0.36 -0.324 0.864 -0.791 1.512 -l 0.107 12.096 C 437.021 71.334 434.717 71.622 432.414 71.91 z; -#X obj 781 44 draw path M 62.64 15.6 c 12.584 0.734 24.349 0.873 36.24 -0.96 c 7.124 0.052 14.281 0.818 21.36 0.96 c 0.972 0.02 2.124 -0.303 -3.12 -0.24 c 0.866 0.055 1.58 0.432 2.4 0.48 c 2.801 0.164 5.906 0.034 -8.64 0 c 14.148 -0.176 28.807 -0.002 40.8 -0.48 c 0.492 -0.02 0.846 -0.11 0.937 0.108 c 0.428 -0.01 1.018 -0.104 1.464 -0.108 c 8.997 -0.087 -17.424 -0.351 25.92 -0.24 c 6.818 0.089 13.815 -0.613 20.64 -0.72 c -1.663 -0.026 3.373 0.284 5.04 0.24 c 3.56 -0.094 7.152 -0.639 10.8 --0.72 c 3.158 -0.07 6.279 0.08 8.881 -0.24 c 1.563 -0.192 4.441 -0.337 -6.96 -0.48 c 0.436 -0.025 0.822 -0.454 1.199 -0.48 c 3.025 -0.208 5.592 --0.028 8.4 0.24 c 3.497 0.333 7.587 -0.379 11.521 -0.48 c 3.39 -0.087 -6.771 -0.313 10.08 -0.48 c 7.665 -0.386 15.545 -0.414 22.56 -0.96 c -2.128 -0.166 4.379 -1.031 6.72 0 c 1.478 -0.667 3.945 -0.199 5.28 -0.96 -c 0.401 -0.229 0.407 -1.186 0.96 -0.48 c 0.992 0.486 1.805 0.434 0.96 -1.68 c 0.101 0.939 0.907 1.172 0.96 2.16 c -0.37 1.15 -1.388 1.652 --1.92 2.64 c -0.885 0.856 -0.303 -1.107 -1.44 -0.72 c -3.774 -0.74 --6.894 0.604 -10.56 0 c -1.479 1.722 -0.344 6.057 -1.44 8.16 c -12.37 --0.534 -25.459 0.338 -39.84 0 c -21.562 -0.507 -45.448 -0.295 -65.28 --0.479 c -18.28 -0.171 -36.127 0.095 -53.52 -0.24 c -11.992 -0.231 --24.525 -0.253 -35.76 -0.48 C 80.846 23.556 48.5 22.8 16.8 22.8 c -2.578 -0 -5.407 -0.259 -7.92 -1.44 c 0.285 -2.016 2.238 -2.685 3.36 -4.32 -c 0.658 -0.959 0.958 -1.97 1.68 -2.88 c 2.746 -3.464 7.493 -2.951 12.72 --2.4 c 1.614 0.17 3.343 0.472 5.04 0.72 c 3.145 0.459 6.408 0.51 9.6 -0.96 c 6.856 0.966 13.748 1.703 19.68 1.92 C 60.96 15.36 62.626 15.554 -62.64 15.6 z M 318.96 15.6 c 0.515 0.444 1.278 -0.318 2.159 -0.24 c -0.178 -0.879 -0.59 -1.333 0 -1.92 C 319.567 12.782 318.751 13.827 318.96 -15.6 z M 312 13.68 c -0.01 0.79 -0.404 1.195 -0.239 2.16 c 0.574 0.504 -1.13 -0.466 2.16 -0.24 c 0.084 -0.808 0.545 -1.75 -0.24 -2.16 C 313.577 -13.977 312.498 13.537 312 13.68 z M 18.48 18 c 0.441 1.995 4.15 1.628 -6.96 1.681 c 2.683 0.05 5.527 0.24 8.4 0.24 c 7.739 0 10.332 0.239 -16.8 0.239 c 11.384 0 22.285 0.721 34.08 0.721 c 11.233 0 22.209 0.361 -33.36 0.479 c 10.196 0.108 25.275 0.017 35.28 0.24 c 11.54 0.258 22.372 -0.517 33.36 0.479 c 23.625 -0.077 48.702 0.009 67.2 0.24 c 7.284 0.091 -16.716 -0.512 24.479 -0.24 c 2.903 0.102 5.933 0.574 8.641 0.24 c 0.495 --0.061 0.68 -0.093 0.959 -0.24 c 1.812 -0.955 6.053 0.13 5.28 -3.119 -c -0.37 -1.559 -3.103 -0.996 -4.8 -0.961 c -5.819 0.124 -12.526 0.472 --18 0.721 c -6.415 0.291 -11.416 0.711 -17.52 0.72 c -8.606 0.013 -19.4 -0.43 -28.801 0.48 c -16.698 0.089 -31.255 0.368 -45.359 0.479 c -15.37 -0.122 -29.614 0.816 -45.36 0.24 c -13.572 -0.497 -29.051 -0.578 -44.16 --0.72 c -7.529 -0.071 -14.91 -0.724 -22.32 -1.2 c -11.267 -0.726 -22.561 --1.641 -33.36 -2.88 c -3.775 -0.433 -8.766 -0.963 -11.76 -0.72 C 19.071 -15.345 17.958 15.635 18.48 18 z M 292.56 16.08 c -0.253 0.893 0.81 -0.471 0.96 0.96 c -0.682 0.225 0.624 4.115 1.68 2.64 c -0.304 -0.521 --0.057 -0.534 -0.479 -1.2 c 1.905 -0.307 3.404 0.369 4.56 -0.48 c -1.343 --0.496 -3.062 0.254 -4.8 -0.239 c 0.596 -0.125 0.854 -0.585 1.2 -0.96 -c 0.631 -0.071 0.188 0.931 0.96 0.72 c -0.03 -0.601 -0.458 -0.751 0.24 --0.96 c 1.945 -0.288 4.232 -0.216 6.479 -0.24 c 1.318 -0.014 3.612 -0.592 3.601 -0.96 C 301.037 15.613 297.927 15.967 292.56 16.08 z M -299.76 19.2 c 0.187 0.054 0.278 0.201 0.239 0.48 c 0.914 0.113 1.499 --0.102 1.681 -0.72 C 301.25 18.325 299.918 18.306 299.76 19.2 z M 298.32 -19.68 c -0.729 0.15 -2.067 -0.308 -2.399 0.24 C 296.492 20.09 298.146 -20.554 298.32 19.68 z M 281.52 23.04 c -30.968 0 -65.012 0.405 -92.16 --0.479 c -11.977 -0.391 -23.516 0.264 -35.28 0 c -11.302 -0.254 -22.547 --0.683 -33.36 -0.48 c -10.775 0.203 -21.486 0.063 -32.4 -0.479 c -5.546 --0.276 -11.193 0.134 -16.8 0 c -16.908 -0.405 -34.065 -0.861 -50.4 --0.96 c -1.042 -0.063 -0.102 0.931 0.24 0.96 c 34.199 0.526 66.996 -1.68 99.36 1.68 c 22.283 0 44.787 0.993 65.279 0.96 c 30.988 -0.049 -65.196 0.24 99.36 0.24 c 1.274 0 2.887 0.402 4.08 -0.48 C 287.105 22.359 -284.021 23.04 281.52 23.04 z M 297.84 20.88 c 0.255 0.01 0.609 -0.113 -0.239 -0.24 c -1.169 -0.11 -2.811 0.251 -3.6 -0.24 c -0.819 0.62 -1.776 -1.104 -2.4 1.92 c 3.084 0.255 7.409 0.379 11.04 0 c -0.682 -0.491 0.004 --0.956 0 -0.96 c -0.292 -0.337 -1.511 0.437 -1.199 -0.96 c -0.482 0.252 --2.587 0.115 -2.16 0.48 c 0.453 0.106 1.446 -0.327 1.2 0.479 c -2.242 --0.158 -5.119 0.318 -6.961 -0.24 C 294.862 20.622 296.595 20.996 297.84 -20.88 z M 304.08 22.32 c 1.264 0.144 2.062 -0.178 3.12 -0.24 c 0 -0.479 -0 -0.96 0 -1.439 c -0.239 0 -0.479 0 -0.72 0 C 307.342 22.158 303.728 -20.587 304.08 22.32 z; -#X msg 425 -204 transform rotate \$1 \$2 \$3 scale \$4; -#X floatatom 425 -310 5 0 0 0 - - -, f 5; -#X floatatom 476 -310 5 0 0 0 - - -, f 5; -#X obj 476 -289 t b a; -#X floatatom 526 -310 5 0 0 0 - - -, f 5; -#X obj 526 -289 t b a; -#X floatatom 576 -310 5 0 0 0 - - -, f 5; -#X obj 576 -289 t b a; -#X floatatom 770 -156 5 0 0 0 - - -, f 5; -#X obj 770 -85 pack 0 0 0 0; -#X floatatom 821 -156 5 0 0 0 - - -, f 5; -#X obj 821 -135 t b a; -#X floatatom 871 -156 5 0 0 0 - - -, f 5; -#X obj 871 -135 t b a; -#X floatatom 921 -156 5 0 0 0 - - -, f 5; -#X obj 921 -135 t b a; -#X obj 986 -122 loadbang; -#X text 893 -293 1.09 to 142; -#X obj 790 -242 r vsl-snd; -#X obj 574 -252 loadbang; -#X obj 425 -177 draw group; -#X obj 644 -298 inlet; -#X obj 663 -346 struct violin float x float y; -#X msg 770 -61 transform translate 525 250 rotate \$1 16 -392 scale -1.16; -#X msg 1006 -286 1.2; -#X obj 1006 -265 * 180; -#X obj 1006 -244 / 3.14; -#X floatatom 1006 -223 5 0 0 0 - - -, f 5; -#X obj 776 -201 expr (($f1/127.0 * 0.33) + 1.09) * 180 / 3.14; -#X msg 886 -87 69 16 -392 1.16; -#X msg 707 -314 -0.45; -#X obj 707 -293 * 180; -#X obj 707 -272 / 3.14; -#X floatatom 707 -251 5 0 0 0 - - -, f 5; -#X msg 562 -230 -26 59 113 0.5; -#X obj 425 -239 pack 0 0 0 0.5; -#X connect 0 0 1 0; -#X connect 3 0 4 0; -#X connect 4 0 69 0; -#X connect 5 0 43 0; -#X connect 15 0 16 0; -#X connect 16 0 7 0; -#X connect 17 0 51 0; -#X connect 19 0 52 0; -#X connect 20 0 53 0; -#X connect 21 0 54 0; -#X connect 22 0 23 0; -#X connect 23 0 55 0; -#X connect 24 0 44 0; -#X connect 25 0 26 0; -#X connect 26 0 57 0; -#X connect 27 0 45 0; -#X connect 28 0 29 0; -#X connect 29 0 59 0; -#X connect 30 0 46 0; -#X connect 31 0 32 0; -#X connect 32 0 61 0; -#X connect 33 0 62 0; -#X connect 34 0 63 0; -#X connect 35 0 36 0; -#X connect 36 0 66 0; -#X connect 37 0 38 0; -#X connect 38 0 67 0; -#X connect 39 0 47 0; -#X connect 40 0 48 0; -#X connect 41 0 49 0; -#X connect 42 0 50 0; -#X connect 43 0 6 0; -#X connect 44 0 56 0; -#X connect 45 0 58 0; -#X connect 46 0 60 0; -#X connect 47 0 68 0; -#X connect 48 0 11 0; -#X connect 49 0 12 0; -#X connect 50 0 13 0; -#X connect 51 0 18 0; -#X connect 52 0 14 0; -#X connect 53 0 8 0; -#X connect 54 0 9 0; -#X connect 62 0 64 0; -#X connect 63 0 65 0; -#X connect 70 0 90 0; -#X connect 71 0 105 0; -#X connect 72 0 73 0; -#X connect 73 0 71 0; -#X connect 73 1 105 1; -#X connect 74 0 75 0; -#X connect 75 0 72 0; -#X connect 75 1 105 2; -#X connect 76 0 77 0; -#X connect 77 0 74 0; -#X connect 77 1 105 3; -#X connect 78 0 79 0; -#X connect 79 0 93 0; -#X connect 80 0 81 0; -#X connect 81 0 78 0; -#X connect 81 1 79 1; -#X connect 82 0 83 0; -#X connect 83 0 80 0; -#X connect 83 1 79 2; -#X connect 84 0 85 0; -#X connect 85 0 82 0; -#X connect 85 1 79 3; -#X connect 86 0 99 0; -#X connect 88 0 98 0; -#X connect 89 0 104 0; -#X connect 91 0 104 0; -#X connect 93 0 69 0; -#X connect 94 0 95 0; -#X connect 95 0 96 0; -#X connect 96 0 97 0; -#X connect 98 0 79 0; -#X connect 99 0 93 0; -#X connect 100 0 101 0; -#X connect 101 0 102 0; -#X connect 102 0 103 0; -#X connect 104 0 70 0; -#X connect 105 0 70 0; -#X restore 44 44 pd violin-template; +#X restore 44 50 pd data; #X obj 44 87 r vsl-snd; #X obj 64 136 s vsl-rcv; #X obj 63 198 -; @@ -768,197 +308,630 @@ c 0.631 -0.071 0.188 0.931 0.96 0.72 c -0.03 -0.601 -0.458 -0.751 0.24 #X obj 289 634 s \$0-rubato; #X obj 301 267 moses 9; #X connect 0 0 1 0; -#X connect 1 0 3 0; -#X connect 2 0 1 1; -#X connect 2 0 7 0; -#X connect 3 1 4 0; -#X connect 3 2 6 0; -#X connect 4 0 5 0; -#X connect 6 0 18 0; -#X connect 6 1 11 0; -#X connect 7 0 6 1; -#X connect 7 0 4 1; -#X connect 8 0 17 0; -#X connect 9 0 8 0; -#X connect 10 0 12 0; -#X connect 11 0 9 0; -#X connect 11 1 9 1; -#X connect 11 1 19 0; -#X connect 11 1 22 1; -#X connect 12 0 13 0; -#X connect 12 1 14 0; -#X connect 13 0 20 0; -#X connect 14 0 20 0; -#X connect 15 0 20 0; -#X connect 16 0 20 0; -#X connect 17 0 16 0; -#X connect 17 1 27 0; -#X connect 18 0 5 0; -#X connect 19 0 10 1; -#X connect 19 0 15 1; -#X connect 20 0 21 0; -#X connect 21 0 22 0; -#X connect 21 1 26 0; +#X connect 1 0 3 0; +#X connect 2 0 1 1; +#X connect 2 0 7 0; +#X connect 3 1 4 0; +#X connect 3 2 6 0; +#X connect 4 0 5 0; +#X connect 6 0 18 0; +#X connect 6 1 11 0; +#X connect 7 0 6 1; +#X connect 7 0 4 1; +#X connect 8 0 17 0; +#X connect 9 0 8 0; +#X connect 10 0 12 0; +#X connect 11 0 9 0; +#X connect 11 1 9 1; +#X connect 11 1 19 0; +#X connect 11 1 22 1; +#X connect 12 0 13 0; +#X connect 12 1 14 0; +#X connect 13 0 20 0; +#X connect 14 0 20 0; +#X connect 15 0 20 0; +#X connect 16 0 20 0; +#X connect 17 0 16 0; +#X connect 17 1 27 0; +#X connect 18 0 5 0; +#X connect 19 0 10 1; +#X connect 19 0 15 1; +#X connect 20 0 21 0; +#X connect 21 0 22 0; +#X connect 21 1 26 0; +#X connect 22 0 23 0; +#X connect 23 0 24 0; +#X connect 24 0 25 0; +#X connect 25 0 26 0; +#X connect 27 0 15 0; +#X connect 27 1 10 0; +#X restore 63 288 pd repertoire; +#X obj 137 174 vradio 15 1 0 2 empty empty empty 0 -8 0 10 -4034 -1 +-1 0; +#X text 156 172 Practice your scales; +#X obj 63 335 t a; +#N canvas 507 232 500 535 rubato 0; +#X obj 129 28 inlet; +#X obj 255 40 r \$0-rubato; +#X obj 129 502 outlet; +#X obj 256 184 f; +#X obj 129 147 f; +#X obj 256 407 pipe 0; +#X obj 256 215 t a b; +#X obj 283 237 random 100; +#X obj 283 259 / 100; +#X obj 256 372 * 1.3; +#X obj 250 109 t a b; +#X obj 320 109 t a b; +#X obj 373 104 t a b; +#X obj 255 72 sel 0 1 2 3; +#X obj 129 180 t a b; +#X obj 156 210 random 99999; +#X obj 156 235 / 99999; +#X obj 169 327 *; +#X obj 129 294 t a a; +#X obj 129 356 +; +#X floatatom 346 369 5 0 0 0 - - -, f 5; +#X floatatom 379 291 5 0 0 0 - - -, f 5; +#X obj 283 313 + 1.45; +#X obj 283 285 * 0.1; +#X msg 396 132 2.5; +#X msg 343 137 1.2; +#X msg 273 137 1.5; +#X obj 156 261 * 0.03; +#X connect 0 0 3 1; +#X connect 0 0 4 0; +#X connect 1 0 13 0; +#X connect 3 0 6 0; +#X connect 4 0 14 0; +#X connect 5 0 2 0; +#X connect 6 0 9 0; +#X connect 6 1 7 0; +#X connect 7 0 8 0; +#X connect 8 0 23 0; +#X connect 9 0 5 0; +#X connect 10 0 3 0; +#X connect 10 1 26 0; +#X connect 11 0 3 0; +#X connect 11 1 25 0; +#X connect 12 0 3 0; +#X connect 12 1 24 0; +#X connect 13 0 4 0; +#X connect 13 1 10 0; +#X connect 13 2 11 0; +#X connect 13 3 12 0; +#X connect 14 0 18 0; +#X connect 14 1 15 0; +#X connect 15 0 16 0; +#X connect 16 0 27 0; +#X connect 17 0 19 1; +#X connect 18 0 19 0; +#X connect 18 1 17 0; +#X connect 19 0 2 0; +#X connect 22 0 9 1; +#X connect 22 0 20 0; +#X connect 23 0 22 0; +#X connect 24 0 22 1; +#X connect 25 0 22 1; +#X connect 26 0 21 0; +#X connect 26 0 22 1; +#X connect 27 0 17 1; +#X restore 422 213 pd rubato; +#X obj 63 312 + 62; +#X obj 191 555 *~ 0.6; +#X obj 286 176 r end; +#X msg 286 202 0; +#X text 156 188 Play some Bach; +#X obj 208 611 ezoutput~; +#X obj 249 281 r end; +#X obj 249 303 t b b; +#X obj 216 269 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 112 383 t a b; +#X obj 112 450 pack; +#X obj 139 425 + 10; +#X obj 139 403 random 7; +#X msg 276 327 0.2 1750; +#X obj 331 539 s vsl-snd; +#X obj 42 389 s capo; +#X scalar violin 566 397 \;; +#X obj 331 493 line; +#X text 330 134 Use the green buttons to "learn" the violin.; +#X obj 137 217 + 1; +#X text 310 636 2014 Jonathan Wilkes; +#X obj 137 150 loadbang; +#N canvas 315 300 450 300 (subpatch) 0; +#X msg 428 172 scalar foo 20 20; +#X obj 428 193 s c; +#X obj 428 214 namecanvas c; +#X obj 595 303 loadbang; +#X msg 595 325 fill black \, fill-rule 1 \, stroke-width 0; +#X obj 199 268 loadbang; +#X obj 199 330 draw path M 147.365 8.91 l -5.868 -3.168 c -2.052 2.376 +-4.752 3.708 -8.244 4.14 c -3.456 0.36 -5.148 -0.324 -12.564 -1.764 +c -7.632 -1.656 -21.636 -5.796 -32.436 -6.984 C 77.31 -0.09 66.33 -0.774 +56.285 1.602 C 46.277 3.906 36.593 8.046 28.781 15.426 C 20.79 22.878 +13.914 36.558 9.414 45.774 c -4.5 8.964 -6.336 16.596 -7.308 23.868 +C 1.062 76.95 1.529 83.286 3.365 89.19 c -2.232 1.728 -3.348 3.816 +-3.348 6.66 c -0.072 2.771 1.044 6.012 3.204 9.865 c -0.972 6.695 0.252 +14.578 3.816 24.336 c 3.6 9.756 9.684 24.119 17.136 33.371 c 7.272 +9.035 16.344 16.633 26.388 20.988 c 9.972 4.211 22.572 5.436 33.228 +4.932 c 10.584 -0.611 21.708 -5.291 30.06 -7.813 c 8.208 -2.52 13.752 +-6.191 19.548 -6.984 c 5.76 -0.863 10.692 -0.18 14.94 2.053 l 5.256 +-3.313 c -1.944 -1.908 -2.952 -4.139 -3.024 -6.84 c -0.216 -2.844 -0.072 +-6.119 2.52 -9.395 c 2.592 -3.35 6.696 -7.236 12.888 -10.01 c 6.156 +-2.844 17.064 -5.146 23.688 -6.336 c 6.48 -1.223 11.088 -1.115 14.94 +-0.504 c 3.672 0.434 5.76 0.865 7.632 3.816 c 1.836 2.953 3.096 7.668 +3.636 14.148 l 6.552 3.348 c 2.232 -2.053 4.86 -3.492 7.884 -4.463 +c 2.88 -1.045 4.932 -1.656 10.188 -1.262 c 5.22 0.504 13.463 3.168 +21.276 3.816 c 7.775 0.396 17.496 0.721 24.984 -0.971 c 7.416 -1.908 +13.32 -4.572 19.223 -9.504 c 5.725 -5.041 11.449 -11.484 15.084 -19.729 +c 3.529 -8.172 5.725 -17.785 6.445 -28.98 l 115.74 -8.424 c 3.959 -0.612 +8.1 -1.188 12.563 -1.584 c 4.43 -0.504 9.145 -0.828 14.148 -1.116 c +0.217 0.9 1.008 1.476 2.52 1.584 c 1.441 0.108 3.457 -0.252 6.193 -0.936 +c -0.576 2.556 -0.145 4.176 1.295 5.255 c 1.441 0.938 5.438 1.477 7.129 +0.793 c 1.584 -0.756 2.34 -2.412 2.412 -5.112 c 2.412 0 4.104 -0.468 +5.076 -1.26 c 0.936 -0.936 1.043 -1.98 0.467 -3.672 c 2.377 1.188 4.068 +0.972 5.076 -0.792 c 1.008 -1.8 1.801 -7.812 0.973 -9.684 c -0.936 +-1.944 -3.061 -2.484 -6.516 -1.764 c 0.035 -1.944 -0.396 -3.132 -1.441 +-3.96 c -1.08 -0.828 -2.664 -1.044 -4.752 -0.792 c 0.252 -2.484 -0.18 +-4.104 -1.295 -5.256 c -1.225 -1.188 -3.852 -1.656 -5.4 -1.404 c -1.619 +0.216 -3.313 1.62 -3.959 2.844 c -0.686 1.08 -0.793 2.592 -0.182 4.14 +c -1.979 -0.576 -3.563 -0.684 -4.895 -0.18 c -1.369 0.396 -2.484 1.404 +-3.205 2.88 c 0.469 -0.504 -2.34 -0.828 -8.424 -0.972 c -6.191 -0.18 +-15.371 -0.18 -28.115 0 l -107.172 0.54 c 0.432 -4.788 -0.434 -10.224 +-2.881 -16.704 c -2.447 -6.588 -6.336 -15.66 -11.664 -21.78 c -5.473 +-6.12 -13.104 -11.34 -20.375 -14.292 c -7.201 -3.024 -14.725 -3.816 +-22.861 -3.492 c -8.424 0.252 -19.764 3.744 -26.387 5.076 c -6.444 +1.224 -8.64 2.484 -12.42 2.232 c -3.96 -0.468 -7.668 -1.908 -11.124 +-4.608 l -6.192 3.96 c 1.836 3.636 2.232 6.768 1.044 9.684 c -1.26 +2.808 -3.276 5.724 -8.136 7.344 c -4.968 1.548 -13.572 2.232 -20.808 +1.908 c -7.344 -0.468 -16.308 -1.908 -22.572 -4.608 c -6.372 -2.88 +-12.42 -7.56 -14.796 -12.096 C 144.233 19.566 144.449 14.526 147.365 +8.91 z; +#X obj 217 1052 draw path M 322.074 71.55 c 0.252 -3.24 -0.324 -7.164 +-1.584 -11.916 c -1.369 -4.896 -2.27 -10.692 -6.193 -16.56 c -4.031 +-6.012 -10.836 -14.148 -17.496 -18.432 c -6.803 -4.176 -15.623 -6.084 +-22.572 -6.84 c -7.092 -0.828 -12.996 0.648 -19.223 1.908 c -6.409 +1.152 -12.924 4.14 -18.145 4.932 c -5.22 0.576 -9.504 0 -12.708 -0.612 +c -3.276 -0.648 -5.4 -1.512 -6.516 -2.88 l -2.376 1.116 c 1.152 2.916 +1.476 5.436 1.116 7.956 c -0.396 2.376 -0.972 4.644 -3.672 6.66 c -2.952 +2.052 -7.128 4.608 -13.5 5.58 c -6.552 0.828 -16.812 0.9 -24.804 -0.324 +c -8.028 -1.332 -17.172 -4.104 -22.572 -7.488 c -5.364 -3.492 -8.316 +-9.036 -9.54 -13.032 c -1.368 -4.032 -0.684 -7.632 1.764 -10.944 l +-1.908 -1.44 c -0.144 2.268 -2.772 3.384 -8.28 3.348 c -5.58 -0.144 +-16.56 -2.34 -24.48 -3.816 c -7.848 -1.548 -14.904 -4.356 -22.716 -5.112 +C 78.605 2.79 70.434 2.07 61.865 3.834 c -8.64 1.692 -17.388 5.076 +-26.532 10.152 c 6.084 4.716 11.016 10.872 14.94 18.468 c 3.816 7.596 +8.604 16.74 8.244 26.856 c -0.396 10.08 -3.996 20.772 -10.656 32.904 +c 5.688 -3.384 12.204 -6.336 20.376 -9.396 c 7.992 -3.132 21.276 -7.416 +27.648 -8.568 c 6.156 -1.188 8.244 -0.18 10.152 2.052 c 1.8 2.196 1.116 +6.372 1.44 10.98 c 0.36 4.5 0.576 11.269 0.648 15.876 c -0.072 4.393 +1.044 9.107 -0.972 10.836 c -2.16 1.656 -5.292 0.611 -11.736 -0.504 +c -6.66 -1.225 -17.532 -4.824 -27.18 -6.336 c -9.72 -1.621 -21.6 -2.844 +-30.204 -2.701 c -8.604 0.182 -15.552 3.061 -20.844 3.637 c -5.292 +0.359 -9 0.18 -10.98 -0.936 c -1.476 2.699 -1.008 7.523 1.116 14.615 +c 2.124 7.057 6.696 19.297 11.772 27.828 c 5.004 8.461 10.404 16.74 +18.288 22.896 c 7.884 6.047 19.224 11.195 28.764 13.355 c 9.396 1.943 +18.612 0.469 27.648 -1.115 c 9 -1.693 19.728 -6.301 25.92 -8.424 c +6.012 -2.197 6.444 -3.637 10.188 -4.465 c 3.672 -0.863 8.748 -0.828 +11.772 -0.469 c 2.844 0.254 4.644 1.045 5.4 2.232 l 2.52 -1.619 c -2.052 +-1.26 -3.06 -3.168 -3.024 -5.869 c -0.108 -2.879 -0.072 -6.516 3.024 +-10.332 c 2.952 -3.887 7.524 -8.783 15.264 -11.916 c 7.848 -3.168 23.148 +-5.902 31.176 -6.695 c 7.884 -0.9 12.24 -1.477 16.128 1.764 c 3.78 +3.277 5.904 8.928 6.516 17.496 l 2.52 2.053 c 2.412 -3.061 5.724 -4.824 +10.332 -5.58 c 4.572 -0.721 10.332 0.504 16.848 1.295 c 6.373 0.721 +14.58 2.594 21.312 2.846 c 6.553 0.143 12.096 0.287 18.432 -1.908 c +6.373 -2.377 13.861 -6.012 19.549 -11.736 c 5.58 -5.939 10.691 -15.66 +13.535 -22.752 c 2.771 -7.02 3.492 -13.285 2.701 -19.08 l -113.509 +10.188 c 1.008 -2.809 1.512 -6.264 1.908 -10.512 c 0.288 -4.393 0.468 +-9.684 0 -14.76 c -0.576 -5.004 -1.584 -10.044 -3.168 -15.12 C 246.761 +71.406 284.418 71.478 322.074 71.55 z; +#X obj 627 1937 draw path M 124.793 44.262 l 3.204 -2.484 c 2.232 1.404 +3.96 1.764 5.58 1.08 c 1.512 -0.756 3.744 -3.852 3.636 -5.4 c -0.252 +-1.728 -2.52 -4.284 -4.572 -4.464 c -2.088 -0.252 -5.904 1.26 -7.704 +3.564 c -1.944 2.232 -4.644 6.588 -3.384 10.008 c 1.26 3.456 5.652 +7.704 11.088 10.116 c 5.436 2.232 14.724 2.664 21.204 3.384 c 6.408 +0.468 12.492 -0.072 16.884 0.324 c 4.212 0.36 6.804 1.08 8.604 2.16 +c 1.764 0.972 2.556 2.304 2.232 3.996 l -2.232 1.656 c -2.196 -0.468 +-3.708 -0.252 -4.536 0.648 c -0.936 0.864 -1.656 3.456 -0.756 4.464 +c 0.936 0.972 3.744 1.872 5.796 1.152 c 1.908 -0.9 4.932 -3.564 5.472 +-6.192 c 0.432 -2.808 -0.324 -7.344 -2.808 -9.864 c -2.628 -2.484 -7.344 +-4.14 -12.348 -4.968 c -5.112 -0.828 -11.664 -0.252 -17.712 -0.504 +c -6.192 -0.396 -13.752 -0.756 -18.396 -2.052 C 129.365 49.41 126.414 +47.25 124.793 44.262 z; +#X obj 624 2217 draw path M 98.657 80.73 l 59.724 -4.68 l 281.484 -1.98 +l -0.217 2.232 l -281.267 1.476 l -59.724 4.428 V 80.73 z; +#X obj 228 4006; +#X obj 217 3425 draw path M 451.494 71.334 v -14.22 c 0.611 -0.648 +0.863 -1.224 0.611 -1.728 c -0.289 -0.576 -1.08 -1.08 -2.232 -1.512 +c 1.045 -1.476 1.691 -3.168 2.088 -5.364 c 0.289 -2.16 -0.504 -6.156 +0 -7.56 c 0.432 -1.62 1.656 -1.476 2.701 -1.512 c 0.936 -0.18 2.412 +-0.072 2.916 1.152 c 0.215 1.26 -0.865 3.816 -0.613 6.156 c 0.289 2.196 +1.152 4.572 2.592 7.128 c -0.646 0.324 -1.043 0.756 -1.188 1.152 s +-0.107 0.864 0.252 1.404 v 14.652 l -6.299 0.576 L 451.494 71.334 z +; +#X obj 217 3599 draw path M 442.313 90.162 v 14.221 c 0.648 0.611 0.793 +1.188 0.576 1.727 c -0.324 0.541 -1.008 1.045 -2.195 1.512 c 1.045 +1.441 1.691 3.133 2.088 5.365 c 0.287 2.051 -0.504 6.047 0 7.559 c +0.324 1.514 1.764 1.369 2.664 1.514 c 0.936 0.072 2.412 -0.037 2.916 +-1.152 c 0.324 -1.369 -0.936 -3.924 -0.576 -6.156 c 0.289 -2.232 1.188 +-4.607 2.557 -7.129 c -0.613 -0.359 -1.045 -0.791 -1.152 -1.15 c -0.18 +-0.434 -0.107 -0.9 0.217 -1.404 V 90.414 l -6.266 -0.612 L 442.313 +90.162 z; +#X obj 217 3781 draw path M 457.9 88.218 l -0.107 12.349 c -0.719 0.395 +-0.9 0.863 -0.936 1.26 c 0.072 0.396 0.287 0.756 1.043 1.08 c 0.217 +0.9 -0.07 1.512 -0.467 1.98 c -0.576 0.432 -1.584 -0.072 -2.449 0.574 +c -1.008 0.469 -2.303 1.441 -2.771 2.773 c -0.576 1.26 -0.863 3.203 +0.109 5.148 c 1.008 1.906 3.742 4.932 5.832 6.154 c 1.979 1.117 3.779 +1.045 5.795 0.469 c 1.908 0.828 4.428 2.664 5.615 -4.535 c 1.152 -1.873 +1.693 -4.789 1.045 -6.518 c -0.756 -1.799 -4.752 -3.203 -5.58 -4.066 +c -0.973 -0.938 -0.936 -1.369 0.107 -1.297 c 0.324 -0.217 0.396 -0.576 +0.361 -0.936 c -0.072 -0.432 -0.396 -0.936 -0.828 -1.512 l 0.107 -12.097 +C 462.51 88.794 460.205 88.506 457.9 88.218 z; +#X obj 612 1653 draw path M 126.629 139.734 l 3.204 2.484 c 2.232 -1.477 +3.96 -1.836 5.58 -1.08 c 1.512 0.646 3.744 3.744 3.636 5.398 c -0.252 +1.621 -2.52 4.213 -4.572 4.465 c -2.088 0.145 -5.904 -1.367 -7.704 +-3.564 c -1.944 -2.34 -4.644 -6.695 -3.384 -10.008 c 1.26 -3.564 5.652 +-7.775 11.088 -10.115 s 14.724 -2.773 21.204 -3.385 c 6.408 -0.576 +12.492 -0.035 16.884 -0.324 c 4.212 -0.432 6.804 -1.152 8.604 -2.16 +c 1.764 -1.008 2.556 -2.375 2.232 -3.959 l -2.232 -1.656 c -2.196 0.359 +-3.708 0.18 -4.536 -0.684 c -0.936 -0.973 -1.656 -3.529 -0.756 -4.465 +c 0.936 -1.043 3.744 -1.98 5.796 -1.152 c 1.908 0.793 4.932 3.457 5.472 +6.193 c 0.432 2.734 -0.324 7.271 -2.808 9.863 c -2.628 2.375 -7.344 +4.031 -12.348 4.969 c -5.112 0.756 -11.664 0.143 -17.712 0.504 c -6.192 +0.287 -13.752 0.646 -18.396 2.051 C 131.201 134.551 128.25 136.709 +126.629 139.734 z; +#X obj 217 992 loadbang; +#X msg 217 1013 fill #A16121 \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 597 1416 loadbang; +#X obj 597 1473 draw path M 150.246 75.258 c 1.44 -0.612 2.988 -0.936 +4.5 -0.828 c 1.476 -0.036 3.636 -0.576 4.68 1.296 c 0.972 1.908 1.008 +5.868 1.368 9.648 c 0.36 3.6 0.72 7.524 0.648 12.204 c -0.216 4.715 +-0.324 13.355 -1.836 15.623 c -1.62 2.018 -4.104 0.938 -7.596 -3.24 +l 0.18 -4.104 c 0.972 0.324 1.656 0.109 2.196 -0.936 c 0.36 -1.152 +0.576 -1.943 0.648 -5.148 c 0.144 -3.313 0.288 -11.339 0 -13.967 c +-0.468 -2.628 -1.332 -2.988 -2.592 -1.368 c -0.252 -1.98 -0.504 -3.672 +-0.9 -5.22 C 151.146 77.598 150.713 76.41 150.246 75.258 z; +#X obj 597 1598 loadbang; +#X obj 612 1866 loadbang; +#X obj 627 2140 loadbang; +#X obj 217 1645 loadbang; +#X msg 217 1669 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 217 1765 loadbang; +#X obj 217 1868 loadbang; +#X msg 217 1889 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 217 1972 loadbang; +#X obj 217 2083 loadbang; +#X msg 217 2104 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 217 2191 loadbang; +#X obj 217 2297 loadbang; +#X msg 217 2318 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 217 2394 loadbang; +#X obj 217 2578 loadbang; +#X obj 217 2761 loadbang; +#X msg 217 2782 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 217 2943 loadbang; +#X msg 217 2964 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 217 3140 loadbang; +#X obj 217 3364 loadbang; +#X obj 217 3537 loadbang; +#X obj 217 3724 loadbang; +#X msg 199 289 fill-rule 1 \, stroke #000000 \, stroke-miterlimit 10 +\, stroke-width 0.036 \, fill black; +#X msg 217 1786 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 217 1993 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 217 2212 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 217 3161 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 217 3385 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 217 3558 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 217 3745 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 597 1437 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 597 1619 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 612 1887 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X msg 627 2161 fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036 \, fill black; +#X obj 217 1718 draw path M 99.197 80.946 l 58.464 -4.464 l 40.428 +-0.216 l 241.2 -1.836 l -0.072 1.476 l -74.16 0.252 l -207.323 1.26 +l -58.752 4.428 L 99.197 80.946 z; +#X obj 217 1821 draw path M 98.226 110.789 l 59.976 1.08 l 281.736 +-22.211 l -0.145 -1.692 l -281.736 22.177 l -59.76 -0.504 L 98.226 +110.789 z; +#X obj 217 1925 draw path M 98.549 110.467 l 58.896 1.043 l 40.32 -3.168 +L 439.541 89.37 l -0.145 -1.044 l -75.238 6.156 l -206.713 16.092 l +-58.68 -0.576 L 98.549 110.467 z; +#X obj 217 2036 draw path M 99.197 99.486 l 59.976 1.08 l 279.684 -15.192 +l -0.072 -1.656 l -279.756 15.12 l -59.76 -0.504 L 99.197 99.486 z +; +#X obj 217 2144 draw path M 99.557 99.125 l 58.896 1.08 l 279.972 -15.119 +l -0.145 -0.936 L 158.417 99.234 l -58.68 -0.576 L 99.557 99.125 z +; +#X obj 217 2250 draw path M 99.666 90.414 l 59.76 -0.684 l 279.504 +-9.144 l 0.035 -1.584 l -279.684 9.036 l -59.652 1.26 L 99.666 90.414 +z; +#X obj 217 2360 draw path M 99.989 90.162 l 58.68 -0.792 l 279.829 +-9.18 v -0.864 l -279.829 9.108 l -58.644 1.08 L 99.989 90.162 z; +#X msg 217 2415 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X msg 217 2599 fill #FFFFFF \, fill-rule 1 \, stroke #000000 \, stroke-miterlimit +10 \, stroke-width 0.036; +#X obj 217 2453 draw path M 102.869 79.362 c -0.576 0.036 -1.296 0.036 +-2.16 0.144 c -0.936 0.108 -2.016 0.18 -3.24 0.36 c -0.468 -0.396 -0.972 +-0.54 -1.368 -0.432 c -0.468 0.072 -0.9 0.468 -1.152 0.9 c -0.288 0.36 +-0.864 0.756 -0.612 1.332 c 0.108 0.468 0.576 1.008 1.404 1.62 c -0.468 +-0.036 -1.008 -0.36 -1.332 -0.684 c -0.468 -0.504 -1.044 -1.044 -1.044 +-1.62 c -0.108 -0.648 0.612 -1.368 1.044 -1.764 c 0.432 -0.504 0.9 +-0.576 1.548 -0.612 c 0.504 -0.072 1.224 0.288 1.872 0.684 C 99.485 +79.29 101.177 79.326 102.869 79.362 z; +#X obj 217 2636 draw path M 103.013 87.714 c -0.576 0 -1.296 0.108 +-2.16 0.18 c -0.936 0.108 -2.016 0.18 -3.24 0.36 c -0.504 -0.432 -0.9 +-0.54 -1.332 -0.468 c -0.432 0.108 -0.972 0.36 -1.188 0.9 c -0.288 +0.36 -0.864 0.756 -0.612 1.332 c 0.108 0.468 0.576 1.008 1.404 1.62 +c -0.468 -0.072 -1.008 -0.288 -1.332 -0.648 c -0.468 -0.396 -1.08 -1.116 +-1.008 -1.62 c -0.072 -0.612 0.54 -1.44 1.008 -1.8 c 0.396 -0.432 0.972 +-0.576 1.584 -0.576 c 0.54 -0.036 1.152 0.18 1.836 0.648 C 99.629 87.642 +101.321 87.678 103.013 87.714 z; +#X obj 217 2818 draw path M 102.365 97.146 c -0.504 -0.072 -1.26 -0.037 +-2.124 -0.037 c -0.936 0 -1.98 0.037 -3.276 0.109 c -0.468 -0.434 -0.9 +-0.613 -1.296 -0.541 c -0.504 0.037 -0.972 0.396 -1.26 0.793 c -0.324 +0.287 -0.936 0.756 -0.72 1.26 c 0.072 0.504 0.504 1.043 1.296 1.764 +c -0.504 -0.18 -0.936 -0.396 -1.296 -0.793 c -0.432 -0.539 -1.008 -1.15 +-0.9 -1.691 c 0 -0.684 0.72 -1.295 1.188 -1.691 c 0.396 -0.324 0.972 +-0.612 1.584 -0.469 c 0.54 0.107 1.188 0.252 1.8 0.828 C 99.018 96.822 +100.673 96.967 102.365 97.146 z; +#X obj 217 3002 draw path M 101.609 108.883 c -0.504 -0.182 -1.26 -0.145 +-2.124 -0.289 c -0.936 -0.145 -1.98 -0.252 -3.276 -0.324 c -0.432 -0.539 +-0.792 -0.648 -1.224 -0.719 c -0.468 -0.037 -1.008 0.215 -1.332 0.611 +c -0.36 0.252 -0.972 0.648 -0.864 1.188 c 0.072 0.469 0.288 1.152 1.044 +1.908 c -0.468 -0.18 -0.9 -0.539 -1.152 -0.936 c -0.36 -0.576 -0.864 +-1.225 -0.684 -1.801 c 0.108 -0.648 0.792 -1.26 1.368 -1.547 c 0.432 +-0.252 1.08 -0.469 1.656 -0.252 c 0.468 0.18 1.152 0.395 1.656 1.043 +C 98.297 108.125 99.954 108.486 101.609 108.883 z; +#X obj 217 3200 draw path M 432.414 71.91 l -0.109 -12.348 c -0.719 +-0.432 -0.898 -0.9 -0.936 -1.26 c 0.072 -0.36 0.289 -0.756 1.045 -1.044 +c 0.215 -0.936 -0.072 -1.548 -0.469 -1.98 c -0.576 -0.504 -1.584 -0.108 +-2.447 -0.612 c -1.008 -0.576 -2.305 -1.548 -2.773 -2.772 c -0.576 +-1.368 -0.863 -3.276 0.109 -5.148 c 1.008 -2.016 3.744 -5.04 5.832 +-6.156 c 1.979 -1.188 3.779 -1.152 5.795 -0.468 c 1.836 0.72 4.393 +2.556 5.58 4.536 c 1.08 1.764 1.764 4.716 1.08 6.516 c -0.863 1.764 +-4.68 3.132 -5.615 4.104 c -0.9 0.828 -0.9 1.296 0.143 1.26 c 0.252 +0.18 0.361 0.54 0.324 0.936 c -0.107 0.36 -0.324 0.864 -0.791 1.512 +l 0.107 12.096 C 437.021 71.334 434.717 71.622 432.414 71.91 z; +#X obj 595 381 draw path M 62.64 15.6 c 12.584 0.734 24.349 0.873 36.24 +0.96 c 7.124 0.052 14.281 0.818 21.36 0.96 c 0.972 0.02 2.124 -0.303 +3.12 -0.24 c 0.866 0.055 1.58 0.432 2.4 0.48 c 2.801 0.164 5.906 0.034 +8.64 0 c 14.148 -0.176 28.807 -0.002 40.8 -0.48 c 0.492 -0.02 0.846 +0.11 0.937 0.108 c 0.428 -0.01 1.018 -0.104 1.464 -0.108 c 8.997 -0.087 +17.424 -0.351 25.92 -0.24 c 6.818 0.089 13.815 -0.613 20.64 -0.72 c +1.663 -0.026 3.373 0.284 5.04 0.24 c 3.56 -0.094 7.152 -0.639 10.8 +-0.72 c 3.158 -0.07 6.279 0.08 8.881 -0.24 c 1.563 -0.192 4.441 -0.337 +6.96 -0.48 c 0.436 -0.025 0.822 -0.454 1.199 -0.48 c 3.025 -0.208 5.592 +-0.028 8.4 0.24 c 3.497 0.333 7.587 -0.379 11.521 -0.48 c 3.39 -0.087 +6.771 -0.313 10.08 -0.48 c 7.665 -0.386 15.545 -0.414 22.56 -0.96 c +2.128 -0.166 4.379 -1.031 6.72 0 c 1.478 -0.667 3.945 -0.199 5.28 -0.96 +c 0.401 -0.229 0.407 -1.186 0.96 -0.48 c 0.992 0.486 1.805 0.434 0.96 +1.68 c 0.101 0.939 0.907 1.172 0.96 2.16 c -0.37 1.15 -1.388 1.652 +-1.92 2.64 c -0.885 0.856 -0.303 -1.107 -1.44 -0.72 c -3.774 -0.74 +-6.894 0.604 -10.56 0 c -1.479 1.722 -0.344 6.057 -1.44 8.16 c -12.37 +-0.534 -25.459 0.338 -39.84 0 c -21.562 -0.507 -45.448 -0.295 -65.28 +-0.479 c -18.28 -0.171 -36.127 0.095 -53.52 -0.24 c -11.992 -0.231 +-24.525 -0.253 -35.76 -0.48 C 80.846 23.556 48.5 22.8 16.8 22.8 c -2.578 +0 -5.407 -0.259 -7.92 -1.44 c 0.285 -2.016 2.238 -2.685 3.36 -4.32 +c 0.658 -0.959 0.958 -1.97 1.68 -2.88 c 2.746 -3.464 7.493 -2.951 12.72 +-2.4 c 1.614 0.17 3.343 0.472 5.04 0.72 c 3.145 0.459 6.408 0.51 9.6 +0.96 c 6.856 0.966 13.748 1.703 19.68 1.92 C 60.96 15.36 62.626 15.554 +62.64 15.6 z M 318.96 15.6 c 0.515 0.444 1.278 -0.318 2.159 -0.24 c +0.178 -0.879 -0.59 -1.333 0 -1.92 C 319.567 12.782 318.751 13.827 318.96 +15.6 z M 312 13.68 c -0.01 0.79 -0.404 1.195 -0.239 2.16 c 0.574 0.504 +1.13 -0.466 2.16 -0.24 c 0.084 -0.808 0.545 -1.75 -0.24 -2.16 C 313.577 +13.977 312.498 13.537 312 13.68 z M 18.48 18 c 0.441 1.995 4.15 1.628 +6.96 1.681 c 2.683 0.05 5.527 0.24 8.4 0.24 c 7.739 0 10.332 0.239 +16.8 0.239 c 11.384 0 22.285 0.721 34.08 0.721 c 11.233 0 22.209 0.361 +33.36 0.479 c 10.196 0.108 25.275 0.017 35.28 0.24 c 11.54 0.258 22.372 +0.517 33.36 0.479 c 23.625 -0.077 48.702 0.009 67.2 0.24 c 7.284 0.091 +16.716 -0.512 24.479 -0.24 c 2.903 0.102 5.933 0.574 8.641 0.24 c 0.495 +-0.061 0.68 -0.093 0.959 -0.24 c 1.812 -0.955 6.053 0.13 5.28 -3.119 +c -0.37 -1.559 -3.103 -0.996 -4.8 -0.961 c -5.819 0.124 -12.526 0.472 +-18 0.721 c -6.415 0.291 -11.416 0.711 -17.52 0.72 c -8.606 0.013 -19.4 +0.43 -28.801 0.48 c -16.698 0.089 -31.255 0.368 -45.359 0.479 c -15.37 +0.122 -29.614 0.816 -45.36 0.24 c -13.572 -0.497 -29.051 -0.578 -44.16 +-0.72 c -7.529 -0.071 -14.91 -0.724 -22.32 -1.2 c -11.267 -0.726 -22.561 +-1.641 -33.36 -2.88 c -3.775 -0.433 -8.766 -0.963 -11.76 -0.72 C 19.071 +15.345 17.958 15.635 18.48 18 z M 292.56 16.08 c -0.253 0.893 0.81 +0.471 0.96 0.96 c -0.682 0.225 0.624 4.115 1.68 2.64 c -0.304 -0.521 +-0.057 -0.534 -0.479 -1.2 c 1.905 -0.307 3.404 0.369 4.56 -0.48 c -1.343 +-0.496 -3.062 0.254 -4.8 -0.239 c 0.596 -0.125 0.854 -0.585 1.2 -0.96 +c 0.631 -0.071 0.188 0.931 0.96 0.72 c -0.03 -0.601 -0.458 -0.751 0.24 +-0.96 c 1.945 -0.288 4.232 -0.216 6.479 -0.24 c 1.318 -0.014 3.612 +0.592 3.601 -0.96 C 301.037 15.613 297.927 15.967 292.56 16.08 z M +299.76 19.2 c 0.187 0.054 0.278 0.201 0.239 0.48 c 0.914 0.113 1.499 +-0.102 1.681 -0.72 C 301.25 18.325 299.918 18.306 299.76 19.2 z M 298.32 +19.68 c -0.729 0.15 -2.067 -0.308 -2.399 0.24 C 296.492 20.09 298.146 +20.554 298.32 19.68 z M 281.52 23.04 c -30.968 0 -65.012 0.405 -92.16 +-0.479 c -11.977 -0.391 -23.516 0.264 -35.28 0 c -11.302 -0.254 -22.547 +-0.683 -33.36 -0.48 c -10.775 0.203 -21.486 0.063 -32.4 -0.479 c -5.546 +-0.276 -11.193 0.134 -16.8 0 c -16.908 -0.405 -34.065 -0.861 -50.4 +-0.96 c -1.042 -0.063 -0.102 0.931 0.24 0.96 c 34.199 0.526 66.996 +1.68 99.36 1.68 c 22.283 0 44.787 0.993 65.279 0.96 c 30.988 -0.049 +65.196 0.24 99.36 0.24 c 1.274 0 2.887 0.402 4.08 -0.48 C 287.105 22.359 +284.021 23.04 281.52 23.04 z M 297.84 20.88 c 0.255 0.01 0.609 -0.113 +0.239 -0.24 c -1.169 -0.11 -2.811 0.251 -3.6 -0.24 c -0.819 0.62 -1.776 +1.104 -2.4 1.92 c 3.084 0.255 7.409 0.379 11.04 0 c -0.682 -0.491 0.004 +-0.956 0 -0.96 c -0.292 -0.337 -1.511 0.437 -1.199 -0.96 c -0.482 0.252 +-2.587 0.115 -2.16 0.48 c 0.453 0.106 1.446 -0.327 1.2 0.479 c -2.242 +-0.158 -5.119 0.318 -6.961 -0.24 C 294.862 20.622 296.595 20.996 297.84 +20.88 z M 304.08 22.32 c 1.264 0.144 2.062 -0.178 3.12 -0.24 c 0 -0.479 +0 -0.96 0 -1.439 c -0.239 0 -0.479 0 -0.72 0 C 307.342 22.158 303.728 +20.587 304.08 22.32 z; +#X floatatom 584 181 5 0 0 0 - - -, f 5; +#X obj 584 252 pack 0 0 0 0; +#X floatatom 635 181 5 0 0 0 - - -, f 5; +#X obj 635 202 t b a; +#X floatatom 685 181 5 0 0 0 - - -, f 5; +#X obj 685 202 t b a; +#X floatatom 735 181 5 0 0 0 - - -, f 5; +#X obj 735 202 t b a; +#X obj 800 215 loadbang; +#X text 707 44 1.09 to 142; +#X obj 604 95 r vsl-snd; +#X msg 584 276 transform translate 525 250 rotate \$1 16 -392 scale +1.16; +#X msg 820 51 1.2; +#X obj 820 72 * 180; +#X obj 820 93 / 3.14; +#X floatatom 820 114 5 0 0 0 - - -, f 5; +#X obj 590 136 expr (($f1/127.0 * 0.33) + 1.09) * 180 / 3.14; +#X msg 700 250 69 16 -392 1.16; +#X msg 521 23 -0.45; +#X obj 521 44 * 180; +#X obj 521 65 / 3.14; +#X floatatom 521 86 5 0 0 0 - - -, f 5; +#X connect 0 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 69 0; +#X connect 5 0 43 0; +#X connect 15 0 16 0; +#X connect 16 0 7 0; +#X connect 17 0 51 0; +#X connect 19 0 52 0; +#X connect 20 0 53 0; +#X connect 21 0 54 0; #X connect 22 0 23 0; -#X connect 23 0 24 0; -#X connect 24 0 25 0; +#X connect 23 0 55 0; +#X connect 24 0 44 0; #X connect 25 0 26 0; -#X connect 27 0 15 0; -#X connect 27 1 10 0; -#X restore 63 288 pd repertoire; -#X obj 137 164 vradio 15 1 0 2 empty empty empty 0 -8 0 10 -4034 -1 --1 0; -#X text 156 162 Practice your scales; -#X obj 63 335 t a; -#N canvas 507 232 500 535 rubato 0; -#X obj 129 28 inlet; -#X obj 255 40 r \$0-rubato; -#X obj 129 502 outlet; -#X obj 256 184 f; -#X obj 129 147 f; -#X obj 256 407 pipe 0; -#X obj 256 215 t a b; -#X obj 283 237 random 100; -#X obj 283 259 / 100; -#X obj 256 372 * 1.3; -#X obj 250 109 t a b; -#X obj 320 109 t a b; -#X obj 373 104 t a b; -#X obj 255 72 sel 0 1 2 3; -#X obj 129 180 t a b; -#X obj 156 210 random 99999; -#X obj 156 235 / 99999; -#X obj 169 327 *; -#X obj 129 294 t a a; -#X obj 129 356 +; -#X floatatom 346 369 5 0 0 0 - - -, f 5; -#X floatatom 379 291 5 0 0 0 - - -, f 5; -#X obj 283 313 + 1.45; -#X obj 283 285 * 0.1; -#X msg 396 132 2.5; -#X msg 343 137 1.2; -#X msg 273 137 1.5; -#X obj 156 261 * 0.03; -#X connect 0 0 3 1; -#X connect 0 0 4 0; -#X connect 1 0 13 0; -#X connect 3 0 6 0; -#X connect 4 0 14 0; -#X connect 5 0 2 0; -#X connect 6 0 9 0; -#X connect 6 1 7 0; -#X connect 7 0 8 0; -#X connect 8 0 23 0; -#X connect 9 0 5 0; -#X connect 10 0 3 0; -#X connect 10 1 26 0; -#X connect 11 0 3 0; -#X connect 11 1 25 0; -#X connect 12 0 3 0; -#X connect 12 1 24 0; -#X connect 13 0 4 0; -#X connect 13 1 10 0; -#X connect 13 2 11 0; -#X connect 13 3 12 0; -#X connect 14 0 18 0; -#X connect 14 1 15 0; -#X connect 15 0 16 0; -#X connect 16 0 27 0; -#X connect 17 0 19 1; -#X connect 18 0 19 0; -#X connect 18 1 17 0; -#X connect 19 0 2 0; -#X connect 22 0 9 1; -#X connect 22 0 20 0; -#X connect 23 0 22 0; -#X connect 24 0 22 1; -#X connect 25 0 22 1; -#X connect 26 0 21 0; -#X connect 26 0 22 1; -#X connect 27 0 17 1; -#X restore 422 213 pd rubato; -#X obj 63 312 + 62; -#X obj 191 555 *~ 0.6; -#X obj 286 176 r end; -#X msg 286 202 0; -#X text 156 178 Play some Bach; -#X obj 208 611 ezoutput~; -#X obj 249 281 r end; -#X obj 249 303 t b b; -#X obj 216 269 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 --1 -1; -#X obj 112 383 t a b; -#X obj 112 450 pack; -#X obj 139 425 + 10; -#X obj 139 403 random 7; -#X msg 276 327 0.2 1750; -#X obj 331 539 s vsl-snd; -#X obj 42 389 s capo; -#X scalar violin 566 397 \;; -#X obj 44 20 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 --1; -#X obj 331 493 line; -#X text 330 114 Use the green buttons to "learn" the violin.; -#X obj 137 207 + 1; -#X text 310 636 2014 Jonathan Wilkes; -#X obj 137 140 loadbang; -#X connect 2 0 15 0; -#X connect 2 0 8 0; +#X connect 26 0 57 0; +#X connect 27 0 45 0; +#X connect 28 0 29 0; +#X connect 29 0 59 0; +#X connect 30 0 46 0; +#X connect 31 0 32 0; +#X connect 32 0 61 0; +#X connect 33 0 62 0; +#X connect 34 0 63 0; +#X connect 35 0 36 0; +#X connect 36 0 66 0; +#X connect 37 0 38 0; +#X connect 38 0 67 0; +#X connect 39 0 47 0; +#X connect 40 0 48 0; +#X connect 41 0 49 0; +#X connect 42 0 50 0; +#X connect 43 0 6 0; +#X connect 44 0 56 0; +#X connect 45 0 58 0; +#X connect 46 0 60 0; +#X connect 47 0 68 0; +#X connect 48 0 11 0; +#X connect 49 0 12 0; +#X connect 50 0 13 0; +#X connect 51 0 18 0; +#X connect 52 0 14 0; +#X connect 53 0 8 0; +#X connect 54 0 9 0; +#X connect 62 0 64 0; +#X connect 63 0 65 0; +#X connect 70 0 71 0; +#X connect 71 0 81 0; +#X connect 72 0 73 0; +#X connect 73 0 70 0; +#X connect 73 1 71 1; +#X connect 74 0 75 0; +#X connect 75 0 72 0; +#X connect 75 1 71 2; +#X connect 76 0 77 0; +#X connect 77 0 74 0; +#X connect 77 1 71 3; +#X connect 78 0 87 0; +#X connect 80 0 86 0; +#X connect 81 0 69 0; +#X connect 82 0 83 0; +#X connect 83 0 84 0; +#X connect 84 0 85 0; +#X connect 86 0 71 0; +#X connect 87 0 81 0; +#X connect 88 0 89 0; +#X connect 89 0 90 0; +#X connect 90 0 91 0; +#X restore 137 114 group; +#X obj 137 50 struct violin float x float y; +#X obj 137 72 loadbang; +#X msg 137 93 transform rotate -26 59 113 scale 0.5; +#X connect 1 0 14 0; +#X connect 1 0 7 0; +#X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 5 0 6 0; -#X connect 6 0 7 0; -#X connect 7 0 34 0; -#X connect 8 0 4 1; -#X connect 8 1 4 0; -#X connect 8 2 13 0; -#X connect 8 2 9 0; -#X connect 9 0 14 0; -#X connect 10 0 11 1; -#X connect 11 0 40 0; -#X connect 12 0 48 0; -#X connect 13 0 10 0; -#X connect 14 0 10 0; -#X connect 15 0 3 0; -#X connect 16 0 30 0; +#X connect 6 0 33 0; +#X connect 7 0 3 1; +#X connect 7 1 3 0; +#X connect 7 2 12 0; +#X connect 7 2 8 0; +#X connect 8 0 13 0; +#X connect 9 0 10 1; +#X connect 10 0 39 0; +#X connect 11 0 47 0; +#X connect 12 0 9 0; +#X connect 13 0 9 0; +#X connect 14 0 2 0; +#X connect 15 0 29 0; +#X connect 16 0 52 0; #X connect 17 0 53 0; -#X connect 18 0 54 0; -#X connect 19 0 12 0; -#X connect 20 0 21 0; -#X connect 21 0 16 0; -#X connect 22 0 38 0; -#X connect 23 0 57 0; -#X connect 24 0 23 0; -#X connect 25 0 26 0; -#X connect 26 0 24 1; -#X connect 27 0 28 0; -#X connect 28 0 30 1; -#X connect 29 0 25 0; -#X connect 30 0 24 0; -#X connect 31 0 44 0; -#X connect 31 0 44 1; -#X connect 32 0 11 0; -#X connect 33 0 32 0; -#X connect 34 0 39 0; -#X connect 35 0 59 0; -#X connect 37 0 12 0; -#X connect 38 0 29 0; -#X connect 38 0 27 0; -#X connect 38 0 21 1; -#X connect 39 0 37 0; -#X connect 40 0 44 0; -#X connect 40 0 44 1; -#X connect 41 0 42 0; -#X connect 42 0 21 0; -#X connect 45 0 46 0; -#X connect 46 1 52 0; -#X connect 47 0 46 0; -#X connect 48 0 49 0; -#X connect 48 1 51 0; -#X connect 49 0 33 0; -#X connect 50 0 49 1; -#X connect 51 0 50 0; -#X connect 52 0 24 0; -#X connect 56 0 1 0; -#X connect 57 0 17 0; -#X connect 59 0 34 1; -#X connect 61 0 35 0; +#X connect 18 0 11 0; +#X connect 19 0 20 0; +#X connect 20 0 15 0; +#X connect 21 0 37 0; +#X connect 22 0 55 0; +#X connect 23 0 22 0; +#X connect 24 0 25 0; +#X connect 25 0 23 1; +#X connect 26 0 27 0; +#X connect 27 0 29 1; +#X connect 28 0 24 0; +#X connect 29 0 23 0; +#X connect 30 0 43 0; +#X connect 30 0 43 1; +#X connect 31 0 10 0; +#X connect 32 0 31 0; +#X connect 33 0 38 0; +#X connect 34 0 57 0; +#X connect 36 0 11 0; +#X connect 37 0 28 0; +#X connect 37 0 26 0; +#X connect 37 0 20 1; +#X connect 38 0 36 0; +#X connect 39 0 43 0; +#X connect 39 0 43 1; +#X connect 40 0 41 0; +#X connect 41 0 20 0; +#X connect 44 0 45 0; +#X connect 45 1 51 0; +#X connect 46 0 45 0; +#X connect 47 0 48 0; +#X connect 47 1 50 0; +#X connect 48 0 32 0; +#X connect 49 0 48 1; +#X connect 50 0 49 0; +#X connect 51 0 23 0; +#X connect 55 0 16 0; +#X connect 57 0 33 1; +#X connect 59 0 34 0; +#X connect 62 0 63 0; +#X connect 63 0 60 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-demos/yin-yang.pd b/pd/doc/4.data.structures/pd-l2ork/ds-demos/yin-yang.pd index 6d06a5b42009d5d09c9ae6760e95be178e8d1ed3..80d51da2976eae9a1208afaa7762df504c950cf9 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-demos/yin-yang.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-demos/yin-yang.pd @@ -1,110 +1,107 @@ #N struct yin-yang float x float y float yin float yang; -#N canvas 0 19 752 636 10; -#X obj 763 468 pointer; -#X msg 786 439 next; -#X obj 291 89 draw circle 233 233 231; -#X obj 291 163 draw path M 233 459 a 226 226 0 0 1 0 -452 a 113 113 -0 0 1 0 226 z; -#X obj 291 246 draw circle 233 346 113; -#X obj 580 244 draw circle 233 120 30; -#X obj 531 89 draw circle 233 346 30; -#X obj 671 415 t a a; -#X obj 698 439 - 255; -#X obj 698 463 abs; -#X obj 671 341 random 256; -#X obj 670 294 tgl 15 0 empty empty empty 17 7 0 10 -4034 -1 -1 1 1 +#N canvas 0 19 660 636 10; +#X obj 383 468 pointer; +#X msg 406 439 next; +#X obj 291 415 t a a; +#X obj 318 439 - 255; +#X obj 318 463 abs; +#X obj 291 341 random 256; +#X obj 290 294 tgl 15 0 empty empty empty 17 7 0 10 -4034 -1 -1 0 1 ; -#X floatatom 727 290 5 0 0 0 - - -, f 5; -#X obj 671 383 line; -#X msg 291 140 fill yang yang yang \, stroke yang yang yang; -#X msg 291 224 fill yin yin yin \, stroke-opacity 0; -#X msg 531 66 fill yang yang yang \, stroke-opacity 0; -#X msg 580 224 fill yin yin yin \, stroke-opacity 0; -#X msg 636 455 0; -#X msg 291 66 fill yin yin yin \, stroke-opacity 0; -#X obj 454 376 cos~; -#X obj 469 458 osc~ 440; -#X obj 454 407 *~ -0.5; -#X obj 454 428 +~ 0.5; -#X obj 454 489 *~; -#X obj 530 411 snapshot~; -#X obj 530 294 tgl 15 0 empty empty empty 17 7 0 10 -4034 -1 -1 1 1 +#X floatatom 347 290 5 0 0 0 - - -, f 5; +#X obj 291 383 line; +#X msg 256 455 0; +#X obj 74 376 cos~; +#X obj 89 458 osc~ 440; +#X obj 74 407 *~ -0.5; +#X obj 74 428 +~ 0.5; +#X obj 74 489 *~; +#X obj 150 411 snapshot~; +#X obj 150 294 tgl 15 0 empty empty empty 17 7 0 10 -4034 -1 -1 0 1 ; -#X obj 530 315 metro 150; -#X floatatom 581 290 5 0 0 0 - - -, f 5; -#X msg 671 362 \$1 2674; -#X obj 670 315 metro 2674; -#X obj 530 433 t a a; -#X obj 531 508 pack; -#X obj 531 583 draw group; -#X obj 291 46 loadbang; -#X obj 291 116 loadbang; -#X obj 531 46 loadbang; -#X obj 291 197 loadbang; -#X obj 581 197 loadbang; -#N canvas 747 19 609 405 visualization 1; -#X scalar yin-yang 75 90 23.5303 231.47 \;; -#X scalar yin-yang 273 72 0 255 \;; -#X restore 398 290 pd visualization; -#X text 308 290 Click here ->; -#X msg 763 412 traverse pd-visualization \, next; -#X obj 454 510 output~; -#X obj 762 384 loadbang; -#X obj 291 16 struct yin-yang float x float y float yin float yang -; -#X obj 671 503 set yin-yang yin yang; -#X msg 469 313 dsp \$1; -#X obj 469 334 s pd; -#X msg 531 560 transform scale 0.3 skewx \$2 skewy \$2 rotate \$1 233 +#X obj 150 315 metro 150; +#X floatatom 201 290 5 0 0 0 - - -, f 5; +#X msg 291 362 \$1 2674; +#X obj 290 315 metro 2674; +#X obj 150 433 t a a; +#X obj 151 508 pack; +#X obj 74 510 output~; +#X obj 382 384 loadbang; +#X obj 71 16 struct yin-yang float x float y float yin float yang; +#X obj 291 503 set yin-yang yin yang; +#X msg 89 313 dsp \$1; +#X obj 89 334 s pd; +#X msg 151 560 transform scale 0.3 skewx \$2 skewy \$2 rotate \$1 233 233; -#X obj 574 508 loadbang; -#X msg 574 529 0 0; -#X obj 530 460 * 180; -#X obj 574 460 * 0.4; -#X obj 454 353 phasor~ 0.3; -#X connect 0 0 45 2; +#X obj 194 508 loadbang; +#X msg 194 529 0 0; +#X obj 150 460 * 180; +#X obj 194 460 * 0.4; +#X obj 74 353 phasor~ 0.3; +#N canvas 639 282 450 300 (subpatch) 0; +#X obj 78 -41 draw circle 233 233 231; +#X obj 78 33 draw path M 233 459 a 226 226 0 0 1 0 -452 a 113 113 0 +0 1 0 226 z; +#X obj 78 116 draw circle 233 346 113; +#X obj 368 114 draw circle 233 120 30; +#X obj 318 -41 draw circle 233 346 30; +#X msg 78 10 fill yang yang yang \, stroke yang yang yang; +#X msg 78 94 fill yin yin yin \, stroke-opacity 0; +#X msg 318 -64 fill yang yang yang \, stroke-opacity 0; +#X msg 368 94 fill yin yin yin \, stroke-opacity 0; +#X msg 78 -64 fill yin yin yin \, stroke-opacity 0; +#X obj 78 -84 loadbang; +#X obj 78 -14 loadbang; +#X obj 318 -84 loadbang; +#X obj 78 67 loadbang; +#X obj 368 67 loadbang; +#X connect 5 0 1 0; +#X connect 6 0 2 0; +#X connect 7 0 4 0; +#X connect 8 0 3 0; +#X connect 9 0 0 0; +#X connect 10 0 9 0; +#X connect 11 0 5 0; +#X connect 12 0 7 0; +#X connect 13 0 6 0; +#X connect 14 0 8 0; +#X restore 151 581 group; +#X scalar yin-yang 86 124 146.137 108.863 \;; +#X scalar yin-yang 284 106 0 255 \;; +#X msg 383 412 traverse pd-yin-yang.pd \, next; +#X connect 0 0 26 2; #X connect 1 0 0 0; -#X connect 7 0 45 0; -#X connect 7 1 8 0; -#X connect 8 0 9 0; -#X connect 9 0 45 1; -#X connect 10 0 29 0; -#X connect 11 0 30 0; -#X connect 12 0 30 1; -#X connect 13 0 7 0; -#X connect 14 0 3 0; -#X connect 15 0 4 0; -#X connect 16 0 6 0; -#X connect 17 0 5 0; -#X connect 18 0 45 0; -#X connect 19 0 2 0; -#X connect 20 0 22 0; -#X connect 20 0 25 0; -#X connect 21 0 24 1; -#X connect 22 0 23 0; -#X connect 23 0 24 0; -#X connect 24 0 42 0; -#X connect 25 0 31 0; -#X connect 26 0 27 0; -#X connect 26 0 46 0; -#X connect 27 0 25 0; -#X connect 28 0 27 1; -#X connect 29 0 13 0; -#X connect 30 0 10 0; -#X connect 31 0 51 0; -#X connect 31 1 52 0; -#X connect 32 0 48 0; -#X connect 34 0 19 0; -#X connect 35 0 14 0; -#X connect 36 0 16 0; -#X connect 37 0 15 0; -#X connect 38 0 17 0; -#X connect 41 0 0 0; -#X connect 43 0 41 0; -#X connect 46 0 47 0; -#X connect 48 0 33 0; -#X connect 49 0 50 0; -#X connect 50 0 48 0; -#X connect 51 0 32 0; -#X connect 52 0 32 1; -#X connect 53 0 20 0; +#X connect 2 0 26 0; +#X connect 2 1 3 0; +#X connect 3 0 4 0; +#X connect 4 0 26 1; +#X connect 5 0 19 0; +#X connect 6 0 20 0; +#X connect 7 0 20 1; +#X connect 8 0 2 0; +#X connect 9 0 26 0; +#X connect 10 0 12 0; +#X connect 10 0 15 0; +#X connect 11 0 14 1; +#X connect 12 0 13 0; +#X connect 13 0 14 0; +#X connect 14 0 23 0; +#X connect 15 0 21 0; +#X connect 16 0 17 0; +#X connect 16 0 27 0; +#X connect 17 0 15 0; +#X connect 18 0 17 1; +#X connect 19 0 8 0; +#X connect 20 0 5 0; +#X connect 21 0 32 0; +#X connect 21 1 33 0; +#X connect 22 0 29 0; +#X connect 24 0 38 0; +#X connect 27 0 28 0; +#X connect 29 0 35 0; +#X connect 30 0 31 0; +#X connect 31 0 29 0; +#X connect 32 0 22 0; +#X connect 33 0 22 1; +#X connect 34 0 10 0; +#X connect 38 0 0 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/01.intro.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/01.intro.pd index 6f46248b518672859bfbed3b85a54b930a19cc2b..50b0cd42d47955197acf0255bfbd417c46eb0250 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/01.intro.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/01.intro.pd @@ -1,5 +1,5 @@ #N struct foo float x float y; -#N canvas 0 19 565 491 10; +#N canvas -9 19 565 491 10; #X scalar foo 96 105 \;; #N canvas 429 132 808 465 welcome-animation 0; #X obj 877 107 bng 54 250 50 0 empty empty empty 17 7 0 10 -262144 @@ -130,8 +130,14 @@ #X connect 54 0 34 0; #X restore 339 86 pd welcome-animation; #N canvas 457 133 772 478 welcome-struct 0; -#X obj 606 -8 draw rect -40 -50 200 90; -#X obj 300 94 draw path m 93.8047 87.029 c 0 1.17187 0.859375 2.05078 +#X obj 311 66 draw rect -40 -50 200 90; +#X obj 189 -26 struct foo float x float y; +#X obj 189 4 loadbang; +#X msg 311 35 stroke-dasharray 10 4 \, stroke-width 4 \, stroke gray +; +#N canvas 433 184 450 300 welcome-text 0; +#N canvas 71 237 450 300 w 0; +#X obj 40 215 draw path m 93.8047 87.029 c 0 1.17187 0.859375 2.05078 0.859375 3.20312 0 0.976561 -0.488281 1.66016 -0.683593 2.46094 l -0.78125 2.40234 c -0.292969 0.839843 -0.9375 1.15234 -0.9375 2.12891 -0.136719 0.234375 -0.976563 1.19141 -1.09375 1.38672 -0.332031 0.546874 -0.605469 @@ -211,8 +217,27 @@ c 0 -0.0976 0.87891 -1.11328 0.95704 -1.24999 0.52734 -1.01562 0.52734 0 -0.800782 0.156251 -0.800782 0.703125 0 1.05469 1.85547 0.546876 2.14844 1.19141 0.273437 0.703125 0.3125 1.48438 0.605469 2.24609 l 0.410156 0.761719 0.976562 2.75391 0 0.117188; -#X obj 301 -46 struct foo float x float y; -#X obj 716 93 draw path m 113.062 98.0641 c 0.27344 0.781249 0.23438 +#X obj 39 103 loadbang; +#X obj 121 130 pack; +#X floatatom 121 95 5 0 0 0 - - -, f 5; +#X floatatom 178 95 5 0 0 0 - - -, f 5; +#X obj 178 114 t b a; +#X msg 40 184 transform scale \$1 translate -100 -100 rotate \$2 96 +93; +#X msg 39 132 1 0; +#X obj 72 132 r \$0-0; +#X connect 1 0 7 0; +#X connect 2 0 6 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 0 0; +#X connect 7 0 6 0; +#X connect 8 0 6 0; +#X restore 37 -43 group w; +#N canvas 433 184 450 300 e 0; +#X obj 45 146 draw path m 113.062 98.0641 c 0.27344 0.781249 0.23438 1.52344 0.46875 2.22656 1.38672 3.92578 3.98438 6.5625 8.33984 6.5625 l 1.46485 -0.23438 0.23437 0.0391 2.08985 -1.05469 c 0.41015 -0.50781 0.64453 -0.33203 1.07422 -0.64453 1.23046 -0.83985 1.52343 -1.54297 @@ -240,7 +265,27 @@ c 0.0977 0 0.41016 -0.175782 0.44922 -0.175782 0.39063 0 0.70313 0.371094 1.15234 -1.38672 1.28906 -0.54687 0.117188 -0.95703 0.253907 -1.52344 0.253907 l -1.66015 -0.136719 -2.59766 0.410156 -0.60547 0 c -0.21484 -0.05859 -0.41015 -0.9375 -0.41015 -1.21094; -#X obj 1143 93 draw path m 132.32 106.658 c 0.60547 0 1.32813 0.0977 +#X obj 45 45 loadbang; +#X obj 128 74 pack; +#X floatatom 128 39 5 0 0 0 - - -, f 5; +#X floatatom 185 39 5 0 0 0 - - -, f 5; +#X obj 185 58 t b a; +#X msg 45 74 1 0; +#X msg 45 115 transform scale \$1 translate -100 -100 rotate \$2 122 +98; +#X obj 78 74 r \$0-1; +#X connect 1 0 6 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X restore 37 -23 group e; +#N canvas 433 184 450 300 l 0; +#X obj 40 175 draw path m 132.32 106.658 c 0.60547 0 1.32813 0.0977 1.9336 0.15625 0.97656 -0.0195 1.54297 -0.25391 2.69531 -0.29297 0.0391 0 0.0977 0.0391 0.0977 0.0391 l 0.95704 0.0586 c 0.0977 0 0.80078 0.0391 0.8789 0.0586 l 0.60547 0.0781 c 0.3125 0.0586 0.50781 0.0586 0.68359 @@ -277,8 +322,28 @@ l 0.0586 -1.34766 -0.0195 -1.01562 c 0 -0.624999 0.0195 -1.26953 0.23438 0.13672 -0.82031 0.13672 -0.0195 0 -0.42969 0 -0.66407 0.0977 l -0.44922 0.70313 0 0.91797 0.23438 0.19531 0.41016 0 c 0.13671 0.0391 0.23437 0.0391 0.3125 0.0391 l 1.03515 -0.0977; -#X obj 1571 94 draw path m 148.922 106.521 0.35157 0.29297 0.60547 -0 c 2.77343 0 5.9375 -1.3086 6.8164 -4.25782 l 0 -0.23437 c 0 -0.42969 +#X obj 40 64 loadbang; +#X obj 128 93 pack; +#X floatatom 128 58 5 0 0 0 - - -, f 5; +#X floatatom 185 58 5 0 0 0 - - -, f 5; +#X obj 185 77 t b a; +#X msg 40 93 1 0; +#X msg 40 144 transform scale \$1 translate -100 -100 rotate \$2 132 +92; +#X obj 73 93 r \$0-2; +#X connect 1 0 6 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X restore 37 -3 group l; +#N canvas 433 184 450 300 c 0; +#X obj 26 127 draw path m 148.922 106.521 0.35157 0.29297 0.60547 0 +c 2.77343 0 5.9375 -1.3086 6.8164 -4.25782 l 0 -0.23437 c 0 -0.42969 -0.13672 -0.60547 -0.60547 -0.60547 -0.50781 0 -1.11328 0.82031 -1.52343 1.11328 -0.9375 0.72266 -2.28516 1.28906 -3.47657 1.28906 -1.01562 0 -1.17187 -0.3125 -1.99218 -0.91797 -0.17578 -0.15625 -0.60547 -0.13671 @@ -300,7 +365,27 @@ C 146.793 100.291 146.5 99.8024 146.5 98.611 l 0 -0.546875 -0.17578 0.58594 1.58203 l 0 1.05468 c 0.0195 0.19532 0.70313 1.58203 0.76172 1.85547 l 0.95703 0.97656 c 0.87891 1.48438 2.32422 2.07032 3.98438 2.07032 l 0.29296 0; -#X obj 2001 95 draw path m 159.449 98.0055 0.15625 1.52344 c 0 1.01562 +#X obj 25 25 loadbang; +#X obj 116 54 pack; +#X floatatom 116 19 5 0 0 0 - - -, f 5; +#X floatatom 173 19 5 0 0 0 - - -, f 5; +#X obj 173 38 t b a; +#X msg 25 54 1 0; +#X msg 26 95 transform scale \$1 translate -100 -100 rotate \$2 152 +98; +#X obj 58 54 r \$0-3; +#X connect 1 0 6 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X restore 37 17 group c; +#N canvas 433 184 450 300 o 0; +#X obj 56 165 draw path m 159.449 98.0055 0.15625 1.52344 c 0 1.01562 0.68359 1.71875 1.15234 2.55859 0.27344 0.3711 0.58594 0.78125 0.87891 1.28907 0.3125 0.46875 0.58594 1.05468 1.05469 1.30859 l 0.46875 0.21484 1.93359 1.34766 0.19531 0.0977 1.25 0.0977 0.54688 0.11719 c 0.37109 @@ -335,7 +420,27 @@ l 0.0586 2.03125 -1.34765 2.1289 c -0.46875 0.50782 -0.97656 0.89844 l -0.78125 0 c -0.70312 -0.29297 -1.11328 -1.01563 -1.62109 -1.66016 l -0.74219 -0.70313 c -0.50781 -0.64453 -1.05469 -1.67968 -1.25 -2.53906 -0.0977 -0.50781 0 -0.664061 -0.41015 -1.15234 l 0 -2.12891; -#X obj 2505 97 draw path m 180.895 105.779 c 0 0.29297 0.0195 0.60547 +#X obj 56 72 loadbang; +#X obj 137 101 pack; +#X floatatom 137 66 5 0 0 0 - - -, f 5; +#X floatatom 194 66 5 0 0 0 - - -, f 5; +#X obj 194 85 t b a; +#X msg 56 101 1 0; +#X msg 56 138 transform scale \$1 translate -100 -100 rotate \$2 169 +98; +#X obj 89 101 r \$0-4; +#X connect 1 0 6 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X restore 37 37 group o; +#N canvas 433 184 450 300 m 0; +#X obj 45 118 draw path m 180.895 105.779 c 0 0.29297 0.0195 0.60547 0.19531 0.74219 0.0977 0.0391 0.44922 0.0391 0.50782 0.0977 0.0781 0.0586 0.17578 0.0586 0.23437 0.0586 l 2.03125 -0.11719 2.30469 0 1.30859 0.0586 c 0.46875 0 1.21094 0 1.5625 -0.33203 0.15625 -0.13672 0.15625 @@ -419,7 +524,27 @@ c -0.3125 0.605468 -0.33203 1.21094 -0.33203 1.83594 l 0 1.36719 -0.0781 0.37109 -0.15625 0.0391 -0.27344 0.13672 -0.33203 0.17578 -0.0586 0.0195 -0.27344 0.15625 -0.41016 0.15625 -0.23437 0 -0.50781 0 -0.64453 0.0391 -0.15625 0.0781 -0.15625 0.19532 -0.15625 0.54688; -#X obj 2944 97 draw path m 211.734 98.0641 c 0.27344 0.781249 0.23438 +#X obj 45 13 loadbang; +#X obj 126 43 pack; +#X floatatom 126 9 5 0 0 0 - - -, f 5; +#X floatatom 183 8 5 0 0 0 - - -, f 5; +#X obj 183 27 t b a; +#X msg 45 42 1 0; +#X msg 45 95 transform scale \$1 translate -100 -100 rotate \$2 193 +98; +#X obj 78 43 r \$0-5; +#X connect 1 0 6 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X restore 37 57 group m; +#N canvas 433 184 450 300 e 0; +#X obj 43 136 draw path m 211.734 98.0641 c 0.27344 0.781249 0.23438 1.52344 0.46875 2.22656 1.38672 3.92578 3.98438 6.5625 8.33985 6.5625 l 1.46484 -0.23438 0.23438 0.0391 2.08984 -1.05469 c 0.41016 -0.50781 0.64453 -0.33203 1.07422 -0.64453 1.23047 -0.83985 1.52344 -1.54297 @@ -447,7 +572,27 @@ c 0.0977 0 0.41016 -0.175782 0.44922 -0.175782 0.39062 0 0.70312 0.371094 -0.41015 1.15234 -1.38671 1.28906 -0.54688 0.117188 -0.95704 0.253907 -1.52344 0.253907 l -1.66016 -0.136719 -2.59765 0.410156 -0.60547 0 c -0.21485 -0.05859 -0.41016 -0.9375 -0.41016 -1.21094; -#X obj 3393 97 draw path m 232.496 104.724 c 0 0.0781 0 0.41016 0 0.41016 +#X obj 43 41 loadbang; +#X obj 124 70 pack; +#X floatatom 123 35 5 0 0 0 - - -, f 5; +#X floatatom 181 35 5 0 0 0 - - -, f 5; +#X obj 181 54 t b a; +#X msg 43 70 1 0; +#X msg 43 111 transform scale \$1 translate -100 -100 rotate \$2 220 +98; +#X obj 76 70 r \$0-6; +#X connect 1 0 6 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X restore 37 77 group e; +#N canvas 433 184 450 300 exclamation-point 0; +#X obj 39 178 draw path m 232.496 104.724 c 0 0.0781 0 0.41016 0 0.41016 0.0586 0.17578 0.46875 0.9375 0.56641 1.11328 0.13672 0.19531 0.50781 0.23437 0.82031 0.23437 0.17578 0 0.29297 0 0.3711 0 1.48437 0 2.05078 -0.68359 2.05078 -2.08984 0 -1.32812 -1.07422 -1.71875 -2.1875 -1.71875 @@ -469,179 +614,31 @@ c -0.21485 -0.05859 -0.41016 -0.9375 -0.41016 -1.21094; 1.42578 0.56641 2.12891 0 0.05859 0 0.09766 0 0.175781 0 0.136719 -0.0195 0.273438 -0.19531 0.332032 -0.0391 0.546874 -0.17578 3.18359 -0.17578 3.75 0 0.03906 0 0.332031 0 0.410156; -#X msg 300 65 fill black; -#X obj 300 12 loadbang; -#X obj 501 27 pack; -#X floatatom 501 -8 5 0 0 0 - - -, f 5; -#X floatatom 558 -8 5 0 0 0 - - -, f 5; -#X obj 558 11 t b a; -#X msg 382 63 transform scale \$1 translate -100 -100 rotate \$2 96 -93; -#X msg 381 41 1 0; -#X msg 716 65 fill black; -#X obj 716 12 loadbang; -#X obj 921 27 pack; -#X floatatom 921 -8 5 0 0 0 - - -, f 5; -#X floatatom 978 -8 5 0 0 0 - - -, f 5; -#X obj 978 11 t b a; -#X msg 801 41 1 0; -#X msg 803 62 transform scale \$1 translate -100 -100 rotate \$2 122 -98; -#X msg 1150 65 fill black; -#X obj 1150 12 loadbang; -#X obj 1351 27 pack; -#X floatatom 1351 -8 5 0 0 0 - - -, f 5; -#X floatatom 1408 -8 5 0 0 0 - - -, f 5; -#X obj 1408 11 t b a; -#X msg 1231 41 1 0; -#X msg 1233 62 transform scale \$1 translate -100 -100 rotate \$2 132 -92; -#X msg 1570 65 fill black; -#X obj 1570 12 loadbang; -#X obj 1771 27 pack; -#X floatatom 1771 -8 5 0 0 0 - - -, f 5; -#X floatatom 1828 -8 5 0 0 0 - - -, f 5; -#X obj 1828 11 t b a; -#X msg 1651 41 1 0; -#X msg 1653 62 transform scale \$1 translate -100 -100 rotate \$2 152 -98; -#X msg 2010 65 fill black; -#X obj 2010 12 loadbang; -#X obj 2211 27 pack; -#X floatatom 2211 -8 5 0 0 0 - - -, f 5; -#X floatatom 2268 -8 5 0 0 0 - - -, f 5; -#X obj 2268 11 t b a; -#X msg 2091 41 1 0; -#X msg 2102 68 transform scale \$1 translate -100 -100 rotate \$2 169 -98; -#X msg 2500 65 fill black; -#X obj 2500 12 loadbang; -#X obj 2701 27 pack; -#X floatatom 2702 -7 5 0 0 0 - - -, f 5; -#X floatatom 2758 -8 5 0 0 0 - - -, f 5; -#X obj 2758 11 t b a; -#X msg 2581 41 1 0; -#X msg 2592 67 transform scale \$1 translate -100 -100 rotate \$2 193 +#X obj 39 73 loadbang; +#X obj 130 102 pack; +#X floatatom 129 67 5 0 0 0 - - -, f 5; +#X floatatom 187 67 5 0 0 0 - - -, f 5; +#X obj 187 86 t b a; +#X msg 39 102 1 0; +#X msg 39 148 transform scale \$1 translate -100 -100 rotate \$2 233 98; -#X msg 2950 65 fill black; -#X obj 2950 12 loadbang; -#X obj 3151 27 pack; -#X floatatom 3150 -8 5 0 0 0 - - -, f 5; -#X floatatom 3208 -8 5 0 0 0 - - -, f 5; -#X obj 3208 11 t b a; -#X msg 3031 41 1 0; -#X msg 3042 68 transform scale \$1 translate -100 -100 rotate \$2 220 -98; -#X msg 3400 65 fill black; -#X obj 3400 12 loadbang; -#X obj 3601 27 pack; -#X floatatom 3600 -8 5 0 0 0 - - -, f 5; -#X floatatom 3658 -8 5 0 0 0 - - -, f 5; -#X obj 3658 11 t b a; -#X msg 3481 41 1 0; -#X msg 3492 67 transform scale \$1 translate -100 -100 rotate \$2 233 -98; -#X obj 414 41 r \$0-0; -#X obj 834 41 r \$0-1; -#X obj 1264 41 r \$0-2; -#X obj 1684 41 r \$0-3; -#X obj 2124 41 r \$0-4; -#X obj 2614 42 r \$0-5; -#X obj 3064 41 r \$0-6; -#X obj 3514 41 r \$0-7; -#X obj 606 -50 loadbang; -#X msg 606 -29 stroke-dasharray 10 4 \, stroke-width 4 \, stroke gray -; -#X connect 10 0 1 0; -#X connect 11 0 10 0; -#X connect 11 0 17 0; -#X connect 12 0 16 0; -#X connect 13 0 12 0; -#X connect 14 0 15 0; -#X connect 15 0 13 0; -#X connect 15 1 12 1; -#X connect 16 0 1 0; -#X connect 17 0 16 0; -#X connect 18 0 3 0; -#X connect 19 0 18 0; -#X connect 19 0 24 0; -#X connect 20 0 25 0; -#X connect 21 0 20 0; -#X connect 22 0 23 0; -#X connect 23 0 21 0; -#X connect 23 1 20 1; -#X connect 24 0 25 0; -#X connect 25 0 3 0; -#X connect 26 0 4 0; -#X connect 27 0 26 0; -#X connect 27 0 32 0; -#X connect 28 0 33 0; -#X connect 29 0 28 0; -#X connect 30 0 31 0; -#X connect 31 0 29 0; -#X connect 31 1 28 1; -#X connect 32 0 33 0; -#X connect 33 0 4 0; -#X connect 34 0 5 0; -#X connect 35 0 34 0; -#X connect 35 0 40 0; -#X connect 36 0 41 0; -#X connect 37 0 36 0; -#X connect 38 0 39 0; -#X connect 39 0 37 0; -#X connect 39 1 36 1; -#X connect 40 0 41 0; -#X connect 41 0 5 0; -#X connect 42 0 6 0; -#X connect 43 0 42 0; -#X connect 43 0 48 0; -#X connect 44 0 49 0; -#X connect 45 0 44 0; -#X connect 46 0 47 0; -#X connect 47 0 45 0; -#X connect 47 1 44 1; -#X connect 48 0 49 0; -#X connect 49 0 6 0; -#X connect 50 0 7 0; -#X connect 51 0 50 0; -#X connect 51 0 56 0; -#X connect 52 0 57 0; -#X connect 53 0 52 0; -#X connect 54 0 55 0; -#X connect 55 0 53 0; -#X connect 55 1 52 1; -#X connect 56 0 57 0; -#X connect 57 0 7 0; -#X connect 58 0 8 0; -#X connect 59 0 58 0; -#X connect 59 0 64 0; -#X connect 60 0 65 0; -#X connect 61 0 60 0; -#X connect 62 0 63 0; -#X connect 63 0 61 0; -#X connect 63 1 60 1; -#X connect 64 0 65 0; -#X connect 65 0 8 0; -#X connect 66 0 9 0; -#X connect 67 0 66 0; -#X connect 67 0 72 0; -#X connect 68 0 73 0; -#X connect 69 0 68 0; -#X connect 70 0 71 0; -#X connect 71 0 69 0; -#X connect 71 1 68 1; -#X connect 72 0 73 0; -#X connect 73 0 9 0; -#X connect 74 0 16 0; -#X connect 75 0 25 0; -#X connect 76 0 33 0; -#X connect 77 0 41 0; -#X connect 78 0 49 0; -#X connect 79 0 57 0; -#X connect 80 0 65 0; -#X connect 81 0 73 0; -#X connect 82 0 83 0; -#X connect 83 0 0 0; +#X obj 72 102 r \$0-7; +#X connect 1 0 6 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 5 1 2 1; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X restore 37 97 group exclamation-point; +#X restore 189 66 group welcome-text; +#X msg 189 37 fill black; +#X connect 2 0 3 0; +#X connect 2 0 5 0; +#X connect 3 0 0 0; +#X connect 5 0 4 0; #X restore 339 39 pd welcome-struct; #X text 0 1 New Drawing Commands: Intro; #X text 0 1 ___________________________; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/02.draw.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/02.draw.pd index e207dfa205c79f8cc542726aa6c09da71bdfa2f3..a361dee1f8ed51154c38d4d65a3b43db8b192180 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/02.draw.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/02.draw.pd @@ -1,4 +1,4 @@ -#N canvas 0 19 476 614 10; +#N canvas 0 19 495 603 10; #X text 0 1 New Drawing Commands: draw; #X text 0 1 __________________________; #X obj 53 47 struct drawtut-one float x float y; @@ -37,4 +37,4 @@ canvas in the running Pd instance. For convenience we created everything in the main patch \, but since there's only one [struct] per canvas you typically will want to keep your [struct] and any [draw] objects in their own subpatch.; -#X obj 53 463; +#X obj 56 463; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/03.rect.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/03.rect.pd index 0af3e633bf4c3728a28d4b3466b1f98b3c68dfb1..7663357e5d72f1925e85e931ed5a6520b1ed9a83 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/03.rect.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/03.rect.pd @@ -1,5 +1,5 @@ #N struct drawtut-rect float x float y; -#N canvas 196 51 467 625 10; +#N canvas 0 19 515 614 10; #X text 0 1 __________________________; #X text 0 1 New Drawing Commands: rect; #X obj 53 87 struct drawtut-rect float x float y; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/04.attributes.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/04.attributes.pd index 338c2ed01d490226af42ef40e913efc25435f641..a250a15a6be0e9465c35d71287e16182e6da1213 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/04.attributes.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/04.attributes.pd @@ -1,5 +1,5 @@ #N struct drawtut-attr float x float y; -#N canvas 0 19 470 676 10; +#N canvas 0 19 517 678 10; #X text 0 1 New Drawing Commands: attributes; #X text 0 1 ________________________________; #X text 53 23 Our shapes are pretty boring so far. Black lines around diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/05.more.attributes.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/05.more.attributes.pd index c4968632e6a2e7bdf9f071a90e8adb76b0d1c2f0..fcbfcc40f14d484a6499e3b2f0922447bc94512e 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/05.more.attributes.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/05.more.attributes.pd @@ -1,67 +1,70 @@ #N struct drawtut-attr-cont float x float y; -#N canvas 0 19 601 660 10; -#X obj 53 553 draw rect 0 0 50 50; -#X msg 53 92 fill red; +#N canvas 0 19 638 678 10; +#X obj 93 563 draw rect 0 0 50 50; +#X msg 93 92 fill red; #X text 0 1 New Drawing Commands: attributes (continued); #X text 0 1 ____________________________________________; #X text 53 23 There are quite a few attributes we can control to change the appearance of a shape:; #X obj 53 57 struct drawtut-attr-cont float x float y; -#X scalar drawtut-attr-cont 54 583 \;; -#X text 160 92 fill color. 1 symbol \, 3 floats (rgb) \, or 4 floats +#X scalar drawtut-attr-cont 24 283 \;; +#X text 200 92 fill color. 1 symbol \, 3 floats (rgb) \, or 4 floats (rgba); -#X text 160 140 opacity for fill color. float in range 0-1; -#X floatatom 60 115 5 0 0 0 - - -, f 5; -#X text 100 116 (shift-click for more precision); -#X msg 60 139 fill-opacity \$1; -#X text 160 166 fill-rule for overlapping polygons. 0 = nonzero \, +#X text 200 150 opacity for fill color. float in range 0-1; +#X msg 100 149 fill-opacity \$1; +#X text 200 176 fill-rule for overlapping polygons. 0 = nonzero \, 1 = evenodd; -#X floatatom 73 191 5 0 0 0 - - -, f 5; -#X floatatom 80 236 5 0 0 0 - - -, f 5; -#X msg 73 213 rx \$1; -#X msg 80 260 ry \$1; -#X text 120 213 x value for rounded rectangle corner; -#X text 124 261 y value for rounded rectangle corner; -#X text 174 287 stroke color. 1 symbol \, 3 floats (rgb) \, or 4 floats +#X floatatom 113 201 5 0 0 0 - - -, f 5; +#X floatatom 120 246 5 0 0 0 - - -, f 5; +#X msg 113 223 rx \$1; +#X msg 120 270 ry \$1; +#X text 160 223 x value for rounded rectangle corner; +#X text 164 271 y value for rounded rectangle corner; +#X text 214 297 stroke color. 1 symbol \, 3 floats (rgb) \, or 4 floats (rgba); -#X text 234 314 list of numbers to specify dash lengths; -#X msg 100 341 stroke-linecap 0; -#X text 214 341 for ends of open subpaths. 0 = butt \, 1 = round \, +#X text 274 324 list of numbers to specify dash lengths; +#X msg 140 351 stroke-linecap 0; +#X text 254 351 for ends of open subpaths. 0 = butt \, 1 = round \, 2 = square; -#X text 224 369 shape of path corners. 0 = miter \, 1 = round \, 2 +#X text 264 379 shape of path corners. 0 = miter \, 1 = round \, 2 = bevel; -#X text 246 395 limit miter length; -#X text 246 422 opacity for the stroke. float in range 0-1; -#X text 246 448 width of the stroke.; -#X msg 106 368 stroke-linejoin 0; -#X msg 111 395 stroke-miterlimit 0; -#X msg 115 422 stroke-opacity 0.4; -#X text 246 526 affine transformation on the object.; -#X msg 118 449 stroke-width 10; -#X floatatom 121 481 5 0 0 0 - - -, f 5; -#X msg 121 526 transform skewx \$1; -#X obj 121 502 * 0.01; -#X text 275 570 Read more about svg attributes here:; -#X obj 275 591 pddp/pddplink http://www.w3.org/TR/SVG11/painting.html +#X text 286 405 limit miter length; +#X text 286 432 opacity for the stroke. float in range 0-1; +#X text 286 458 width of the stroke.; +#X msg 146 378 stroke-linejoin 0; +#X msg 151 405 stroke-miterlimit 0; +#X msg 155 432 stroke-opacity 0.4; +#X text 286 536 affine transformation on the object.; +#X msg 158 459 stroke-width 10; +#X floatatom 161 491 5 0 0 0 - - -, f 5; +#X msg 161 536 transform skewx \$1; +#X obj 161 512 * 0.01; +#X text 275 580 Read more about svg attributes here:; +#X obj 275 601 pddp/pddplink http://www.w3.org/TR/SVG11/painting.html ; -#X msg 67 166 fill-rule 0; -#X msg 94 314 stroke-dasharray 5 10; -#X msg 87 287 stroke purple; +#X msg 107 176 fill-rule 0; +#X msg 134 324 stroke-dasharray 5 10; +#X msg 127 297 stroke purple; +#X obj 127 121 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 600 1; +#X text 107 121 0; +#X text 268 121 1; +#X text 25 348 (scalar); #X connect 1 0 0 0; -#X connect 9 0 11 0; -#X connect 11 0 0 0; -#X connect 13 0 15 0; -#X connect 14 0 16 0; -#X connect 15 0 0 0; -#X connect 16 0 0 0; -#X connect 21 0 0 0; +#X connect 9 0 0 0; +#X connect 11 0 13 0; +#X connect 12 0 14 0; +#X connect 13 0 0 0; +#X connect 14 0 0 0; +#X connect 19 0 0 0; +#X connect 25 0 0 0; +#X connect 26 0 0 0; #X connect 27 0 0 0; -#X connect 28 0 0 0; #X connect 29 0 0 0; +#X connect 30 0 32 0; #X connect 31 0 0 0; -#X connect 32 0 34 0; -#X connect 33 0 0 0; -#X connect 34 0 33 0; +#X connect 32 0 31 0; +#X connect 35 0 0 0; +#X connect 36 0 0 0; #X connect 37 0 0 0; -#X connect 38 0 0 0; -#X connect 39 0 0 0; +#X connect 38 0 9 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/06.saving.attributes.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/06.saving.attributes.pd index d03182e4549a662132c9c79f967572ab1a3bf826..b606c61a103df31b2ef04a35c0b7590423b38fcc 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/06.saving.attributes.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/06.saving.attributes.pd @@ -1,5 +1,5 @@ #N struct drawtut-attr-saving float x float y; -#N canvas 0 19 606 514 10; +#N canvas 0 19 638 551 10; #X obj 53 153 draw rect 0 0 50 50; #X text 0 1 New Drawing Commands: attributes (continued); #X text 0 1 ____________________________________________; @@ -11,8 +11,6 @@ boxes with commas separating each attribute:; #X msg 53 117 fill green \, stroke-width 5 \, stroke brown \, stroke-dasharray 2 6; #X obj 102 279; -#X text 228 280 <- Create another scalar in the empty object box by -typing the name of the [struct] into it.; #X text 52 354 Scalars can also save data with the patch. For example \, the ones above remember their x/y location because that data is saved as the "x" and "y" fields for each scalar. Each scalar has its @@ -22,5 +20,7 @@ at separate locations in the patch.; Later we will use new fields to associate a scalar's data with the svg attributes \, which will let use change the visual appearance of each scalar.; +#X text 228 280 <- Create another scalar in the empty object box by +typing the struct name "drawtut-attr-saving" into it.; #X connect 4 0 7 0; #X connect 7 0 0 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/07.line.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/07.line.pd index 5855017b1c46f9885a3659c4c9ee5a06c70438be..b7db749d152f27ed6806c433a7cbd81bb1c45f28 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/07.line.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/07.line.pd @@ -1,5 +1,5 @@ #N struct drawtut-line float x float y; -#N canvas 0 19 453 618 10; +#N canvas 0 19 638 634 10; #X obj 53 84 loadbang; #X text 0 1 New Drawing Commands: line; #X text 0 1 __________________________; @@ -16,7 +16,6 @@ end.; #X text 52 454 Lines are only a single stroke. They don't have any inner area to fill \, so none of the messages like "fill" or "fill-rule" have any effect.; -#X msg 53 107 stroke blue \, stroke-width 10; #X msg 75 177 stroke-linecap \$1; #X text 52 504 Also \, notice the stroke-linecap message above. It takes a number to set one of the following:; @@ -30,9 +29,10 @@ past the end point.; #X text 105 138 butt; #X text 173 138 rounded; #X text 258 138 square; -#X connect 0 0 10 0; +#X msg 53 107 stroke blue \, stroke-width 15; +#X connect 0 0 21 0; #X connect 10 0 5 0; -#X connect 11 0 5 0; -#X connect 16 0 11 0; -#X connect 17 0 11 0; -#X connect 18 0 11 0; +#X connect 15 0 10 0; +#X connect 16 0 10 0; +#X connect 17 0 10 0; +#X connect 21 0 5 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/08.circle.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/08.circle.pd index 4fd5bb3f18b860d769e4f53da7d100b3dfe6b13f..0e66156317303a4a7ae2da36d5f05e68dd94c484 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/08.circle.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/08.circle.pd @@ -1,5 +1,5 @@ #N struct drawtut-circle float x float y; -#N canvas 0 19 439 554 10; +#N canvas 0 19 638 554 10; #X msg 53 117 stroke blue; #X text 52 484 Lines are only a single stroke. They don't have any inner area to fill \, so none of the messages like "fill" or "fill-rule" @@ -8,8 +8,8 @@ have any effect.; #X text 0 1 ____________________________; #X text 53 23 Circles are another simple shape.; #X obj 53 57 struct drawtut-circle float x float y; -#X scalar drawtut-circle 147 283 \;; -#X text 238 270 <- a circle; +#X scalar drawtut-circle 157 283 \;; +#X text 248 270 <- a circle; #X msg 142 117 fill yellow; #X msg 228 117 stroke-width \$1; #X floatatom 228 93 5 0 0 0 - - -, f 5; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/09.ellipse.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/09.ellipse.pd index 2d6cc341be7a2d6fdb4ac65e35d4478df6be7ecd..5157979abbf64e0e6eed95818a00eb17da31700f 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/09.ellipse.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/09.ellipse.pd @@ -1,13 +1,13 @@ #N struct drawtut-ellipse float x float y; -#N canvas 0 19 445 477 10; +#N canvas 0 19 509 498 10; #X msg 53 117 stroke blue; #X msg 142 117 fill yellow; #X msg 228 117 stroke-width \$1; #X floatatom 228 93 5 0 0 0 - - -, f 5; #X obj 53 153 draw ellipse 0 0 86 42; #X text 259 246 <- an ellipse; -#X text 5 1 New Drawing Commands: ellipse; -#X text 5 1 _____________________________; +#X text 0 1 New Drawing Commands: ellipse; +#X text 0 1 _____________________________; #X text 53 23 An ellipse.; #X obj 53 57 struct drawtut-ellipse float x float y; #X scalar drawtut-ellipse 155 253 \;; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/11.polygon.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/11.polygon.pd index 510f9b684cdf22df7671279dda06eec6caf18f9e..2c4389453387587e6dc0e26eb5e829ef2bae40ab 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/11.polygon.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/11.polygon.pd @@ -1,13 +1,13 @@ #N struct drawtut-polygon float x float y; -#N canvas 106 54 849 580 10; +#N canvas 0 19 845 575 10; #X msg 53 117 stroke blue; #X msg 142 117 fill yellow; #X msg 228 117 stroke-width \$1; #X floatatom 228 93 5 0 0 0 - - -, f 5; #X obj 53 57 struct drawtut-polygon float x float y; #X scalar drawtut-polygon -138 117 \;; -#X text 4 1 New Drawing Commands: polygon; -#X text 4 1 _____________________________; +#X text 0 1 New Drawing Commands: polygon; +#X text 0 1 _____________________________; #X text 53 23 Polygons are closed shapes.; #X obj 53 153 draw polygon 350 75 379 161 469 161 397 215 423 301 350 250 277 301 303 215 231 161 321 161; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/12.path.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/12.path.pd index 1756ac8265581cdbf898283a4c48aa15a47f4b05..d6b5fe082e669240bcfb148e5502778cce1b1e9a 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/12.path.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/12.path.pd @@ -1,5 +1,5 @@ #N struct drawtut-path float x float y; -#N canvas 0 19 859 563 10; +#N canvas 0 19 850 556 10; #X text 0 1 New Drawing Commands: path; #X text 1 1 __________________________; #X text 53 23 Paths are complex drawings.; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/13.transform.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/13.transform.pd index 76ce2512eaa1acce35c93e52dc34be9d07544446..e67338920b7ea3a18bc328206dd014bfee870d67 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/13.transform.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/13.transform.pd @@ -1,27 +1,27 @@ #N struct drawtut-transform float x float y; -#N canvas 0 19 836 610 10; +#N canvas 0 19 867 589 10; #X text 0 1 New Drawing Commands: transform; #X text 1 1 _______________________________; #X text 53 23 All [draw] objects understand the "transform" message. It allows you to do affine transformations on shapes.; #X text 53 83 Let's start with a simple rectangle:; -#X obj 57 358 draw rect 0 0 100 40; -#X floatatom 57 157 5 0 0 0 x/y - -, f 5; -#X msg 57 249 transform translate \$1 \$2 rotate \$3 scale \$4 skewx +#X obj 57 388 draw rect 0 0 100 40; +#X floatatom 57 187 5 0 0 0 x/y - -, f 5; +#X msg 57 279 transform translate \$1 \$2 rotate \$3 scale \$4 skewx \$5 skewy \$6; -#X scalar drawtut-transform 197 409 \;; -#X floatatom 97 157 5 0 0 0 - - -, f 5; -#X obj 97 178 t b a; -#X floatatom 177 157 5 0 0 0 rotate - -, f 5; -#X obj 177 178 t b a; -#X floatatom 257 157 5 1 100 0 scale - -, f 5; -#X obj 257 178 t b a; -#X floatatom 337 157 5 0 0 0 skewx - -, f 5; -#X obj 337 178 t b a; -#X floatatom 407 157 5 0 0 0 skewy - -, f 5; -#X obj 407 178 t b a; -#X floatatom 127 285 5 0 0 0 - - -, f 5; -#X msg 127 306 transform rotate \$1 50 20; +#X scalar drawtut-transform 197 449 \;; +#X floatatom 97 187 5 0 0 0 - - -, f 5; +#X obj 97 208 t b a; +#X floatatom 177 187 5 0 0 0 rotate - -, f 5; +#X obj 177 208 t b a; +#X floatatom 257 167 5 0 0 0 scale - -, f 5; +#X obj 257 208 t b a; +#X floatatom 337 167 5 -100 100 0 skewx - -, f 5; +#X obj 337 208 t b a; +#X floatatom 407 167 5 -100 100 0 skewy - -, f 5; +#X obj 407 208 t b a; +#X floatatom 127 315 5 0 0 0 - - -, f 5; +#X msg 127 336 transform rotate \$1 50 20; #X text 447 449 For "scale" \, you can either specify a single value to applied to both the x- and y-axis \, or one value for each. For rotation \, you can supply an additional x/y coordinate to specify @@ -30,40 +30,49 @@ the center of rotation. An example is in the second message box above. #X text 57 529 After the word "transform" \, you specify the name of the affine transformation you'd like to apply. All are shown above. Pd then takes them and applies them in the order you specified.; -#X msg 127 332 transform matrix 1 0 0 1 0 0; -#X text 312 332 <- You can just feed the matrix values directly \, +#X msg 127 362 transform matrix 1 0 0 1 0 0; +#X text 312 362 <- You can just feed the matrix values directly \, too.; -#X text 295 289 <- For rotations \, you can specify two extra floats +#X text 295 319 <- For rotations \, you can specify two extra floats for the center of rotation. Here \, it makes the rotation happen around the center of the rectangle.; #X text 447 519 Notice that "transform" data doesn't accumulate in a [draw] object. When you send a new "transform" message the old values are forgotten. That's why you have to gang them all together in a single message if you want multiple transformations.; -#X obj 257 109 loadbang; -#X obj 257 130 f 1; -#X obj 57 228 pack 0 0 0 0 0 0; +#X obj 257 119 loadbang; +#X obj 57 258 pack 0 0 0 0 0 0; #X obj 53 57 struct drawtut-transform float x float y; -#X connect 5 0 28 0; +#X obj 257 140 f 100; +#X obj 257 188 * 0.01; +#X obj 337 188 * 0.01; +#X obj 407 188 * 0.01; +#X text 470 168 <- The attributes skewx and skewy can take any value. +Here I limit them to be between -1 and 1 \, just so that the rectangle's +dimensions don't grow too large.; +#X connect 5 0 27 0; #X connect 6 0 4 0; #X connect 8 0 9 0; #X connect 9 0 5 0; -#X connect 9 1 28 1; +#X connect 9 1 27 1; #X connect 10 0 11 0; #X connect 11 0 8 0; -#X connect 11 1 28 2; -#X connect 12 0 13 0; +#X connect 11 1 27 2; +#X connect 12 0 30 0; #X connect 13 0 10 0; -#X connect 13 1 28 3; -#X connect 14 0 15 0; +#X connect 13 1 27 3; +#X connect 14 0 31 0; #X connect 15 0 12 0; -#X connect 15 1 28 4; -#X connect 16 0 17 0; +#X connect 15 1 27 4; +#X connect 16 0 32 0; #X connect 17 0 14 0; -#X connect 17 1 28 5; +#X connect 17 1 27 5; #X connect 18 0 19 0; #X connect 19 0 4 0; #X connect 22 0 4 0; -#X connect 26 0 27 0; -#X connect 27 0 12 0; -#X connect 28 0 6 0; +#X connect 26 0 29 0; +#X connect 27 0 6 0; +#X connect 29 0 12 0; +#X connect 30 0 13 0; +#X connect 31 0 15 0; +#X connect 32 0 17 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/14.group.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/14.group.pd index 4eaa87d37ecd99104dbfc45225bff4212ebdb359..505d881f864d98c085a6d126bb68424f884cc25f 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/14.group.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/14.group.pd @@ -1,35 +1,46 @@ #N struct drawtut-group float x float y; -#N canvas 0 19 657 493 10; -#X scalar drawtut-group 54 209 \;; -#X symbolatom 53 173 10 0 0 1 event_type - -, f 10; -#X obj 53 148 list split 1; -#X obj 63 123 print; -#X obj 373 99 draw rect 0 0 40 40; +#N canvas 0 19 648 468 10; +#X scalar drawtut-group 54 159 \;; #X text 1 1 ___________________________; #X text 0 1 New Drawing Commands: group; #X text 53 43 If you use several [draw] commands to represent a single scalar \, it is helpful to make changes to them as a group instead of individually.; #X obj 53 97 struct drawtut-group float x float y; -#X obj 373 139 draw circle 100 20 20 20; -#X obj 373 180 draw path M 160 0 l 40 40 M 160 40 l 40 -40; -#X obj 374 325 draw group; -#X floatatom 374 245 5 0 0 1 %_zoom - -, f 5; -#X obj 374 269 * 0.01; -#X msg 374 293 transform scale \$1; -#X text 53 373 The [draw group] object _should_ be able to set any -attribute that is common to all the other shapes. Unfortunately it -only works for transforms at the moment.; -#X text 53 433 You can only have one [draw group] object per canvas. -Unfortunately you cannot nest them yet like you can with svg drawing -instructions.; -#X obj 374 201 loadbang; -#X msg 374 222 100; -#X connect 2 0 1 0; -#X connect 8 0 2 0; -#X connect 8 0 3 0; -#X connect 12 0 13 0; -#X connect 13 0 14 0; -#X connect 14 0 11 0; -#X connect 17 0 18 0; -#X connect 18 0 12 0; +#X floatatom 434 155 5 0 0 1 %_zoom - -, f 5; +#X obj 434 189 * 0.01; +#X msg 434 213 transform scale \$1; +#X obj 434 101 loadbang; +#X msg 434 122 100; +#N canvas 638 82 450 300 (subpatch) 0; +#X obj 35 72 draw rect 0 0 40 40; +#X obj 35 175 draw circle 100 20 20 20; +#X obj 35 253 draw path M 160 0 l 40 40 M 160 40 l 40 -40; +#X obj 35 26 loadbang; +#X msg 35 47 fill blue; +#X obj 35 210 loadbang; +#X msg 35 231 stroke-width 10; +#X obj 35 101 loadbang; +#X msg 35 122 stroke darkgreen \, stroke-width 10; +#X msg 49 148 fill white; +#X connect 3 0 4 0; +#X connect 4 0 0 0; +#X connect 5 0 6 0; +#X connect 6 0 2 0; +#X connect 7 0 8 0; +#X connect 8 0 1 0; +#X connect 9 0 1 0; +#X restore 434 236 group; +#X text 53 263 The [group] object is essentially just a subpatch with +an inlet. You can send it all the same messages that you can send to +shapes. This will set the attributes for any drawing commands inside +the [group] which you haven't already set explicitly.; +#X text 53 343 Like [pd] subpatches \, you can use [inlet] and [outlet]. +The "main" inlet for the group-- the one that sets attributes-- is +always the furthest to the right.; +#X text 485 236 <- click to open; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 10 0; +#X connect 8 0 9 0; +#X connect 9 0 5 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/15.events.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/15.events.pd index 914605879e176c0ada462431976c62e1f5b88d8a..f3be7f667c80c7c1026dc315b4b76d071a7f1831 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/15.events.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/15.events.pd @@ -1,29 +1,44 @@ #N struct drawtut-events float x float y; -#N canvas 0 19 525 484 10; -#X scalar drawtut-events 54 210 \;; +#N canvas 0 19 591 620 10; +#X scalar drawtut-events 54 240 \;; #X text 1 1 __________________________________; #X text 0 1 New Drawing Commands: mouse events; #X text 53 43 When the user mouses over or clicks a scalar a message gets sent to the outlet of the corresponding [struct] object.; -#X obj 373 97 loadbang; -#X msg 373 118 fill blue; -#X text 109 221 <- Click and move the mouse over this scalar; -#X text 53 273 The following events are reported:; -#X text 53 333 click - clicking the scalar in "Run mode"; -#X text 53 393 enter - moving the mouse over a scalar; -#X text 53 413 leave - moving the mouse out of a scalar's area; -#X text 53 433 select - select a scalar in "Edit mode"; -#X text 53 353 deselect - deselect a scalar in "Edit mode"; -#X text 53 373 displace - move a scalar in "Edit mode"; -#X text 53 303 change - click-drag an area of a scalar to change its +#X obj 373 87 loadbang; +#X msg 373 108 fill blue; +#X text 53 430 The following events are reported:; +#X text 53 490 click - clicking the scalar in "Run mode"; +#X text 53 550 enter - moving the mouse over a scalar; +#X text 53 570 leave - moving the mouse out of a scalar's area; +#X text 53 590 select - select a scalar in "Edit mode"; +#X text 53 510 deselect - deselect a scalar in "Edit mode"; +#X text 53 530 displace - move a scalar in "Edit mode"; +#X text 53 460 change - click-drag an area of a scalar to change its shape or value; -#X symbolatom 53 173 10 0 0 1 event_type - -, f 10; -#X obj 53 148 list split 1; -#X obj 63 123 print; -#X obj 373 139 draw rect 0 0 40 40; -#X obj 53 97 struct drawtut-events float x float y; +#X symbolatom 53 203 10 0 0 1 event_type - -, f 10; +#X obj 53 138 list split 1; +#X obj 63 113 print; +#X obj 53 87 struct drawtut-events float x float y; +#X msg 411 200 fill white; +#X text 149 261 <- Click and move the mouse over these shapes; +#X obj 373 157 loadbang; +#X text 149 299 Notice that when you move from the circle's border +to its center \, you generate a "leave" event. This is because the +circle has no fill color. Once you set a fill color-- even white-- +then the middle will count as part of the shape.; +#X text 149 359 Unfortunately this creates a discrepancy with the "click" +event \, which will register a click for anything inside the scalar's +bounding box (i.e. \, the selection rectangle that appears when you +select it in edit-mode.; +#X obj 373 129 draw rect 0 0 60 60; +#X msg 373 178 stroke-width 20; +#X obj 373 221 draw circle 30 120 25; #X connect 4 0 5 0; -#X connect 5 0 18 0; -#X connect 16 0 15 0; -#X connect 19 0 16 0; -#X connect 19 0 17 0; +#X connect 5 0 23 0; +#X connect 15 0 14 0; +#X connect 17 0 15 0; +#X connect 17 0 16 0; +#X connect 18 0 25 0; +#X connect 20 0 24 0; +#X connect 24 0 25 0; diff --git a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/16.animation.pd b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/16.animation.pd index 3bc76612e3f136d3f76312d20d95f3533c66db26..f0264879d03d9fda8a613ed286e1db6dbf9139f3 100644 --- a/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/16.animation.pd +++ b/pd/doc/4.data.structures/pd-l2ork/ds-tutorials/16.animation.pd @@ -1,5 +1,5 @@ #N struct drawtut-animation float x float y; -#N canvas 0 19 514 563 10; +#N canvas -9 19 537 571 10; #X scalar drawtut-animation 47 306 \;; #X obj 47 271 draw rect 0 0 40 40; #X obj 47 135 struct drawtut-animation float x float y;