Pixelflut

Zeichne Pixel auf eine gemeinsame Zeichenfläche! Deine Pixel bleiben so lange stehen, bis jemand anderes etwas darüber zeichnet.

Die Zeichenfläche ist 256 Pixel breit und 144 Pixel hoch. Der Pixel links oben hat die Koordinaten (0, 0), der Pixel rechts unten hat die Koordinaten (255, 143). Verwende die Methode self.set_pixel(x, y, r, g, b), um einen Pixel zu setzen, wobei r, g und b jeweils die Intensität von rot, grün und blau im Bereich von 0 bis 255 angeben.

Du darfst natürlich auch die ganze Zeichenfläche überschreiben!

from pixelflut import Pixelflut


class Task(Pixelflut):
    def run(self):
        # points = [[128, 72]]
        # r = 50
        
        # points = [[100, 72], [200, 90]]
        # r = 140
        
        points = [[90, 92], [120, 40], [150, 92], [180, 40]]
        r = 250

        for y in range(144):
            for x in range(256):
                d = 0
                for p in points:
                    dx = x - p[0]
                    dy = y - p[1]
                    d += (dx * dx + dy * dy) ** 0.5
                d -= r
                c = 0 if d < 0.0 else 255
                self.set_pixel(x, y, c, c, c)
        for p in points:
            self.set_pixel(p[0], p[1], 255, 0, 0)
Impressum und Datenschutz