aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Christoph Steiner <eighthave@users.sourceforge.net>2006-02-04 03:24:50 +0000
committerHans-Christoph Steiner <eighthave@users.sourceforge.net>2006-02-04 03:24:50 +0000
commitb27811b050e98c3e113363a0b6e4ae6b220fd692 (patch)
treec1d728c896bf6ea2d7adfc31c43e1268e2c6ccfb
parentbb262906bb6e21d5ba7ccac6e549adb3cf476f1b (diff)
renamed my [curve] to [sinusoid] since it only handles those kind of curves; Cyrille's [_curve] is now [curve], but with the curve shape 2nd inlet opterating over a range of 0-to-1
svn path=/trunk/externals/mapping/; revision=4550
-rw-r--r--curve.pd90
-rw-r--r--help/curve-help.pd104
-rw-r--r--help/sinusoid-help.pd77
-rw-r--r--pd/curve.pd90
-rw-r--r--pd/sinusoid.pd35
-rw-r--r--sinusoid.pd35
6 files changed, 309 insertions, 122 deletions
diff --git a/curve.pd b/curve.pd
index 8d09a66..7c4d919 100644
--- a/curve.pd
+++ b/curve.pd
@@ -1,34 +1,56 @@
-#N canvas 12 269 577 490 10;
-#X obj 50 36 inlet;
-#X obj 165 34 inlet;
-#X obj 165 57 symbol;
-#X obj 47 411 outlet;
-#X obj 50 150 pack float symbol;
-#X msg 50 175 \$2 \$1;
-#X obj 39 256 atan;
-#X obj 123 260 cos;
-#X obj 152 260 sin;
-#X obj 188 273 print [curve];
-#X msg 189 251 ERROR: argument not supported \$1;
-#X obj 194 96 symbol_argument \$1;
-#X obj 51 100 * 3.14159;
-#X obj 39 277 / 1.26263;
-#X obj 50 198 route atan cos sin;
-#X obj 190 225 symbol;
-#X connect 0 0 12 0;
-#X connect 1 0 2 0;
-#X connect 2 0 4 1;
-#X connect 4 0 5 0;
-#X connect 5 0 14 0;
-#X connect 6 0 13 0;
-#X connect 7 0 3 0;
-#X connect 8 0 3 0;
-#X connect 10 0 9 0;
-#X connect 11 0 4 1;
-#X connect 12 0 4 0;
-#X connect 13 0 3 0;
-#X connect 14 0 6 0;
-#X connect 14 1 7 0;
-#X connect 14 2 8 0;
-#X connect 14 3 15 0;
-#X connect 15 0 10 0;
+#N canvas 709 238 508 486 10;
+#X obj 106 325 pow 1;
+#X obj 62 10 inlet;
+#X obj 357 9 inlet;
+#X obj 106 405 outlet;
+#X obj 271 243 exp;
+#X msg 287 177 2;
+#X obj 287 198 log;
+#X obj 271 221 *;
+#X obj 62 248 moses 0;
+#X obj 62 283 * -1;
+#X obj 62 325 pow 1;
+#X obj 62 352 * -1;
+#X obj 257 30 loadbang;
+#X obj 257 50 any_argument \$1;
+#X obj 257 70 route float;
+#X obj 257 155 t f b;
+#N canvas 784 233 470 320 process 0;
+#X obj 96 30 inlet;
+#X obj 132 283 outlet;
+#X obj 97 100 moses 0;
+#X obj 96 128 * -1;
+#X obj 96 180 * -1;
+#X obj 96 69 * 2;
+#X obj 142 128 pow 3;
+#X obj 96 153 pow 3;
+#X text 22 4 this is just a guess \, there is probably a better formula
+for this.;
+#X connect 0 0 5 0;
+#X connect 2 0 3 0;
+#X connect 2 1 6 0;
+#X connect 3 0 7 0;
+#X connect 4 0 1 0;
+#X connect 5 0 2 0;
+#X connect 6 0 1 0;
+#X connect 7 0 4 0;
+#X restore 257 117 pd process curve value;
+#X connect 0 0 3 0;
+#X connect 1 0 8 0;
+#X connect 2 0 13 1;
+#X connect 4 0 0 1;
+#X connect 4 0 10 1;
+#X connect 5 0 6 0;
+#X connect 6 0 7 1;
+#X connect 7 0 4 0;
+#X connect 8 0 9 0;
+#X connect 8 1 0 0;
+#X connect 9 0 10 0;
+#X connect 10 0 11 0;
+#X connect 11 0 3 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 0;
+#X connect 14 0 16 0;
+#X connect 15 0 7 0;
+#X connect 15 1 5 0;
+#X connect 16 0 15 0;
diff --git a/help/curve-help.pd b/help/curve-help.pd
index f8359d5..f6f9256 100644
--- a/help/curve-help.pd
+++ b/help/curve-help.pd
@@ -1,77 +1,73 @@
-#N canvas 327 209 484 365 10;
+#N canvas 177 113 490 439 10;
#X obj 5 2 cnv 15 450 20 empty empty [curve] 2 11 1 18 -233017 -66577
0;
#X msg 422 3 pddp;
-#X text 27 320 (C) Copyright 2004 Hans-Christoph Steiner <hans@at.or.at>
+#X text 27 390 (C) Copyright 2004 Hans-Christoph Steiner <hans@at.or.at>
;
-#X text 244 334 released under the GNU GPL;
-#X text 158 291 For more info:;
-#X floatatom 25 163 8 0 0 0 - - -;
-#X floatatom 25 224 8 0 0 0 - - -;
-#X obj 28 241 hsl 200 15 0 1 0 0 empty empty empty 22 8 1 12 -262144
--1 -1 0 1;
-#X obj 28 143 hsl 200 15 0 1 0 0 empty empty empty 22 8 1 12 -261681
--1 -1 0 1;
+#X text 244 404 released under the GNU GPL;
+#X text 158 361 For more info:;
+#X floatatom 25 157 8 0 0 0 - - -;
+#X floatatom 25 228 8 0 0 0 - - -;
+#X obj 28 245 hsl 200 15 0 1 0 0 empty empty empty 22 8 1 12 -262144
+-1 -1 13958 1;
+#X obj 28 137 hsl 200 15 0 1 0 0 empty empty empty 22 8 1 12 -261681
+-1 -1 7200 1;
#N canvas 0 22 450 300 graph1 0;
-#X array \$0-curve 100 float 0;
-#X coords 0 1 99 -1 100 100 1;
-#X restore 321 111 graph;
-#N canvas 266 69 383 373 draw_array 0;
+#X array \$0-curve 200 float 0;
+#X coords 0 1 199 -1 200 200 1;
+#X restore 254 92 graph;
+#N canvas 721 196 407 397 draw_array 0;
#X msg 54 82 bang;
#X obj 54 103 until;
#X text 85 82 start;
#X obj 54 125 f;
#X obj 83 125 + 1;
-#X obj 83 147 mod 100;
#X obj 54 43 loadbang;
#X text 96 257 mapping output range: -1 to 1;
-#X obj 54 257 / 50;
-#X obj 53 229 - 50;
-#X obj 139 53 t b s;
-#X obj 139 32 symbol;
-#X obj 138 9 receive \$0-type;
#X obj 54 180 trigger float float;
#X obj 127 127 select 0;
#X obj 53 313 tabwrite \$0-curve;
-#X obj 53 283 curve sin;
+#X obj 138 9 inlet;
+#X obj 153 32 send \$0-to-numbox;
+#X obj 139 53 trigger bang float;
+#X obj 53 283 curve;
+#X obj 83 147 mod 200;
+#X obj 53 229 - 100;
+#X obj 54 257 / 100;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 3 0 4 0;
-#X connect 3 0 13 0;
-#X connect 4 0 5 0;
-#X connect 5 0 3 1;
-#X connect 5 0 14 0;
-#X connect 6 0 0 0;
-#X connect 8 0 16 0;
-#X connect 9 0 8 0;
-#X connect 10 0 0 0;
-#X connect 10 1 16 1;
-#X connect 11 0 10 0;
-#X connect 12 0 11 0;
+#X connect 3 0 7 0;
+#X connect 4 0 14 0;
+#X connect 5 0 0 0;
+#X connect 7 0 15 0;
+#X connect 7 1 9 1;
+#X connect 8 0 1 1;
+#X connect 10 0 11 0;
+#X connect 10 0 12 0;
+#X connect 12 0 0 0;
+#X connect 12 1 13 1;
#X connect 13 0 9 0;
-#X connect 13 1 15 1;
-#X connect 14 0 1 1;
-#X connect 16 0 15 0;
-#X restore 321 89 pd draw_array;
+#X connect 14 0 3 1;
+#X connect 14 0 8 0;
+#X connect 15 0 16 0;
+#X connect 16 0 13 0;
+#X restore 95 208 pd draw_array;
#X text 17 39 This object maps the input range to a exponential curve
\, the inverse of a logarithmic curve.;
-#X msg 61 82 atan;
-#X msg 98 82 cos;
-#X obj 83 184 receive \$0-type;
-#X obj 115 115 send \$0-type;
-#X msg 128 82 sin;
-#X obj 25 203 curve sin;
-#X obj 262 289 pddp_open mapping-about;
-#X text 286 231 related objects:;
-#X obj 259 250 curve_root;
-#X obj 342 250 curve_power;
-#X obj 259 268 curve_exp;
-#X obj 342 268 curve_log;
-#X connect 5 0 17 0;
+#X obj 262 359 pddp_open mapping-about;
+#X text 286 301 related objects:;
+#X obj 342 320 curve_power;
+#X obj 259 338 curve_exp;
+#X obj 342 338 curve_log;
+#X obj 53 183 hsl 128 15 -1 1 0 0 empty empty empty -2 -6 0 8 -262144
+-1 -1 7600 0;
+#X floatatom 192 184 7 0 0 0 - #0-to-numbox -;
+#X obj 259 319 sinusoid;
+#X obj 25 207 curve;
+#X connect 5 0 20 0;
#X connect 6 0 7 0;
#X connect 8 0 5 0;
-#X connect 12 0 15 0;
-#X connect 13 0 15 0;
-#X connect 14 0 17 1;
-#X connect 16 0 15 0;
-#X connect 17 0 6 0;
+#X connect 17 0 10 0;
+#X connect 17 0 20 1;
+#X connect 20 0 6 0;
diff --git a/help/sinusoid-help.pd b/help/sinusoid-help.pd
new file mode 100644
index 0000000..4195b42
--- /dev/null
+++ b/help/sinusoid-help.pd
@@ -0,0 +1,77 @@
+#N canvas 528 218 488 369 10;
+#X obj 5 2 cnv 15 450 20 empty empty [curve] 2 11 1 18 -233017 -66577
+0;
+#X msg 422 3 pddp;
+#X text 27 320 (C) Copyright 2004 Hans-Christoph Steiner <hans@at.or.at>
+;
+#X text 244 334 released under the GNU GPL;
+#X text 158 291 For more info:;
+#X floatatom 25 163 8 0 0 0 - - -;
+#X floatatom 25 224 8 0 0 0 - - -;
+#X obj 28 241 hsl 200 15 0 1 0 0 empty empty empty 22 8 1 12 -262144
+-1 -1 19878 1;
+#X obj 28 143 hsl 200 15 0 1 0 0 empty empty empty 22 8 1 12 -261681
+-1 -1 300 1;
+#N canvas 0 22 450 300 graph1 0;
+#X array \$0-curve 100 float 0;
+#X coords 0 1 99 -1 100 100 1;
+#X restore 321 111 graph;
+#N canvas 266 69 387 377 draw_array 0;
+#X msg 54 82 bang;
+#X obj 54 103 until;
+#X text 85 82 start;
+#X obj 54 125 f;
+#X obj 83 125 + 1;
+#X obj 83 147 mod 100;
+#X obj 54 43 loadbang;
+#X text 96 257 mapping output range: -1 to 1;
+#X obj 54 257 / 50;
+#X obj 53 229 - 50;
+#X obj 139 53 t b s;
+#X obj 139 32 symbol;
+#X obj 138 9 receive \$0-type;
+#X obj 54 180 trigger float float;
+#X obj 127 127 select 0;
+#X obj 53 313 tabwrite \$0-curve;
+#X obj 53 283 curve sin;
+#X connect 0 0 1 0;
+#X connect 1 0 3 0;
+#X connect 3 0 4 0;
+#X connect 3 0 13 0;
+#X connect 4 0 5 0;
+#X connect 5 0 3 1;
+#X connect 5 0 14 0;
+#X connect 6 0 0 0;
+#X connect 8 0 16 0;
+#X connect 9 0 8 0;
+#X connect 10 0 0 0;
+#X connect 10 1 16 1;
+#X connect 11 0 10 0;
+#X connect 12 0 11 0;
+#X connect 13 0 9 0;
+#X connect 13 1 15 1;
+#X connect 14 0 1 1;
+#X connect 16 0 15 0;
+#X restore 321 89 pd draw_array;
+#X text 17 39 This object maps the input range to a exponential curve
+\, the inverse of a logarithmic curve.;
+#X msg 61 82 atan;
+#X msg 98 82 cos;
+#X obj 104 184 receive \$0-type;
+#X msg 128 82 sin;
+#X obj 262 289 pddp_open mapping-about;
+#X text 286 231 related objects:;
+#X obj 342 250 curve_power;
+#X obj 342 268 curve_log;
+#X obj 259 268 curve_exp;
+#X obj 107 114 send \$0-type;
+#X obj 25 203 sinusoid sin;
+#X obj 259 250 curve;
+#X connect 5 0 22 0;
+#X connect 6 0 7 0;
+#X connect 8 0 5 0;
+#X connect 12 0 21 0;
+#X connect 13 0 21 0;
+#X connect 14 0 22 1;
+#X connect 15 0 21 0;
+#X connect 22 0 6 0;
diff --git a/pd/curve.pd b/pd/curve.pd
index 8d09a66..7c4d919 100644
--- a/pd/curve.pd
+++ b/pd/curve.pd
@@ -1,34 +1,56 @@
-#N canvas 12 269 577 490 10;
-#X obj 50 36 inlet;
-#X obj 165 34 inlet;
-#X obj 165 57 symbol;
-#X obj 47 411 outlet;
-#X obj 50 150 pack float symbol;
-#X msg 50 175 \$2 \$1;
-#X obj 39 256 atan;
-#X obj 123 260 cos;
-#X obj 152 260 sin;
-#X obj 188 273 print [curve];
-#X msg 189 251 ERROR: argument not supported \$1;
-#X obj 194 96 symbol_argument \$1;
-#X obj 51 100 * 3.14159;
-#X obj 39 277 / 1.26263;
-#X obj 50 198 route atan cos sin;
-#X obj 190 225 symbol;
-#X connect 0 0 12 0;
-#X connect 1 0 2 0;
-#X connect 2 0 4 1;
-#X connect 4 0 5 0;
-#X connect 5 0 14 0;
-#X connect 6 0 13 0;
-#X connect 7 0 3 0;
-#X connect 8 0 3 0;
-#X connect 10 0 9 0;
-#X connect 11 0 4 1;
-#X connect 12 0 4 0;
-#X connect 13 0 3 0;
-#X connect 14 0 6 0;
-#X connect 14 1 7 0;
-#X connect 14 2 8 0;
-#X connect 14 3 15 0;
-#X connect 15 0 10 0;
+#N canvas 709 238 508 486 10;
+#X obj 106 325 pow 1;
+#X obj 62 10 inlet;
+#X obj 357 9 inlet;
+#X obj 106 405 outlet;
+#X obj 271 243 exp;
+#X msg 287 177 2;
+#X obj 287 198 log;
+#X obj 271 221 *;
+#X obj 62 248 moses 0;
+#X obj 62 283 * -1;
+#X obj 62 325 pow 1;
+#X obj 62 352 * -1;
+#X obj 257 30 loadbang;
+#X obj 257 50 any_argument \$1;
+#X obj 257 70 route float;
+#X obj 257 155 t f b;
+#N canvas 784 233 470 320 process 0;
+#X obj 96 30 inlet;
+#X obj 132 283 outlet;
+#X obj 97 100 moses 0;
+#X obj 96 128 * -1;
+#X obj 96 180 * -1;
+#X obj 96 69 * 2;
+#X obj 142 128 pow 3;
+#X obj 96 153 pow 3;
+#X text 22 4 this is just a guess \, there is probably a better formula
+for this.;
+#X connect 0 0 5 0;
+#X connect 2 0 3 0;
+#X connect 2 1 6 0;
+#X connect 3 0 7 0;
+#X connect 4 0 1 0;
+#X connect 5 0 2 0;
+#X connect 6 0 1 0;
+#X connect 7 0 4 0;
+#X restore 257 117 pd process curve value;
+#X connect 0 0 3 0;
+#X connect 1 0 8 0;
+#X connect 2 0 13 1;
+#X connect 4 0 0 1;
+#X connect 4 0 10 1;
+#X connect 5 0 6 0;
+#X connect 6 0 7 1;
+#X connect 7 0 4 0;
+#X connect 8 0 9 0;
+#X connect 8 1 0 0;
+#X connect 9 0 10 0;
+#X connect 10 0 11 0;
+#X connect 11 0 3 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 0;
+#X connect 14 0 16 0;
+#X connect 15 0 7 0;
+#X connect 15 1 5 0;
+#X connect 16 0 15 0;
diff --git a/pd/sinusoid.pd b/pd/sinusoid.pd
new file mode 100644
index 0000000..e8f1259
--- /dev/null
+++ b/pd/sinusoid.pd
@@ -0,0 +1,35 @@
+#N canvas 12 269 612 496 10;
+#X obj 50 36 inlet;
+#X obj 329 52 inlet;
+#X obj 47 411 outlet;
+#X obj 50 150 pack float symbol;
+#X msg 50 175 \$2 \$1;
+#X obj 39 256 atan;
+#X obj 123 260 cos;
+#X obj 152 260 sin;
+#X obj 39 277 / 1.26263;
+#X obj 50 198 route atan cos sin;
+#X obj 190 225 symbol;
+#X msg 189 251 ERROR: argument not supported \$1 \, try atan cos or
+sin;
+#X obj 208 74 symbol_argument \$1;
+#X obj 208 50 loadbang;
+#X obj 50 98 * 3.14159;
+#X obj 188 273 print [sinusoid];
+#X connect 0 0 14 0;
+#X connect 1 0 12 1;
+#X connect 3 0 4 0;
+#X connect 4 0 9 0;
+#X connect 5 0 8 0;
+#X connect 6 0 2 0;
+#X connect 7 0 2 0;
+#X connect 8 0 2 0;
+#X connect 9 0 5 0;
+#X connect 9 1 6 0;
+#X connect 9 2 7 0;
+#X connect 9 3 10 0;
+#X connect 10 0 11 0;
+#X connect 11 0 15 0;
+#X connect 12 0 3 1;
+#X connect 13 0 12 0;
+#X connect 14 0 3 0;
diff --git a/sinusoid.pd b/sinusoid.pd
new file mode 100644
index 0000000..e8f1259
--- /dev/null
+++ b/sinusoid.pd
@@ -0,0 +1,35 @@
+#N canvas 12 269 612 496 10;
+#X obj 50 36 inlet;
+#X obj 329 52 inlet;
+#X obj 47 411 outlet;
+#X obj 50 150 pack float symbol;
+#X msg 50 175 \$2 \$1;
+#X obj 39 256 atan;
+#X obj 123 260 cos;
+#X obj 152 260 sin;
+#X obj 39 277 / 1.26263;
+#X obj 50 198 route atan cos sin;
+#X obj 190 225 symbol;
+#X msg 189 251 ERROR: argument not supported \$1 \, try atan cos or
+sin;
+#X obj 208 74 symbol_argument \$1;
+#X obj 208 50 loadbang;
+#X obj 50 98 * 3.14159;
+#X obj 188 273 print [sinusoid];
+#X connect 0 0 14 0;
+#X connect 1 0 12 1;
+#X connect 3 0 4 0;
+#X connect 4 0 9 0;
+#X connect 5 0 8 0;
+#X connect 6 0 2 0;
+#X connect 7 0 2 0;
+#X connect 8 0 2 0;
+#X connect 9 0 5 0;
+#X connect 9 1 6 0;
+#X connect 9 2 7 0;
+#X connect 9 3 10 0;
+#X connect 10 0 11 0;
+#X connect 11 0 15 0;
+#X connect 12 0 3 1;
+#X connect 13 0 12 0;
+#X connect 14 0 3 0;