Bitmap Alpha - Iskanje idealnih pravokotnikov?

Vse o grafiki, canvasu, directdraw, itd.
Odgovori
chavlji
Prispevkov: 5
Pridružen: 29.12.2011 14:26:37

Bitmap Alpha - Iskanje idealnih pravokotnikov?

Odgovor Napisal/-a chavlji » 21.01.2012 18:25:56

Problem je sledeč. Imam sliko (png), ki ima določene transparentne luknje (če je alpha pixla manj od 255 je transparenten). Kako bi na enostaven način našel idealne pravokotnike, ki bi zapolnili vse luknje, pri tem pa zajeli čim manj netransparentnih pixlov? Transparenco vsakega pixla berem od leve proti desni od prve vrstice do zadnje.

Slika

Delam nek layering png slik in bi rad spodaj zrisal samo tisti del ozadja, ki ga bom dejansko rabil (tam kjer je slika neprosojna, bo ozadje prekrila 100%, torej ozadja ne rabim.

Kje bi lahko nešl kaj več na to temo?

Hvala za vse ideje!

Silver_War
Prispevkov: 664
Pridružen: 01.06.2004 14:50:41

Re: Bitmap Alpha - Iskanje idealnih pravokotnikov?

Odgovor Napisal/-a Silver_War » 23.01.2012 06:03:53

Določanje pravokotnikov okoli posameznih lukenj (R7 primer iz tvoje slike) niti ni tako zelo težko. Vse kaj moraš naredit, je da najdeš posamezen pixel, ki je javižji, najnižji, najbolj na levi in najbolj na desni. Potem pa pozicije teh pixlov uporabiš za določanje stranic pravokotnika. Oblikovanje pravokotnikov okoli ostalih primerov, je pa nekoliko bolj težko, saj so povezani med seboj, razen če so različne alpha vrednosti med luknjami in potmi, med njimi. Ker potem tako kot pri R7 primeru oblikuješ pravokotnik, le da gledaš samo za pixle z prav določeno alpha vrednostjo.

Drugače pa mislim, da bi lahko za rešitev tvojega problema tudi uporabil Regions http://msdn.microsoft.com/en-us/library ... s.85).aspx
Sam s tem sicer nimam veliko izkušenj.

Odgovori