Kezdőoldal » Számítástechnika » Programozás » C#-ban hogyan kell egy Bitmapb...

C#-ban hogyan kell egy Bitmapban kitölteni egy színnel egy körülhatárolt alakzatot?

Figyelt kérdés
Úgy szeretném, mint ahogy az MSPaint csinálja, hogy az egymás melletti egyforma színű pixelek színét változtatja meg.
2011. jún. 20. 13:07
 1/6 anonim ***** válasza:
Ehhez nem programozási tudás kell, hanem programozási logika, szerintem. Fogalmam sincs, mert még soha nem csináltam. De gondolom beolvasod a fájlból a bájtokat és az alapján kitudod találni, hogy mitartozik az alakzaton belülre és mi kívülre. Nyílván az alakzat olyan pontokból áll, amik érintik egymást. Vannak sorok és oszlopok, ez alapján már csak programozni kell. De lehet van rá más megoldás, nekem ez az ötletem.
2011. jún. 20. 13:23
Hasznos számodra ez a válasz?
 2/6 anonim ***** válasza:

Gondolom azt tudod, hogy a pixelek úgy vannak eltárolva, hogy RGB alapon, 3 bájton.

De csinálhatod képfelismeréssel is, de szerintem úgy lassabb sokkal.

2011. jún. 20. 13:26
Hasznos számodra ez a válasz?
 3/6 anonim ***** válasza:

Fogod, elmented a kijelölt pixel színét. A pixelt (referenciát rá, a koordinátáit, akármit amivel tudod azonosítani) berakod egy sor adatszerkezetbe.

Ezután ezt ismétled:

1. Kiveszel a sorból egy pixelt.

2. Befested.

3. A környező négy pixelt berakod a sorba.


Nagyon lassú lesz, tele felesleges festegetéssel, de működik. Ezután lehet optimalizálni.

2011. jún. 20. 14:39
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:
Gyááá, az pont kimaradt a 2. lépésből, hogy csak akkor hajtod végre a 2-3-t, ha ő az eredeti színű.
2011. jún. 20. 14:39
Hasznos számodra ez a válasz?
 5/6 A kérdező kommentje:
Sorry, azt kihagytam a kérdésből, hogy én meg tudnám valósítani így, ahogy ti írjátok, csak azt hittem, van valamilyen assembly, amiben van esetleg egy névtér, amiben van talán egy kis osztályocska, aminek van egy szép kis metódusa ami végrehajtja nekem gyorsan :) De hát akkor nincs sajnos. Viszont így tényleg baromi lassú lesz, egy gyengébb gépre eresztem a programot, ott már nem menne elvárásaimnak megfelelően :\ Unsafe kóddal lehetne jól optimalizálni, de ahhoz még nem igazán konyítok. De azért köszi a segítséget :)
2011. jún. 20. 23:46
 6/6 anonim ***** válasza:
Jézusom, képfeldolgozást NYÍLVÁN unsafe kóddal csinálsz. Nem majd mindig x,y koordináta alapján lekéred, ellenőrzött kóddal, persze.
2011. jún. 21. 07:25
Hasznos számodra ez a válasz?

További kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!