aboutsummaryrefslogtreecommitdiff
path: root/bezier~.pd
diff options
context:
space:
mode:
authorJoão Pais <jmmmp@users.sourceforge.net>2011-06-06 14:34:34 +0000
committerJoão Pais <jmmmp@users.sourceforge.net>2011-06-06 14:34:34 +0000
commit417d2bc2866d920965e51eceac6da23c2633ad9a (patch)
tree9e00917bae3fe8f118f093adaf3f377acc0cee8e /bezier~.pd
parente48db9ff03238d1e8b4874e0dbe08c42948079f9 (diff)
svn path=/trunk/abstractions/jmmmp/; revision=15098
Diffstat (limited to 'bezier~.pd')
-rw-r--r--bezier~.pd694
1 files changed, 694 insertions, 0 deletions
diff --git a/bezier~.pd b/bezier~.pd
new file mode 100644
index 0000000..87acbf0
--- /dev/null
+++ b/bezier~.pd
@@ -0,0 +1,694 @@
+#N canvas 0 0 855 754 10;
+#X obj 217 10 inlet;
+#N canvas 627 482 718 464 inside 0;
+#X obj 20 82 inlet;
+#X obj 346 282 s \$0-bezier-a;
+#N canvas 0 0 450 300 element 0;
+#X obj 52 46 struct \$0-bez-c float x float y;
+#X restore 20 302 pd element;
+#N canvas 665 149 542 409 array 0;
+#X obj 11 87 route change click;
+#X obj 31 121 unpack p f;
+#X obj 31 141 t b p;
+#X obj 31 201 outlet;
+#X obj 58 161 s \$0-arrpoint;
+#X obj 31 181 speedlim 150;
+#X obj 166 141 drawpolygon 0 1 0 0 0 100 100 100 100 0 0 0;
+#X text 14 233 4 control points \, 2 extremos nao saem da caixa. fronteiras
+desfazadas em 2pt \, para desenhar o quadrado;
+#X obj 11 333 filledpolygon 0 0 1 p2x p2y p2x. p2y p2x. p2y. p2x p2y.
+p2x p2y;
+#X obj 11 300 filledpolygon 0 0 1 p1x p1y p1x. p1y p1x. p1y. p1x p1y.
+p1x p1y;
+#X obj 11 267 filledpolygon 0 0 1 p0x(-2:98)(-2:98) p0y(-2:98)(-2:98)
+p0x. p0y p0x. p0y. p0x p0y. p0x p0y;
+#X obj 11 366 filledpolygon 0 0 1 p3x(-2:98)(-2:98) p3y(-2:98)(-2:98)
+p3x. p3y p3x. p3y. p3x p3y. p3x p3y;
+#X obj 166 171 r \$0-read-point-view;
+#X text 297 171 read point;
+#X obj 11 15 struct \$0-bez-array float x float y array \$0-bez-c-arr
+\$0-bez-c float p0x float p0y float p0x. float p0y. float p1x float
+p1y float p1x. float p1y. float p2x float p2y float p2x. float p2y.
+float p3x float p3y float p3x. float p3y. float rpx float rpy float
+rpx. float rpy.;
+#X obj 166 111 plot \$0-bez-c-arr 9 2 0 0;
+#X obj 166 191 filledpolygon 900 900 1 rpx rpy rpx. rpy rpx. rpy. rpx
+rpy. rpx rpy;
+#X connect 0 0 1 0;
+#X connect 0 1 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 5 0;
+#X connect 2 1 4 0;
+#X connect 5 0 3 0;
+#X connect 12 0 16 0;
+#X connect 14 0 0 0;
+#X restore 20 322 pd array;
+#N canvas 257 223 482 660 calculate 0;
+#X obj 27 42 inlet;
+#X obj 27 202 until;
+#X obj 27 222 f+ 0;
+#X obj 27 352 expr (-$f2+3*$f3-3*$f4+$f5)*pow($f1 \, 3) + (3*$f2-6*$f3+3*$f4)*pow($f1
+\, 2) + (3*$f3-3*$f2)*$f1 + $f2;
+#X obj 46 425 expr (-$f2+3*$f3-3*$f4+$f5)*pow($f1 \, 3) + (3*$f2-6*$f3+3*$f4)*pow($f1
+\, 2) + (3*$f3-3*$f2)*$f1 + $f2;
+#X obj 27 332 pack f f f f f;
+#X obj 46 405 pack f f f f f;
+#X obj 228 468 r \$0-arrpoint;
+#X obj 108 518 t p p;
+#X obj 27 242 t f f f;
+#X text 142 11 array com 100 pontos. fazer 200? \; e necessario estar
+a escalonar tudo? talvez nao;
+#X obj 27 72 t b b;
+#X obj 77 32 inlet;
+#X obj 141 80 r \$0-arrpoint;
+#X obj 141 150 pointer;
+#X obj 77 52 t b b;
+#X obj 141 270 + 2;
+#X obj 171 270 + 2;
+#X obj 311 270 + 2;
+#X obj 341 270 + 2;
+#X obj 47 102 r \$0-size;
+#X obj 42 162 + 1;
+#X obj 27 182 f;
+#X obj 86 242 inv;
+#X obj 47 122 t b f f;
+#X obj 27 272 *;
+#X obj 46 292 *;
+#X obj 141 190 get \$0-bez-array p0x;
+#X obj 151 210 get \$0-bez-array p1x;
+#X obj 161 230 get \$0-bez-array p2x;
+#X obj 171 250 get \$0-bez-array p3x;
+#X obj 311 190 get \$0-bez-array p0y;
+#X obj 320 210 get \$0-bez-array p1y;
+#X obj 331 230 get \$0-bez-array p2y;
+#X obj 341 250 get \$0-bez-array p3y;
+#X obj 108 498 element \$0-bez-array \$0-bez-c-arr;
+#X obj 27 538 set \$0-bez-c x;
+#X obj 46 558 set \$0-bez-c y;
+#X connect 0 0 11 0;
+#X connect 1 0 2 0;
+#X connect 2 0 9 0;
+#X connect 3 0 36 0;
+#X connect 4 0 37 0;
+#X connect 5 0 3 0;
+#X connect 6 0 4 0;
+#X connect 7 0 35 1;
+#X connect 8 0 36 1;
+#X connect 8 1 37 1;
+#X connect 9 0 25 0;
+#X connect 9 1 26 0;
+#X connect 9 2 35 0;
+#X connect 11 0 22 0;
+#X connect 11 1 2 1;
+#X connect 12 0 15 0;
+#X connect 13 0 14 0;
+#X connect 14 0 27 0;
+#X connect 14 0 28 0;
+#X connect 14 0 29 0;
+#X connect 14 0 30 0;
+#X connect 14 0 31 0;
+#X connect 14 0 32 0;
+#X connect 14 0 33 0;
+#X connect 14 0 34 0;
+#X connect 15 0 11 0;
+#X connect 15 1 14 0;
+#X connect 16 0 5 1;
+#X connect 17 0 5 4;
+#X connect 18 0 6 1;
+#X connect 19 0 6 4;
+#X connect 20 0 24 0;
+#X connect 21 0 22 1;
+#X connect 22 0 1 0;
+#X connect 23 0 25 1;
+#X connect 23 0 26 1;
+#X connect 24 0 11 0;
+#X connect 24 1 21 0;
+#X connect 24 2 23 0;
+#X connect 25 0 5 0;
+#X connect 26 0 6 0;
+#X connect 27 0 16 0;
+#X connect 28 0 5 2;
+#X connect 29 0 5 3;
+#X connect 30 0 17 0;
+#X connect 31 0 18 0;
+#X connect 32 0 6 2;
+#X connect 33 0 6 3;
+#X connect 34 0 19 0;
+#X connect 35 0 8 0;
+#X restore 20 362 pd calculate;
+#N canvas 161 314 333 632 index 0;
+#X obj 208 142 r \$0-arrpoint;
+#X obj 13 62 inlet;
+#X obj 106 62 r \$0-arrpoint;
+#X obj 13 122 maxlib/scale 0 1 0 0;
+#X obj 106 102 - 1;
+#X obj 13 202 * 0.01;
+#X obj 106 202 * 0.01;
+#X obj 156 332 unpack;
+#X obj 246 282 r \$0-arrpoint;
+#X obj 143 312 pointer;
+#X obj 143 452 t p p p p;
+#X obj 143 502 + 5;
+#X obj 173 572 + 5;
+#X obj 246 382 t p p;
+#X obj 199 372 - 2;
+#X obj 156 372 - 2;
+#X obj 143 262 pack;
+#X obj 156 352 * 1;
+#X obj 199 352 * 1;
+#X obj 143 282 t b l;
+#X text 205 256 read point;
+#X obj 53 32 inlet;
+#X text 94 31 update read point;
+#X obj 53 52 t b b b;
+#X obj 13 282 spigot 1;
+#X obj 88 242 0;
+#X obj 58 242 1;
+#X obj 13 102 f;
+#X obj 106 82 getsize \$0-bez-array \$0-bez-c-arr;
+#X obj 13 162 element \$0-bez-array \$0-bez-c-arr;
+#X obj 13 182 get \$0-bez-c x y;
+#X obj 156 402 set \$0-bez-array rpx;
+#X obj 155 422 set \$0-bez-array rpy;
+#X obj 143 482 get \$0-bez-array rpx;
+#X obj 153 522 set \$0-bez-array rpx.;
+#X obj 173 552 get \$0-bez-array rpy;
+#X obj 183 592 set \$0-bez-array rpy.;
+#X obj 233 217 inlet;
+#X obj 73 282 spigot 1;
+#X obj 13 332 line~;
+#X obj 13 352 outlet~;
+#X obj 73 332 line~;
+#X obj 73 352 outlet~;
+#X msg 13 312 \$1 5;
+#X msg 73 312 \$1 5;
+#X connect 0 0 29 1;
+#X connect 1 0 27 0;
+#X connect 2 0 28 0;
+#X connect 3 0 29 0;
+#X connect 4 0 3 4;
+#X connect 5 0 24 0;
+#X connect 6 0 38 0;
+#X connect 7 0 17 0;
+#X connect 7 1 18 0;
+#X connect 8 0 9 0;
+#X connect 8 0 13 0;
+#X connect 9 0 10 0;
+#X connect 10 0 33 0;
+#X connect 10 1 34 1;
+#X connect 10 2 35 0;
+#X connect 10 3 36 1;
+#X connect 11 0 34 0;
+#X connect 12 0 36 0;
+#X connect 13 0 32 1;
+#X connect 13 1 31 1;
+#X connect 14 0 32 0;
+#X connect 15 0 31 0;
+#X connect 16 0 19 0;
+#X connect 17 0 15 0;
+#X connect 18 0 14 0;
+#X connect 19 0 9 0;
+#X connect 19 1 7 0;
+#X connect 21 0 23 0;
+#X connect 23 0 26 0;
+#X connect 23 1 27 0;
+#X connect 23 2 25 0;
+#X connect 24 0 43 0;
+#X connect 25 0 24 1;
+#X connect 25 0 38 1;
+#X connect 26 0 24 1;
+#X connect 26 0 38 1;
+#X connect 27 0 3 0;
+#X connect 28 0 4 0;
+#X connect 29 0 30 0;
+#X connect 30 0 5 0;
+#X connect 30 0 16 0;
+#X connect 30 1 6 0;
+#X connect 30 1 16 1;
+#X connect 33 0 11 0;
+#X connect 35 0 12 0;
+#X connect 37 0 27 0;
+#X connect 38 0 44 0;
+#X connect 39 0 40 0;
+#X connect 41 0 42 0;
+#X connect 43 0 39 0;
+#X connect 44 0 41 0;
+#X restore 65 182 pd index;
+#N canvas 0 0 332 180 size 0;
+#X obj 18 17 inlet;
+#X obj 213 117 r \$0-arrpoint;
+#X obj 57 77 s \$0-size;
+#X obj 18 117 r \$0-size;
+#X obj 18 37 moses 2;
+#X msg 18 57 2;
+#X text 111 16 size \, wenigstens 2 Punkte;
+#X obj 18 137 setsize \$0-bez-array \$0-bez-c-arr;
+#X connect 0 0 4 0;
+#X connect 1 0 7 1;
+#X connect 3 0 7 0;
+#X connect 4 0 5 0;
+#X connect 4 1 2 0;
+#X connect 5 0 2 0;
+#X restore 47 232 pd size;
+#N canvas 498 34 773 605 point-befehle 0;
+#X obj 189 18 inlet;
+#X obj 60 166 unpack;
+#X obj 150 86 r \$0-arrpoint;
+#X obj 150 116 t p p p p;
+#X obj 47 116 pointer;
+#X obj 47 332 t p p p p;
+#X obj 47 292 t p p p p;
+#X obj 227 332 t p p p p;
+#X obj 407 332 t p p p p;
+#X obj 586 332 t p p p p;
+#X obj 47 382 + 5;
+#X obj 77 452 + 5;
+#X obj 200 166 unpack;
+#X obj 340 166 unpack;
+#X obj 480 166 unpack;
+#X obj 23 82 outlet;
+#X obj 189 38 t b b a;
+#X obj 227 382 + 5;
+#X obj 257 452 + 5;
+#X obj 437 452 + 5;
+#X obj 407 382 + 5;
+#X obj 586 382 + 5;
+#X obj 616 452 + 5;
+#X obj 150 216 t p p;
+#X obj 291 216 t p p;
+#X obj 430 216 t p p;
+#X obj 570 216 t p p;
+#X obj 52 566 outlet;
+#X obj 243 186 * 100;
+#X obj 103 186 * 100;
+#X obj 383 186 * 100;
+#X obj 523 186 * 100;
+#X obj 523 206 - 2;
+#X obj 383 206 - 2;
+#X obj 243 206 - 2;
+#X obj 103 206 - 2;
+#X obj 60 206 - 2;
+#X obj 200 206 - 2;
+#X obj 340 206 - 2;
+#X obj 480 206 - 2;
+#X obj 480 186 * 100;
+#X obj 340 186 * 100;
+#X obj 200 186 * 100;
+#X obj 60 186 * 100;
+#X obj 491 61 r \$0-size;
+#X obj 52 516 r \$0-dump;
+#N canvas 118 276 501 312 convert-to-dump 0;
+#X obj 81 57 inlet;
+#X obj 116 230 outlet;
+#X obj 81 97 - 5;
+#X obj 81 117 * 0.01;
+#X obj 81 77 + 2;
+#X obj 131 57 inlet;
+#X obj 131 97 - 5;
+#X obj 131 117 * 0.01;
+#X obj 131 77 + 2;
+#X obj 171 17 r \$0-size;
+#X obj 171 37 inv;
+#X obj 31 117 inlet;
+#X obj 117 157 pack f f f f f f f f f;
+#X obj 181 57 inlet;
+#X obj 181 97 - 5;
+#X obj 181 117 * 0.01;
+#X obj 181 77 + 2;
+#X obj 231 57 inlet;
+#X obj 231 97 - 5;
+#X obj 231 117 * 0.01;
+#X obj 231 77 + 2;
+#X obj 281 57 inlet;
+#X obj 281 97 - 5;
+#X obj 281 117 * 0.01;
+#X obj 281 77 + 2;
+#X obj 331 57 inlet;
+#X obj 331 97 - 5;
+#X obj 331 117 * 0.01;
+#X obj 331 77 + 2;
+#X obj 381 57 inlet;
+#X obj 381 97 - 5;
+#X obj 381 117 * 0.01;
+#X obj 381 77 + 2;
+#X obj 431 57 inlet;
+#X obj 431 97 - 5;
+#X obj 431 117 * 0.01;
+#X obj 431 77 + 2;
+#X msg 116 177 set \, add2 p0 \$2 \$3 \, addcomma \, add2 p1 \$4 \$5
+\, addcomma \, add2 p2 \$6 \$7 \, addcomma \, add2 p3 \$8 \$9;
+#X connect 0 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 12 1;
+#X connect 4 0 2 0;
+#X connect 5 0 8 0;
+#X connect 6 0 7 0;
+#X connect 7 0 12 2;
+#X connect 8 0 6 0;
+#X connect 9 0 10 0;
+#X connect 10 0 7 1;
+#X connect 10 0 3 1;
+#X connect 10 0 15 1;
+#X connect 10 0 19 1;
+#X connect 10 0 23 1;
+#X connect 10 0 27 1;
+#X connect 10 0 31 1;
+#X connect 10 0 35 1;
+#X connect 11 0 12 0;
+#X connect 12 0 37 0;
+#X connect 13 0 16 0;
+#X connect 14 0 15 0;
+#X connect 15 0 12 3;
+#X connect 16 0 14 0;
+#X connect 17 0 20 0;
+#X connect 18 0 19 0;
+#X connect 19 0 12 4;
+#X connect 20 0 18 0;
+#X connect 21 0 24 0;
+#X connect 22 0 23 0;
+#X connect 23 0 12 5;
+#X connect 24 0 22 0;
+#X connect 25 0 28 0;
+#X connect 26 0 27 0;
+#X connect 27 0 12 6;
+#X connect 28 0 26 0;
+#X connect 29 0 32 0;
+#X connect 30 0 31 0;
+#X connect 31 0 12 7;
+#X connect 32 0 30 0;
+#X connect 33 0 36 0;
+#X connect 34 0 35 0;
+#X connect 35 0 12 8;
+#X connect 36 0 34 0;
+#X connect 37 0 1 0;
+#X restore 52 546 pd convert-to-dump;
+#X obj 228 58 route p0 p1 p2 p3;
+#X obj 480 236 set \$0-bez-array p3x;
+#X obj 480 256 set \$0-bez-array p3y;
+#X obj 340 236 set \$0-bez-array p2x;
+#X obj 340 256 set \$0-bez-array p2y;
+#X obj 199 236 set \$0-bez-array p1x;
+#X obj 200 256 set \$0-bez-array p1y;
+#X obj 60 236 set \$0-bez-array p0x;
+#X obj 60 256 set \$0-bez-array p0y;
+#X obj 47 362 get \$0-bez-array p0x;
+#X obj 57 402 set \$0-bez-array p0x.;
+#X obj 77 432 get \$0-bez-array p0y;
+#X obj 87 472 set \$0-bez-array p0y.;
+#X obj 267 472 set \$0-bez-array p1y.;
+#X obj 257 432 get \$0-bez-array p1y;
+#X obj 237 402 set \$0-bez-array p1x.;
+#X obj 227 362 get \$0-bez-array p1x;
+#X obj 407 362 get \$0-bez-array p2x;
+#X obj 417 402 set \$0-bez-array p2x.;
+#X obj 437 433 get \$0-bez-array p2y;
+#X obj 447 472 set \$0-bez-array p2y.;
+#X obj 626 472 set \$0-bez-array p3y.;
+#X obj 616 432 get \$0-bez-array p3y;
+#X obj 596 402 set \$0-bez-array p3x.;
+#X obj 586 362 get \$0-bez-array p3x;
+#X connect 0 0 16 0;
+#X connect 1 0 43 0;
+#X connect 1 1 29 0;
+#X connect 2 0 3 0;
+#X connect 2 0 4 0;
+#X connect 3 0 23 0;
+#X connect 3 1 24 0;
+#X connect 3 2 25 0;
+#X connect 3 3 26 0;
+#X connect 4 0 6 0;
+#X connect 5 0 56 0;
+#X connect 5 1 57 1;
+#X connect 5 2 58 0;
+#X connect 5 3 59 1;
+#X connect 6 0 5 0;
+#X connect 6 1 7 0;
+#X connect 6 2 8 0;
+#X connect 6 3 9 0;
+#X connect 7 0 63 0;
+#X connect 7 1 62 1;
+#X connect 7 2 61 0;
+#X connect 7 3 60 1;
+#X connect 8 0 64 0;
+#X connect 8 1 65 1;
+#X connect 8 2 66 0;
+#X connect 8 3 67 1;
+#X connect 9 0 71 0;
+#X connect 9 1 70 1;
+#X connect 9 2 69 0;
+#X connect 9 3 68 1;
+#X connect 10 0 46 1;
+#X connect 10 0 57 0;
+#X connect 11 0 46 2;
+#X connect 11 0 59 0;
+#X connect 12 0 42 0;
+#X connect 12 1 28 0;
+#X connect 13 0 41 0;
+#X connect 13 1 30 0;
+#X connect 14 0 40 0;
+#X connect 14 1 31 0;
+#X connect 16 0 15 0;
+#X connect 16 1 4 0;
+#X connect 16 2 47 0;
+#X connect 17 0 46 3;
+#X connect 17 0 62 0;
+#X connect 18 0 46 4;
+#X connect 18 0 60 0;
+#X connect 19 0 46 6;
+#X connect 19 0 67 0;
+#X connect 20 0 46 5;
+#X connect 20 0 65 0;
+#X connect 21 0 46 7;
+#X connect 21 0 70 0;
+#X connect 22 0 46 8;
+#X connect 22 0 68 0;
+#X connect 23 0 55 1;
+#X connect 23 1 54 1;
+#X connect 24 0 53 1;
+#X connect 24 1 52 1;
+#X connect 25 0 51 1;
+#X connect 25 1 50 1;
+#X connect 26 0 49 1;
+#X connect 26 1 48 1;
+#X connect 28 0 34 0;
+#X connect 29 0 35 0;
+#X connect 30 0 33 0;
+#X connect 31 0 32 0;
+#X connect 32 0 49 0;
+#X connect 33 0 51 0;
+#X connect 34 0 53 0;
+#X connect 35 0 55 0;
+#X connect 36 0 54 0;
+#X connect 37 0 52 0;
+#X connect 38 0 50 0;
+#X connect 39 0 48 0;
+#X connect 40 0 39 0;
+#X connect 41 0 38 0;
+#X connect 42 0 37 0;
+#X connect 43 0 36 0;
+#X connect 44 0 31 1;
+#X connect 44 0 40 1;
+#X connect 44 0 30 1;
+#X connect 44 0 41 1;
+#X connect 44 0 28 1;
+#X connect 44 0 42 1;
+#X connect 44 0 29 1;
+#X connect 44 0 43 1;
+#X connect 45 0 46 0;
+#X connect 46 0 27 0;
+#X connect 47 0 1 0;
+#X connect 47 1 12 0;
+#X connect 47 2 13 0;
+#X connect 47 3 14 0;
+#X connect 56 0 10 0;
+#X connect 58 0 11 0;
+#X connect 61 0 18 0;
+#X connect 63 0 17 0;
+#X connect 64 0 20 0;
+#X connect 66 0 19 0;
+#X connect 69 0 22 0;
+#X connect 71 0 21 0;
+#X restore 89 342 pd point-befehle;
+#X obj 182 362 outlet;
+#X obj 110 152 s \$0-dump;
+#X obj 110 132 0;
+#N canvas 0 0 450 300 size-init 0;
+#X obj 154 93 inlet;
+#X obj 154 133 sel 0;
+#X obj 154 113 \$1;
+#X obj 154 153 100;
+#X obj 154 203 outlet;
+#X msg 154 183 size \$1;
+#X connect 0 0 2 0;
+#X connect 1 0 3 0;
+#X connect 1 1 5 0;
+#X connect 2 0 1 0;
+#X connect 3 0 5 0;
+#X connect 5 0 4 0;
+#X restore 334 72 pd size-init;
+#N canvas 0 0 450 300 create-init 0;
+#X obj 129 118 pointer;
+#X obj 129 78 symbol \$0-bezier-a;
+#X obj 129 198 s \$0-arrpoint;
+#X msg 129 158 0 0;
+#X msg 129 98 traverse \$1 \, bang;
+#X obj 129 138 t b p;
+#X obj 129 58 inlet;
+#X obj 129 178 append \$0-bez-array x y;
+#X connect 0 0 5 0;
+#X connect 1 0 4 0;
+#X connect 3 0 7 0;
+#X connect 4 0 0 0;
+#X connect 5 0 3 0;
+#X connect 5 1 7 2;
+#X connect 6 0 1 0;
+#X connect 7 0 2 0;
+#X restore 351 52 pd create-init;
+#X obj 310 212 t f f;
+#X obj 310 232 pack;
+#X obj 300 152 route float list;
+#X msg 346 262 donecanvasdialog 1 -1 2 -20 120 120 -20 \$1 \$2 0 0
+\, dirty 0;
+#N canvas 0 0 390 188 get-pointer 0;
+#X obj 39 82 pointer;
+#X obj 39 42 symbol \$0-bezier-a;
+#X obj 39 102 s \$0-arrpoint;
+#X msg 39 62 traverse \$1 \, next \, bang;
+#X obj 39 22 inlet;
+#X text 27 128 extra Schaltung um das Pointer in Focus zu bekommen.
+dann muss man nicht die Grafik clicken.;
+#X connect 0 0 2 0;
+#X connect 1 0 3 0;
+#X connect 3 0 0 0;
+#X connect 4 0 1 0;
+#X restore 20 252 pd get-pointer;
+#X obj 20 212 t b f;
+#X msg 89 312 p0 0 0 \, p1 0.1 0.6 \, p2 0.9 0.4 \, p3 1 1;
+#N canvas 0 0 403 272 canvas-init 0;
+#X obj 68 104 sel 0;
+#X obj 68 124 110;
+#X obj 18 64 t b b;
+#X obj 18 124 sel 0;
+#X obj 73 194 pack;
+#X msg 73 214 \$2 \$1;
+#X obj 68 84 \$2;
+#X obj 18 104 \$3;
+#X obj 115 164 f;
+#X obj 88 144 t f f;
+#X obj 73 164 f;
+#X obj 18 44 inlet;
+#X obj 73 234 outlet;
+#X text 21 8 canvas init (etwa komplex \, um die Anwesenheit von x
+und vielleicht y zu berücksichtigen);
+#X connect 0 0 1 0;
+#X connect 0 1 9 0;
+#X connect 1 0 9 0;
+#X connect 2 0 7 0;
+#X connect 2 1 6 0;
+#X connect 3 0 10 0;
+#X connect 3 1 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 12 0;
+#X connect 6 0 0 0;
+#X connect 7 0 3 0;
+#X connect 8 0 4 1;
+#X connect 9 0 10 1;
+#X connect 9 1 8 0;
+#X connect 10 0 4 0;
+#X connect 11 0 2 0;
+#X restore 300 132 pd canvas-init;
+#X obj 300 172 moses 20;
+#X msg 300 192 20;
+#X obj 200 262 s \$0-read-point-view;
+#X obj 20 112 route size float dump canvas readpoint;
+#X obj 245 132 t b a;
+#X obj 300 12 lbang;
+#X obj 417 132 pointer;
+#X obj 417 92 symbol \$0-bezier-a;
+#X obj 417 152 s \$0-arrpoint;
+#X msg 417 112 traverse \$1 \, next \, bang;
+#X text 321 362 ha demasiada accao a passar no patch \, optimizar;
+#X text 323 386 botao para adicionar x curvas (p3 da anterior == p0
+da seguinte) \, criando uma mega-curva \; tornar tudo variavel \, nr
+pontos do array... \; ajustar tamanha dos pontos kr de acordo com o
+tamanho do display;
+#X obj 300 32 t b b b b;
+#X obj 20 342 t b b;
+#X obj 65 202 outlet~;
+#X obj 120 202 outlet~;
+#X connect 0 0 24 0;
+#X connect 3 0 34 0;
+#X connect 5 0 35 0;
+#X connect 5 1 36 0;
+#X connect 7 0 4 1;
+#X connect 7 1 8 0;
+#X connect 10 0 9 0;
+#X connect 11 0 24 0;
+#X connect 13 0 14 0;
+#X connect 13 1 14 1;
+#X connect 14 0 16 0;
+#X connect 15 0 21 0;
+#X connect 15 1 16 0;
+#X connect 16 0 1 0;
+#X connect 18 0 17 0;
+#X connect 18 1 6 0;
+#X connect 19 0 7 0;
+#X connect 20 0 15 0;
+#X connect 21 0 22 0;
+#X connect 21 1 13 0;
+#X connect 22 0 13 0;
+#X connect 24 0 18 0;
+#X connect 24 1 5 0;
+#X connect 24 2 10 0;
+#X connect 24 3 15 0;
+#X connect 24 4 23 0;
+#X connect 24 5 25 0;
+#X connect 25 0 5 1;
+#X connect 25 1 7 0;
+#X connect 26 0 33 0;
+#X connect 27 0 29 0;
+#X connect 28 0 30 0;
+#X connect 30 0 27 0;
+#X connect 33 0 20 0;
+#X connect 33 1 19 0;
+#X connect 33 2 11 0;
+#X connect 33 3 12 0;
+#X connect 34 0 4 0;
+#X connect 34 1 5 2;
+#X restore 217 30 pd inside;
+#X obj 287 10 namecanvas \$0-bezier-a;
+#X obj 268 50 outlet;
+#N canvas 0 0 426 446 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 \, João Pais;
+#X restore 11 721 pd license;
+#X obj 217 50 outlet~;
+#X obj 242 70 outlet~;
+#X text 8 703 (C) 2011 João Pais - jmmmpais@googlemail.com;
+#X connect 0 0 1 0;
+#X connect 1 0 5 0;
+#X connect 1 1 6 0;
+#X connect 1 2 3 0;
+#X coords -20 120 120 -20 110 110 2 0 0;