gold_piece { fractal: title="gold_piece" width=800 height=600 author="elmont" created="May 31, 1999" numlayers=3 layer: caption="New Layer 2" opacity=100 visible=yes alpha=no mergemode=hsladd mapping: center=0.013296151144738264/-0.0160939959192249462 magn=2.73852783669316085 angle=42.7676040136702211 formula: filename="zg.frm" entry="butter" maxiter=100 percheck=normal inside: transfer=none repeat=yes outside: filename="Fractint.ucl" entry="outside" transfer=linear repeat=yes p_outside="iter" p_n=1 p_logmap=0 p_biomorph=-1 p_bailout=100 p_smooth=yes gradient: smooth=no numnodes=7 index=0 color=0 index=1 color=255 index=81 color=65535 index=161 color=65280 index=240 color=16776960 index=320 color=16711680 index=399 color=16711930 layer: caption="base" opacity=100 visible=yes alpha=no mergemode=color mapping: center=0.013296151144738264/-0.0160939959192249462 magn=2.73852783669316085 angle=42.7676040136702211 formula: filename="zg.frm" entry="butter" maxiter=100 percheck=normal inside: transfer=none repeat=yes outside: filename="Fractint.ucl" entry="outside" transfer=linear repeat=yes p_outside="iter" p_n=1 p_logmap=0 p_biomorph=-1 p_bailout=100 p_smooth=yes gradient: smooth=no numnodes=7 index=0 color=0 index=1 color=255 index=81 color=65535 index=161 color=65280 index=240 color=16776960 index=320 color=16711680 index=399 color=16711930 layer: caption="New Layer 1" opacity=100 visible=yes alpha=no mergemode=luminance mapping: center=0.013296151144738264/-0.0160939959192249462 magn=2.73852783669316085 angle=42.7676040136702211 formula: filename="zg.frm" entry="butter" maxiter=100 percheck=normal inside: transfer=none repeat=yes outside: filename="lkm.ucl" entry="range-lite" density=16 transfer=sqrt repeat=yes p_rangecenter=0.75 p_rangewidth=0.1 p_colorby="last angle" gradient: smooth=yes numnodes=23 index=8 color=15394208 index=24 color=7677226 index=33 color=12948991 index=43 color=5 index=70 color=16121855 index=95 color=1048581 index=103 color=12948991 index=116 color=7677226 index=128 color=15394208 index=145 color=2110794 index=158 color=12948991 index=175 color=3488320 index=198 color=16777215 index=222 color=3816010 index=247 color=6635775 index=265 color=656714 index=273 color=656714 index=288 color=6635775 index=318 color=3816010 index=342 color=16777215 index=364 color=3488320 index=378 color=12948986 index=393 color=2112074 } zg.frm:butter {; Giuseppe Zito z = pixel , c0 = 0.673033 c1 = -0.381069 d2 = 0.26837 d4 = -0.24802 d5 = -0.979016 : x = real(z), y = imag(z) s0 =c0 s0 = s0 *c1 s0 = s0 *x s1 = y s0 = s0 -s1 newx = s0 s0 = y s0 = s0 /y s0 = s0 -d2 s0 = s0 -d4 s0 = s0 +d5 s1 = x s0 = s0 *s1 s0 = s0 /y s0 = s0 -x newy = s0 z = newx + flip(newy) newx < 4 && newx > -4 && newy < 4 && newy > -4 } Fractint.ucl:outside(OUTSIDE) { ; Exactly imitates the outside coloring options in Fractint ; with 256-color modes. ; When using a palette containing many sharp color changes, some ; small color shifts may occur due to the way the gradient is ; implemented in Ultra Fractal. Use the Smooth Coloring parameter ; to turn true-color coloring on and off. ; The decomp, distest and potential options are implemented as ; separate coloring algorithms, since they don't use parameters ; like biomorph and logmap (except for decomp), and the number ; of parameters would become rather large if they were added here. final: float lf = 0 float mlf = 0 float iter = 1 + #numiter bool skipfirst = @outside == 1 if @outside == 2 ; outside = real if @smooth iter = iter + 7 + real(#z) else iter = iter + 7 + trunc(real(#z)) endif elseif @outside == 3 ; outside = imag if @smooth iter = iter + 7 + imag(#z) else iter = iter + 7 + trunc(imag(#z)) endif elseif @outside == 4 ; outside = mult if @smooth iter = iter * (real(#z) / imag(#z)) else iter = trunc(iter * (real(#z) / imag(#z))) endif elseif @outside == 5 ; outside = summ if @smooth iter = iter + real(#z) + imag(#z) else iter = iter + trunc(real(#z) + imag(#z)) endif elseif @outside == 6 ; outside = atan if @smooth iter = abs(atan2(#z) * 180/#pi) else iter = trunc(abs(atan2(#z) * 180/#pi)) endif endif if iter < 0 || iter > #maxiter iter = 0 endif ; biomorph option if (@biomorph >= 0) && \ ((abs(real(#z)) <= sqrt(@bailout)) || (abs(imag(#z)) <= sqrt(@bailout))) iter = @biomorph skipfirst = false endif if @outside == 0 iter = @n endif ; logmap options if @outside > 0 if @logmap > 0 if @logmap > 1 lf = @logmap else lf = 0 endif if lf >= #maxiter lf = #maxiter - 1 endif if lf > 0 mlf = 254 / log(#maxiter - lf) else mlf = 255 / log(#maxiter) endif if iter <= lf iter = 1 elseif (iter - lf) / log(iter - lf) <= mlf if lf > 0 iter = iter - lf + 1 else iter = iter - lf endif else iter = 1 + mlf * log(iter - lf) endif elseif @logmap == -1 if iter == 0 iter = 1 else iter = 1 + (255 / log(150)) * log(iter) endif elseif @logmap < -1 lf = -@logmap if lf >= #maxiter lf = #maxiter - 1 endif mlf = 254 / sqrt(#maxiter - lf) if iter <= lf iter = 1 elseif (iter - lf) <= mlf*mlf iter = iter - lf + 1 else iter = 1 + mlf * sqrt(iter - lf) endif endif endif if skipfirst ; hack to skip first color (0)... #index = (1 + (iter - 1) % 255) / 256 - 0.001 else #index = (iter % 256) / 256 - 0.001 endif default: title = "Outside Options" param outside caption = "Outside Color" default = 1 enum = "nnn" "iter" "real" "imag" "mult" "summ" "atan" hint = "This is the outside= value in Fractint. If outside=nnn, \ you can specify the nnn value with the Color Index parameter." endparam param n caption = "Color Index" hint = "This is the nnn value used when outside=nnn. \ Enter a value from 0 to 255." default = 1 min = 0 max = 255 endparam param logmap caption = "Log Palette" hint = "This is exactly the same as the Log Palette value \ in Fractint. 0=no, 1=yes, -1=old, +n=cmprsd, -n=sqrt." default = 0 endparam param biomorph caption = "Biomorph Color" hint = "This is the biomorph option. Specify -1 to turn it off, \ or a color value (0..255) to turn it on using the specified color." default = -1 min = -1 max = 255 endparam param bailout caption = "Biomorph Bailout" hint = "This is the bailout value used with the biomorph option. \ It should be equal to the bailout value used by the fractal \ formula in the Formula tab. A good value for Mandelbrot sets is 100." default = 100.0 min = 1 endparam param smooth caption = "Smooth coloring" hint = "This defines whether or not the image will be colored smoothly. \ Enable it to get smooth true-color images; disable it to \ use only 256 possible colors, just like in Fractint." default = true endparam } lkm.ucl:range-lite { ; Kerry Mitchell 21feb99 ; ; Simplified version of "Range" coloring. ; Colors by magnitude or angle when magnitude ; of z falls in prescribed range. ; init: int rangeiter=0 float rangemin=@rangecenter-0.5*@rangewidth float rangemax=rangemin+@rangewidth float rz=0.0 float twopi=2.0*#pi float r1=0.0 float rn=0.0 float t1=0.0 float tn=0.0 loop: rz=cabs(#z) if((rz>=rangemin)&&(rz<=rangemax)) rangeiter=rangeiter+1 rn=rz tn=atan2(#z) if(rangeiter==1) r1=rn t1=tn endif endif final: if(rangeiter==0) #solid=true else if(@colorby==0) ; first mag r1=(r1-rangemin)/(rangemax-rangemin) #index=r1 elseif(@colorby==1) ; last mag rn=(rn-rangemin)/(rangemax-rangemin) #index=rn elseif(@colorby==2) ; first angle if(t1<0.0) t1=t1+twopi endif t1=t1/twopi #index=t1 elseif(@colorby==3) ; last angle if(tn<0.0) tn=tn+twopi endif tn=tn/twopi #index=tn endif endif default: title="Range Lite" param rangecenter caption="range center" default=1.0 endparam param rangewidth caption="range width" default=0.1 endparam param colorby caption="color by" default=3 enum="first mag" "last mag" "first angle" "last angle" endparam }