#N canvas 214 26 783 642 10; #X obj 270 256 #greyscale_to_rgb; #X obj 167 66 loadbang; #X obj 107 85 t a a; #X obj 266 412 print; #X obj 10 49 tgl 15 0 empty empty empty 0 -6 0 8 -24198 -1 -1 0 1; #N canvas 611 335 413 236 lighting 0; #X obj 56 203 outlet; #X obj 17 9 inlet; #X text 91 65 produce red/cyan from horiz differences; #X text 64 123 produce white/black from vertical differences; #X obj 56 177 # +; #X obj 108 10 #dim; #X obj 140 10 #export_list; #X obj 56 9 t a a; #X obj 56 49 t a a; #X msg 141 30 \$1 \$2; #X obj 56 29 #redim (); #X obj 86 82 #convolve (1 2 #) \, op ignore \, fold inv+; #X obj 56 139 #convolve (2 1 #) \, op ignore \, fold inv+; #X obj 86 101 #outer & (-1 0 0); #X obj 56 158 #outer & (-1 -1 0); #X connect 1 0 7 0; #X connect 4 0 0 0; #X connect 5 0 6 0; #X connect 6 0 9 0; #X connect 7 0 10 0; #X connect 7 1 5 0; #X connect 8 0 12 0; #X connect 8 1 11 0; #X connect 9 0 10 1; #X connect 10 0 8 0; #X connect 11 0 13 0; #X connect 12 0 14 0; #X connect 13 0 4 1; #X connect 14 0 4 0; #X restore 260 277 pd lighting; #X obj 228 468 # / 2; #X msg 107 104 \$1 \$2 1 # 0; #N canvas 137 251 392 303 finger 0; #X obj 149 39 #redim ( 4 2 ); #X obj 71 16 inlet; #X obj 149 20 inlet; #X obj 71 217 outlet; #X obj 149 158 # +; #X obj 177 157 # *; #X msg 177 137 0 0 0 1 1 1 1 0; #X obj 193 79 inlet size; #X text 291 137 square or rect; #X obj 177 112 #finished; #X obj 70 195 #draw_polygon put (4000); #X connect 0 0 4 0; #X connect 1 0 10 0; #X connect 2 0 0 0; #X connect 4 0 10 2; #X connect 5 0 4 1; #X connect 6 0 5 0; #X connect 7 0 9 0; #X connect 7 0 5 1; #X connect 9 0 6 0; #X connect 10 0 3 0; #X restore 227 564 pd finger; #X obj 141 85 s size; #X obj 260 353 #scale_by 2; #X obj 8 243 #store; #N canvas 243 147 463 307 wave 0; #X obj 26 20 inlet; #X obj 23 293 outlet; #X text 65 205 time differential; #X text 81 50 space differential: (d/dx)^2 + (d/dy)^2; #X text 71 8 Recurrence equation for propagation of oscillations; #X obj 26 39 t a a; #X obj 207 147 outlet blah; #X obj 207 125 inlet blah; #X obj 23 205 # -; #X obj 23 225 # *>>8 252; #X obj 20 250 # min 30000; #X obj 20 270 # max -30000; #X obj 56 82 #convolve (3 3 # 1 4 1 4 12 4) \, seed 8; #X obj 56 101 # >> 4; #X connect 0 0 5 0; #X connect 5 0 8 1; #X connect 5 1 12 0; #X connect 7 0 8 0; #X connect 8 0 9 0; #X connect 9 0 10 0; #X connect 10 0 11 0; #X connect 11 0 1 0; #X connect 12 0 13 0; #X connect 13 0 6 0; #X restore 8 281 pd wave equation; #X obj 182 564 t a; #X obj 107 123 t a; #X obj 270 232 # >> 1; #X obj 36 85 s metro; #X text 491 65 (Best complemented with a touchscreen); #X obj 366 159 vradio 15 1 0 3 empty empty empty 0 -6 0 8 -262144 -258699 -1 0; #X text 384 174 height greys; #X obj 318 96 vradio 15 1 0 3 empty empty empty 0 -6 0 8 -262144 -258699 -1 0; #X text 336 95 plain; #X text 336 111 line-art; #X text 334 46 smooth; #X obj 317 46 vradio 15 1 0 2 empty empty empty 0 -6 0 8 -262144 -258699 -1 0; #X text 335 60 raw; #X obj 442 418 hradio 18 1 1 4 empty empty _1__2__3__4_ 0 -4 0 8 -262144 -258699 -1 0; #X text 440 397 scale by...; #X obj 442 438 + 1; #X obj 573 105 loadbang; #X obj 573 276 spigot; #X obj 620 277 tgl 15 0 empty empty empty 18 8 0 8 -241291 -1 -62784 0 1; #X obj 573 256 r metro; #N canvas 433 107 365 432 line-art 0; #X obj 32 123 # << 8; #X obj 32 37 inlet; #X obj 34 256 outlet; #X text 146 31 double-thresholding; #X text 146 114 else becomes 0; #X obj 32 82 # min 1; #X obj 32 103 # max -1; #X obj 32 172 # >> 2; #X obj 31 154 #convolve (3 1 # 1 2 1); #X obj 33 193 #convolve (1 3 # 1 2 1); #X obj 35 215 # >> 2; #X obj 32 60 # / 5; #X text 146 85 < -5 becomes -256; #X text 146 100 > +5 becomes +256; #X connect 0 0 8 0; #X connect 1 0 11 0; #X connect 5 0 6 0; #X connect 6 0 0 0; #X connect 7 0 9 0; #X connect 8 0 7 0; #X connect 9 0 10 0; #X connect 10 0 2 0; #X connect 11 0 5 0; #X restore 281 182 pd line-art; #X text 628 129 Background colour; #X text 637 277 enable video; #X text 382 159 four-colour emboss; #X obj 345 492 tgl 15 1 empty empty empty 0 -6 0 8 -241291 -1 -1 0 1; #X obj 298 472 r metro; #X text 362 491 rain; #X obj 260 97 # >> 2; #X text 388 36 Originally made for Alexandre Castonguay's "DIGITALE" ; #X text 505 50 But suitable for a lot more uses :-); #X msg 573 124 3 # 128; #X obj 573 143 #color; #X obj 260 59 shunt 2; #X obj 369 548 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -6 0 10 -262131 -1 -1 1 256; #X obj 369 562 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -6 0 10 -262131 -1 -1 1 256; #X obj 260 315 # +; #X obj 397 364 #store; #X obj 421 296 shunt 2; #X obj 477 291 vradio 15 1 0 2 empty empty empty 0 -6 0 8 -262144 -258699 -1 0; #X text 495 290 plain; #X text 495 307 refraction; #X obj 260 296 t a; #N canvas 203 363 443 300 heightmap2indexmap 0; #X obj 48 220 outlet; #X obj 9 8 inlet; #X obj 48 143 # +; #X obj 100 9 #dim; #X obj 132 9 #export_list; #X obj 48 8 t a a; #X obj 48 48 t a a; #X msg 132 28 \$1 \$2; #X obj 48 201 # +; #X obj 90 181 loadbang; #X obj 73 181 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 48 162 # >> 1; #X obj 78 67 #convolve (1 2 #) \, op ignore \, fold inv+; #X obj 78 86 #outer & (-1 0); #X obj 48 105 #convolve (2 1 #) \, op ignore \, fold inv+; #X obj 48 124 #outer & (0 -1); #X obj 73 201 #for (0 0) (240 320) (1 1); #X obj 48 28 #redim (); #X connect 1 0 5 0; #X connect 2 0 11 0; #X connect 3 0 4 0; #X connect 4 0 7 0; #X connect 5 0 17 0; #X connect 5 1 3 0; #X connect 6 0 14 0; #X connect 6 1 12 0; #X connect 7 0 17 1; #X connect 8 0 0 0; #X connect 9 0 16 0; #X connect 10 0 16 0; #X connect 11 0 8 0; #X connect 12 0 13 0; #X connect 13 0 2 1; #X connect 14 0 15 0; #X connect 15 0 2 0; #X connect 16 0 8 1; #X connect 17 0 6 0; #X restore 397 345 pd heightmap2indexmap; #X obj -8 82 bng 15 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1 ; #X obj 397 326 spigot; #X text 384 189 no reflection; #X obj 260 201 shunt 3; #X obj 260 182 t a; #X obj 318 232 # put 0; #X obj 182 545 shunt 2; #X obj 226 521 shunt 2; #X obj 10 66 metro 33.3667; #X obj 8 262 shunt 2; #X text 78 263 freeze time; #X obj 61 263 tgl 15 0 empty empty empty 0 -6 0 8 -241291 -1 -1 0 1 ; #X obj 132 123 r feedback; #X obj 182 583 s feedback; #X obj 8 303 t a; #X obj -13 5 cnv 15 780 30 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj -15 611 cnv 15 780 30 empty empty empty 20 12 0 14 -200249 -66577 0; #X text -7 619 GridFlow 0.8.0; #X text -7 619 GridFlow 0.8.0; #X text 0 4 waves.pd; #X obj 555 276 bng 15 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1; #X obj 573 315 spigot; #X obj 620 316 tgl 15 0 empty empty empty 18 8 0 8 -241291 -1 -62784 0 1; #X text 637 315 test camera output; #X obj 10 85 t b; #X obj 298 491 spigot; #X obj 620 334 sel 0 1; #X msg 642 353 open window; #X obj 573 334 #out; #X msg 620 372 close; #X obj 266 393 fps detailed \, period 2; #X obj 574 226 #in; #X obj 344 510 r size; #X obj 298 510 #store; #X obj 298 529 # rand; #X obj 260 372 #out window; #X obj 260 334 #clip; #X obj 260 78 #convolve (2 2 #) \, op ignore; #X obj 369 581 #pack 2; #X text 0 18 Copyright 2003 \, 2004 \, 2005 Mathieu Bouchard; #X obj 260 431 #mouse \, ...; #N canvas 123 224 450 366 doodle 0; #X obj 26 17 inlet wave; #X obj 23 258 outlet wave; #X obj 171 29 inlet tog; #X obj 306 36 inlet pos; #X obj 139 9 r metro; #X obj 138 57 spigot; #X obj 231 202 # +; #X obj 137 83 t b b; #X msg 219 123 4 2 # 0 0 0 1 1 1 1 0; #X obj 224 158 # * 8; #X obj 127 334 outlet rgb; #X obj 347 78 inlet mode; #X obj 347 221 #redim (1); #X obj 130 238 #draw_polygon put (0); #X obj 24 69 # *>>8; #X obj 129 290 #inner (1 3 # 0 1 1); #X obj 141 267 # inv+ 256; #X obj 364 191 # inv+ 256; #X obj 46 107 loadbang; #X obj 347 159 # * 256; #X obj 48 146 #store (240 320 1 # 256); #X connect 0 0 14 0; #X connect 2 0 5 1; #X connect 3 0 6 1; #X connect 4 0 5 0; #X connect 5 0 7 0; #X connect 6 0 13 2; #X connect 7 0 20 0; #X connect 7 1 8 0; #X connect 8 0 9 0; #X connect 9 0 6 0; #X connect 11 0 19 0; #X connect 12 0 13 1; #X connect 13 0 16 0; #X connect 13 0 20 1; #X connect 14 0 1 0; #X connect 15 0 10 0; #X connect 16 0 15 0; #X connect 17 0 12 0; #X connect 18 0 20 0; #X connect 19 0 12 0; #X connect 20 0 13 0; #X connect 20 0 14 1; #X restore 128 282 pd doodle; #X obj 197 282 # +; #X msg 574 207 load g001.jpg; #X obj 90 178 route position; #X msg 90 197 \$3; #X obj 90 216 & 1; #X msg 107 66 240 320; #X obj 573 296 #camera; #X obj 260 116 shunt 3; #X obj 302 142 # ** 3; #X text 336 125 cubit; #X obj 302 161 # >> 10; #X connect 0 0 54 0; #X connect 1 0 103 0; #X connect 2 0 7 0; #X connect 2 1 9 0; #X connect 4 0 64 0; #X connect 5 0 54 0; #X connect 6 0 8 1; #X connect 6 0 97 2; #X connect 7 0 14 0; #X connect 8 0 13 0; #X connect 10 0 91 0; #X connect 11 0 65 0; #X connect 12 0 70 0; #X connect 12 1 97 0; #X connect 13 0 69 0; #X connect 14 0 11 1; #X connect 14 0 45 0; #X connect 15 0 0 0; #X connect 18 0 59 1; #X connect 20 0 105 1; #X connect 24 0 45 1; #X connect 26 0 28 0; #X connect 28 0 10 1; #X connect 28 0 6 1; #X connect 29 0 43 0; #X connect 30 0 104 0; #X connect 31 0 30 1; #X connect 32 0 30 0; #X connect 33 0 60 0; #X connect 37 0 62 1; #X connect 37 0 63 1; #X connect 37 0 81 1; #X connect 38 0 81 0; #X connect 40 0 105 0; #X connect 43 0 44 0; #X connect 44 0 50 0; #X connect 45 0 93 0; #X connect 45 1 105 0; #X connect 46 0 94 0; #X connect 47 0 94 1; #X connect 48 0 98 0; #X connect 49 0 48 1; #X connect 50 0 48 1; #X connect 50 1 49 1; #X connect 51 0 50 1; #X connect 51 0 57 1; #X connect 54 0 48 0; #X connect 55 0 49 0; #X connect 56 0 80 0; #X connect 57 0 55 0; #X connect 59 0 5 0; #X connect 59 1 15 0; #X connect 59 2 61 0; #X connect 60 0 59 0; #X connect 60 0 57 0; #X connect 61 0 0 0; #X connect 62 0 13 0; #X connect 62 1 8 0; #X connect 63 0 62 1; #X connect 64 0 80 0; #X connect 65 0 12 0; #X connect 65 1 70 0; #X connect 67 0 65 1; #X connect 68 0 14 0; #X connect 70 0 62 0; #X connect 76 0 104 0; #X connect 77 0 84 0; #X connect 78 0 77 1; #X connect 78 0 82 0; #X connect 80 0 16 0; #X connect 80 0 11 0; #X connect 81 0 89 0; #X connect 82 0 85 0; #X connect 82 1 83 0; #X connect 83 0 84 0; #X connect 85 0 84 0; #X connect 86 0 3 0; #X connect 87 0 50 1; #X connect 88 0 89 1; #X connect 89 0 90 0; #X connect 90 0 8 1; #X connect 91 0 86 0; #X connect 91 0 96 0; #X connect 91 0 100 0; #X connect 92 0 10 0; #X connect 93 0 40 0; #X connect 94 0 8 2; #X connect 96 0 6 0; #X connect 96 1 6 0; #X connect 96 4 63 0; #X connect 96 6 97 1; #X connect 97 0 12 1; #X connect 97 1 98 1; #X connect 98 0 92 0; #X connect 99 0 87 0; #X connect 100 0 101 0; #X connect 101 0 102 0; #X connect 102 0 97 3; #X connect 103 0 2 0; #X connect 104 0 50 0; #X connect 104 0 77 0; #X connect 105 0 60 0; #X connect 105 1 33 0; #X connect 105 2 106 0; #X connect 106 0 108 0; #X connect 108 0 60 0;