A clutch of blood red dragon eggs found in the secret chambers of a powerful wizard.
Speaking of wizardry the speed at which you access the finished fractal
at http://maxitersfractalfollies.blogspot.com is almost magical.
fract333.gif { ; blood red dragon eggs
; blank
; calctime 0:17:53.24
; created Jul 26, 2010
; Fractint Version 2004 Patchlevel 9
reset=2004 type=formula formulafile=frac_ml.frm
formulaname=kpassion_balls function=cos
center-mag=-1.7622/0.000751252/42.46501 params=0.1/0/2/128/0/0
float=y maxiter=1500 inside=atan outside=summ periodicity=0
colors=0000czF00F00F00F00F00G00G00G00G00H00H00H00H00I00I00I00I00I00J00J0\
0J00J01K01K01K01K01L01L01L01L01L01M01M01M01M01N01N01N01N01O01O01O01O02O0\
2P02P02P02P02Q02Q02Q02Q02R02R02R02R02R02S02S02S02S02T02T02T03T03U03U03U0\
3U03V03V03V03V03V03W03W03W03W03X03X03X03X03Y03Y03Y04Y04Y04Z04Z04Z04Z04_0\
4_04_04_04`04`04`04`04`04a04a04a04a04b04b05b05b05c05c05c05c05c05d05d05d0\
5d05e05e05e05e05f05f05f05f05g06h06h06h06h06h16h17h17h27i27i28i38i38i38i4\
9i49j49j59j5Aj5Aj5Aj6Aj6Ak6Bk7Bk7Bk7Bk8Ck8Ck8Cl9Cl9Dl9DlADlADlAElBEmBEmB\
EmBEmCFmCFmCFmDFnDGnDGnEGnEGnEHnFHnFHoFHoGIoGIoGIoHIoHIoHJpHJpIJpIJpIKpJ\
KpJKpJKqKLqKLqKLqLLqLMqLMqMMrMMrMNrMNrNNrNNrNNrOOsOOsOOsPOsPPsPPsQPsQPtQ\
QtRQtRQtRQtSRtSRtSRuSRuTRuTSuTSuUSuUSuUTvVTvVTvVTvWUvWUvWUvXUwXVwXVwYVwY\
VwYVwYWwZWxZWxZWx_Xx_Xx_Xx`Xx`Yy`YyaYyaYyaZybZybZybZzc_
}
frm:kpassion_balls {; variant of Paul W. Carlson and Kerry Mitchell
;****************************************************
; Always use floating point math and outside=summ.
;
; Parameters:
; real(p1) = a factor controlling the size of the balls
; imag(p1) = number of iterations to skip
; real(p2) = number of color ranges
; imag(p2) = number of colors in each color range
;
; Note that the equation variable is w, not z. Always
; initialize z to zero.
;****************************************************
w = 0
c = pixel
z = 0
bailout = 0
iter = 0
range_num = 0
skip = imag(p1)
k=real(p3)
r=imag(p3)
;****************************************************
; In the accompanying par file, mndballs.par,
; we have 8 color ranges with 30 colors in each range
; for a total of 240 colors. The first range starts at
; color 1. Pixels will use color 0 when |w| >= 1000.
; Other values can be used here as long as the product
; of num_ranges times colors_in_range is less than 255.
; Color 0 is reserved for the background color and color
; 255 can be used for the inside color.
;****************************************************
num_ranges = real(p2)
colors_in_range = imag(p2)
;****************************************************
; Real(p1) controls the size of the balls.
; These values will usually be in the range 0.001 to 0.1
;****************************************************
ball_size = real(p1)
index_factor = (colors_in_range - 1) / ball_size
:
;****************************************************
; The equation being iterated. Almost any equation
; that can be express in terms of a complex variable
; and a complex constant will work with this method.
; This example uses the standard Mandelbrot set equation.
;****************************************************
w =w*w + c
c= c + k*fn1(w)
;****************************************************
; If the orbit point is within the specified distance of a circle,
; set z to the index into the colormap and set the bailout flag.
;****************************************************
IF (iter > skip)
wr = real(w), wi = imag(w)
d = wr * wr + (wi - .5) * (wi - .5)
IF (d < ball_size)
bailout = 1
delta = ball_size - d
ELSEIF (wr * wr + (wi + .5) * (wi + .5) < ball_size)
d = wr * wr + (wi + .5) * (wi + .5)
bailout = 1
delta = ball_size - d
ELSEIF ((wr - .5) * (wr - .5) + wi * wi < ball_size)
d = (wr - .5) * (wr - .5) + wi * wi
bailout = 1
delta = ball_size - d
ELSEIF ((wr + .5) * (wr + .5) + wi * wi < ball_size)
d = (wr + .5) * (wr + .5) + wi * wi
bailout = 1
delta = ball_size - d
ENDIF
ENDIF
IF (bailout)
z = index_factor * delta + range_num * colors_in_range + 1
ENDIF
;****************************************************
; Cycle through the range numbers (0 thru num_ranges - 1)
; With two color ranges, even iterations use color
; range 0, odd iterations use color range 1.
;****************************************************
range_num = range_num + 1
IF (range_num == num_ranges)
range_num = 0
ENDIF
;****************************************************
; Since we are using outside=summ, we have to subtract
; the number of iterations from z.
;****************************************************
iter = iter + 1
z = z - iter
;****************************************************
; Finally, we test for bailout
;****************************************************
bailout == 0 && |w| < 1000
;SOURCE: 98msg.frm
}
Roger Alexander
Turn down-time into play-time with Messenger games Play Now!