diff options
author | Miller Puckette <millerpuckette@users.sourceforge.net> | 2005-08-21 17:46:52 +0000 |
---|---|---|
committer | Miller Puckette <millerpuckette@users.sourceforge.net> | 2005-08-21 17:46:52 +0000 |
commit | 4cde391f5f1ba80c803fc02adece857e5eb720f7 (patch) | |
tree | 29b4221f9cd35b5de5529e684b9e3f784c381feb /pd/doc/4.data.structures/02.getting.data.pd | |
parent | 0d4b66c7bc77f6a2fafb1debe548f8621d21cf70 (diff) |
Fixed scalar_redraw to check if glist is visible; moved 'data' doc and
updated it somewhat.
svn path=/trunk/; revision=3441
Diffstat (limited to 'pd/doc/4.data.structures/02.getting.data.pd')
-rw-r--r-- | pd/doc/4.data.structures/02.getting.data.pd | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/pd/doc/4.data.structures/02.getting.data.pd b/pd/doc/4.data.structures/02.getting.data.pd new file mode 100644 index 00000000..4b200052 --- /dev/null +++ b/pd/doc/4.data.structures/02.getting.data.pd @@ -0,0 +1,77 @@ +#N struct template2 float x float y float z float q float zz; +#N canvas 138 2 630 580 12; +#X text 345 543 updated for Pd version 0.32.; +#N canvas 42 312 598 266 stuff 0; +#X obj 353 159 pointer; +#X obj 117 103 t b b b; +#X msg 117 62 bang; +#X obj 117 31 loadbang; +#X text 163 62 click here to re-initialize; +#X text 127 242 Explained later...; +#X obj 28 208 append template2 x y z q; +#X msg 353 101 \; pd-data2 clear; +#X msg 353 137 traverse pd-data2 \, bang; +#X msg 28 185 50 150 30 9 \, 200 100 -20 900 \, 100 100 -50 30; +#X connect 0 0 6 4; +#X connect 1 0 9 0; +#X connect 1 1 8 0; +#X connect 1 2 7 0; +#X connect 2 0 1 0; +#X connect 3 0 2 0; +#X connect 8 0 0 0; +#X connect 9 0 6 0; +#X restore 506 310 pd stuff; +#X text 506 242 subpatches:; +#X obj 15 303 pointer; +#X msg 27 271 next; +#X text 75 301 <- object that outputs pointers to scalars; +#N canvas 13 22 307 198 data2 1; +#X scalar template2 50 150 30 9 0 \;; +#X scalar template2 200 100 -20 900 0 \;; +#X scalar template2 100 100 -50 30 0 \;; +#X restore 506 265 pd data2; +#N canvas 315 125 554 155 template2 1; +#X text 13 79 The template for the two scalars \, as in the last patch +; +#X obj 15 46 filledpolygon 244 q 5 0 0 20 z 40 0; +#X obj 14 21 struct template2 float x float y float z float q; +#X restore 506 288 pd template2; +#X obj 15 355 get template2 x y z q; +#X floatatom 15 384 5 0 0 0 - - -; +#X floatatom 76 384 5 0 0 0 - - -; +#X floatatom 137 384 5 0 0 0 - - -; +#X floatatom 199 385 5 0 0 0 - - -; +#X msg 15 246 traverse pd-data2; +#X obj 59 330 print; +#X text 111 331 <- this gets a bang when we reach the end; +#X text 211 353 <- this takes incoming pointers; +#X text 214 367 and outputs the values of x \, y \, z \, and q.; +#X text 172 245 <- go to head of list (click first); +#X text 68 273 <- output next item (click 4 times); +#X text 14 5 The simplest thing you can do with a collection of scalars +(a list) is to traverse it \, getting the numbers back out. This is +done using two objects \, "pointer" which does the traversal \, and +"get" which \, given a pointer to a scalar \, extracts numeric quantities +from it.; +#X text 14 85 You can send the "pointer" object a "traverse" message +to point it to the head of the list. The argument "pd-data2" indicates +the Pd window named "data2." The head of the list means \, not the +first scalar in the list \, but the position before the first scalar +\, which is a valid pointer in Pd but has no data or template.; +#X text 14 180 The "next" message tells the "pointer" object to go +to the next scalar in the list and output it. If there are no more +\, "pointer" outputs a bang at right.; +#X text 19 424 The "get" object takes a pointer \, checks that its +template agrees with what "get" is expecting \, i.e. \, "template2" +\, and if so outputs the values of x \, y \, z \, and q in the usual +reverse order.; +#X text 18 492 The pointer sent from "pointer" to "get" is an elementary +Pd type on a level with "float" and "symbol".; +#X connect 3 0 8 0; +#X connect 3 1 14 0; +#X connect 4 0 3 0; +#X connect 8 0 9 0; +#X connect 8 1 10 0; +#X connect 8 2 11 0; +#X connect 8 3 12 0; +#X connect 13 0 3 0; |