GetPixel i Bitmap

0

Mam program w którym użytkownik rysuje linie z linii mają powstać figury geometryczne. Figury te chciałbym wypełnić kolorem. Znalazłem już algorytm wg którego można to zrobić. Teraz potrzebuję sprawdzania czy piksel ma określony kolor (czarny). Mam taki kod:

Bitmap rysunek;
Pen pisak = new Pen(Color.Black, 1);
rysunek = new Bitmap(pictureBox1.Width, pictureBox1.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);
pictureBox1.Image = rysunek;

W ten spsób łącze punkty zaznaczone przez użytkownika:
Graphics.FromImage(rysunek).DrawLine(pisak, x[i], y[j]);
A tak sprawdzam czy piksel jest czarny:

if (rysunek.GetPixel(i, j) == Color.Black)
{
  MessageBox.Show("W petli");
}

Napis "w petli" nigdy mi się nie pojawia a powinien. Kiedy wprowadziłem dodatkową zmienną, w której był zapisywany kolor sprawdzanego piksela

  kolor = rysunek.GetPixel(j, i);

to taką wartość miała zmienna kolor w pikselu (pomalowanym na czarno)": {Name=ff000000, ARGB=(255, 0, 0, 0)}"
Nie wiem co przeoczyłem.

0

Jak dla mnie to ta wartość jest prawidłowa. Alpha na 255, R, G i B, równe 0 - to chyba kolor czarny, nie?
Może lepiej sprawdzić tak?

if (rysunek.GetPixel(i, j) == Color.FromArgb(0, 0, 0))

0

No tak.. ale skoro maluję na Color.Black a później chcę sprawdzić, które piksele są Color.Black to dostaję odpowiedź że żadne. Właśnie to mnie denerwuje.
Dzięki za odpowiedź problem udało się w ten sposób rozwiązać.

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