Code Monkey home page Code Monkey logo

Comments (8)

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

legalize[CodePlex]
Thanks for your continued assistance on helping me diagnose this problem, Hal. I am thinking that when I return to this code that I would like to address this issue and any outstanding crashes and then make that the first release of Iterated Dynamics that
is not a beta.

from iterated-dynamics.

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

Hal9009[CodePlex]

...in the (often buggy) v options screen. If this screen appears at all ..., the aspect ratio is 1 rather than 0.75, so changing that value to 0.75 then causes the zoom box to show correctly proportioned when rotated. - [Simon_Snake Oct 1, 2012]

Since the v screen is so buggy, I've always avoided it. If I understood you correctly -- you're saying that the v screen can show a correctly proportioned rotated zoom box (after an initial correction of the X-magnification to 0.75).
I've not tried this to verify my understanding of what you said, because I don't enjoy trying to use the v screen. ;-)

To work around the Fint4WinB5 rotated zoom box aspect ratio problem, I:

avoid the v screen, and after rotating a zoom box and hitting Enter I then (on the z screen):

reset X-mag to 0.75, and also reset Skew to 0
I do the immediately preceeding two steps after each rotation -- if I need to see the correct fractal region (and not the distorted one.) Occasionally this isn't recessary, but most of the time it is.
I use a low resolution and g[uess] mode for Passes on the x screen to speed up seeing a preview of the just-rotated image to see if I need to make further zoom and/or rotation adjustments.

This gives a correct aspect ratio view of the correct location in the complex plane as far as I can tell.

The above steps are how I calculate around half of my variations on Jim Muth's images I post on my web site:
http://www.emarketingiseasy.com/TESTS/FOTD/jim_muths_fotd.html

I use DOS Fractint for the other half. I always check Fint4WinB5's rendering of Jim's FOTD against his version to verify that Fint4WinB5 is doing it correctly. Other than the times when it shows an all single color screen -- fortunately relatively infrequently
-- it essentially always gets Jim's images correct.

The only differences I've ever seen between a DOS Fractint image and the same Fint4WinB5 X-magnification-adjusted image was at extremely high magnification images, where some of the single pixels in a grainy area might be slightly different in location
and density.

Hal Lane

from iterated-dynamics.

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

Simon_Snake[CodePlex]
I am not sure why but the problem is shown in the (often buggy) v options screen. If this screen appears at all (it often causes a buffer overrun crash), the aspect ratio is 1 rather than 0.75, so changing that value to 0.75 then causes the
zoom box to show correctly proportioned when rotated.

Hope that makes some sense.

Simon

from iterated-dynamics.

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

Hal9009[CodePlex]
Re:
Every fractal rendered by Fractint for Windows beta 5 is too wide in the X direction
by a factor of 1.3333...

It seems that the two potentially most useful observations about the aspect ratio problem

in Fractint for Windows beta 5, are:

that the default M-set image that's created by Fractint for Windows beta 5 when starting up

the program has an X Magnification factor ( z F6 screen ) of 0.75 in order to achieve an

undistorted image, while the DOS version has an X Magnification factor of: 1.0, and

that Fractint for Windows beta 5's zoom box distorts when rotated ( PgUp, CtrlKeypadPlus,

CtrlKeypadPlus, etc. ) and the image specified by the distorted zoom box is distorted.
DOS Fractint's zoom box is undistorted while rotated and creates an undistorted rotated image.

I've put screen caps of this behavior onto a web page for a quick overview of the problem:
http://www.emarketingiseasy.com/TESTS/FOTD/Rotated_zmBoxes_DOS_Fint4Win_beta5.html
or
http://tinyurl.com/zoom-boxes

Hal Lane

from iterated-dynamics.

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

Hal9009[CodePlex]
Unfortunately, my carefully spaced table columns were collapsed by the comment system.

Here are the tables again, using non-collapsable periods instead of spaces:

On the properly proportioned Mandelbrot set initially calculated by default at 640x480 --
on the TAB screen (and on the more complete z F6 screen and z F6 F7 screen) are:

....................F4Win-b5 . DOS Fractint
............................X . Y .... X .. Y
top-l............... -2.5 1.5 .. -2.5 1.5
bot-r............... 1.5 -1.5 .. 1.5 -1.5
Mag:............... 0.6667 .. 0.6667
X-Mag-Factor: 0.75 ... 1.0

. . .

On the 90 degree rotated 640x480 Mandelbrot's TAB screen (and more complete z F6 screen

and z F6 F7 screen) are:

.........................F4Win-b5 . DOS Fractint
..............................X .. Y ........ X .. Y
top-l: ................. 1.5 1.5 ..... 1.0 2.0
bot-r: ................ -2.5 -1.5 .. -2.0 -2.0
bot-l: ................ -2.5 1.5 ... -2.0 2.0
Mag: .................. 0.5 ! .......... 0.6667
X-Mag-Factor: 1.3333 ! .... 1.0

