Авторизация

Логин: Пароль:
Регистрация Забыли свой пароль?

Фракталы

Страницы: 1
Фракталы
В общем по учебе, на таком предмете как Машинная графика, рассказали про фракталы. Меня это дело заинтересовало и я написал такую простенькую программу для просмотра фрактала на основе множества Мандельброта. Можно выделять прямоугольник для увеличения этого участка изображения.

Рисунок
Немного увеличив:
Рисунок

скачать программу и исходники:
http://javatouch.ru/downloads/fractals.rar

И такой вопрос. Кто-нибудь знает как избавиться от ограничения формата real. Дело в том что увеличивать можно не бесконечно, потом заканчивается этот формат, и рисунок превращается в кубики. В java есть такой класс как BigDouble или что-то в этом роде. Есть ли такие классы в Delphi?
Изменено: rozpants - 18.09.2010 12:02:21
Попробуй Extended, если на паскале то Double
даже и не знал smile:(

Спасибо
Изменено: Евгений Ульяров - 17.10.2010 19:28:23 (не дописал)
c:\linux\bin
c:\linux\etc\X11\xorg.conf
d:\home\user
Страшный сон линуксоида.
Спасибо.
Хотелось бы вообще избавиться от ограничения типов.
Для этого надо реализовать "Длинную арифметику".
В принципе, ничего сложного: создаёшь тип-массив, например, на 1000 байт, и определяешь для него операции сложения, умножения, деления и т. д.
Столбиком складывать и умножать что ли?)
полностью избавиться не выйдет, так как компу нужно знать сколько выделять памяти по то или иное значение.
Ну хотя бы значительно увеличить разрядность. Вон число пи до миллиардного знака высчитывают и ничего ))
Тип - Порог - Максимальное значение - Количество значащих цифр - Объем (байт)

Real 2.9E-39 - 1.7Е38 - 11-12 - 6

Single 1.5E-45 - 3.4Е38 - 7-8 - 4

Double 5.0E-324 - 1.7Е308 - 15-16 - 8

Extended 3.4E-4932 - 1.IE4932 - 19-20 - 10

Comp 1.0 - 9.2Е18 - 19-20 - 8

Currency 0.0001 - 9.2Е14 - 19-20 - 8
С подобных типов вроде все перечислил, а тебе важна величина значения или точность?
Важна точность, с Extended заглянул чуть подальше smile:)
Ну да ладно.
Цитата
Столбиком складывать и умножать что ли?)

Цитата
Ну хотя бы значительно увеличить разрядность. Вон число пи до миллиардного знака высчитывают и ничего ))

Ну да, для твоих задач можно и столбиком. А вообще все эти операции можно оптимизировать, и ассемблер использовать.
А в числе pi любой знак можно вычислить, даже не зная предыдущие smile:D
P. S. Можно ведь в фрактале начиная с определённого момента подменять глубокую структуру на предыдущую, менее глубокую.
В фрактале мандельброта, нет такого чтобы при определенном увеличении картинка повторялась, фигуры просто похожи, но имеют разный цвет и все равно разные узоры. По крайней мере с типом Extended я не дошел до того чтобы увидеть точно повторение картинки.
Значит остаётся писать длинную арифметику. Работать, скорее всего, будет медленно, но ничего не поделаешь. Потом можно попытаться оптимизировать.
Страницы: 1
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)