请教楼主有三维Hillbert曲线的的分型实现代码吗?自己弄了半天没成功 Fractal分形源码一枚:
效果图:
网站分享:
http://www.skytopia.com/project/fractal/mandelbulb.html
很美,就是有大图吗?想作为桌面啊 以前也编过,不过没这么漂亮 Mandelbulb (3d mandelbrot)
Introduction :
http://www.skytopia.com/project/fractal/mandelbulb.html
Math formula :
http://www.skytopia.com/project/fractal/2mandelbulb.html
To see the beast :
http://www.fractalforums.com/3d-fractal-generation/mandelbulber-new-open-source-program-for-rendering-high-quality-mandelbulbs/What's the formula of this thing?
There are a few subtle variations, which mostly end up producing the same kind of incredible detail. Listed below is one version. Similar to the original 2D Mandelbrot, the 3D formula is defined by:
z -> z^n + c
...but where 'z' and 'c' are hypercomplex ('triplex') numbers, representing Cartesian x, y, and z coordinates. The exponentiation term can be defined by:
{x,y,z}^n = r^n { sin(theta*n) * cos(phi*n) , sin(theta*n) * sin(phi*n) , cos(theta*n) }
...where:
r = sqrt(x^2 + y^2 + z^2)
theta = atan2( sqrt(x^2+y^2), z )
phi = atan2(y,x)
And the addition term in z -> z^n + c is similar to standard complex addition, and is simply defined by:
{x,y,z}+{a,b,c} = {x+a, y+b, z+c}
The rest of the algorithm is similar to the 2D Mandelbrot!
Here is some pseudo code of the above:
r = sqrt(x*x + y*y + z*z )
theta = atan2(sqrt(x*x + y*y) , z)
phi = atan2(y,x)
newx = r^n * sin(theta*n) * cos(phi*n)
newy = r^n * sin(theta*n) * sin(phi*n)
newz = r^n * cos(theta*n)
...where n is the order of the 3D Mandelbulb. Use n=8 to find the exact object in this article.
http://sourceforge.net/projects/mandelbulber/ 用Mathematica做的动态放大Mandelbrot set,
http://static.oschina.net/uploads/img/201303/28153512_CrWV.gif
另一种配色:
mymma.googlecode.com/files/mandel_jet.gif
页:
1
[2]