I am so jealous now.
I went to Elbrus not long ago, and swore I’d come back and
walk over to Svanetia.
What a fantastic place. Have a great time Tony
From:
fractint-bounces+padski=padski.com@mailman.xmission.com
[mailto:fractint-bounces+padski=padski.com@mailman.xmission.com] On Behalf
Of Tony Hanmer
Sent: Friday, April 20, 2007 7:42 AM
To: Fractint and General Fractals Discussion
Subject: [Fractint] Squares
(I was intending to make this announcement with the next full release of
Fractint. But I am likely to be moving soon from the capital of the
Republic of Georgia, Tbilisi, to Georgia's (and Europe's) highest village,
Ushguli, a place which does have good electricity but has no easy or cheap
internet solutions. I'll be accessing the internet solely through my
cellphone, and leaving my desktop computer behind to be used for scanning my
huge collection of 35mm negatives. So there's no time like the present.)
Ah, the rich inner life of a humble square...
Am I really the first person to discover this feature of IFS?
If one begins with an Iterated Function System (IFS) which simply fills in
solid, there may seem nothing further to do to alter this uninteresting
result. But boredom can sometimes lead to experimenting, with unexpected
results. In 2001, I discovered that if a square IFS is divided into
several holons with no space between them, they will simply fill the square
solid. But a bit of play can give the square an infinite variety of rich
fractal interior textures. This is done solely by altering the number
corresponding to the proportion of each holon of the square - for Fractint
IFSs, the last of 7 numbers on each line. Make your solid-filed IFS, save
the .ifs file (for Fractint), then change the numbers in a text editor.
I was amazed at the richness and variety of the patterns I was seeing - truly
an infinite set, as the numbers can be made arbitrarily different. The
best results seem to happen when these proportion numbers still sum up to 1, as
is normal, and the alteration is from 0.04 to 0.06, subtracting and adding the
chosen amount from an equal number of numbers to leave the total
unchanged. Contrast can be varied as well, by choosing alterations
outside this range, the texture fading in from the solid square (or other
initial shape) to an extremely high-contrast pattern.
Two or more sets of solid squares can be superimposed and then
altered. The idea works for other shapes as well, but it can be tricky to
get to a solid filled shape if the angles are not all 90 degrees: either
very careful calculation is needed, involving trigonometry, or a snap-to
feature when drawing the holons.
Further, *animations* from one texture to another are implied, by
incrementing numbers sufficiently smoothly between the desired start and end
textures. Only the numbers need to be altered; or the whole group of
holons may be varied; one or more of these may be gradually added or
subtracted, even flipped or rotated. In each case, one can make an
animation to show the transition.
I first stumbled across the idea of varying IFS proportion numbers while
seeking ways to make the well-known Dragon Curve (DC) and Twindragon (TD) more
interesting by giving them fractal-textured fills, as I had learned to do with
these 2 and other tiles in L-system programming. I achieved what I was
aiming for easily enough - but the same idea, applied to filled-in squares and
other regular polygons, was a complete surprise and delight.
ANIMATION
Any IFS can be incrementally altered into any other for an animation, with the
intervening steps arbitrarily many, as many as required. If the 2 IFSs
have the same number of holons, and the elements in one IFS have each a
counterpart in the other IFS as far as orientation, the process is simply a
matter of incrementing the size and location of all holons between the
two. If orientations are not matched, or numbers of holons are not equal,
there is an extra step. An extra holon is introduced for each additional
required holon or change in orientation, initially of zero thickness or
width. These extra holons are gradually increased in thickness - and if
the total number of holons must remain constant, as in performing a change in
orientation only, the holon being replaced is gradually reduced in thickness
simultaneously, until it has been fully replaced. If an actual addition
of one or more holons is required, they are enlarged from zero thickness until
they occupy their needed positions. This process is crying out for some
automation... with the added optional constraint, especially for textured
squares, of keeping all the animation frames within the start and end squares'
size and shape.
To run the pars below:
1. Cut, paste and save the par entries in a text editor as squares-.par,
putting it where your other Fractint .par files are.
2. Cut, paste and save the ifs entries in a text editor as squares-.ifs
(squares.ifs is already being used), putting it where your other Fractint .ifs
files are.
3. Finally, run the first par. Save its colour map as firecode.map
where your other .map files are, and then you can run the remaining pars.
For much more of my IFS work, see HANMERIFS_01.ZIP, at http://spanky.triumf.ca/pub/fractals/formulas/
Par entries start
Sq0002d {
; 23:29.99, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs04.ifs ifs=Sq0002d passes=1
center-mag=0/5/0.1666667 params=0 maxiter=57000
viewwindows=1/1/yes/0/0
colors=000006<3>00800900A<9>K04M04O03<2>U01W00W00<10>d00e00f00<14>u70v70\
w80x80z90<79>zm0zm0zn0<43>zx0zy0zy0zy0zy0<68>zzz
}
Sq0022e {
; 27:01.79, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs04.ifs ifs=Sq0022e passes=1
center-mag=0/5/0.1666667 params=0 maxiter=62000
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Sq0022q {
; 25:21.76, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=dcs01.ifs ifs=Sq0022q passes=1
center-mag=0/5/0.1666667 params=0 maxiter=58000
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Sq0023d {
; 23:57.51, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs04.ifs ifs=Sq0023d passes=1
center-mag=0/5/0.1666667 params=0 maxiter=59000
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Sq0025k {
; 24:35.15, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs04.ifs
ifs=Sq0025k passes=1 center-mag=0/5/0.1666667
params=0 maxiter=58000
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Sq0025v {
; 24:18.55, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs04.ifs
ifs=Sq0025v passes=1 center-mag=0/5/0.1666667
params=0 maxiter=59000 sound=off
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Sq0027a {
; 25:45.06, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs04.ifs
ifs=Sq0027a passes=1 center-mag=0/5/0.1666667
params=0 maxiter=61000 sound=off
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Sq0027d {
; 25:48.74, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs04.ifs
ifs=Sq0027d passes=1 center-mag=0/5/0.1666667
params=0 maxiter=62000 sound=off
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Squ576a {
; 27:42.83, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs03.ifs ifs=squ576a
center-mag=0/5/0.1666667 params=0 float=y maxiter=32000 sound=off
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Squ995t {
; 24:22.44, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs03.ifs ifs=squ995t passes=1
center-mag=0/5/0.1666667 params=0 maxiter=55000
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Squ925u {
; 25:39.00, 1.3 GHz PIII
; Fractint Version 2004 Patchlevel 2
reset=2004 type=ifs ifsfile=sqs03.ifs ifs=squ925u passes=1
center-mag=0/5/0.1666667 params=0 maxiter=60000
viewwindows=1/1/yes/0/0
colors=@firecode.map
}
Par entries end
IFS entries start
Sq0002d {; Anthony Hanmer 18/12/2003, Designed with BRAZIL
; One of my best Squares
0.3330000 0.0000000 0.0000000 0.3330000 -4.0020000 -0.6670000 0.1108890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.2921110
-0.6670000 0.0000000 0.0000000 0.3330000 1.9980000 -0.6670000 0.1521110
-0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.4448890
}
Sq0002e {; Anthony Hanmer 18/12/2003, Designed with BRAZIL
0.3330000 0.0000000 0.0000000 0.3330000 -4.0020000 -0.6670000 0.1108890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.2921110
-0.6670000 0.0000000 0.0000000 0.3330000 1.9980000 -0.6670000 0.2221110
-0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.3748890
}
Sq0022q {; Anthony Hanmer 22/12/2003, Designed with BRAZIL
; One of my best Squares
0.3330000 0.0000000 0.0000000 0.3330000 -4.0020000 -0.6670000 0.0508890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.2821110
-0.6670000 0.0000000 0.0000000 -0.3330000 1.9980000 2.6630000 0.1621110
0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.5048890
}
Sq0023d {; Anthony Hanmer 23/12/2003, Designed with BRAZIL
; One of my best Squares
-0.3330000 0.0000000 0.0000000 0.3330000 -4.0020000 -0.6670000 0.1108890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.2921110
-0.6670000 0.0000000 0.0000000 -0.3330000 1.9980000 2.6630000 0.1521110
0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.4448890
}
Sq0025k {; Anthony Hanmer 23/12/2003, Designed with BRAZIL
; One of my best Squares
0.3330000 0.0000000 0.0000000 -0.3330000 -4.0020000 2.6630000 0.1108890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.1421110
-0.6670000 0.0000000 0.0000000 -0.3330000 1.9980000 2.6630000 0.2221110
0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.5248890
}
Sq0025v {; Anthony Hanmer 23/12/2003, Designed with BRAZIL
; One of my best Squares
0.3330000 0.0000000 0.0000000 -0.3330000 -4.0020000 2.6630000 0.0808890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.1921110
-0.6670000 0.0000000 0.0000000 -0.3330000 1.9980000 2.6630000 0.1921110
0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.5348890
}
Sq0027a {; Anthony Hanmer 23/12/2003, Designed with BRAZIL
; One of my best Squares
0.0000000 0.3330000 -0.3330000 0.0000000 -5.6670000 0.9980000 0.1808890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.1521110
-0.6670000 0.0000000 0.0000000 -0.3330000 1.9980000 2.6630000 0.2221110
0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.4448890
}
Sq0027d {; Anthony Hanmer 23/12/2003, Designed with BRAZIL
; One of my best Squares
0.0000000 0.3330000 -0.3330000 0.0000000 -5.6670000 0.9980000 0.1108890
0.3330000 0.0000000 0.0000000 0.6670000 -4.0020000 3.6630000 0.2921110
-0.6670000 0.0000000 0.0000000 -0.3330000 1.9980000 2.6630000 0.1521110
0.6670000 0.0000000 0.0000000 -0.6670000 1.9980000 10.3330000 0.4448890
}
squ576a {; Tony Hanmer 21/7/2003, Designed with BRAZIL
; One of my best Squares
-0.5 0 0 -0.5 -3 4.5 0.22
0.5 0 0 0.5 3 -0.5 0.22
0.25 0 0 0.5 -4.5 5.5 0.095
0.25 0 0 0.5 4.5 5.5 0.095
0 -0.5 0.5 0 2.5 8 0.37
}
squ925t {; Tony Hanmer 9/12/2003, Designed with BRAZIL
; One of my best Squares
-0.5 0 0 -0.5 3 10.5 0.2
-0.5 0 0 -0.5 3 10.5 0.2
0 0.5 0.5 0 0.5 2 0.2
0 -0.5 1 0 -0.5 5 0.4
}
squ925u {; Tony Hanmer 9/12/2003, Designed with BRAZIL
; One of my best Squares
-0.5 0 0 -0.5 3 10.5 0.1428571
0 0.5 0.5 0 0.5 2 0.1428571
0 -0.5 1 0 -0.5 5 0.2857143
0 -0.5 1 0 -0.5 5 0.2857143
0 0.5 0.5 0 0.5 2 0.1428571
}
IFS entries end