floodfill pascal

0

Chciałbym wypelnic obszar nie do lini granicznej tylko obszar o kolorze ktorego jest pixel od ktorego zaczynam wypełnianie.

floodfill w delfi ma opcje fillstyle i jest zajebista ale nie ma jej w pascalu, w helpie jest jakies floodfillsurface ale nie jest napisane jak tego uzyć.

z gory thx za pomoc ;]</ort>

0

Napiszę tak. na pewno można takie wypełnienie zrobić (sam tego używałem), ale jest naprawdę strasznie wolne. Nie wiem do czego Ci jest to potrzebne, ale w 90% jest to operacja zbyt wolna, by była opłacalna. Może się ostatecznie nadawać do jakiegoś edytora a'la paint, ale to chyba w TP nie najlepszy pomysł coś takiego robić.

0

własnie robie dodpainta ;] i w sumie mam funkcje wypelniania na rekurencjach ale działa tylko na małe obszary bo jest za mało pamięci :\ No ale w delphi jest i działa to na pewno mozna to odtworzyc w pascalu

0

aby sie bawic w style wystarczy ustawic odpowiedni pattern
mozesz wybrac z dostepnych albo zrobic swoj.

np:

const
patternx:fillpatterntype=
($AA,$55,$AA,$55,$AA,$55,$AA,$55{,
($33,$33,$CC,$CC,$33,$33,$CC,$CC)});

begin
setfillpattern(patternx,color);
floodfill(x,y,color);
end;

setfillstyle daje podobne rezultaty.

ps. w katalogu example masz demko ze stylami wypelnienia, zobacz jakie tam sa te patternyu i wartosci setfillstyle

0

nie chodzi o typ wypełnienia tylko sposób...

1 użytkowników online, w tym zalogowanych: 0, gości: 1