[PD] FFT and curve3d?

Hans-Christoph Steiner hans at eds.org
Wed Mar 11 04:44:58 CET 2009


That's quite nice, you are quite the Gem master.  I was thinking of a  
3D view that incorporates time.  That's where the curve3d comes in.

.hc

On Mar 10, 2009, at 8:37 PM, Claude Heiland-Allen wrote:

> Hans-Christoph Steiner wrote:
>> Anyone know of a patch that maps an FFT over time to something like  
>> a curve3d in Gem?  I remember a while back people posted something  
>> like that, but I can't find it.
>> .hc
>
> I just knocked the attached together, doesn't use curve3d though..
>
> Claude
> -- 
> http://claudiusmaximus.goto10.org
> #N canvas 0 0 450 405 10;
> #X obj 20 14 adc~;
> #X obj 12 108 table \$0-window 1024;
> #N canvas 0 0 450 300 \$0-make-window 0;
> #X obj 31 18 loadbang;
> #X obj 10 19 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
> -1;
> #X obj 31 50 f 1024;
> #X obj 31 80 until;
> #X obj 30 104 f 0;
> #X obj 77 101 + 1;
> #X obj 77 121 mod 1024;
> #X obj 30 156 / 512;
> #X obj 30 177 * 3.14159;
> #X obj 30 209 cos;
> #X obj 30 230 * -0.5;
> #X obj 30 256 + 0.5;
> #X obj 29 279 tabwrite \$0-window;
> #X obj 31 135 t f f;
> #X connect 0 0 2 0;
> #X connect 1 0 2 0;
> #X connect 2 0 3 0;
> #X connect 3 0 4 0;
> #X connect 4 0 5 0;
> #X connect 4 0 13 0;
> #X connect 5 0 6 0;
> #X connect 6 0 4 1;
> #X connect 7 0 8 0;
> #X connect 8 0 9 0;
> #X connect 9 0 10 0;
> #X connect 10 0 11 0;
> #X connect 11 0 12 0;
> #X connect 13 0 7 0;
> #X connect 13 1 12 1;
> #X restore 13 80 pd \$0-make-window;
> #N canvas 0 238 450 300 \$0-fft-analysis 0;
> #X obj 18 18 inlet~;
> #X obj 86 121 block~ 1024 4 1;
> #X obj 18 67 rfft~;
> #X obj 18 98 *~;
> #X obj 18 42 *~;
> #X obj 45 98 *~;
> #X obj 18 124 +~;
> #X obj 17 177 sqrt~;
> #X obj 65 43 tabreceive~ \$0-window;
> #X obj 17 209 tabsend~ \$0-fft;
> #X obj 18 151 /~ 1024;
> #X connect 0 0 4 0;
> #X connect 2 0 3 0;
> #X connect 2 0 3 1;
> #X connect 2 1 5 0;
> #X connect 2 1 5 1;
> #X connect 3 0 6 0;
> #X connect 4 0 2 0;
> #X connect 5 0 6 1;
> #X connect 6 0 10 0;
> #X connect 7 0 9 0;
> #X connect 8 0 4 1;
> #X connect 10 0 7 0;
> #X restore 27 47 pd \$0-fft-analysis;
> #X obj 12 128 table \$0-fft 256;
> #X obj 26 234 gemwin;
> #X obj 26 189 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
> 1;
> #X msg 52 191 create;
> #X msg 55 211 destroy;
> #X obj 192 27 gemhead;
> #X obj 193 61 t a a a;
> #X obj 182 90 GEMglEnd;
> #X obj 238 89 GEMglBegin;
> #X obj 295 62 GLdefine GL_LINES;
> #X obj 295 32 loadbang;
> #X obj 274 33 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
> -1;
> #X obj 211 230 gemlist;
> #X obj 212 144 f 256;
> #X obj 211 170 until;
> #X obj 210 194 t b b;
> #X obj 295 192 + 1;
> #X obj 212 118 t b b a;
> #X obj 278 168 f 0;
> #X obj 264 191 f;
> #X obj 212 269 GEMglVertex2f;
> #X obj 297 242 tabread \$0-fft;
> #X obj 212 309 GEMglVertex2f;
> #X obj 297 282 * -1;
> #X obj 265 217 / 32;
> #X obj 263 242 - 4;
> #X connect 0 0 3 0;
> #X connect 0 1 3 0;
> #X connect 6 0 5 0;
> #X connect 7 0 5 0;
> #X connect 8 0 5 0;
> #X connect 9 0 10 0;
> #X connect 10 0 11 0;
> #X connect 10 1 21 0;
> #X connect 10 2 12 0;
> #X connect 13 0 12 1;
> #X connect 14 0 13 0;
> #X connect 15 0 13 0;
> #X connect 16 0 24 0;
> #X connect 17 0 18 0;
> #X connect 18 0 19 0;
> #X connect 19 0 16 0;
> #X connect 19 1 23 0;
> #X connect 20 0 23 1;
> #X connect 21 0 17 0;
> #X connect 21 1 22 0;
> #X connect 21 2 16 1;
> #X connect 22 0 23 1;
> #X connect 23 0 20 0;
> #X connect 23 0 25 0;
> #X connect 23 0 28 0;
> #X connect 24 0 26 0;
> #X connect 25 0 24 2;
> #X connect 25 0 27 0;
> #X connect 27 0 26 2;
> #X connect 28 0 29 0;
> #X connect 29 0 24 1;
> #X connect 29 0 26 1;





----------------------------------------------------------------------------

Programs should be written for people to read, and only incidentally  
for machines to execute.
  - from Structure and Interpretation of Computer Programs





More information about the Pd-list mailing list