Forums > Jitter

### supershapes3D

Jun 28 2006 | 12:26 pm

http://paul.wasp.uwa.edu.au/surfaces/supershape3d/

hi supershapers!

i don

Jun 28 2006 | 12:31 pm

-thijs

On 6/28/06, didi bruckmayr wrote:
>
>
> http://paul.wasp.uwa.edu.au/surfaces/supershape3d/
>
>
>

Jun 28 2006 | 2:09 pm

didnt show up. Can you save it as text and paste it in? forum
attachments done seem to work, and there is no attachment via email.

fwiw:

heres some interesting posts on superShape/superformula via dataisnature

v a d e //

On Jun 28, 2006, at 8:31 AM, Thijs Koerselman wrote:

>
> -thijs
>
>
> On 6/28/06, didi bruckmayr wrote:
>
> http://paul.wasp.uwa.edu.au/surfaces/supershape3d/
>
>
>

Jun 28 2006 | 5:14 pm

sorry! tried to att 2 times…

here my formula for 2d:

#P window setfont "Sans Serif" 9.;
#P flonum 776 193 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 597 195 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 418 189 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 239 190 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 1;
#P newex 60 225 727 196617 jit.expr 1 float32 64 64 @inputs 5 @expr "pow(pow(abs(cos(norm[0]*TWOPI/4.)/in[1])\,in[3])+pow(abs(sin(norm[0]*TWOPI/4.)/in[2])\,in[3])\,-1./in[4]";
#P flonum 804 77 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 625 79 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 446 73 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 267 74 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 88 109 726 196617 jit.expr 1 float32 64 64 @inputs 5 @expr "pow(pow((cos(norm[0]*TWOPI/4.)/in[1])\, in[3])+pow((sin(norm[0]*TWOPI/4.)/in[2])\, in[3])\, -1./in[4])";
#P flonum 88 60 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 88 82 130 196617 jit.matrix 1 float32 64 64;
#P comment 8 43 100 196617 version 1;
#P comment 59 187 100 196617 version 2;
#P window linecount 2;
#P comment 63 289 100 196617 fill in extension to 3d;
#P connect 9 0 5 4;
#P connect 14 0 10 4;
#P connect 8 0 5 3;
#P connect 13 0 10 3;
#P connect 7 0 5 2;
#P connect 12 0 10 2;
#P connect 6 0 5 1;
#P connect 11 0 10 1;
#P connect 3 0 5 0;
#P connect 4 0 3 0;
#P window clipboard copycount 15;

cheers!

dd

Jun 29 2006 | 5:13 am

gruesse dd,

