drcpu utworzono 12 lipca 2011 utworzono 12 lipca 2011 (edytowane) Witam, tworzę painta w c++ z użyciem biblioteki allegro. Mam do was pytanie jak wypełnić obszar wewnątrz narysowanego rysunku??. tzn, narysuję jakieś koło, prostokąt czy inne jakieś fikuśne zamknięte kształty i kliknę w środek to on cały się wypełnia wybranym kolorem, tak jak w paincie jest. Proszę o pomoc jak to zrobić bo nie mam pomysłów :/, myślałem nad takim czymś jak pobieranie piksela i porównywanie jego koloru ale to nie wyjdzie :/, liczę na waszą pomoc. Pozdrawiam
Mistrz programowania komentarz 3 sierpnia 2011 komentarz 3 sierpnia 2011 (edytowane) [quote]myślałem nad takim czymś jak pobieranie piksela i porównywanie jego koloru ale to nie wyjdzie :/[/quote] A czemuż to nie wyjdzie? Pobierasz kolor piksela na który klikasz, a nastepnie rekurencyjnie kolorujesz wszystkie piksele wokół, które mają taki sam kolor, jak poprzedni przed pokolorowaniem. I od razu ubezpiecz się przed możliwością, gdy pierwszy kliknięty piksel ma już taki kolor, na jaki kolorujesz - wtedy funkcja będzie powtarzać się w nieskończoność, więc musisz od razu ją przerwać.
Gość komentarz 24 sierpnia 2011 komentarz 24 sierpnia 2011 [quote name='::~BiOs~::' date='12 lipiec 2011 - 11:50' timestamp='1310467974' post='1298703'] myślałem nad takim czymś jak pobieranie piksela i porównywanie jego koloru ale to nie wyjdzie [/quote] Dlaczego tak myślisz? Zawsze coś musi wyjść. Według mnie masz fajne pomysły. Zrób tak będzie ładnie. Pozdrawiam.
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.