JosLeys
|
|
« on: August 15, 2010, 08:56:30 PM » |
|
There is also a 4D version of spherical coordinates. The little film belows shows the 4D (degree eight) Mandelbulb, projected into 3D when the value of the fourth coordinate changes from -1 to +1...
http://www.youtube.com/v/8sojcs5yhHI&rel=1&fs=1&hd=1(done in Ultrafractal)
|
|
|
Logged
|
|
|
|
kram1032
|
|
« Reply #1 on: August 15, 2010, 09:01:29 PM » |
|
This looks pretty cool Could you do 4D transforms on this and project it in different ways?
|
|
|
Logged
|
|
|
|
teamfresh
Fractal Lover
Posts: 246
nothing is everything
|
|
« Reply #2 on: August 15, 2010, 09:35:14 PM » |
|
that was cool! it would be good to magnify slightly as it decreases in size.....
|
|
|
Logged
|
|
|
|
JosLeys
|
|
« Reply #3 on: August 16, 2010, 08:59:49 AM » |
|
As to transformations in 4D, here is a rotation in 4D around the x-y plane, which changes the shape of the bulb. (the rotation around the vertical axis is just a simple rotation in 3D)
http://www.youtube.com/v/Ktqm_vYy5K8&rel=1&fs=1&hd=1"
|
|
|
Logged
|
|
|
|
KRAFTWERK
|
|
« Reply #4 on: August 16, 2010, 10:23:53 AM » |
|
Amazing JosLeys, would love to see more of this...
|
|
|
Logged
|
|
|
|
Direct2Brain
Forums Newbie
Posts: 6
|
|
« Reply #5 on: August 16, 2010, 06:05:39 PM » |
|
Very nice videos Jos.
|
|
|
Logged
|
|
|
|
kram1032
|
|
« Reply #6 on: August 16, 2010, 06:13:27 PM » |
|
Looks really nice
|
|
|
Logged
|
|
|
|
bib
|
|
« Reply #7 on: August 16, 2010, 09:15:05 PM » |
|
Very nice videos, I like the style : simple yet rich graphics to show some mathematical features.
|
|
|
Logged
|
Between order and disorder reigns a delicious moment. (Paul Valéry)
|
|
|
Jesse
Download Section
Fractal Schemer
Posts: 1013
|
|
« Reply #8 on: August 20, 2010, 10:53:42 PM » |
|
Is this the birth of the 4d power8 bulb? Great!
|
|
|
Logged
|
|
|
|
JosLeys
|
|
« Reply #9 on: August 20, 2010, 11:03:40 PM » |
|
If this is the birth of the 4D bulb, I'm afraid the baby looks just like it's 3D relatives...
|
|
|
Logged
|
|
|
|
JosLeys
|
|
« Reply #10 on: August 21, 2010, 12:23:26 PM » |
|
The 4D version does offer some new views. Here is a fourth-power Julia, that I do not think can be reproduced by the 3D formulas. (the Julia constant has a value for the fourth coordinate)
|
|
|
Logged
|
|
|
|
Jesse
Download Section
Fractal Schemer
Posts: 1013
|
|
« Reply #11 on: August 21, 2010, 10:25:35 PM » |
|
Maybe your 3D versions have some parameters to get these 4D variants, i can't do them. Nice Julia, btw. I am still eager to find a minkowski 4d variation, so how much must i pay or beg to get the formula
|
|
|
Logged
|
|
|
|
knighty
Fractal Iambus
Posts: 819
|
|
« Reply #12 on: September 08, 2010, 01:30:18 AM » |
|
Those 4D mandelbulb are great!
|
|
|
Logged
|
|
|
|
Tglad
Fractal Molossus
Posts: 703
|
|
« Reply #13 on: September 08, 2010, 04:28:13 AM » |
|
It is possible to render full 4d objects (not just slices) by projecting all 4 dimensions onto the view frustum... It would be good for viewing these things as for instance you would never see disconnections in a set that is fully connected. You sometimes see what looks like self intersection, but that is just overlap due to viewing angle.
|
|
|
Logged
|
|
|
|
JosLeys
|
|
« Reply #14 on: September 08, 2010, 09:22:29 AM » |
|
Jesse, you asked about the formula. Here it is : (it's basically the same as my 3D code) //initalize // zx,zy and zz =coordinates of point on the ray, zw=4D slice value R=sqrt(zx*zx+zy*zy+zz*zz+zw*zw) theta3=atan2(zx+i*zy) theta2=atan2(i*zz*sin(theta3)+zy) theta1=asin(zw/R) RRdz=1 //c=1 (Mandelbrot) or c=0 (Julia) //theta1dz,theta2dz and theta3dz=0
//loop //derivative for distance estimate dzx=@pow*R^(@pow-1)*RRdz*cos((@pow-1)*theta1+theta1dz)*cos((@pow-1)*theta2+theta2dz)*cos((@pow-1)*theta3+theta3dz)+c dzy=@pow*R^(@pow-1)*RRdz*cos((@pow-1)*theta1+theta1dz)*cos((@pow-1)*theta2+theta2dz)*sin((@pow-1)*theta3+theta3dz) dzz=@pow*R^(@pow-1)*RRdz*cos((@pow-1)*theta1+theta1dz)*sin((@pow-1)*theta2+theta2dz) dzw=@pow*R^(@pow-1)*RRdz*sin((@pow-1)*theta1+theta1dz) Rdz=sqrt(dzx*dzx+dzy*dzy+dzz*dzz+dzw*dzw)
theta3dz=atan2(dzx+i*dzy) theta2dz=atan2(i*dzz*sin(theta3dz)+dzy) theta1dz=asin(dzw/Rdz)
// main iteration zx=R^@pow*cos(@pow*theta1)*cos(@pow*theta2)*cos(@pow*theta3)+cx zy=R^@pow*cos(@pow*theta1)*cos(@pow*theta2)*sin(@pow*theta3)+cy zz=R^@pow*cos(@pow*theta1)*sin(@pow*theta2)+cz zw=R^@pow)*sin(@pow*theta1)+cw
R=sqrt(zx*zx+zy*zy+zz*zz+zw*zw)
theta3=atan2(zx+i*zy) theta2=atan2(i*zz*sin(theta3)+zy) theta1=asin(zw/R)
// distance estimate after bailout DE=f*log(R)*R/Rdz //choose some f<1
|
|
|
Logged
|
|
|
|
|