i was able to get the 2d formula to work (based on the code here:
http://astronomy.swin.edu.au/~pbourke/curves/supershape/)

jeremy

max v2;
#N vpatcher 175 46 1204 745;
#P window setfont "Sans Serif" 9.;
#P hidden newex 387 63 64 196617 unpack i i i i;
#P hidden newex 388 37 93 196617 loadmess 13 6 4 7;
#P flonum 220 524 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 224 444 60 196617 loadmess 3;
#P comment 540 111 21 196617 n3;
#P comment 485 111 21 196617 n2;
#P comment 429 114 21 196617 n1;
#P flonum 540 136 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 486 136 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 432 138 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 378 138 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#N vpatcher 30 89 901 647;
#P inlet 705 54 15 0;
#P inlet 515 49 15 0;
#P inlet 394 47 15 0;
#P inlet 261 55 15 0;
#P button 71 100 15 0;
#P user jit.pwindow 455 431 82 62 0 1 0 0 1 0;
#P window setfont "Sans Serif" 9.;
#P newex 305 191 182 196617 jit.expr @inputs 1 @expr "abs(in[0])";
#P newex 248 262 65 196617 jit.op @op *;
#P newex 313 224 110 196617 jit.op @op != @val 0.;
#P newex 120 107 60 196617 r to_movie;
#P newex 328 492 63 196617 s to_render;
#P newex 327 456 53 196617 jit.pack 2;
#P user jit.pwindow 579 332 82 62 0 1 0 0 1 0;
#P newex 597 291 306 196617 jit.expr @inputs 1 @expr
"(1/in[0])*sin(norm[0]*TWOPI)";
#P user jit.pwindow 251 330 82 62 0 1 0 0 1 0;
#P newex 241 292 339 196617 jit.expr @inputs 1 @expr
"(1/in[0])*cos(norm[0]*TWOPI)";
#P user jit.pwindow 121 209 82 62 0 1 0 0 1 0;
#P newex 120 133 130 196617 jit.matrix 1 float32 256 1;
#P flonum 740 116 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 562 104 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 428 110 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 274 114 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 120 159 784 196617 jit.expr @inputs 5 @expr
"pow(pow(abs(cos(in[1]*norm[0]*TWOPI/
4.0))\,in[3])+pow(abs(sin(norm[0]*in[1]*TWOPI/4.0))\,in[4])\,1/
in[2])";
#P connect 13 0 5 0;
#P connect 18 0 5 0;
#P connect 5 0 0 0;
#P connect 0 0 6 0;
#P connect 15 0 7 0;
#P connect 0 0 15 0;
#P connect 7 0 8 0;
#P connect 19 0 1 0;
#P connect 14 0 15 1;
#P connect 0 0 16 0;
#P connect 1 0 0 1;
#P connect 16 0 14 0;
#P connect 7 0 11 0;
#P connect 11 0 12 0;
#P connect 9 0 11 1;
#P connect 20 0 2 0;
#P connect 14 0 17 0;
#P connect 2 0 0 2;
#P connect 21 0 3 0;
#P connect 9 0 10 0;
#P connect 15 0 9 0;
#P connect 3 0 0 3;
#P connect 22 0 4 0;
#P connect 4 0 0 4;
#P pop;
#P newobj 378 175 174 196617 p 2d-supershape;
#P user ubumenu 228 484 68 196617 0 1 1 0;
#X prefix_set 0 0 0;
#P flonum 150 484 35 9 0. 1. 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 34 507 129 196617 pak erase_color 0. 0. 0. 0.;
#P newex 33 645 220 196617 jit.window context @floating 1 @depthbuffer
1;
#P newex 121 164 59 196617 s to_movie;
#P newex 179 107 62 196617 s to_render;
#P newex 92 198 62 196617 s to_render;
#P newex 150 134 55 196617 s to_shape;
#P number 79 35 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P user jit.fpsgui 34 239 63 196617 0;
#P message 58 552 33 196617 reset;
#P newex 47 530 62 196617 r to_render;
#P newex 58 573 274 196617 jit.gl.handle context @auto_rotate 1
@inherit_transform 1;
#P newex 34 77 156 196617 t b b b b b erase;
#P toggle 34 34 15 0;
#P newex 34 54 55 196617 qmetro 50;
#P newex 34 617 101 196617 jit.gl.render context;
#P comment 380 114 21 196617 m;
#P connect 3 0 2 0;
#P connect 2 0 4 0;
#P connect 4 0 8 0;
#P fasten 6 0 1 0 52 610 39 610;
#P connect 17 1 1 0;
#P connect 15 0 1 0;
#P fasten 5 0 1 0 63 610 39 610;
#P connect 7 0 5 0;
#P connect 9 0 2 1;
#P connect 4 2 11 0;
#P connect 4 3 13 0;
#P connect 4 4 10 0;
#P connect 16 0 15 4;
#P connect 4 5 12 0;
#P connect 17 0 27 0;
#P connect 26 0 17 0;
#P hidden connect 29 0 19 0;
#P connect 19 0 18 0;
#P hidden connect 28 0 29 0;
#P hidden connect 29 1 20 0;
#P connect 20 0 18 1;
#P hidden connect 29 2 21 0;
#P connect 21 0 18 2;
#P hidden connect 29 3 22 0;
#P connect 22 0 18 3;
#P pop;

On 28-Jun-06, at 1:14 PM, didi bruckmayr wrote:

