/usr/share/gem/examples/04.pix/12.blending.pd is in gem-doc 1:0.93.3-13.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 | #N canvas 138 0 775 371 10;
#X obj 254 305 pix_texture;
#X obj 290 112 gemhead 20;
#X obj 254 65 gemhead;
#X text 257 30 various methods for blending images;
#N canvas 165 295 561 386 blending 0;
#X obj 28 65 inlet;
#X obj 191 354 outlet;
#X obj 173 285 inlet;
#X obj 320 8 inlet;
#X obj 28 322 pix_composite;
#X obj 129 323 pix_add;
#X obj 285 322 pix_diff;
#X obj 191 322 pix_subtract;
#X obj 28 227 pix_alpha;
#N canvas 445 182 508 174 select 0;
#X obj 88 35 inlet;
#X msg 88 98 1;
#X msg 144 98 2;
#X msg 201 97 3;
#X msg 257 97 0;
#X obj 88 121 outlet;
#X msg 329 100 4;
#X obj 88 59 select pix_add pix_subtract pix_diff pix_composite pix_multiply
;
#X connect 0 0 7 0;
#X connect 1 0 5 0;
#X connect 2 0 5 0;
#X connect 3 0 5 0;
#X connect 4 0 5 0;
#X connect 6 0 5 0;
#X connect 7 0 1 0;
#X connect 7 1 2 0;
#X connect 7 2 3 0;
#X connect 7 3 4 0;
#X connect 7 4 6 0;
#X restore 350 82 pd select blending method;
#X obj 360 324 pix_multiply;
#N canvas 172 373 450 300 demux5 0;
#X obj 59 30 inlet;
#X obj 283 17 inlet;
#X obj 59 193 outlet;
#X obj 59 137 spigot;
#X obj 96 109 == 0;
#X obj 106 137 spigot;
#X obj 153 139 spigot;
#X obj 200 137 spigot;
#X obj 246 137 spigot;
#X obj 143 109 == 1;
#X obj 190 109 == 2;
#X obj 237 109 == 3;
#X obj 283 109 == 4;
#X obj 96 83 loadbang;
#X obj 59 52 t a a a a a;
#X obj 106 194 outlet;
#X obj 153 195 outlet;
#X obj 200 196 outlet;
#X obj 246 195 outlet;
#X obj 283 61 f;
#X connect 0 0 14 0;
#X connect 1 0 19 0;
#X connect 3 0 2 0;
#X connect 4 0 3 1;
#X connect 5 0 15 0;
#X connect 6 0 16 0;
#X connect 7 0 17 0;
#X connect 8 0 18 0;
#X connect 9 0 5 1;
#X connect 10 0 6 1;
#X connect 11 0 7 1;
#X connect 12 0 8 1;
#X connect 13 0 4 0;
#X connect 14 0 3 0;
#X connect 14 1 5 0;
#X connect 14 2 6 0;
#X connect 14 3 7 0;
#X connect 14 4 8 0;
#X connect 19 0 4 0;
#X connect 19 0 9 0;
#X connect 19 0 10 0;
#X connect 19 0 11 0;
#X connect 19 0 12 0;
#X restore 28 189 pd demux5;
#X obj 320 28 t b a;
#X obj 28 129 pix_buf;
#X text 26 39 pix1;
#X text 176 269 pix2;
#X obj 350 56 symbol;
#X text 99 232 we need an alpha componenct for 'composite';
#X text 85 115 [pix_add] and friends will overwrite the original (left)
image with the blend. [pix_buf] holds a local copy of the original
image and will refresh the output when banged.;
#X connect 0 0 13 0;
#X connect 2 0 5 1;
#X connect 2 0 4 1;
#X connect 2 0 7 1;
#X connect 2 0 6 1;
#X connect 2 0 10 1;
#X connect 3 0 12 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 0 1 0;
#X connect 7 0 1 0;
#X connect 8 0 4 0;
#X connect 9 0 11 1;
#X connect 10 0 1 0;
#X connect 11 0 8 0;
#X connect 11 1 5 0;
#X connect 11 2 7 0;
#X connect 11 3 6 0;
#X connect 11 4 10 0;
#X connect 12 0 13 0;
#X connect 12 1 16 0;
#X connect 13 0 11 0;
#X connect 16 0 9 0;
#X restore 254 250 pd blending;
#X obj 254 328 square 3;
#X text 461 210 additive blending (likely to get white);
#X text 461 231 subtractive blending (likely to get black);
#X text 467 184 alpha blending;
#X msg 367 281 pix_multiply;
#X msg 368 256 pix_diff;
#X msg 366 232 pix_subtract;
#X msg 366 207 pix_add;
#X msg 367 184 pix_composite;
#X text 469 281 multiply 2 images together;
#X obj 254 87 pix_image ../data/dancer.JPG;
#X obj 290 136 pix_image ../data/fractal.JPG;
#X text 465 259 difference;
#X obj 20 69 cnv 15 220 70 empty empty empty 20 12 0 14 -195568 -66577
0;
#N canvas 0 22 454 304 gemwin 0;
#X obj 132 136 gemwin;
#X obj 67 89 outlet;
#X obj 67 10 inlet;
#X obj 67 41 route create;
#X msg 67 70 set destroy;
#X msg 182 68 set create;
#X msg 132 112 create \, 1;
#X msg 238 112 destroy;
#N canvas 87 154 247 179 Gem.init 0;
#X obj 118 46 loadbang;
#X msg 118 81 reset;
#X obj 118 113 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X restore 289 80 pd Gem.init;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 3 1 5 0;
#X connect 3 1 7 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 0 0 0;
#X connect 7 0 0 0;
#X connect 8 0 0 0;
#X restore 25 113 pd gemwin;
#X msg 25 89 create;
#X text 21 69 Create window and render;
#X connect 0 0 5 0;
#X connect 1 0 16 0;
#X connect 2 0 15 0;
#X connect 4 0 0 0;
#X connect 9 0 4 2;
#X connect 10 0 4 2;
#X connect 11 0 4 2;
#X connect 12 0 4 2;
#X connect 13 0 4 2;
#X connect 15 0 4 0;
#X connect 16 0 4 1;
#X connect 19 0 20 0;
#X connect 20 0 19 0;
|