Einzelnen Beitrag anzeigen

MisterKnister

Registriert seit: 21. Feb 2012
7 Beiträge
 
#1

Random Grauwert für Image/Canvas

  Alt 8. Mär 2012, 15:45
Nachdem mir letztes mal gut und schnell geholfen wurde,
und ich mal wieder nicht weiterkomme muss ich leider wieder eine Anfrage starten:

Ich möchte dass die Pixel per Zufall auf einen Grauwert gesetzt werden (also 0 bis 255).
Allerdings handelt es sich um eine Bitmap und deswegen funktioniert es mit random(255) leider nicht.

Meine Billigvariante überzeugt mich leider nicht, und google will nicht mein Freund sein.
Wäre super wenn ihr mir helfen könntet. Schonmal vielen Dank!

Habe "Umrechnungsformeln gefunden" aber die sind irgendwie immer verschieden und ich wüsste nicht wie ich per random alle möglichen Farben ansprechen kann und diese in einen Grauwert umrechnen könnte.

Biiligvariante:
Code:
procedure TForm1.Smooth1Click(Sender: TObject);
var
i, j : Integer;
color : Integer;
const
Rdm: array[0..2] of TColor = (clBlack, clGray, clWhite);

begin
  randomize;

 for i:= 0 to xmax do
   for j := 0 to ymax do
     Image2.Canvas.Pixels[i, j]:= Rdm[Random(Length(Rdm))];
end;
  Mit Zitat antworten Zitat