Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Кто делал заливку попиксельно. / 3 сообщений из 3, страница 1 из 1
15.12.2003, 18:38
    #32353144
*E*G*O*R*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто делал заливку попиксельно.
Всем привет это опять Я. с плохими вопросами.
Люди мне нужно написать прогу. которая делает заливку.
Только эту заливку нужно делать по пиксельно.
ТОисть есть какойто рисунок, пользователь указывает координаты пикселя.
и все пиксели в этой области (в которую попадает этот пиксель) закрашиваются.

За рание благодарен.
...
Рейтинг: 0 / 0
15.12.2003, 18:45
    #32353155
Nick74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто делал заливку попиксельно.
Самый красивый и эффективный метод, который я знаю: берем пустую очередь. Кидаем в нее точку. Далее цикл: Берем точку из начала очереди, проверяем четыре соседние точки, если их надо закрашивать, то кидаем их в хвост очереди. Закрашиваем текущую точку. Удаляем ее из очереди. Повторять пока очередь не будет пуста. Ну очень красиво, и очень просто. Размер очереди порядка периметра (А не порядка площади, как в случае с рекурсией)
...
Рейтинг: 0 / 0
15.12.2003, 19:37
    #32353213
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кто делал заливку попиксельно.
если нужно нарисовать полигон заданный отрезками, можно использовать следующий алгоритм.
сканируешь прямоугольник в который вписывается этот полигон и при пересечении любого отрезка инвертируешь флаг пера. типа поднт/опущен.
при совмещении этого алгоритма с алгоритмом бризинхема скорость получается довольно приличная, но и язкеовое описание нехилое.
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Кто делал заливку попиксельно. / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]