Hal Lane

from iterated-dynamics.

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

Hal9009[CodePlex]

When you say too wide, are you referring to the image dimensions or the region in the complex plane?
If the latter, does the TAB screen show the proper region coordinates?

Good questions!

Notes:

All procedures done and data taken while using the default 640x480 GDI video mode (F5).
Fractint for Windows beta 5 == F4Win-b5

On the properly proportioned Mandelbrot set initially calculated by default at 640x480 --
on the TAB screen (and on the more complete z F6 screen and z F6 F7 screen) are:
F4Win-b5 DOS Fractint
X Y X Y
top-l -2.5 1.5 -2.5 1.5
bot-r 1.5 -1.5 1.5 -1.5
Mag: 0.6667 0.6667
X-Mag-Factor: 0.75 !!!! 1.0

These values all match -- except the X-Mag-Factor -- and the images are identical in appearance

and pixel size.

Rotating this default Mandelbrot set 90 degrees in Fractint for Windows beta 5 using:

PageUp
ctrl+Keypad+
ctrl+Keypad+
ctrl+Keypad+
etc. ... repeat until you rotate the zoom box 90 degrees.
Enter

calculates a distorted Mandelbrot set in the same 640x480 pixel window. The largest

circular bulb of the M-set (tangent to the main cardoid area) has become an oval.

This figure should not be distorted (and remains circular in DOS Fractint.)

On the 90 degree rotated 640x480 Mandelbrot's TAB screen (and more complete z F6 screen

and z F6 F7 screen) are:
F4Win-b5 DOS Fractint
X Y X Y
top-l 1.5 1.5 1.0 2.0
bot-r -2.5 -1.5 -2.0 -2.0
bot-l -2.5 1.5 -2.0 2.0
Mag: 0.5 !!!! 0.6667
X-Mag-Factor: 1.3333 !!!! 1.0

It appears that the authors of DOS Fractint have left the Magnification the same
during the rotation, whereas F4Win-b5 changes the fractal's Magnification from 0.6667 to 0.5 .

The ratio of two program's extents in the Y-direction in the complex plane for the

rotated M-set is:
F4Win-b5 / DOS = (1.5-(-1.5)) / (2.0-(-2.0)) = 3 / 4 = 0.75

The ratio of two program's Magnifications for the rotated M-set is:
F4Win-b5 / DOS = 0.5 / 0.6667 = 0.75

So, these ratios correspond as expected.

But the ratio of two program's extents in the X-direction in the complex plane for the

rotated M-set is:
F4Win-b5 / DOS = (1.5-(-2.5)) / (1.0-(-2.0)) = 4 / 3 = 1.33333

Note the discrpancy in the ratio of extents in the X-direction between the two programs

when compared to the ratio of Magnifications and ratio of extents in the Y-direction.

Since the ratios of the extents in the complex plane in the X and Y directions
for the two programs aren't the same, this means that the fractal calculated by the

two programs will be different.

I believe that the cause of the distortion may be related to where the corners of the

rotated zoom box are located after its rotation. When the 90 degree rotated zoom

boxes of the two programs are compared, the dotted lines' corners are in different places

and the zoom boxes have different aspect ratios.

Assuming that the corners of the zoom box correctly indicate where in the complex

plane the image extent will be calculated corresponding to, I see that the different

locations of the zoom box corners will cause the aspect ratio of the 90 degree
rotated image to change from the original in F4Win-b5.

Basically, the aspect ratio of the zoom box in Fractint for Windows beta 5 changes

as it is rotated. This then selects a stretched (squashed) aspect ratio for the
calculated rotated fractal. The zoom box in DOS Fractint keeps its aspect ratio during its rotation

and the calculated rotated image maintains its aspect ratio.
Additional Factoid
If after a 90 degree rotation of the zoom box, I go to the F4Win-b5 Image
Coordinates screen with: z F6 and change the X Magnification Factor

from: 1.3333
to: 0.75

the aspect ratio of the M-set is corrected -- the oval is returned to a circle.

However, the overall size of the M-set is reduced. The circular bulb has gone
from its original ~80 pixels to ~60 pixels -- that is, the overall (corrected aspect ratio)

M-set is reduced in pixel size by a factor of 0.75 in both X and Y in the

640x480 window from the original size of the unrotated M-set. Presumably this can be

corrected with a compensating increase in the entire fractal's Magnification by 1.333.

  • Hal Lane

from iterated-dynamics.

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

legalize[CodePlex]
When you say too wide, are you referring to the image dimensions or the region in the complex plane?

If the latter, does the TAB screen show the proper region coordinates?

from iterated-dynamics.

LegalizeAdulthood avatar LegalizeAdulthood commented on June 7, 2024

Duplicate of #19

from iterated-dynamics.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.