Rekursiivinen flood fill?

Miten toimii?

Hei,

Voisiko joku selittää, miten tämä wikipedian esiemerkki flood fill-algoritmista toimii?
http://en.wikipedia.org/wiki/File:Recursive_Flood_Fill_4_(aka).gif

Scrpti on tällainen:
sub FloodFill4
{
my ($x, $y) = @_;

if ($im->getPixel ($x, $y) == $colfill)
{
$im->setPixel ($x, $y, $colpen);
WriteImage ();

FloodFill4 ($x, $y 1);
FloodFill4 ($x, $y-1);
FloodFill4 ($x 1, $y);
FloodFill4 ($x-1, $y);
}
}

Miksi täyttö lähtee esimerkissä alaspäin, vaikka ensimmäinen rivi koodissa on x, y 1?

Entä miksi algoritmi päättää jatkaa juuri aloitussolun vasemmasta solusta, kun vasemman alalaidan neliö on väritetty?

2

836

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • pelkkää päättelyä

      1) y 1 on yleensä alaspäin, bittikartat alkavat yleensä vasemmasta yläkulmasta.
      2) Koska kun alussa kuljetaan alas, ei päästä muualle kuin vasemmalle. Siitä täytetään alas. Kun vasemmanpuoleinen lohko on täytetty kokonaan, jatketaan ylös (aloituskohdan vasemmanpuoleinen pikseli). Tällöin päästään rekursion juuressa toiseen FloodFill4:ään ja jatketaan ylös.

    • metodi

      kannattaa käyttää scanline-floodfill algoritmia, huomattavan paljon nopeampi

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Olet nuorempi nainen aivan ihana

      Tykkään susta ihan valtavasti ❤️❤️
      Ikävä
      56
      1248
    2. Pitkäaikaistyöttömyys Suomessa harvinaisen paha

      Karut työttömyysluvut, korkein luku yli neljännesvuosisataan.
      Maailman menoa
      154
      1202
    3. Mitä vastaisit

      Jos kysyisin, että lähdettäisiinkö lenkille yhdessä? Vain sinä ja minä, kaksin? Miehelle
      Ikävä
      60
      1115
    4. Tiedän ettet tehnyt tahallasi pahaa

      Asiat tapahtuivat, ristiriidat ovat meitä vahvempia. Olemmeko me niin vahvoja, että selviämme tästäkin vielä? Aika paljo
      Ikävä
      102
      1054
    5. Janni Tikkanen ohjattiin miesten pukuhuoneeseen

      Vai olisko sittenkin Janne Tikkanen? Jos siellä jalkojen välissä on miesten killukkeet, mieshän tämä Janni on. Ja kuuluu
      Kajaani
      50
      1011
    6. Rakastan ja ikävöin sinua

      Ei helpota tämä ikävä millään. Pelkäsin että tämä ajanjakso tulee olemaan juuri näin vaikea. Siksi halusin ennen tätä pä
      Ikävä
      56
      843
    7. Nyt tiistain galluppi alkaa....

      Kuka on sun elämän rakkaus? Ketä kaipaat edelleenkin? Nyt nimiä vaan rohkeesti tuohon alle.Tää on ikäväpalsta, eikä mikä
      Ikävä
      55
      838
    8. Miten aiot saada kaivattusi?

      1) loukuttamalla 2) kidnappaamalla 3) huijaamalla 4) jokin muu, mikä?
      Ikävä
      54
      785
    9. Upea takamus

      Sulla on nainen upea takamus.
      Ikävä
      32
      762
    10. KIIKKUSTUOLI

      Aloitetaan taas uudella alustalla, nuo pitkiksi venyneet ovat hankalia etsiä uusia viestejä, joskus vastauksia tulee sin
      80 plus
      73
      741
    Aihe