>
> sorry! tried to att 2 times…
>
> here my formula for 2d:
>
> #P window setfont "Sans Serif" 9.;
> #P flonum 776 193 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 597 195 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 418 189 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 239 190 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P window linecount 1;
> #P newex 60 225 727 196617 jit.expr 1 float32 64 64 @inputs 5 @expr
> "pow(pow(abs(cos(norm[0]*TWOPI/4.)/
> in[1])\,in[3])+pow(abs(sin(norm[0]*TWOPI/4.)/in[2])\,in[3])\,
> -1./in[4]";
> #P flonum 804 77 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 625 79 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 446 73 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 267 74 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P newex 88 109 726 196617 jit.expr 1 float32 64 64 @inputs 5 @expr
> "pow(pow((cos(norm[0]*TWOPI/4.)/in[1])\,
> in[3])+pow((sin(norm[0]*TWOPI/4.)/in[2])\, in[3])\, -1./in[4])";
> #P flonum 88 60 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P newex 88 82 130 196617 jit.matrix 1 float32 64 64;
> #P comment 8 43 100 196617 version 1;
> #P comment 59 187 100 196617 version 2;
> #P window linecount 2;
> #P comment 63 289 100 196617 fill in extension to 3d;
> #P connect 9 0 5 4;
> #P connect 14 0 10 4;
> #P connect 8 0 5 3;
> #P connect 13 0 10 3;
> #P connect 7 0 5 2;
> #P connect 12 0 10 2;
> #P connect 6 0 5 1;
> #P connect 11 0 10 1;
> #P connect 3 0 5 0;
> #P connect 4 0 3 0;
> #P window clipboard copycount 15;
>
>
> cheers!
>
> dd
>
>

~ `~` ~ `~` ~ `~` ~ `~` ~ `~` ~ `~`~ `~`~ `~`~ `~`

http://www.mantissa.ca

New Work: Image-Producing Machine for the Vague-Terrain journal
http://www.vagueterrain.net/content/archives/journal03/journal03.html

Jun 29 2006 | 11:13 am

hi jeremy!

wise guy!

i used this link as well, but did it wrong with the jit.ops.

let

Jun 29 2006 | 12:25 pm

On 6/28/06 1:14 PM, "didi bruckmayr" wrote:

>
> sorry! tried to att 2 times…
>
> here my formula for 2d:
>
> #P window setfont "Sans Serif" 9.;
> #P flonum 776 193 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 597 195 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 418 189 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 239 190 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P window linecount 1;
> #P newex 60 225 727 196617 jit.expr 1 float32 64 64 @inputs 5 @expr
> "pow(pow(abs(cos(norm[0]*TWOPI/4.)/in[1])\,in[3])+pow(abs(sin(norm[0]*TWOPI/
> 4.)/in[2])\,in[3])\,-1./in[4]";
> #P flonum 804 77 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 625 79 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 446 73 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 267 74 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P newex 88 109 726 196617 jit.expr 1 float32 64 64 @inputs 5 @expr
> "pow(pow((cos(norm[0]*TWOPI/4.)/in[1])\,
> in[3])+pow((sin(norm[0]*TWOPI/4.)/in[2])\, in[3])\, -1./in[4])";
> #P flonum 88 60 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P newex 88 82 130 196617 jit.matrix 1 float32 64 64;
> #P comment 8 43 100 196617 version 1;
> #P comment 59 187 100 196617 version 2;
> #P window linecount 2;
> #P comment 63 289 100 196617 fill in extension to 3d;
> #P connect 9 0 5 4;
> #P connect 14 0 10 4;
> #P connect 8 0 5 3;
> #P connect 13 0 10 3;
> #P connect 7 0 5 2;
> #P connect 12 0 10 2;
> #P connect 6 0 5 1;
> #P connect 11 0 10 1;
> #P connect 3 0 5 0;
> #P connect 4 0 3 0;
> #P window clipboard copycount 15;
>
>
> cheers!
>
> dd
>
This was helpful but does anyone have a simple working example in 3D?
Cheers,
Gary Lee Nelson
TIMARA Department
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

Jun 29 2006 | 2:40 pm

Jun 29 2006 | 3:09 pm

hi rocker!

i hope it works…..

