Logo by bib - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Follow us on Twitter
 
*
Welcome, Guest. Please login or register. October 30, 2020, 07:47:51 AM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!



 
  Search  

  Slideshow  
Mandelbulb Full StackMandelbulb Power Stack CompositionMandelMutation
Mandelbulb Power Stack Composition
Previous Image | Next Image
Description: A couple of volumetric renderings of some of my experiments with stacking different powers of the Mandelbulb.
Stats:
Total Favorities: 0 View Who Favorited
Filesize: 1.83MB
Height: 2048 Width: 2048
Keywords: fractal Mandelbulb stack layer power 
Posted by: Chris Thomasson March 15, 2015, 08:18:10 PM

Rating: Has not been rated yet.

Image Linking Codes
BB Code
Direct Link
Html Link
0 Members and 1 Guest are viewing this picture.
  Slideshow  

Comments (9) rss
Chris Thomasson
Conqueror
*******
Posts: 137



View Profile
April 03, 2015, 09:29:32 PM
Quote from: cKleinhuis
this is cool, especially because the bulb structures are so clearly visible


Yes; totally agreed.

I was quite pleased when I noticed them showing up when I first started experimenting with this technique.

:^)
cKleinhuis
Administrator
Fractal Senior
*******
Posts: 7044


formerly known as 'Trifox'


View Profile WWW
March 31, 2015, 03:15:23 PM
this is cool, especially because the bulb structures are so clearly visible
Chris Thomasson
Conqueror
*******
Posts: 137



View Profile
March 17, 2015, 09:28:38 PM
Quote from: DarkBeam
Superb idea. Will surely try out. smiley thanksssssss


Thank you!  :^D

WRT the example code I posted, well, it really needs to keep the power of 2 close to the center of the z-axis. I made a mistake here because I started the z-axis at -1. Well, a power of 2 does not show up at this part of the unit sphere. A power of 2 really needs the z-axis to be close to 0 to see the traditional 2d Mandelbrot. So, you could modify a single line of the code from:

    double P = 2.0 + 8.0 * rz;


to:

    double P = 10.0 - 8.0 * abs(sin(rz * PI));

This way, the z-axis will be closer to higher powers the further away it is from the center point, (e.g., z-axis == 0).

When it gets closer to the center of the sphere, well P should be closer to the power of 2, because it should be 90 degrees at dead center of the z-axis. Where, 10 - abs(sin(PI / 2)) * 8.0 is 2.

Sorry about that omission.

;^o
DarkBeam
Global Moderator
Fractal Senior
******
Posts: 2512


Fragments of the fractal -like the tip of it


View Profile
March 17, 2015, 11:48:06 AM
Superb idea. Will surely try out. smiley thanksssssss
Chris Thomasson
Conqueror
*******
Posts: 137



View Profile
March 17, 2015, 12:45:56 AM
Quote from: DarkBeam
Please, share the formula in a thread. Even in pseudocode
It will be included in Mandelbulb3d.
We need your help? smiley


I am sorry for the brief explanation, but I am time constrained at this moment:

Think of creating a 2 dimensional slice of the Mandelbulb at a fixed z-axis. Okay, lets say, a z-axis of 0 and a power of 2. This happens to create the traditional Mandelbrot set. Fine. Now, lets create another slice that sits on top of the previous. The only differences are the power of this new slice is going to be slightly increased, say 2.1, and the z-axis is going to be increased as well. Now, continue the process until you hit a power of 10 and a z-axis of 1.0. So, the level of the power is interpolated across the z-axis. Here is some highly simplistic pseudo-code I just typed out with the actual Mandelbulb spherical coordinate math excluded for brevity:

I hope there are not any damn typos in this!
______________________________________________
// gain C wrt interpolation of the x, y and z-axes, and power:

// ix(-1.0, 1.0), iy(-1.0, 1.0), iz(-1.0, 1.0), P(2.0, 10.0)

for (unsigned int ax = 0; ax < N; ++ax)
{
    double rx = ax / (N - 1.0);
    double ix = -1.0 + 2.0 * rx; // x-component of C

    for (unsigned int ay = 0; ay < N; ++ay)
    {
        double ry = ay / (N - 1.0);
        double iy = -1.0 + 2.0 * ry; // y-component of C

        for (unsigned int az = 0; az < N; ++az)
        {
            double rz = az / (N - 1.0);
            double iz = -1.0 + 2.0 * rz; // z-component of C

            // This is the power of the current slice,
            // interpolating from 2.0 through 10.0 wrt z-axis.

            // [EDIT] - double P = 2.0 + 8.0 * rz;

            // INTO:
            double P = 10.0 - 8.0 * abs(sin(rz * PI));
           
            // This is the current Cartesian point (triplex number)
            // C, ready for iteration...
            C = { ix, iy, iz };

            // Perform normal Mandelbulb iteration.
            // Except, set the power of the iteration to P.
            // Z[i + 1] = Z^P + C
            // in spherical coordinates...

            if (Z does not escape)
            {
                // okay, set this pixel!
                setpixel(ax, ay, az, color);
            }
        }
    }
}
______________________________________________


This ends up creating a stack of images (think RAW image format) that represent N slices of the 3d object wrt the z-axis. I take the resulting image sequence and put them into a volumetric renderer, ImageJ in this case, and bam! The object appears... ;^)

I have also used Drishti to renderer some of these.

It would be absolutely amazing to see this in your excellent software!

Thank you for the interest.


Also, if this explanation is simply not enough, I would be happy to dive into more details. Unfortunately, I do not really have the time right now to make a proper response, so I apologize if this end up sounding like a bunch of gibberish.

Yikes!

:^o
DarkBeam
Global Moderator
Fractal Senior
******
Posts: 2512


Fragments of the fractal -like the tip of it


View Profile
March 16, 2015, 11:31:12 PM
Please, share the formula in a thread. Even in pseudocode
It will be included in Mandelbulb3d.
We need your help? smiley
Chris Thomasson
Conqueror
*******
Posts: 137



View Profile
March 16, 2015, 11:06:38 PM
Thank you all so very much for the kind comments!

I really do appreciate them.

FWIW, this is a stack of powers 2-10 interpolating from z-axes 0-1.

The funny thing is that the stack/volume of images are only 350x350x400, and they still show some fairly "interesting", minor details...

I made a little more images along the z-axis to attempt to gain some more "detail" at the expense of a slight stretching effect along z-axis with respect to the x/y-axes.

;^)
LMarkoya
Strange Attractor
***
Posts: 282



View Profile
March 16, 2015, 02:12:33 PM
Very cool...nice job
DarkBeam
Global Moderator
Fractal Senior
******
Posts: 2512


Fragments of the fractal -like the tip of it


View Profile
March 15, 2015, 10:23:57 PM
Nice jobs

Return to Gallery

Powered by SMF Gallery Pro

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.887 seconds with 34 queries. (Pretty URLs adds 0.006s, 1q)