aboutsummaryrefslogtreecommitdiff
path: root/bezier.pd
diff options
context:
space:
mode:
authorJoão Pais <jmmmp@users.sourceforge.net>2010-07-09 08:32:33 +0000
committerJoão Pais <jmmmp@users.sourceforge.net>2010-07-09 08:32:33 +0000
commitefed3833da03cda6df11163e2ffccc52072ba099 (patch)
treea7b1d77621f87abe3222edabb7bee5d64d241cab /bezier.pd
parentd89ca0fc9273e9d82f5be5bf175db38e2dbb53d8 (diff)
svn path=/trunk/abstractions/jmmmp/; revision=13700
Diffstat (limited to 'bezier.pd')
-rw-r--r--bezier.pd474
1 files changed, 474 insertions, 0 deletions
diff --git a/bezier.pd b/bezier.pd
new file mode 100644
index 0000000..480bcd7
--- /dev/null
+++ b/bezier.pd
@@ -0,0 +1,474 @@
+#N canvas 0 0 620 725 10;
+#X obj 227 20 inlet;
+#N canvas 782 318 534 370 inside 0;
+#X obj 30 42 inlet;
+#X obj 230 252 s \$0-bezier-a;
+#X obj 230 182 sel 0;
+#N canvas 0 0 450 300 element 0;
+#X obj 52 46 struct \$0-bez-c float x float y;
+#X restore 16 242 pd element;
+#N canvas 113 250 606 425 array 0;
+#X obj 58 96 route change click;
+#X obj 78 130 unpack p f;
+#X obj 58 24 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.;
+#X obj 31 312 filledpolygon 0 0 1 p1x p1y p1x. p1y p1x. p1y. p1x p1y.
+p1x p1y;
+#X obj 31 345 filledpolygon 0 0 1 p2x p2y p2x. p2y p2x. p2y. p2x p2y.
+p2x p2y;
+#X obj 78 150 t b p;
+#X obj 78 210 outlet;
+#X obj 105 170 s \$0-arrpoint;
+#X obj 78 190 speedlim 150;
+#X text 40 254 4 control points \, 2 extremos nao saem da caixa;
+#X obj 213 160 drawpolygon 0 1 0 0 0 100 100 100 100 0 0 0;
+#X obj 31 378 filledpolygon 0 0 1 p3x(-2:98)(-2:98) p3y(-2:98)(-2:98)
+p3x. p3y p3x. p3y. p3x p3y. p3x p3y;
+#X obj 31 279 filledpolygon 0 0 1 p0x(-2:98)(-2:98) p0y(-2:98)(-2:98)
+p0x. p0y p0x. p0y. p0x p0y. p0x p0y;
+#X obj 213 130 plot \$0-bez-c-arr 9 2 0 0;
+#X connect 0 0 1 0;
+#X connect 0 1 1 0;
+#X connect 1 0 5 0;
+#X connect 2 0 0 0;
+#X connect 5 0 8 0;
+#X connect 5 1 7 0;
+#X connect 8 0 6 0;
+#X restore 16 262 pd array;
+#N canvas 604 353 469 520 calculate 0;
+#X obj 27 42 inlet;
+#X obj 27 112 until;
+#X obj 27 132 f+ 0;
+#X obj 27 92 101;
+#X obj 27 172 * 0.01;
+#X obj 27 262 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 335 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 242 pack f f f f f;
+#X obj 46 315 pack f f f f f;
+#X obj 228 378 r \$0-arrpoint;
+#X obj 108 408 element \$0-bez-array \$0-bez-c-arr;
+#X obj 46 468 set \$0-bez-c y;
+#X obj 27 448 set \$0-bez-c x;
+#X obj 108 428 t p p;
+#X obj 27 152 t f f f;
+#X obj 46 192 * 0.01;
+#X text 142 11 array com 100 pontos. fazer 200? \; e necessario estar
+a escalonar tudo? talvez nao;
+#X obj 121 120 get \$0-bez-array p0x;
+#X obj 291 120 get \$0-bez-array p0y;
+#X obj 321 180 get \$0-bez-array p3y;
+#X obj 151 180 get \$0-bez-array p3x;
+#X obj 141 160 get \$0-bez-array p2x;
+#X obj 311 160 get \$0-bez-array p2y;
+#X obj 300 140 get \$0-bez-array p1y;
+#X obj 131 140 get \$0-bez-array p1x;
+#X obj 27 72 t b b;
+#X obj 121 200 + 2;
+#X obj 151 200 + 2;
+#X obj 321 200 + 2;
+#X obj 291 200 + 2;
+#X obj 77 32 inlet;
+#X obj 121 50 r \$0-arrpoint;
+#X obj 121 80 pointer;
+#X obj 77 52 t b b;
+#X connect 0 0 25 0;
+#X connect 1 0 2 0;
+#X connect 2 0 14 0;
+#X connect 3 0 1 0;
+#X connect 4 0 7 0;
+#X connect 5 0 12 0;
+#X connect 6 0 11 0;
+#X connect 7 0 5 0;
+#X connect 8 0 6 0;
+#X connect 9 0 10 1;
+#X connect 10 0 13 0;
+#X connect 13 0 12 1;
+#X connect 13 1 11 1;
+#X connect 14 0 4 0;
+#X connect 14 1 15 0;
+#X connect 14 2 10 0;
+#X connect 15 0 8 0;
+#X connect 17 0 26 0;
+#X connect 18 0 29 0;
+#X connect 19 0 28 0;
+#X connect 20 0 27 0;
+#X connect 21 0 7 3;
+#X connect 22 0 8 3;
+#X connect 23 0 8 2;
+#X connect 24 0 7 2;
+#X connect 25 0 3 0;
+#X connect 25 1 2 1;
+#X connect 26 0 7 1;
+#X connect 27 0 7 4;
+#X connect 28 0 8 4;
+#X connect 29 0 8 1;
+#X connect 30 0 33 0;
+#X connect 31 0 32 0;
+#X connect 32 0 17 0;
+#X connect 32 0 18 0;
+#X connect 32 0 23 0;
+#X connect 32 0 22 0;
+#X connect 32 0 19 0;
+#X connect 32 0 24 0;
+#X connect 32 0 21 0;
+#X connect 32 0 20 0;
+#X connect 33 0 25 0;
+#X connect 33 1 32 0;
+#X restore 16 282 pd calculate;
+#X obj 75 122 outlet;
+#X text 68 140 escalonar 0-1;
+#X obj 289 92 pointer;
+#X obj 289 52 symbol \$0-bezier-a;
+#X obj 240 162 \$1;
+#X obj 240 12 loadbang;
+#X obj 289 172 s \$0-arrpoint;
+#X obj 230 202 100;
+#X msg 230 232 donecanvasdialog 1 -1 2 -10 110 110 -10 \$1 \$1 0 0
+;
+#N canvas 0 0 450 300 index 0;
+#X obj 65 258 outlet;
+#X obj 185 88 r \$0-arrpoint;
+#X obj 65 138 get \$0-bez-c y;
+#X obj 65 118 element \$0-bez-array \$0-bez-c-arr;
+#X obj 80 218 inv;
+#X obj 65 238 *;
+#X obj 80 158 r \$0-arrpoint;
+#X obj 80 178 getsize \$0-bez-array \$0-bez-c-arr;
+#X obj 80 198 - 1;
+#X obj 65 98 inlet;
+#X connect 1 0 3 1;
+#X connect 2 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 5 1;
+#X connect 5 0 0 0;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 8 0 4 0;
+#X connect 9 0 3 0;
+#X restore 75 102 pd index;
+#N canvas 0 0 450 300 size 0;
+#X obj 99 149 inlet;
+#X obj 294 149 r \$0-arrpoint;
+#X obj 99 169 setsize \$0-bez-array \$0-bez-c-arr;
+#X connect 0 0 2 0;
+#X connect 1 0 2 1;
+#X restore 26 102 pd size;
+#X obj 289 152 append \$0-bez-array x y;
+#X msg 289 132 0 0;
+#N canvas 174 133 668 593 point-befehle 0;
+#X obj 228 58 route p0 p1 p2 p3;
+#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 60 236 set \$0-bez-array p0x;
+#X obj 60 256 set \$0-bez-array p0y;
+#X obj 200 236 set \$0-bez-array p1x;
+#X obj 200 256 set \$0-bez-array p1y;
+#X obj 340 236 set \$0-bez-array p2x;
+#X obj 480 236 set \$0-bez-array p3x;
+#X obj 480 256 set \$0-bez-array p3y;
+#X obj 340 256 set \$0-bez-array p2y;
+#X obj 47 116 pointer;
+#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 57 472 set \$0-bez-array p0y.;
+#X obj 47 332 t p p p p;
+#X obj 47 292 t p p p p;
+#X obj 197 332 t p p p p;
+#X obj 347 332 t p p p p;
+#X obj 496 332 t p p p p;
+#X obj 197 362 get \$0-bez-array p1x;
+#X obj 207 402 set \$0-bez-array p1x.;
+#X obj 227 432 get \$0-bez-array p1y;
+#X obj 207 472 set \$0-bez-array p1y.;
+#X obj 347 362 get \$0-bez-array p2x;
+#X obj 357 402 set \$0-bez-array p2x.;
+#X obj 377 432 get \$0-bez-array p2y;
+#X obj 357 472 set \$0-bez-array p2y.;
+#X obj 496 362 get \$0-bez-array p3x;
+#X obj 506 402 set \$0-bez-array p3x.;
+#X obj 526 432 get \$0-bez-array p3y;
+#X obj 506 472 set \$0-bez-array p3y.;
+#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 197 382 + 5;
+#X obj 227 452 + 5;
+#X obj 377 452 + 5;
+#X obj 347 382 + 5;
+#X obj 496 382 + 5;
+#X obj 526 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 303 568 outlet;
+#N canvas 118 276 450 300 convert 0;
+#X obj 192 68 inlet;
+#X obj 164 188 outlet;
+#X obj 192 108 - 5;
+#X obj 192 128 * 0.01;
+#X obj 192 88 + 2;
+#X obj 242 68 inlet;
+#X obj 242 108 - 5;
+#X obj 242 128 * 0.01;
+#X obj 242 88 + 2;
+#X obj 164 158 pack f f f;
+#X obj 99 121 r \$0-dump;
+#X connect 0 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 9 1;
+#X connect 4 0 2 0;
+#X connect 5 0 8 0;
+#X connect 6 0 7 0;
+#X connect 7 0 9 2;
+#X connect 8 0 6 0;
+#X connect 9 0 1 0;
+#X connect 10 0 9 0;
+#X restore 497 502 pd convert;
+#X msg 497 522 p3 \$2 \$3;
+#N canvas 118 276 450 300 convert 0;
+#X obj 192 68 inlet;
+#X obj 164 188 outlet;
+#X obj 192 108 - 5;
+#X obj 192 128 * 0.01;
+#X obj 192 88 + 2;
+#X obj 242 68 inlet;
+#X obj 242 108 - 5;
+#X obj 242 128 * 0.01;
+#X obj 242 88 + 2;
+#X obj 99 121 r \$0-dump;
+#X obj 164 158 pack f f f;
+#X connect 0 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 10 1;
+#X connect 4 0 2 0;
+#X connect 5 0 8 0;
+#X connect 6 0 7 0;
+#X connect 7 0 10 2;
+#X connect 8 0 6 0;
+#X connect 9 0 10 0;
+#X connect 10 0 1 0;
+#X restore 347 502 pd convert;
+#N canvas 118 276 450 300 convert 0;
+#X obj 192 68 inlet;
+#X obj 164 188 outlet;
+#X obj 192 108 - 5;
+#X obj 192 128 * 0.01;
+#X obj 192 88 + 2;
+#X obj 242 68 inlet;
+#X obj 242 108 - 5;
+#X obj 242 128 * 0.01;
+#X obj 242 88 + 2;
+#X obj 164 158 pack f f f;
+#X obj 99 121 r \$0-dump;
+#X connect 0 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 9 1;
+#X connect 4 0 2 0;
+#X connect 5 0 8 0;
+#X connect 6 0 7 0;
+#X connect 7 0 9 2;
+#X connect 8 0 6 0;
+#X connect 9 0 1 0;
+#X connect 10 0 9 0;
+#X restore 197 502 pd convert;
+#N canvas 118 276 450 300 convert 0;
+#X obj 192 68 inlet;
+#X obj 164 188 outlet;
+#X obj 192 108 - 5;
+#X obj 192 128 * 0.01;
+#X obj 192 88 + 2;
+#X obj 242 68 inlet;
+#X obj 242 108 - 5;
+#X obj 242 128 * 0.01;
+#X obj 242 88 + 2;
+#X obj 164 158 pack f f f;
+#X obj 99 121 r \$0-dump;
+#X connect 0 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 9 1;
+#X connect 4 0 2 0;
+#X connect 5 0 8 0;
+#X connect 6 0 7 0;
+#X connect 7 0 9 2;
+#X connect 8 0 6 0;
+#X connect 9 0 1 0;
+#X connect 10 0 9 0;
+#X restore 47 502 pd convert;
+#X msg 347 522 p2 \$2 \$3;
+#X msg 197 522 p1 \$2 \$3;
+#X msg 47 522 p0 \$2 \$3;
+#X obj 233 186 * 100;
+#X obj 93 186 * 100;
+#X obj 373 186 * 100;
+#X obj 513 186 * 100;
+#X obj 513 206 - 2;
+#X obj 373 206 - 2;
+#X obj 233 206 - 2;
+#X obj 93 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 connect 0 0 2 0;
+#X connect 0 1 37 0;
+#X connect 0 2 38 0;
+#X connect 0 3 39 0;
+#X connect 1 0 41 0;
+#X connect 2 0 76 0;
+#X connect 2 1 62 0;
+#X connect 3 0 4 0;
+#X connect 3 0 13 0;
+#X connect 4 0 48 0;
+#X connect 4 1 49 0;
+#X connect 4 2 50 0;
+#X connect 4 3 51 0;
+#X connect 13 0 19 0;
+#X connect 14 0 35 0;
+#X connect 16 0 36 0;
+#X connect 18 0 14 0;
+#X connect 18 1 15 1;
+#X connect 18 2 16 0;
+#X connect 18 3 17 1;
+#X connect 19 0 18 0;
+#X connect 19 1 20 0;
+#X connect 19 2 21 0;
+#X connect 19 3 22 0;
+#X connect 20 0 23 0;
+#X connect 20 1 24 1;
+#X connect 20 2 25 0;
+#X connect 20 3 26 1;
+#X connect 21 0 27 0;
+#X connect 21 1 28 1;
+#X connect 21 2 29 0;
+#X connect 21 3 30 1;
+#X connect 22 0 31 0;
+#X connect 22 1 32 1;
+#X connect 22 2 33 0;
+#X connect 22 3 34 1;
+#X connect 23 0 42 0;
+#X connect 25 0 43 0;
+#X connect 27 0 45 0;
+#X connect 29 0 44 0;
+#X connect 31 0 46 0;
+#X connect 33 0 47 0;
+#X connect 35 0 15 0;
+#X connect 35 0 57 0;
+#X connect 36 0 17 0;
+#X connect 36 0 57 1;
+#X connect 37 0 75 0;
+#X connect 37 1 61 0;
+#X connect 38 0 74 0;
+#X connect 38 1 63 0;
+#X connect 39 0 73 0;
+#X connect 39 1 64 0;
+#X connect 41 0 40 0;
+#X connect 41 1 13 0;
+#X connect 41 2 0 0;
+#X connect 42 0 24 0;
+#X connect 42 0 56 0;
+#X connect 43 0 26 0;
+#X connect 43 0 56 1;
+#X connect 44 0 30 0;
+#X connect 44 0 55 1;
+#X connect 45 0 28 0;
+#X connect 45 0 55 0;
+#X connect 46 0 32 0;
+#X connect 46 0 53 0;
+#X connect 47 0 34 0;
+#X connect 47 0 53 1;
+#X connect 48 0 6 1;
+#X connect 48 1 5 1;
+#X connect 49 0 8 1;
+#X connect 49 1 7 1;
+#X connect 50 0 12 1;
+#X connect 50 1 9 1;
+#X connect 51 0 11 1;
+#X connect 51 1 10 1;
+#X connect 53 0 54 0;
+#X connect 54 0 52 0;
+#X connect 55 0 58 0;
+#X connect 56 0 59 0;
+#X connect 57 0 60 0;
+#X connect 58 0 52 0;
+#X connect 59 0 52 0;
+#X connect 60 0 52 0;
+#X connect 61 0 67 0;
+#X connect 62 0 68 0;
+#X connect 63 0 66 0;
+#X connect 64 0 65 0;
+#X connect 65 0 11 0;
+#X connect 66 0 12 0;
+#X connect 67 0 8 0;
+#X connect 68 0 6 0;
+#X connect 69 0 5 0;
+#X connect 70 0 7 0;
+#X connect 71 0 9 0;
+#X connect 72 0 10 0;
+#X connect 73 0 72 0;
+#X connect 74 0 71 0;
+#X connect 75 0 70 0;
+#X connect 76 0 69 0;
+#X restore 85 262 pd point-befehle;
+#X msg 289 72 traverse \$1 \, bang;
+#X obj 289 112 t b p;
+#X obj 250 32 t b b b;
+#X obj 259 62 101;
+#X msg 105 312 p0 0 0 \, p1 0.2 0.4 \, p2 0.8 0.6 \, p3 1 1;
+#X obj 178 282 outlet;
+#X obj 30 62 route size float canvas dump;
+#X obj 153 122 s \$0-dump;
+#X obj 153 102 0;
+#X connect 0 0 26 0;
+#X connect 2 0 13 0;
+#X connect 2 1 14 0;
+#X connect 4 0 5 0;
+#X connect 8 0 21 0;
+#X connect 9 0 20 0;
+#X connect 10 0 2 0;
+#X connect 11 0 10 0;
+#X connect 11 0 22 0;
+#X connect 13 0 14 0;
+#X connect 14 0 1 0;
+#X connect 15 0 6 0;
+#X connect 17 0 12 0;
+#X connect 18 0 17 0;
+#X connect 19 0 5 1;
+#X connect 19 1 25 0;
+#X connect 20 0 8 0;
+#X connect 21 0 18 0;
+#X connect 21 1 17 2;
+#X connect 22 0 24 0;
+#X connect 22 1 23 0;
+#X connect 22 2 9 0;
+#X connect 23 0 16 0;
+#X connect 24 0 19 0;
+#X connect 26 0 16 0;
+#X connect 26 1 15 0;
+#X connect 26 2 2 0;
+#X connect 26 3 28 0;
+#X connect 26 4 19 0;
+#X connect 28 0 27 0;
+#X restore 227 40 pd inside;
+#X obj 297 20 namecanvas \$0-bezier-a;
+#X obj 227 60 outlet;
+#X obj 278 60 outlet;
+#X connect 0 0 1 0;
+#X connect 1 0 3 0;
+#X connect 1 1 4 0;
+#X coords -10 110 110 -10 100 100 2 0 0;