i tried this one:

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P hidden newex 387 63 68 196617 unpack f f f f;
#P newex 388 37 123 196617 loadmess 5 0.04 0.47 18;
#P flonum 220 524 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 224 444 60 196617 loadmess 3;
#P comment 540 111 21 196617 n3;
#P comment 485 111 21 196617 n2;
#P comment 429 114 21 196617 n1;
#P flonum 540 136 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 486 136 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 432 138 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 378 138 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#N vpatcher 158 179 1082 720;
#P window setfont "Sans Serif" 9.;
#P newex 552 268 69 196617 loadmess 0.3;
#P flonum 323 381 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 1;
#P newex 212 457 53 196617 jit.concat;
#P newex 255 408 69 196617 jit.op @op !-;
#P flonum 552 296 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 3;
#P newex 255 324 307 196617 jit.expr 3 float32 64 64 @inputs 2 @expr "((in[0]*cos(norm[0]*TWOPI))*((in[1]*cos(norm[1]*PI))" "((in[0]*sin(norm[0]*TWOPI))*((in[1]*cos(norm[1]*PI))" "in[1]*sin(norm[1]*PI)";
#P inlet 705 54 15 0;
#P inlet 515 49 15 0;
#P inlet 394 47 15 0;
#P inlet 261 55 15 0;
#P button 71 100 15 0;
#P window linecount 0;
#P newex 120 107 60 196617 r to_movie;
#P newex 212 492 63 196617 s to_render;
#P user jit.pwindow 48 275 82 62 0 1 0 0 1 0;
#P newex 120 133 130 196617 jit.matrix 1 float32 64 64;
#P flonum 740 116 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 562 104 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 428 110 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 274 114 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 120 159 784 196617 jit.expr @inputs 5 @expr pow(pow(abs(cos(in[1]*norm[0]*TWOPI/
4.0))\,in[3])+pow(abs(sin(norm[0]*in[1]*TWOPI/4.0))\,in[4])\,1/
in[2]);
#P connect 0 0 6 0;
#P connect 8 0 5 0;
#P connect 9 0 5 0;
#P connect 5 0 0 0;
#P connect 14 0 17 0;
#P connect 17 0 7 0;
#P connect 0 0 14 0;
#P connect 14 0 16 0;
#P connect 16 0 17 1;
#P connect 10 0 1 0;
#P connect 1 0 0 1;
#P connect 18 0 16 1;
#P connect 11 0 2 0;
#P connect 2 0 0 2;
#P connect 19 0 15 0;
#P connect 15 0 14 1;
#P connect 12 0 3 0;
#P connect 3 0 0 3;
#P connect 13 0 4 0;
#P connect 4 0 0 4;
#P pop;
#P newobj 378 175 84 196617 p 3d-supershape;
#P user ubumenu 228 484 68 196617 0 1 1 0;
#X prefix_set 0 0 0;
#P flonum 150 484 35 9 0. 1. 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 34 507 129 196617 pak erase_color 0. 0. 0. 0.;
#P newex 33 645 220 196617 jit.window context @floating 1 @depthbuffer 1;
#P newex 121 164 59 196617 s to_movie;
#P newex 179 107 62 196617 s to_render;
#P newex 92 198 62 196617 s to_render;
#P newex 150 134 55 196617 s to_shape;
#P number 79 35 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P user jit.fpsgui 34 239 63 196617 0;
#P message 58 552 33 196617 reset;
#P newex 47 530 62 196617 r to_render;
#P newex 58 573 274 196617 jit.gl.handle context @auto_rotate 1 @inherit_transform 1;
#P newex 34 77 156 196617 t b b b b b erase;
#P toggle 34 34 15 0;
#P newex 34 54 55 196617 qmetro 50;
#P newex 34 617 189 196617 jit.gl.render context @lighting_enable 1;
#P comment 380 114 21 196617 m;
#P connect 3 0 2 0;
#P connect 2 0 4 0;
#P connect 4 0 8 0;
#P fasten 5 0 1 0 63 610 39 610;
#P connect 15 0 1 0;
#P connect 17 1 1 0;
#P fasten 6 0 1 0 52 610 39 610;
#P connect 7 0 5 0;
#P connect 9 0 2 1;
#P connect 4 2 11 0;
#P connect 4 3 13 0;
#P connect 4 4 10 0;
#P connect 16 0 15 4;
#P connect 4 5 12 0;
#P connect 17 0 27 0;
#P connect 26 0 17 0;
#P hidden connect 29 0 19 0;
#P connect 19 0 18 0;
#P hidden connect 28 0 29 0;
#P connect 20 0 18 1;
#P connect 21 0 18 2;
#P hidden connect 29 1 20 0;
#P connect 22 0 18 3;
#P hidden connect 29 2 21 0;
#P hidden connect 29 3 22 0;
#P window clipboard copycount 30;

Jun 29 2006 | 4:11 pm

