Russian Qt Forum
Ноябрь 24, 2024, 23:06
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
2D и 3D графика
>
Заливка
Страниц:
1
[
2
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Заливка (Прочитано 18023 раз)
panAlexey
Гипер активный житель
Offline
Сообщений: 864
Акцио ЗАРПЛАТА!!!!! :(
Re: Заливка
«
Ответ #15 :
Ноябрь 19, 2009, 22:08 »
Цитата: Igors от Ноябрь 19, 2009, 21:46
Цитата: panAlexey от Ноябрь 19, 2009, 21:24
Нет проблем, но баш на баш.
Поможешь разобраться как вот эту хрень (
http://gmplib.org/
) скомпилировать и подключить к проекту на Qt под мингву, займусь алгоритмом. А нет так нет.
Алексей, в мои планы не входит "что-то с Вас поиметь" - просто все те "заливки" входят в мою специальность/работу. Поэтому я знаю - если человек сможет это сделать с нуля за неделю - он хороший программист. Вы сказали "легко" - отвечайте за свои слова или воэьмите их взад
Я не заявлял что могу откомпилить все что хошь под MinGW - "я умею делать только то что я умею делать"
если не можешь решить мою проблему, то мне нет резона тратить свое время. Халява тут не катит. Если уж жилишь, так от других не требуй.
Записан
Win Xp SP-2, Qt4.3.4/MinGW.
http://trdm.1gb.ru/
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Заливка
«
Ответ #16 :
Ноябрь 19, 2009, 22:23 »
Цитата: panAlexey от Ноябрь 19, 2009, 22:08
если не можешь решить мою проблему, то мне нет резона тратить свое время. Халява тут не катит. Если уж жилишь, так от других не требуй.
Позвольте, батенька, но ведь Вы только что говорили "легко", "на коленке" - а теперь вспоминаете про резоны и свое время
Никакого корыстного интереса/халявы здесь не имею - просто покажите всем как оно "легко" - или нечего трепаться
Записан
panAlexey
Гипер активный житель
Offline
Сообщений: 864
Акцио ЗАРПЛАТА!!!!! :(
Re: Заливка
«
Ответ #17 :
Ноябрь 19, 2009, 22:46 »
Цитата: Igors от Ноябрь 19, 2009, 22:23
Цитата: panAlexey от Ноябрь 19, 2009, 22:08
если не можешь решить мою проблему, то мне нет резона тратить свое время. Халява тут не катит. Если уж жилишь, так от других не требуй.
Позвольте, батенька, но ведь Вы только что говорили "легко", "на коленке" - а теперь вспоминаете про резоны и свое время
Никакого корыстного интереса/халявы здесь не имею - просто покажите всем как оно "легко" - или нечего трепаться
Не позволю
Кто чего там ошибочно думает насчет моего "легко", что типа это было сказано как синоним "пару десятков строк кода и сейчас выложу" он конкретно ошибается.
Мое легко в данном случае надо расшифровывать так: "Я представляю себе алгоритм заливки при работе с матрицей пикселов и написать его не представляется проблемой". Тяжело для меня, это когда я не врубаюсь как это делать. Если мои трудозатраты окупятся, готов выложить алгоритм. Если никто не готов, то нефиг.
Записан
Win Xp SP-2, Qt4.3.4/MinGW.
http://trdm.1gb.ru/
Shilo
Гость
Re: Заливка
«
Ответ #18 :
Ноябрь 20, 2009, 10:42 »
Не стоит изобретать вылосипед.
http://www.antigrain.com/
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Заливка
«
Ответ #19 :
Ноябрь 20, 2009, 11:15 »
Цитата: panAlexey от Ноябрь 19, 2009, 22:46
Мое легко в данном случае надо расшифровывать так: "Я представляю себе алгоритм заливки при работе с матрицей пикселов и написать его не представляется проблемой". Тяжело для меня, это когда я не врубаюсь как это делать. Если мои трудозатраты окупятся, готов выложить алгоритм. Если никто не готов, то нефиг.
Это другой разговор. Конечно, можно сделать но приложить усилия придется. Так что не надо дезориентировать общественность небрежно кидая "да легко"
Цитата: Shilo от Ноябрь 20, 2009, 10:42
Не стоит изобретать вылосипед.
Ну это перебор в другую сторону. По-моему если такая задача возникла (это бывает редко) надо посидеть и написать а не изыскивать/прикручивать нечто. Время то же а пользы больше
Записан
panAlexey
Гипер активный житель
Offline
Сообщений: 864
Акцио ЗАРПЛАТА!!!!! :(
Re: Заливка
«
Ответ #20 :
Ноябрь 25, 2009, 00:18 »
вот тут есть уже готовый паинт
http://www.kolourpaint.org/download.html
Записан
Win Xp SP-2, Qt4.3.4/MinGW.
http://trdm.1gb.ru/
mal
Гость
Re: Заливка
«
Ответ #21 :
Ноябрь 25, 2009, 21:18 »
Странно, что никто не подсказал автору темы про алгоритм заполнения с затравкой.
Есть замкнутая область, есть затравочный пиксел...По-моему тот самый случай.
Д.Роджерс "Алгоритмические основы машинной графики" п.2.22, 2.23, 2.24 тебе в помощь автор.
Ну или любую другую литературу покури на этот счет.
Как сказал Igors - за неделю такой код вполне можно реализовать с нуля.
удачи
«
Последнее редактирование: Ноябрь 25, 2009, 21:32 от mal
»
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Заливка
«
Ответ #22 :
Ноябрь 25, 2009, 21:55 »
(За)травка тут ни при чем
Заполнение треугольника ничем не отличается от заполнения N-угольника. Алгоритм такой
- (самое трудное) чистим полигон, если есть пересечения или внутренние углы > 180 - разбиваем на несколько "нормальных" (конвексных) полигонов и заливаем каждый
- находим точки с min_Y и max_Y. Идем сверху вниз. Начинаем с 1 (или 2) верхних точек и заканчиваем в 1 (или 2) нижних точках. На каждом шаге вычисляем x_left и x_right "спускаясь" по левому и правому краям и заливаем от (x_left, y) до (x_right, y)
Разумеется, нет нужды всем этим заниматься если можно использовать drawPolygon или базовую графику OC.
Записан
mal
Гость
Re: Заливка
«
Ответ #23 :
Ноябрь 25, 2009, 22:19 »
область может быть любой формы - возьмем контур берега озера к примеру. Я не парюсь в этом случае с полигонами, а использую затравку для заливки.
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Заливка
«
Ответ #24 :
Ноябрь 25, 2009, 22:33 »
Цитата: mal от Ноябрь 25, 2009, 22:19
область может быть любой формы - возьмем контур берега озера к примеру. Я не парюсь в этом случае с полигонами, а использую затравку для заливки.
Ну если есть маска/цвет - то жить намного проще
Записан
panAlexey
Гипер активный житель
Offline
Сообщений: 864
Акцио ЗАРПЛАТА!!!!! :(
Re: Заливка
«
Ответ #25 :
Ноябрь 26, 2009, 01:09 »
Цитата: Igors от Ноябрь 25, 2009, 22:33
Цитата: mal от Ноябрь 25, 2009, 22:19
область может быть любой формы - возьмем контур берега озера к примеру. Я не парюсь в этом случае с полигонами, а использую затравку для заливки.
Ну если есть маска/цвет - то жить намного проще
конечно проще, это же не векторный редактор.
Записан
Win Xp SP-2, Qt4.3.4/MinGW.
http://trdm.1gb.ru/
BigZ
Гость
Re: Заливка
«
Ответ #26 :
Ноябрь 26, 2009, 09:47 »
http://www.ad.cctpu.edu.ru/Personal/Anton/ZHtml/CompGraph/idz%5CFill%5CFill.htm
http://skyfamily.ru/sprav/string/algoritm/
http://ermak.cs.nstu.ru/kg_rivs/graf05.htm
Google + алгоритм заливки области
Записан
Страниц:
1
[
2
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...