Wir werden ein 100 × 100
Bildelemente großes Bild in
ein Grauwert-Bild transformieren.
Dies heißt, dass es 100 × 100 = 10000
zu ändernde
Bildelemente gibt. Sie können auf das in diesem Beispiel benutzte Bild
an der folgenden Adresse zugreifen:
http://xlogo.tuxfamily.org/pics/transfo.png
Dies ist, wie wir fortfahren werden: Zuerst werden wir uns auf die
obere linke Ecke vom Bild beziehen, nämlich 0. Dann
wird der Igel die ersten 100 Bildelemente der Anfangszeile, von den
ersten 100 der zweiten Zeile gefolgt, prüfen und so weiter. Jedes Mal
wird die Farbe des Bildelements mit findefarbe
, und die
Farbe wird dann verändert zu dem Durchschnitt von den drei [r g
b]
Werten. Hier ist der dazugehörige Code: (Vergessen Sie nicht,
den dateipfad
in der Prozedur zu verändern!)
lerne pixel :list # gebe den Durchschnitt der drei Zahlen [r g b] zurück setze "r erstes :list setze "list ohneerstes :list setze "g erstes :list setze "list ohneerstes :list setze "b erstes :list setze "b runde (:r+:g+:b)/3 rückgabe satz liste :b :b :b Ende
Abbildung 6.5: XLogo macht eine Bildretusche....
lerne grauwert :c wenn :y=-100 [stoppe] wenn :c=100 [setze "c 0 setze "y :y-1] # wir weisen die "Durchschnittsfarbe" des Pixel dem Stift zu setzestiftfarbe pixel findefarbe liste :c :y # wir verwandeln den Pixel in einen Grauwert pixel liste :c :y grauwert :c+1 Ende lerne transform # Sie müssen den Pfad zu dem Bild transfo.png ändern # z.B. mit setzeordner "c:\\my_images ladebild "transfo.png] löschebild versteckeigel setzeordner "/heim/loic ladebild "transfo.png setze "y 0 grauwert 0 Ende