Hey Guys,
Try this one:

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P hidden newex 447 123 68 196617 unpack f f f f;
#P newex 448 97 123 196617 loadmess 5 0.04 0.47 18;
#P comment 600 171 21 196617 n3;
#P comment 545 171 21 196617 n2;
#P comment 489 174 21 196617 n1;
#P flonum 600 196 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 546 196 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 492 198 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 438 198 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#N vpatcher 88 344 1012 885;
#P window setfont "Sans Serif" 9.;
#P flonum 804 130 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 726 133 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 644 132 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 567 130 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 2;
#P newex 488 157 327 196617 jit.expr @inputs 5 @expr
pow(pow(abs(cos(in[1]*norm[1]*PI*0.5))\,in[3])+pow(abs(sin(norm[0]*in[1]*PI*0.5))\,in[4])\,1/in[2]);
#P flonum 323 381 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 1;
#P newex 212 457 53 196617 jit.concat;
#P newex 255 408 112 196617 jit.op @op pass !- pass;
#P window linecount 4;
#P newex 108 324 306 196617 jit.expr 3 float32 64 64 @inputs 2 @expr
"(in[0]*cos(norm[0]*TWOPI))*(cos(norm[1]*PI))"
"(in[0]*sin(norm[0]*TWOPI))*(cos(norm[1]*PI))*(in[1]*sin(norm[1]*TWOPI))*(cos(norm[0]*PI))"
"(in[1]*cos(norm[1]*TWOPI))*cos(norm[0]*PI)";
#P button 71 62 15 0;
#P window linecount 1;
#P newex 120 69 60 196617 r to_movie;
#P newex 212 492 315 196617 jit.gl.mesh context @lighting_enable 1
@auto_normals 1 @scale 0.3;
#P user jit.pwindow 48 275 82 62 0 1 0 0 1 0;
#P newex 120 95 130 196617 jit.matrix 1 float32 64 64;
#P flonum 436 132 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 358 135 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 276 134 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 199 132 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 2;
#P newex 120 159 327 196617 jit.expr @inputs 5 @expr
pow(pow(abs(cos(in[1]*norm[0]*PI*0.5))\,in[3])+pow(abs(sin(norm[0]*in[1]*PI*0.5))\,in[4])\,1/in[2]);
#P connect 0 0 6 0;
#P connect 0 0 10 0;
#P connect 8 0 5 0;
#P connect 9 0 5 0;
#P connect 5 0 0 0;
#P connect 1 0 0 1;
#P connect 10 0 12 0;
#P connect 12 0 7 0;
#P connect 10 0 11 0;
#P connect 11 0 12 1;
#P connect 2 0 0 2;
#P connect 3 0 0 3;
#P connect 13 0 11 1;
#P connect 14 0 10 1;
#P connect 4 0 0 4;
#P fasten 5 0 14 0 125 120 493 120;
#P connect 15 0 14 1;
#P connect 16 0 14 2;
#P connect 17 0 14 3;
#P connect 18 0 14 4;
#P pop 1;
#P newobj 438 235 84 196617 p 3d-supershape;
#P newex 181 224 59 196617 s to_movie;
#P newex 239 167 62 196617 s to_render;
#P newex 152 258 62 196617 s to_render;
#P newex 210 194 55 196617 s to_shape;
#P number 139 95 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P user jit.fpsgui 94 299 63 196617 0;
#P newex 94 137 156 196617 t b b b b b erase;
#P toggle 94 94 15 0;
#P newex 94 114 55 196617 qmetro 50;
#P comment 440 174 21 196617 m;
#P hidden connect 19 3 14 0;
#P hidden connect 19 2 13 0;
#P hidden connect 19 1 12 0;
#P hidden connect 18 0 19 0;
#P hidden connect 19 0 11 0;
#P connect 3 5 8 0;
#P connect 3 4 6 0;
#P connect 3 3 9 0;
#P connect 3 2 7 0;
#P connect 5 0 1 1;
#P connect 3 0 4 0;
#P connect 1 0 3 0;
#P connect 2 0 1 0;
#P window clipboard copycount 20;

Jun 29 2006 | 4:19 pm

hi dd,

that works really well! i’ve updated it so that it uses two shapes –
one oriented horizontally the other vertically – as demonstrated by
paul borke’s renderings.

jeremy

