aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoão Pais <jmmmp@users.sourceforge.net>2011-02-08 19:40:16 +0000
committerJoão Pais <jmmmp@users.sourceforge.net>2011-02-08 19:40:16 +0000
commit2aac2a7ddcc010983797acbc4d9af5ff9528e85e (patch)
tree7d2ef1f49a8e5d06fb768931c740cb43a303a913
parent8e4e151b43b27da5bf43a442492999afb29ed2b2 (diff)
svn path=/trunk/abstractions/jmmmp/; revision=14876
-rw-r--r--examples/rgb.ppm636
-rw-r--r--rgb-color-help.pd22
-rw-r--r--rgb-color.pd212
-rw-r--r--swatch-gui-help.pd25
-rw-r--r--swatch-gui.pd379
-rw-r--r--swatch-help.pd25
-rw-r--r--swatch.pd260
7 files changed, 1559 insertions, 0 deletions
diff --git a/examples/rgb.ppm b/examples/rgb.ppm
new file mode 100644
index 0000000..e56132c
--- /dev/null
+++ b/examples/rgb.ppm
@@ -0,0 +1,636 @@
+P6
+# CREATOR: GIMP PNM Filter Version 1.1
+258 65
+255
+·ķƷȷʷ̷ηѷӷշ׷ٷ۷޷÷ŷƷȷʷ̷ͷϷѷӷշ׷ٷ۷ݷ߷·ķƷȷɷ˷ͷϷѷӷԷշ׷ٷ۷ݷ߷íŭȭʭ̭ϭҭԭ֭٭ܭޭ­ĭƭɭ˭ͭϭѭԭ֭حڭݭ߭­ĭƭǭʭ̭έѭҭԭ׭ڭۭݭ߭ģƣɣ̣ϣңգףڣݣ£ģǣɣ̣Σѣӣ֣أۣݣģţȣˣͣУңգף٣ܣޣęǙʙ͙Йә֙ڙܙߙÙƙə̙ϙљԙיٙܙߙ™řș˙͙ЙәՙؙۙޙŏȏˏϏӏ֏ُ܏ďǏʏ͏Џӏ֏ُ܏ޏÏƏɏ̏ΏяՏ؏ۏݏÅDž˅υ҅օم݅…Ņȅ̅υ҅Յم܅ޅąDžʅͅхԅׅۅ݅yz{z}zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz}z{yzzy{z}zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz}y|zz{y}zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz}z{zyopqpspupxp{p~ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp|pzpwpupspqoppoqpspupwpzp|ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp~p{pxpvpsorppqospupwpyp|p~pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp|pypvpspqpoefgfiflfofrfufxf|ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff}fzfvfsfqfnfkfifgeffegfjfkfnfqfsfvfyf|ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff}fyfvfrfoflfjehffgeifkfnfpfrfufxf{f~ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff~fyfvfsfoflfjfgfe[\]\_\b\e\h\l\o\s\w\|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\x\t\q\m\j\g\d\a\_\^[\\[]\`\b\e\h\j\m\q\t\w\|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\w\t\q\m\i\f\c\`[^\\^[_\a\d\g\i\l\o\s\v\z\~\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\~\z\u\q\m\j\f\c\`\^\[QRSRVRXR\R_RcRgRkRoRtRxR|RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR}RyRtRpRlRhRdRaR^R[RXRVRTQRRQSRVRXR[R^RaReRhRkRoRtRwR{RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR~RyRtRpRlRhRdR`R]RYRVQTRRTQVRXRZR]R`RcRfRjRnRrRvRzR~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR{RvRrRmRhRdRaR]RYRVRTRQGHIHLHOHRHVHZH^HbHgHlHpHuHzHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHzHuHqHlHgHcH`H\HXHTHQHNHLHJGHHGIHLHNHRHUHXH\H`HcHfHkHpHsHxH}HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH{HvHqHlHhHdH_H[HWHSHPHLGJHHJGLHNHQHTHWHZH^HbHfHjHnHrHvH{HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHyHsHnHiHdH_H[HXHSHPHMHJHG>?@?C?F?J?N?R?V?[?_?d?i?n?s?y???????????????????????????????????????????????????????~?y?t?n?j?e?`?\?X?T?P?L?I?E?C?A>??>A?D?F?J?M?P?T?X?\?`?d?i?m?r?v?{?????????????????????????????????????????????????????????z?u?o?j?e?`?\?W?S?O?K?G?D>A??A>C?E?H?K?N?R?V?Z?^?b?g?k?p?t?y?~????????????????????????????????????????????????????????y?s?m?g?b?]?X?S?O?K?G?D?A?>5676;6>6B6F6I6N6S6X6]6b6g6m6s6y66666666666666666666666666666666666666666666666666666}6x6r6m6h6c6^6X6T6P6L6H6D6A6=6:68566586;6=6A6D6H6L6P6T6X6]6b6f6k6p6u6{6666666666666666666666666666666666666666666666666666666y6t6n6i6c6^6Y6T6O6K6G6C6?6;586685:6=6@6C6F6J6N6R6W6[6_6d6i6n6s6x6~666666666666666666666666666666666666666666666666666666y6r6l6f6`6[6U6P6K6G6B6>6;6865,-.-2-5-9-=-A-F-K-P-V-[-a-f-m-s-y---------------------------------------------------}-w-r-l-g-a-[-V-Q-M-I-D-@-;-8-4-1-/,--,/-2-5-9-<-@-D-H-L-Q-V-Z-_-d-j-o-u-z-----------------------------------------------------z-s-m-h-b-\-V-Q-L-H-C->-:-6-2,/--/,1-4-7-;->-B-F-J-O-S-X-]-b-h-m-r-x-}----------------------------------------------------y-s-l-f-_-Y-T-N-H-C-?-:-6-3-/-,$%'%*%-%2%6%:%?%D%J%P%U%[%a%h%n%t%z%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%x%r%l%f%a%[%U%P%J%F%B%<%8%4%1%,%)%'$%%$'%*%-%1%5%9%=%A%F%J%O%T%Y%^%d%j%p%u%{%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%{%u%n%h%b%\%V%P%K%F%A%;%7%3%/%+$(%%'$)%,%0%3%7%;%?%C%H%M%R%W%\%b%g%m%s%x%}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%{%t%n%g%`%Y%S%M%G%A%<%8%3%.%+%'%$"&*/38>CIOU[bhov|zsmga[UOJD?;51-)%""&*-16:?CINSX_djpv|}vphb\VPID?940+'# "%(,/48=BFLQV\bhntz|vohaZSMG@:50+'# $(-28=DIOV]dkqx}vohb\VPJD>94/+&##'+049=CHNSZ_fkqx~yqkd]WQJD>93.)% "%).27<AFLQW]ciou|yrkd\UNGA:4/*% #'-38?DKRY`gnt|ysle^XRKE@94/)%!"&*/48>DIOU[bgnt{}ung`YSLE?94.($ $(,27<AGMSY_elqx~}vog`XQIC<5/)%
+
+
+
+
+
+"
+(
+.
+3
+:
+@
+F
+M
+U
+\
+c
+i
+q
+x
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+|
+v
+o
+h
+a
+Z
+T
+M
+G
+A
+;
+4
+/
+*
+$
+
+
+
+
+
+
+
+
+
+
+
+
+
+%
+*
+/
+3
+9
+?
+E
+J
+Q
+W
+^
+c
+j
+q
+x
+~
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+y
+r
+j
+c
+\
+U
+N
+H
+A
+:
+4
+/
+)
+#
+
+
+
+
+
+ 
+
+
+
+
+"
+(
+,
+1
+7
+=
+C
+H
+N
+U
+[
+b
+h
+n
+u
+{
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+y
+r
+j
+c
+\
+T
+L
+E
+>
+7
+0
+*
+$
+
+
+
+
+
+ 
+"(.5;BIQX`fmu}yrkd]VPIB<6/)%     $).4:@FMSZ`fmt{~vnf`XQJC<5/)$   "',28>DJQW^djqx~vng`XPH@92+$ 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+z
+
+z
+
+p
+
+f
+
+f
+\
+
+
+R
+
+R
+
+
+H
+
+
+
+
+
+6
+
+6
+
+
+-
+
+-
+
+-
+
+%
+
+%
+
+%
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rgb-color-help.pd b/rgb-color-help.pd
new file mode 100644
index 0000000..ab07bb7
--- /dev/null
+++ b/rgb-color-help.pd
@@ -0,0 +1,22 @@
+#N canvas 186 367 435 338 10;
+#X text 12 307 Released under the BSD License;
+#X text 257 90 Inlets;
+#X text 257 150 Outlets;
+#X text 257 110 - Bang;
+#X obj 16 92 rgb-color;
+#X text 12 10 [rgb-color] - Pick RGB colors for your GUI objects;
+#X text 257 170 - "color \$1 \$2 \$3" command;
+#X text 257 190 - number with current color;
+#X text 11 287 (C) 2010 Joo Pais - jmmmpais@googlemail.com;
+#X obj 19 263 hsl 128 15 0 127 0 0 empty \$0-slider Label -2 -8 0 10
+-262144 -1 -1 0 1;
+#X obj 16 173 s \$0-slider;
+#X floatatom 173 173 10 0 0 0 - - -;
+#X text 12 30 Define the colors of your GUI object just like using
+the properties window. The settings of the three fields are saved in
+memory while using the object.;
+#X text 14 230 Send your color settings here:;
+#X text 128 205 in Pd encoding;
+#X text 128 192 Current color code;
+#X connect 4 0 10 0;
+#X connect 4 1 11 0;
diff --git a/rgb-color.pd b/rgb-color.pd
new file mode 100644
index 0000000..974e48a
--- /dev/null
+++ b/rgb-color.pd
@@ -0,0 +1,212 @@
+#N canvas 103 180 381 510 10;
+#X obj 13 10 hsl 128 12 0 255 0 0 \$0-r \$0-r-i empty -2 -8 0 10 -228856
+-258113 -1 0 1;
+#X obj 13 22 hsl 128 12 0 255 0 0 \$0-g \$0-g-i empty -2 -8 0 10 -228856
+-4034 -1 0 1;
+#X obj 13 34 hsl 128 12 0 255 0 0 \$0-b \$0-b-i empty -2 -8 0 10 -228856
+-4160 -1 0 1;
+#X obj 24 50 cnv 34 34 34 empty \$0-cnv empty 20 12 0 14 -1 -262144
+0;
+#X obj 21 329 s \$0-cnv;
+#X msg 21 309 color \$1;
+#X obj 85 179 t b f;
+#X obj 167 179 t b f;
+#X obj 144 10 nbx 3 12 0 255 0 0 \$0-r-i \$0-r1-i empty 0 -8 0 8 -261234
+-1 -1 0 256;
+#X obj 144 22 nbx 3 12 0 255 0 0 \$0-g-i \$0-g1-i empty 0 -8 0 8 -204786
+-1 -1 0 256;
+#X obj 144 34 nbx 3 12 0 255 0 0 \$0-b-i \$0-b1-i empty 0 -8 0 8 -203904
+-1 -1 0 256;
+#X obj 11 389 outlet;
+#X msg 21 139 set \$1;
+#X obj 21 159 s \$0-r1-i;
+#X msg 95 139 set \$1;
+#X obj 95 159 s \$0-g1-i;
+#X msg 177 139 set \$1;
+#X obj 177 159 s \$0-b1-i;
+#X obj 85 49 vradio 12 1 0 3 \$0-lab \$0-lab-i empty 0 -8 0 10 -228856
+-1 -1 0;
+#X text 100 46 Background;
+#X text 100 58 Front;
+#X text 100 70 Label;
+#X obj 72 50 cnv 10 10 10 empty \$0-cnv-back empty 20 12 0 14 -1 -262144
+0;
+#X obj 72 62 cnv 10 10 10 empty \$0-cnv-front empty 20 12 0 14 -1 -262144
+0;
+#X obj 72 74 cnv 10 10 10 empty \$0-cnv-label empty 20 12 0 14 -1 -262144
+0;
+#X obj 11 99 r \$0-r;
+#X obj 85 99 r \$0-g;
+#X obj 167 99 r \$0-b;
+#X obj 167 119 i;
+#X obj 85 119 i;
+#X obj 11 119 i;
+#X obj 11 289 expr ($f1*(-65536)+$f2*(-256)+$f3*(-1))-1;
+#X obj 11 229 pack f f f;
+#X obj 31 259 outlet rgb;
+#X text 33 417 inserir inlet \, que separa os numeros e os converte
+a rgb;
+#X obj 212 16 init 0;
+#N canvas 0 0 376 407 license 0;
+#X text 8 47 All rights reserved.;
+#X text 8 227 The names of its contributors may not be used to endorse
+or promote products derived from this software without specific prior
+written permission.;
+#X text 8 87 Redistribution and use in source and binary forms \, with
+or without modification \, are permitted provided that the following
+conditions are met:;
+#X text 8 127 Redistributions of source code must retain the above
+copyright notice \, this list of conditions and the following disclaimer.
+;
+#X text 8 297 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES \, INCLUDING
+\, BUT NOT LIMITED TO \, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT \, INDIRECT
+\, INCIDENTAL \, SPECIAL \, EXEMPLARY \, OR CONSEQUENTIAL DAMAGES (INCLUDING
+\, BUT NOT LIMITED TO \, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES
+;
+#X text 8 167 Redistributions in binary form must reproduce the above
+copyright notice \, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the distribution.
+;
+#X text 8 27 jmmmpais@googlemail.com;
+#X text 8 7 Copyright 2010 \, Joo Pais;
+#X restore 15 472 pd license;
+#X text 14 453 (C) 2010 Joo Pais - jmmmpais@googlemail.com;
+#N canvas 0 0 484 500 rgb 0;
+#X obj 21 399 outlet;
+#X msg 21 369 color \$1 \$2 \$3;
+#X obj 21 209 route back front label;
+#X obj 90 89 sel 0 1 2;
+#X msg 90 109 back;
+#X msg 107 129 front;
+#X msg 124 149 label;
+#X obj 21 169 list prepend;
+#X obj 21 189 list trim;
+#X msg 64 269 color \$1;
+#X msg 117 229 color \$1;
+#X obj 117 249 s \$0-cnv-label;
+#X msg 31 229 color \$1;
+#X obj 31 249 s \$0-cnv-back;
+#X obj 64 289 s \$0-cnv-front;
+#X obj 35 319 t b f;
+#X obj 77 319 t b f;
+#X obj 21 349 pack f f f;
+#X obj 90 69 r \$0-lab;
+#X obj 21 129 inlet;
+#X text 39 41 Ausgang RGB;
+#X obj 311 219 route back front label;
+#X obj 380 39 sel 0 1 2;
+#X msg 380 79 back;
+#X msg 404 119 front;
+#X msg 398 159 label;
+#X obj 311 179 list prepend;
+#X obj 311 199 list trim;
+#X obj 290 249 list;
+#X obj 333 249 list;
+#X obj 376 249 list;
+#X obj 290 279 unpack f f f;
+#X obj 380 59 t b b;
+#X obj 397 99 t b b;
+#X obj 414 139 t b b;
+#X msg 359 419 set \$1;
+#X msg 324 359 set \$1;
+#X msg 290 299 set \$1;
+#X obj 359 459 s \$0-b1-i;
+#X obj 369 439 s \$0-b-i;
+#X obj 324 399 s \$0-g1-i;
+#X obj 334 379 s \$0-g-i;
+#X obj 290 339 s \$0-r1-i;
+#X obj 300 319 s \$0-r-i;
+#X obj 380 19 r \$0-lab;
+#X obj 311 139 inlet;
+#X text 286 35 GUI Speicher;
+#X connect 1 0 0 0;
+#X connect 2 0 12 0;
+#X connect 2 0 17 0;
+#X connect 2 1 9 0;
+#X connect 2 1 15 0;
+#X connect 2 2 10 0;
+#X connect 2 2 16 0;
+#X connect 3 0 4 0;
+#X connect 3 1 5 0;
+#X connect 3 2 6 0;
+#X connect 4 0 7 1;
+#X connect 5 0 7 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 8 0 2 0;
+#X connect 9 0 14 0;
+#X connect 10 0 11 0;
+#X connect 12 0 13 0;
+#X connect 15 0 17 0;
+#X connect 15 1 17 1;
+#X connect 16 0 17 0;
+#X connect 16 1 17 2;
+#X connect 17 0 1 0;
+#X connect 18 0 3 0;
+#X connect 19 0 7 0;
+#X connect 21 0 28 1;
+#X connect 21 1 29 1;
+#X connect 21 2 30 1;
+#X connect 22 0 32 0;
+#X connect 22 1 33 0;
+#X connect 22 2 34 0;
+#X connect 23 0 26 1;
+#X connect 24 0 26 1;
+#X connect 25 0 26 1;
+#X connect 26 0 27 0;
+#X connect 27 0 21 0;
+#X connect 28 0 31 0;
+#X connect 29 0 31 0;
+#X connect 30 0 31 0;
+#X connect 31 0 37 0;
+#X connect 31 1 36 0;
+#X connect 31 2 35 0;
+#X connect 32 0 23 0;
+#X connect 32 1 28 0;
+#X connect 33 0 24 0;
+#X connect 33 1 29 0;
+#X connect 34 0 25 0;
+#X connect 34 1 30 0;
+#X connect 35 0 38 0;
+#X connect 35 0 39 0;
+#X connect 36 0 40 0;
+#X connect 36 0 41 0;
+#X connect 37 0 42 0;
+#X connect 37 0 43 0;
+#X connect 44 0 22 0;
+#X connect 45 0 26 0;
+#X restore 11 359 pd rgb speicher;
+#X obj 267 10 inlet;
+#X obj 267 30 route list float;
+#X obj 165 338 outlet iem-color;
+#X connect 5 0 4 0;
+#X connect 6 0 32 0;
+#X connect 6 1 32 1;
+#X connect 7 0 32 0;
+#X connect 7 1 32 2;
+#X connect 12 0 13 0;
+#X connect 14 0 15 0;
+#X connect 16 0 17 0;
+#X connect 25 0 30 0;
+#X connect 26 0 29 0;
+#X connect 27 0 28 0;
+#X connect 28 0 16 0;
+#X connect 28 0 7 0;
+#X connect 29 0 14 0;
+#X connect 29 0 6 0;
+#X connect 30 0 12 0;
+#X connect 30 0 32 0;
+#X connect 31 0 5 0;
+#X connect 31 0 38 0;
+#X connect 31 0 41 0;
+#X connect 32 0 31 0;
+#X connect 32 0 33 0;
+#X connect 32 0 38 1;
+#X connect 35 0 18 0;
+#X connect 38 0 11 0;
+#X connect 39 0 40 0;
+#X connect 40 0 32 0;
+#X coords 0 -1 1 1 164 78 2 10 10;
diff --git a/swatch-gui-help.pd b/swatch-gui-help.pd
new file mode 100644
index 0000000..fb9a77c
--- /dev/null
+++ b/swatch-gui-help.pd
@@ -0,0 +1,25 @@
+#N struct 1155-rgb-sel float x float y float p1x float p1y float p2x
+float p2y float p3x float p3y float p4x float p4y float p5x float p5y
+float p0x float p0y float p0x. float p0y.;
+#N canvas 186 367 411 386 10;
+#X text 12 357 Released under the BSD License;
+#X text 228 220 Inlets;
+#X text 227 270 Outlets;
+#X text 227 240 - Bang;
+#X text 227 290 - "color \$1 \$2 \$3" command;
+#X text 227 310 - number with current color;
+#X text 11 337 (C) 2010 Joo Pais - jmmmpais@googlemail.com;
+#X obj 13 91 swatch-gui;
+#X obj 28 274 hsl 128 15 0 127 0 0 empty \$0-slider Label -2 -8 0 10
+-85968 -73790 -1 6300 1;
+#X obj 13 236 s \$0-slider;
+#X floatatom 127 245 10 0 0 0 - - -;
+#X text 22 11 [swatch] - Pick a color using the hue-saturation chart
+;
+#X text 21 31 To choose a color \, grab the circle and move it around.
+In case the circle disappears \, clicking in the swatch will make it
+appear again.;
+#X msg 13 216 color \$1 \$2 \$3;
+#X connect 7 0 13 0;
+#X connect 7 1 10 0;
+#X connect 13 0 9 0;
diff --git a/swatch-gui.pd b/swatch-gui.pd
new file mode 100644
index 0000000..30f41cc
--- /dev/null
+++ b/swatch-gui.pd
@@ -0,0 +1,379 @@
+#N canvas 69 167 450 300 10;
+#X obj 150 53 image /home/jmmmp/elektronik/pd-jmp/jmmmp-ext/svn/jmmmp/examples/rgb.ppm
+;
+#N canvas 580 67 474 761 inside 0;
+#N canvas 400 377 705 549 selector-data 0;
+#X obj 203 53 route change click;
+#X obj 222 83 unpack p f;
+#X obj 119 25 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 9 59 t b b;
+#X obj 64 130 pointer;
+#X msg 64 110 traverse \$1 \, bang;
+#X obj 222 333 t p p p p;
+#X obj 222 403 list-add;
+#X obj 222 363 get \$0-rgb-sel p0x;
+#X msg 347 363 -8 0 8;
+#X msg 222 383 \$1 \$1 \$1;
+#X obj 222 423 set \$0-rgb-sel p1x p2x p3x;
+#X obj 256 493 list-add;
+#X msg 256 473 \$1 \$1 \$1;
+#X obj 256 453 get \$0-rgb-sel p0y;
+#X obj 256 513 set \$0-rgb-sel p1y p2y p3y;
+#X text 378 104 drawcurve 0 2 -8 0 0 8 8 0 0 -8 -8 0;
+#X obj 239 183 t p p p p;
+#X obj 273 263 get \$0-rgb-sel p0y;
+#X obj 273 303 set \$0-rgb-sel p0y.;
+#X obj 256 153 outlet;
+#X obj 273 283 + 0;
+#X obj 239 223 + 0;
+#X obj 352 63 drawpolygon 0 1 0 0 259 0 259 66 0 66 0 0;
+#X obj 352 83 drawpolygon 0 2 p0x(0:258) p0y(0:65) p0x. p0y.;
+#X obj 352 123 drawcurve 0 2 p1x p2y p2x p3y p3x p2y p2x p1y p1x p2y
+;
+#X obj 64 90 symbol \$0-swatch;
+#X obj 9 9 loadbang;
+#X obj 203 7 struct \$0-rgb-sel float x float y float p1x float p1y
+float p2x float p2y float p3x float p3y float p4x float p4y float p5x
+float p5y float p0x float p0y float p0x. float p0y.;
+#X obj 9 160 append \$0-rgb-sel x y;
+#X obj 239 203 get \$0-rgb-sel p0x;
+#X obj 239 243 set \$0-rgb-sel p0x.;
+#X msg 9 140 10 10;
+#X obj 482 342 pointer;
+#X obj 509 302 set \$0-rgb-sel p0x p0y;
+#X obj 222 113 t p p p p;
+#X obj 521 322 t p p;
+#X msg 496 260 \$1 \$2;
+#X obj 482 282 t b l;
+#X text 443 213 mecanismo para gravar posicoes;
+#X obj 473 239 r \$0-list-speicher;
+#X obj 9 29 t b b;
+#X connect 0 0 1 0;
+#X connect 0 1 1 0;
+#X connect 1 0 35 0;
+#X connect 2 0 3 0;
+#X connect 3 0 32 0;
+#X connect 3 1 26 0;
+#X connect 4 0 29 2;
+#X connect 5 0 4 0;
+#X connect 6 0 8 0;
+#X connect 6 1 11 3;
+#X connect 6 2 14 0;
+#X connect 6 3 15 3;
+#X connect 7 0 11 0;
+#X connect 8 0 10 0;
+#X connect 9 0 7 1;
+#X connect 9 0 12 1;
+#X connect 10 0 7 0;
+#X connect 12 0 15 0;
+#X connect 13 0 12 0;
+#X connect 14 0 13 0;
+#X connect 17 0 30 0;
+#X connect 17 1 31 1;
+#X connect 17 2 18 0;
+#X connect 17 3 19 1;
+#X connect 18 0 21 0;
+#X connect 21 0 19 0;
+#X connect 22 0 31 0;
+#X connect 26 0 5 0;
+#X connect 27 0 41 0;
+#X connect 28 0 0 0;
+#X connect 29 0 35 0;
+#X connect 30 0 22 0;
+#X connect 32 0 29 0;
+#X connect 33 0 35 0;
+#X connect 35 0 6 0;
+#X connect 35 1 17 0;
+#X connect 35 2 20 0;
+#X connect 35 3 36 0;
+#X connect 36 0 33 1;
+#X connect 36 1 34 2;
+#X connect 37 0 38 0;
+#X connect 38 0 33 0;
+#X connect 38 1 34 0;
+#X connect 40 0 38 0;
+#X connect 41 0 3 0;
+#X connect 41 1 9 0;
+#X restore 82 11 pd selector-data;
+#X obj 82 31 get \$0-rgb-sel p0x p0y;
+#X obj 82 151 tabread \$0-table;
+#X obj 101 171 tabread \$0-table;
+#X obj 82 51 t f f f;
+#X msg 173 567 \$1 \$2 \$3;
+#X obj 82 201 pack f f f;
+#X obj 121 111 tabread \$0-table;
+#N canvas 0 0 450 300 (subpatch) 0;
+#X array \$0-table 258 float 1;
+#A 0 0 0.0232558 0.0465116 0.0697674 0.0930233 0.116279 0.139535 0.162791
+0.186047 0.209302 0.232558 0.255814 0.27907 0.302326 0.325581 0.348837
+0.372093 0.395349 0.418605 0.44186 0.465116 0.488372 0.511628 0.534884
+0.55814 0.581395 0.604651 0.627907 0.651163 0.674419 0.697674 0.72093
+0.744186 0.767442 0.790698 0.813954 0.837209 0.860465 0.883721 0.906977
+0.930233 0.953488 0.976744 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0.976744
+0.953488 0.930233 0.906977 0.883721 0.860465 0.837209 0.813954 0.790698
+0.767442 0.744186 0.72093 0.697674 0.674419 0.651163 0.627907 0.604651
+0.581395 0.55814 0.534884 0.511628 0.488372 0.465116 0.44186 0.418605
+0.395349 0.372093 0.348837 0.325581 0.302326 0.27907 0.255814 0.232558
+0.209302 0.186046 0.162791 0.139535 0.116279 0.0930232 0.0697674 0.0465117
+0.0232558 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
+#X coords 0 1 257 0 258 50 1;
+#X restore 202 359 graph;
+#X text 217 426 43 por cada segmento;
+#X text 209 411 0 0 \, 1 43 \, 1 129 \, 0 172 \, 0 258;
+#X obj 82 111 + 86;
+#X obj 82 131 zexy/wrap 257;
+#X obj 121 91 zexy/wrap 257;
+#X obj 121 71 + 172;
+#X obj 173 647 outlet;
+#X obj 233 90 moses 0;
+#X obj 233 70 expr $f1-33;
+#X obj 272 110 expr 1-$f1/32;
+#X obj 173 281 list-mult;
+#X msg 224 261 \$1 \$1 \$1;
+#X text 360 107 opacidade;
+#X obj 173 527 list-mult;
+#X msg 224 507 255 255 255;
+#X obj 173 547 l2i;
+#X obj 224 487 loadbang;
+#X obj 173 587 expr ($f1*(-65536)+$f2*(-256)+$f3*(-1))-1;
+#X text 206 317 converter entradas rgb e iem;
+#X text 362 151 brilho;
+#X obj 82 251 demux 0 1;
+#X obj 272 130 t b f;
+#X obj 233 170 t b f;
+#X obj 113 231 0;
+#X obj 143 231 1;
+#X obj 12 281 unpack f f f;
+#X obj 12 311 pack f f 0 1;
+#X obj 12 331 list-rot 1;
+#X obj 233 150 expr ($f1+1)/32*(-1);
+#X obj 12 351 maxlib/scale 0 1 0 1;
+#X obj 12 491 pack f f f;
+#X obj 46 371 pack f f 0 1;
+#X obj 46 391 list-rot 1;
+#X obj 46 411 maxlib/scale 0 1 0 1;
+#X obj 102 281 t f f f;
+#X obj 81 431 pack f f 0 1;
+#X obj 81 451 list-rot 1;
+#X obj 81 471 maxlib/scale 0 1 0 1;
+#X obj 342 34 inlet;
+#N canvas 0 0 376 407 license 0;
+#X text 8 47 All rights reserved.;
+#X text 8 227 The names of its contributors may not be used to endorse
+or promote products derived from this software without specific prior
+written permission.;
+#X text 8 87 Redistribution and use in source and binary forms \, with
+or without modification \, are permitted provided that the following
+conditions are met:;
+#X text 8 127 Redistributions of source code must retain the above
+copyright notice \, this list of conditions and the following disclaimer.
+;
+#X text 8 297 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES \, INCLUDING
+\, BUT NOT LIMITED TO \, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT \, INDIRECT
+\, INCIDENTAL \, SPECIAL \, EXEMPLARY \, OR CONSEQUENTIAL DAMAGES (INCLUDING
+\, BUT NOT LIMITED TO \, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES
+;
+#X text 8 167 Redistributions in binary form must reproduce the above
+copyright notice \, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the distribution.
+;
+#X text 8 27 jmmmpais@googlemail.com;
+#X text 8 7 Copyright 2010 \, Joo Pais;
+#X restore 15 742 pd license;
+#X text 14 723 (C) 2010 Joo Pais - jmmmpais@googlemail.com;
+#X obj 143 697 outlet;
+#N canvas 874 158 450 429 rgb-speicher 0;
+#X obj 281 229 route back front label;
+#X obj 350 49 sel 0 1 2;
+#X msg 350 89 back;
+#X msg 374 129 front;
+#X msg 368 169 label;
+#X obj 281 189 list prepend;
+#X obj 281 209 list trim;
+#X obj 260 259 list;
+#X obj 303 259 list;
+#X obj 346 259 list;
+#X obj 350 69 t b b;
+#X obj 367 109 t b b;
+#X obj 384 149 t b b;
+#X obj 350 29 r \$0-lab;
+#X obj 21 359 outlet;
+#X msg 21 339 color \$1 \$2 \$3;
+#X obj 21 179 route back front label;
+#X obj 90 59 sel 0 1 2;
+#X msg 90 79 back;
+#X msg 107 99 front;
+#X msg 124 119 label;
+#X obj 21 139 list prepend;
+#X obj 21 159 list trim;
+#X msg 64 239 color \$1;
+#X msg 117 199 color \$1;
+#X obj 117 219 s \$0-cnv-label;
+#X msg 31 199 color \$1;
+#X obj 31 219 s \$0-cnv-back;
+#X obj 64 259 s \$0-cnv-front;
+#X obj 35 289 t b f;
+#X obj 77 289 t b f;
+#X obj 21 319 pack f f f;
+#X obj 90 39 r \$0-lab;
+#X obj 21 99 inlet;
+#X text 27 12 color Befehl;
+#X obj 281 149 inlet;
+#X text 232 104 swatch speicher;
+#X obj 260 289 s \$0-list-speicher;
+#X msg 295 342 134 33;
+#X obj 350 356 loadbang;
+#X connect 0 0 7 1;
+#X connect 0 1 8 1;
+#X connect 0 2 9 1;
+#X connect 1 0 10 0;
+#X connect 1 1 11 0;
+#X connect 1 2 12 0;
+#X connect 2 0 5 1;
+#X connect 3 0 5 1;
+#X connect 4 0 5 1;
+#X connect 5 0 6 0;
+#X connect 6 0 0 0;
+#X connect 7 0 37 0;
+#X connect 8 0 37 0;
+#X connect 9 0 37 0;
+#X connect 10 0 2 0;
+#X connect 10 1 7 0;
+#X connect 11 0 3 0;
+#X connect 11 1 8 0;
+#X connect 12 0 4 0;
+#X connect 12 1 9 0;
+#X connect 13 0 1 0;
+#X connect 15 0 14 0;
+#X connect 16 0 26 0;
+#X connect 16 0 31 0;
+#X connect 16 1 23 0;
+#X connect 16 1 29 0;
+#X connect 16 2 24 0;
+#X connect 16 2 30 0;
+#X connect 17 0 18 0;
+#X connect 17 1 19 0;
+#X connect 17 2 20 0;
+#X connect 18 0 21 1;
+#X connect 19 0 21 1;
+#X connect 20 0 21 1;
+#X connect 21 0 22 0;
+#X connect 22 0 16 0;
+#X connect 23 0 28 0;
+#X connect 24 0 25 0;
+#X connect 26 0 27 0;
+#X connect 29 0 31 0;
+#X connect 29 1 31 1;
+#X connect 30 0 31 0;
+#X connect 30 1 31 2;
+#X connect 31 0 15 0;
+#X connect 32 0 17 0;
+#X connect 33 0 21 0;
+#X connect 35 0 5 0;
+#X connect 38 0 7 1;
+#X connect 38 0 8 1;
+#X connect 38 0 9 1;
+#X connect 39 0 38 0;
+#X restore 143 677 pd rgb-speicher;
+#X obj 193 627 s \$0-cnv;
+#X msg 193 607 color \$1;
+#X text 242 234 FALTA MECANISMO PARA GRAVAR POSICOES;
+#X obj 253 648 pack f f;
+#X text 208 204 HA UM ERRO COM A MEMORIA. O VALOR INICIAL ENVIADO
+PARA CADA LISTA;
+#X connect 0 0 1 0;
+#X connect 1 0 4 0;
+#X connect 1 1 17 0;
+#X connect 1 1 55 1;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 4 0 11 0;
+#X connect 4 1 3 0;
+#X connect 4 2 14 0;
+#X connect 4 2 55 0;
+#X connect 5 0 26 0;
+#X connect 6 0 29 0;
+#X connect 7 0 6 2;
+#X connect 11 0 12 0;
+#X connect 12 0 2 0;
+#X connect 13 0 7 0;
+#X connect 14 0 13 0;
+#X connect 16 0 37 0;
+#X connect 16 1 18 0;
+#X connect 17 0 16 0;
+#X connect 18 0 30 0;
+#X connect 19 0 22 0;
+#X connect 20 0 19 1;
+#X connect 22 0 24 0;
+#X connect 23 0 22 1;
+#X connect 24 0 5 0;
+#X connect 25 0 23 0;
+#X connect 26 0 15 0;
+#X connect 26 0 53 0;
+#X connect 26 0 51 0;
+#X connect 29 0 34 0;
+#X connect 29 1 19 0;
+#X connect 30 0 33 0;
+#X connect 30 1 20 0;
+#X connect 31 0 32 0;
+#X connect 31 1 43 0;
+#X connect 32 0 29 1;
+#X connect 33 0 29 1;
+#X connect 34 0 35 0;
+#X connect 34 1 40 0;
+#X connect 34 2 44 0;
+#X connect 35 0 36 0;
+#X connect 36 0 38 0;
+#X connect 37 0 31 0;
+#X connect 38 0 39 0;
+#X connect 39 0 22 0;
+#X connect 40 0 41 0;
+#X connect 41 0 42 0;
+#X connect 42 0 39 1;
+#X connect 43 0 35 1;
+#X connect 43 1 40 1;
+#X connect 43 2 44 1;
+#X connect 44 0 45 0;
+#X connect 45 0 46 0;
+#X connect 46 0 39 2;
+#X connect 51 0 50 0;
+#X connect 53 0 52 0;
+#X connect 55 0 51 1;
+#X restore 10 211 pd inside;
+#X obj 10 231 outlet;
+#X obj 10 261 namecanvas \$0-swatch;
+#X obj 10 191 inlet;
+#X obj 80 92 cnv 34 34 34 empty \$0-cnv empty 20 12 0 14 -1124 -262144
+0;
+#X obj 141 91 vradio 12 1 0 3 \$0-lab \$0-lab-i empty 0 -8 0 10 -228856
+-1 -1 2;
+#X text 156 88 Background;
+#X text 156 100 Front;
+#X text 156 112 Label;
+#X obj 128 92 cnv 10 10 10 empty \$0-cnv-back empty 20 12 0 14 -76865
+-262144 0;
+#X obj 128 104 cnv 10 10 10 empty \$0-cnv-front empty 20 12 0 14 -261497
+-262144 0;
+#X obj 128 116 cnv 10 10 10 empty \$0-cnv-label empty 20 12 0 14 -1124
+-262144 0;
+#X obj 141 201 init 0;
+#X obj 61 231 outlet;
+#X obj 227 230 getdir;
+#X obj 227 210 loadbang;
+#X msg 227 250 open \$1/examples/rgb.ppm;
+#X connect 1 0 2 0;
+#X connect 1 1 14 0;
+#X connect 4 0 1 0;
+#X connect 13 0 6 0;
+#X connect 15 0 17 0;
+#X connect 16 0 15 0;
+#X connect 17 0 0 0;
+#X coords 0 0 279 122 279 122 2 10 10;
diff --git a/swatch-help.pd b/swatch-help.pd
new file mode 100644
index 0000000..673045e
--- /dev/null
+++ b/swatch-help.pd
@@ -0,0 +1,25 @@
+#N struct 1131-rgb-sel float x float y float p1x float p1y float p2x
+float p2y float p3x float p3y float p4x float p4y float p5x float p5y
+float p0x float p0y float p0x. float p0y.;
+#N canvas 186 367 411 350 10;
+#X text 12 317 Released under the BSD License;
+#X text 228 180 Inlets;
+#X text 227 230 Outlets;
+#X text 227 200 - Bang;
+#X text 227 250 - "color \$1 \$2 \$3" command;
+#X text 227 270 - number with current color;
+#X text 11 297 (C) 2010 Joo Pais - jmmmpais@googlemail.com;
+#X obj 13 91 swatch;
+#X obj 28 244 hsl 128 15 0 127 0 0 empty \$0-slider Label -2 -8 0 10
+-24385 -1 -262144 0 1;
+#X obj 13 210 s \$0-slider;
+#X floatatom 137 195 10 0 0 0 - - -;
+#X msg 13 190 color \$1;
+#X text 22 11 [swatch] - Pick a color using the hue-saturation chart
+;
+#X text 21 31 To choose a color \, grab the circle and move it around.
+In case the circle disappears \, clicking in the swatch will make it
+appear again.;
+#X connect 7 0 11 0;
+#X connect 7 0 10 0;
+#X connect 11 0 9 0;
diff --git a/swatch.pd b/swatch.pd
new file mode 100644
index 0000000..1b35acb
--- /dev/null
+++ b/swatch.pd
@@ -0,0 +1,260 @@
+#N canvas 69 167 450 300 10;
+#X obj 150 53 image examples/rgb.ppm ;
+#N canvas 304 153 474 680 inside 0;
+#N canvas 400 377 705 549 selector-data 0;
+#X obj 203 53 route change click;
+#X obj 222 83 unpack p f;
+#X obj 119 25 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 9 59 t b b;
+#X obj 64 130 pointer;
+#X msg 64 110 traverse \$1 \, bang;
+#X obj 222 333 t p p p p;
+#X obj 222 403 list-add;
+#X obj 222 363 get \$0-rgb-sel p0x;
+#X msg 347 363 -8 0 8;
+#X msg 222 383 \$1 \$1 \$1;
+#X obj 222 423 set \$0-rgb-sel p1x p2x p3x;
+#X obj 256 493 list-add;
+#X msg 256 473 \$1 \$1 \$1;
+#X obj 256 453 get \$0-rgb-sel p0y;
+#X obj 256 513 set \$0-rgb-sel p1y p2y p3y;
+#X text 378 104 drawcurve 0 2 -8 0 0 8 8 0 0 -8 -8 0;
+#X obj 239 183 t p p p p;
+#X obj 273 263 get \$0-rgb-sel p0y;
+#X obj 273 303 set \$0-rgb-sel p0y.;
+#X obj 256 153 outlet;
+#X obj 273 283 + 0;
+#X obj 239 223 + 0;
+#X obj 352 63 drawpolygon 0 1 0 0 259 0 259 66 0 66 0 0;
+#X obj 352 83 drawpolygon 0 2 p0x(0:258) p0y(0:65) p0x. p0y.;
+#X obj 352 123 drawcurve 0 2 p1x p2y p2x p3y p3x p2y p2x p1y p1x p2y
+;
+#X obj 64 90 symbol \$0-swatch;
+#X obj 9 9 loadbang;
+#X obj 9 180 t p b p;
+#X msg 28 200 134 33;
+#X obj 9 29 t b b;
+#X obj 203 7 struct \$0-rgb-sel float x float y float p1x float p1y
+float p2x float p2y float p3x float p3y float p4x float p4y float p5x
+float p5y float p0x float p0y float p0x. float p0y.;
+#X obj 9 160 append \$0-rgb-sel x y;
+#X obj 28 220 set \$0-rgb-sel p0x p0y;
+#X obj 239 203 get \$0-rgb-sel p0x;
+#X obj 239 243 set \$0-rgb-sel p0x.;
+#X msg 9 140 10 10;
+#X obj 452 332 pointer;
+#X obj 522 309 set \$0-rgb-sel p0x p0y;
+#X obj 222 113 t p p p p;
+#X obj 450 253 t p p;
+#X msg 521 259 \$1 \$2;
+#X obj 523 280 t b l;
+#X text 443 221 mecanismo para gravar posicoes;
+#X connect 0 0 1 0;
+#X connect 0 1 1 0;
+#X connect 1 0 39 0;
+#X connect 2 0 3 0;
+#X connect 3 0 36 0;
+#X connect 3 1 26 0;
+#X connect 4 0 32 2;
+#X connect 5 0 4 0;
+#X connect 6 0 8 0;
+#X connect 6 1 11 3;
+#X connect 6 2 14 0;
+#X connect 6 3 15 3;
+#X connect 7 0 11 0;
+#X connect 8 0 10 0;
+#X connect 9 0 7 1;
+#X connect 9 0 12 1;
+#X connect 10 0 7 0;
+#X connect 12 0 15 0;
+#X connect 13 0 12 0;
+#X connect 14 0 13 0;
+#X connect 17 0 34 0;
+#X connect 17 1 35 1;
+#X connect 17 2 18 0;
+#X connect 17 3 19 1;
+#X connect 18 0 21 0;
+#X connect 21 0 19 0;
+#X connect 22 0 35 0;
+#X connect 26 0 5 0;
+#X connect 27 0 30 0;
+#X connect 28 0 39 0;
+#X connect 28 1 29 0;
+#X connect 28 2 33 2;
+#X connect 29 0 33 0;
+#X connect 30 0 3 0;
+#X connect 30 1 9 0;
+#X connect 31 0 0 0;
+#X connect 32 0 28 0;
+#X connect 34 0 22 0;
+#X connect 36 0 32 0;
+#X connect 37 0 39 0;
+#X connect 39 0 6 0;
+#X connect 39 1 17 0;
+#X connect 39 2 20 0;
+#X connect 39 3 40 0;
+#X connect 40 0 37 1;
+#X connect 40 1 38 2;
+#X connect 41 0 42 0;
+#X connect 42 0 37 0;
+#X connect 42 1 38 0;
+#X restore 82 11 pd selector-data;
+#X obj 82 31 get \$0-rgb-sel p0x p0y;
+#X obj 82 151 tabread \$0-table;
+#X obj 101 171 tabread \$0-table;
+#X obj 82 51 t f f f;
+#X msg 173 567 \$1 \$2 \$3;
+#X obj 82 201 pack f f f;
+#X obj 121 111 tabread \$0-table;
+#N canvas 0 0 450 300 (subpatch) 0;
+#X array \$0-table 258 float 1;
+#A 0 0 0.0232558 0.0465116 0.0697674 0.0930233 0.116279 0.139535 0.162791
+0.186047 0.209302 0.232558 0.255814 0.27907 0.302326 0.325581 0.348837
+0.372093 0.395349 0.418605 0.44186 0.465116 0.488372 0.511628 0.534884
+0.55814 0.581395 0.604651 0.627907 0.651163 0.674419 0.697674 0.72093
+0.744186 0.767442 0.790698 0.813954 0.837209 0.860465 0.883721 0.906977
+0.930233 0.953488 0.976744 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0.976744
+0.953488 0.930233 0.906977 0.883721 0.860465 0.837209 0.813954 0.790698
+0.767442 0.744186 0.72093 0.697674 0.674419 0.651163 0.627907 0.604651
+0.581395 0.55814 0.534884 0.511628 0.488372 0.465116 0.44186 0.418605
+0.395349 0.372093 0.348837 0.325581 0.302326 0.27907 0.255814 0.232558
+0.209302 0.186046 0.162791 0.139535 0.116279 0.0930232 0.0697674 0.0465117
+0.0232558 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
+#X coords 0 1 257 0 258 50 1;
+#X restore 202 359 graph;
+#X text 217 426 43 por cada segmento;
+#X text 209 411 0 0 \, 1 43 \, 1 129 \, 0 172 \, 0 258;
+#X obj 82 111 + 86;
+#X obj 82 131 zexy/wrap 257;
+#X obj 121 91 zexy/wrap 257;
+#X obj 121 71 + 172;
+#X obj 173 607 outlet;
+#X obj 233 90 moses 0;
+#X obj 233 70 expr $f1-33;
+#X obj 272 110 expr 1-$f1/32;
+#X obj 173 281 list-mult;
+#X msg 224 261 \$1 \$1 \$1;
+#X text 360 107 opacidade;
+#X obj 173 527 list-mult;
+#X msg 224 507 255 255 255;
+#X obj 173 547 l2i;
+#X obj 224 487 loadbang;
+#X obj 173 587 expr ($f1*(-65536)+$f2*(-256)+$f3*(-1))-1;
+#X text 206 317 converter entradas rgb e iem;
+#X text 362 151 brilho;
+#X obj 82 251 demux 0 1;
+#X obj 272 130 t b f;
+#X obj 233 170 t b f;
+#X obj 113 231 0;
+#X obj 143 231 1;
+#X obj 12 281 unpack f f f;
+#X obj 12 311 pack f f 0 1;
+#X obj 12 331 list-rot 1;
+#X obj 233 150 expr ($f1+1)/32*(-1);
+#X obj 12 351 maxlib/scale 0 1 0 1;
+#X obj 12 491 pack f f f;
+#X obj 46 371 pack f f 0 1;
+#X obj 46 391 list-rot 1;
+#X obj 46 411 maxlib/scale 0 1 0 1;
+#X obj 102 281 t f f f;
+#X obj 81 431 pack f f 0 1;
+#X obj 81 451 list-rot 1;
+#X obj 81 471 maxlib/scale 0 1 0 1;
+#X obj 342 34 inlet;
+#N canvas 0 0 376 407 license 0;
+#X text 8 47 All rights reserved.;
+#X text 8 227 The names of its contributors may not be used to endorse
+or promote products derived from this software without specific prior
+written permission.;
+#X text 8 87 Redistribution and use in source and binary forms \, with
+or without modification \, are permitted provided that the following
+conditions are met:;
+#X text 8 127 Redistributions of source code must retain the above
+copyright notice \, this list of conditions and the following disclaimer.
+;
+#X text 8 297 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES \, INCLUDING
+\, BUT NOT LIMITED TO \, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT \, INDIRECT
+\, INCIDENTAL \, SPECIAL \, EXEMPLARY \, OR CONSEQUENTIAL DAMAGES (INCLUDING
+\, BUT NOT LIMITED TO \, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES
+;
+#X text 8 167 Redistributions in binary form must reproduce the above
+copyright notice \, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the distribution.
+;
+#X text 8 27 jmmmpais@googlemail.com;
+#X text 8 7 Copyright 2010 \, Joo Pais;
+#X restore 15 656 pd license;
+#X text 14 637 (C) 2010 Joo Pais - jmmmpais@googlemail.com;
+#X text 242 234 FALTA MECANISMO PARA GRAVAR POSICOES;
+#X connect 0 0 1 0;
+#X connect 1 0 4 0;
+#X connect 1 1 17 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 4 0 11 0;
+#X connect 4 1 3 0;
+#X connect 4 2 14 0;
+#X connect 5 0 26 0;
+#X connect 6 0 29 0;
+#X connect 7 0 6 2;
+#X connect 11 0 12 0;
+#X connect 12 0 2 0;
+#X connect 13 0 7 0;
+#X connect 14 0 13 0;
+#X connect 16 0 37 0;
+#X connect 16 1 18 0;
+#X connect 17 0 16 0;
+#X connect 18 0 30 0;
+#X connect 19 0 22 0;
+#X connect 20 0 19 1;
+#X connect 22 0 24 0;
+#X connect 23 0 22 1;
+#X connect 24 0 5 0;
+#X connect 25 0 23 0;
+#X connect 26 0 15 0;
+#X connect 29 0 34 0;
+#X connect 29 1 19 0;
+#X connect 30 0 33 0;
+#X connect 30 1 20 0;
+#X connect 31 0 32 0;
+#X connect 31 1 43 0;
+#X connect 32 0 29 1;
+#X connect 33 0 29 1;
+#X connect 34 0 35 0;
+#X connect 34 1 40 0;
+#X connect 34 2 44 0;
+#X connect 35 0 36 0;
+#X connect 36 0 38 0;
+#X connect 37 0 31 0;
+#X connect 38 0 39 0;
+#X connect 39 0 22 0;
+#X connect 40 0 41 0;
+#X connect 41 0 42 0;
+#X connect 42 0 39 1;
+#X connect 43 0 35 1;
+#X connect 43 1 40 1;
+#X connect 43 2 44 1;
+#X connect 44 0 45 0;
+#X connect 45 0 46 0;
+#X connect 46 0 39 2;
+#X restore 10 211 pd inside;
+#X obj 10 261 namecanvas \$0-swatch;
+#X obj 10 191 inlet;
+#X obj 10 231 outlet;
+#X obj 217 220 getdir;
+#X obj 217 199 loadbang;
+#X msg 216 251 open \$1/examples/rgb.ppm;
+#X connect 1 0 4 0;
+#X connect 3 0 1 0;
+#X connect 5 0 7 0;
+#X connect 6 0 5 0;
+#X connect 7 0 0 0;
+#X coords 0 0 279 86 279 86 2 10 10;