Welcome to Fractal Forums

Fractal Software => Mandelbulber Gallery => Topic started by: fractower on April 04, 2011, 09:35:59 PM




Title: High energy bulb physics
Post by: fractower on April 04, 2011, 09:35:59 PM
High energy bulb physics

(http://nocache-nocookies.digitalgott.com/gallery/6/2792_04_04_11_9_35_59.jpeg)

http://www.fractalforums.com/index.php?action=gallery;sa=view;id=6519

High energy collision of two 7th order mandelbulbs.

This was intended to be a smooth hybridization of two bulbs. While kind of interesting I am not quite there.


mandelbulber 0.97 hack
         case trig:
         {
                 // offset and rototate bulb 1
                 CVector3 p1(.5,0,0);
                 CVector3 z1 = z - p1;
            double temp = z1.x;
            z1.x = z1.z;
            z1.z = -temp;
            double r1 = z1.Length();
            double rp1 = pow(r1, p);
            double th1 = z1.GetAlfa();
            double ph1 = -z1.GetBeta();
            CVector3 rot1(p * th1, p * ph1);
            z1 = rot1 * rp1;
            temp = z1.x;
            z1.x = -z1.z;
            z1.z = temp;
            z1 += constant;

            // offset bulb2
                 CVector3 p2(-.5,0,0);
                 CVector3 z2 = z - p2;
            double r2 = z2.Length();
            double rp2 = pow(r2, p);
            double th2 = z2.GetAlfa();
            double ph2 = -z2.GetBeta();
            CVector3 rot2(p * th2, p * ph2);
            z2 = rot2 * rp2 + constant;

            // calculate zone of influence for each bulb
            r1 = (p1-constant).Dot(p1-constant);
            rp1 = pow(r1, p);

            r2 = (p2-constant).Dot(p2-constant);
            rp2 = pow(r2, p);

            // Smash bulbs together.
            z = (z1*rp2*r2 + z2*rp1*r1)* (1.0/(rp1*r1+rp2*r2)) + z * r1 * r2*.005;
            r = z.Length();
            break;
         }