max v2;
#N vpatcher 100 100 969 667;
#P window setfont "Sans Serif" 9.;
#P newex 430 277 142 196617 jit.matrix 12 float32 128 64;
#P user jit.fpsgui 278 215 60 196617 3;
#P newex 380 227 64 196617 jit.op @op +;
#P hidden newex 593 67 68 196617 unpack f f f f;
#P newex 594 41 114 196617 loadmess 18 4 0.47 18;
#P comment 746 115 21 196617 n3;
#P comment 691 115 21 196617 n2;
#P comment 635 118 21 196617 n1;
#P flonum 746 140 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 692 140 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 638 142 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 584 142 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#N vpatcher 158 179 1082 720;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 265 276 105 196617 jit.dimmap @map 1 0;
#P outlet 216 485 15 0;
#P window linecount 0;
#P newex 552 268 69 196617 loadmess 0.8;
#P window linecount 1;
#P newex 212 457 53 196617 jit.concat;
#P newex 255 408 69 196617 jit.op @op !-;
#P flonum 552 296 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 3;
#P newex 255 324 307 196617 jit.expr 3 float32 64 64 @inputs 2 @expr
"((in[0]*cos(norm[0]*TWOPI))*((in[1]*cos(norm[1]*PI))"
"((in[0]*sin(norm[0]*TWOPI))*((in[1]*cos(norm[1]*PI))"
"in[1]*sin(norm[1]*PI)";
#P inlet 705 54 15 0;
#P inlet 515 49 15 0;
#P inlet 394 47 15 0;
#P inlet 261 55 15 0;
#P button 71 100 15 0;
#P window linecount 0;
#P newex 120 107 60 196617 r to_movie;
#P user jit.pwindow 48 275 82 62 0 1 0 0 1 0;
#P newex 120 133 130 196617 jit.matrix 1 float32 64 64;
#P flonum 740 116 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 562 104 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 428 110 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 274 114 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 120 159 727 196617 jit.expr @inputs 5 @expr
"pow(pow(abs(cos(in[1]*norm[0]*TWOPI/
4.0))\,in[3])+pow(abs(sin(norm[0]*in[1]*TWOPI/4.0))\,in[4])\,1/
in[2])";
#P connect 0 0 6 0;
#P connect 7 0 5 0;
#P connect 8 0 5 0;
#P connect 5 0 0 0;
#P connect 13 0 16 0;
#P connect 16 0 18 0;
#P connect 19 0 13 0;
#P connect 13 0 15 0;
#P connect 15 0 16 1;
#P connect 0 0 19 0;
#P connect 9 0 1 0;
#P connect 1 0 0 1;
#P connect 10 0 2 0;
#P connect 2 0 0 2;
#P connect 17 0 14 0;
#P connect 14 0 13 1;
#P connect 11 0 3 0;
#P connect 3 0 0 3;
#P connect 12 0 4 0;
#P connect 4 0 0 4;
#P pop;
#P newobj 584 179 84 196617 p 3d-supershape;
#P comment 586 118 21 196617 m;
#P newex 408 348 63 196617 s to_render;
#P hidden newex 387 63 68 196617 unpack f f f f;
#P newex 388 37 129 196617 loadmess 12 0.04 0.47 18;
#P flonum 265 386 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 269 306 60 196617 loadmess 3;
#P comment 540 111 21 196617 n3;
#P comment 485 111 21 196617 n2;
#P comment 429 114 21 196617 n1;
#P flonum 540 136 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 486 136 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 432 138 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 378 138 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#N vpatcher 158 179 1082 720;
#P outlet 216 485 15 0;
#P window setfont "Sans Serif" 9.;
#P newex 552 268 69 196617 loadmess 0.8;
#P window linecount 1;
#P newex 212 457 53 196617 jit.concat;
#P newex 255 408 69 196617 jit.op @op !-;
#P flonum 552 296 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 3;
#P newex 255 324 307 196617 jit.expr 3 float32 64 64 @inputs 2 @expr
"((in[0]*cos(norm[0]*TWOPI))*((in[1]*cos(norm[1]*PI))"
"((in[0]*sin(norm[0]*TWOPI))*((in[1]*cos(norm[1]*PI))"
"in[1]*sin(norm[1]*PI)";
#P inlet 705 54 15 0;
#P inlet 515 49 15 0;
#P inlet 394 47 15 0;
#P inlet 261 55 15 0;
#P button 71 100 15 0;
#P window linecount 0;
#P newex 120 107 60 196617 r to_movie;
#P user jit.pwindow 48 275 82 62 0 1 0 0 1 0;
#P newex 120 133 130 196617 jit.matrix 1 float32 64 64;
#P flonum 740 116 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 562 104 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 428 110 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 274 114 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 120 159 727 196617 jit.expr @inputs 5 @expr
"pow(pow(abs(cos(in[1]*norm[0]*TWOPI/
4.0))\,in[3])+pow(abs(sin(norm[0]*in[1]*TWOPI/4.0))\,in[4])\,1/
in[2])";
#P connect 0 0 6 0;
#P connect 8 0 5 0;
#P connect 7 0 5 0;
#P connect 5 0 0 0;
#P connect 13 0 16 0;
#P connect 16 0 18 0;
#P connect 0 0 13 0;
#P connect 13 0 15 0;
#P connect 15 0 16 1;
#P connect 9 0 1 0;
#P connect 1 0 0 1;
#P connect 10 0 2 0;
#P connect 2 0 0 2;
#P connect 17 0 14 0;
#P connect 14 0 13 1;
#P connect 11 0 3 0;
#P connect 3 0 0 3;
#P connect 12 0 4 0;
#P connect 4 0 0 4;
#P pop;
#P newobj 378 175 84 196617 p 3d-supershape;
#P user ubumenu 273 346 68 196617 0 1 1 0;
#X prefix_set 0 0 0;
#P flonum 195 346 35 9 0. 1. 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 79 369 129 196617 pak erase_color 0. 0. 0. 0.;
#P newex 78 507 220 196617 jit.window context @floating 1 @depthbuffer
1;
#P newex 121 164 59 196617 s to_movie;
#P newex 179 107 62 196617 s to_render;
#P newex 92 198 62 196617 s to_render;
#P newex 150 134 55 196617 s to_shape;
#P number 79 35 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P user jit.fpsgui 34 239 63 196617 0;
#P message 103 414 33 196617 reset;
#P newex 92 392 62 196617 r to_render;
#P newex 103 435 274 196617 jit.gl.handle context @auto_rotate 1
@inherit_transform 1;
#P newex 34 77 156 196617 t b b b b b erase;
#P toggle 34 34 15 0;
#P newex 34 54 55 196617 qmetro 50;
#P newex 78 476 471 196617 jit.gl.render context @lighting_enable 0
@smooth_shading 1 @depth_enable 1 @erase_color 0. 0. 0. 1.;
#P comment 380 114 21 196617 m;
#P connect 3 0 2 0;
#P connect 2 0 4 0;
#P connect 4 0 8 0;
#P fasten 5 0 1 0 108 472 83 472;
#P connect 15 0 1 0;
#P connect 17 1 1 0;
#P fasten 6 0 1 0 97 472 83 472;
#P connect 9 0 2 1;
#P connect 4 2 11 0;
#P connect 7 0 5 0;
#P connect 4 3 13 0;
#P connect 4 4 10 0;
#P connect 4 5 12 0;
#P connect 16 0 15 4;
#P connect 17 0 27 0;
#P connect 26 0 17 0;
#P connect 18 0 43 0;
#P hidden connect 29 0 19 0;
#P connect 19 0 18 0;
#P connect 18 0 42 0;
#P hidden connect 28 0 29 0;
#P connect 20 0 18 1;
#P connect 44 0 30 0;
#P connect 21 0 18 2;
#P connect 42 0 44 0;
#P hidden connect 29 1 20 0;
#P connect 32 0 42 1;
#P connect 22 0 18 3;
#P hidden connect 29 2 21 0;
#P hidden connect 29 3 22 0;
#P hidden connect 41 0 33 0;
#P connect 33 0 32 0;
#P hidden connect 40 0 41 0;
#P connect 34 0 32 1;
#P connect 35 0 32 2;
#P hidden connect 41 1 34 0;
#P connect 36 0 32 3;
#P hidden connect 41 2 35 0;
#P hidden connect 41 3 36 0;
#P pop;

Jun 29 2006 | 4:36 pm

Really nice. Thats awesome! now to add some bells and whistles…

v a d e //