Einzelnen Beitrag anzeigen

Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.143 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Füll-Werkzeug für Pixelprogramm

  Alt 3. Feb 2014, 12:54
Wie soll das gehen?

Angenommen du fängst am roten Pixel an zu füllen. Wie willst du da "zeilenweise" alles ausfüllen?
OK! Ein Fill mit Get-/ Setpixel[X,Y] ist viel zu langsam.

Also gehst Du erstmal per Scanline ran. Farbe holen mit Abs(Hintergrund - Diff). Das machst Du horizontal nach links und rechts.
Dann mit einem netten Move aus Deinem Farbrecord/Zeilenspeicher diese Rasterzeile setzen. Rand links und rechts merken. Für Randfill.
Dann entlang der Linie suchen +1/-1 (Y) wenn zu füllen hierfür einen neuen "Stack".

"Im groben". Sorry letzter Fill war noch in Z80 ASM, daher ein bisschen länger her.

Mavarik
  Mit Zitat antworten Zitat