Zum Hauptinhalt springen

Basic drawing

Was dieses Beispiel zeigt​

Zeichnen Sie in der Nähe der oberen linken Ecke einen Pixel, eine Linie und mehrere Formen in Farbe und wiederholen Sie sie dann in allen vier Bildschirmdrehungen. Das Ergebnis ist ein symmetrisches Muster rund um den Bildschirm, das mit einem einzigen Refresh angezeigt wird.

Beispielcode​

"""Draw shapes around the upper left corner, then rotate the screen.

Creates a symmetrical-looking pattern of various shapes.
"""

# Include all the required libraries
from inkplate7spectra import Inkplate

# Create Inkplate object
display = Inkplate()


# Initialize the display, needs to be called only once
display.begin()

# Let's draw some shapes!
# This example will draw shapes around the upper left corner, and then rotate the screen
# This creates a symmetrical-looking pattern of various shapes
for r in range(4):
# Sets the screen rotation
display.set_rotation(r)

# All drawing functions
# Available colors are:
# Black, white, green, blue, red, yellow, orange
display.draw_pixel(100, 100, display.BLACK)
display.draw_rect(50, 50, 75, 75, display.GREEN)
display.draw_circle(200, 200, 30, display.BLUE)
display.fill_circle(300, 300, 30, display.RED)
display.draw_fast_hline(20, 100, 50, display.BLACK)
display.draw_round_rect(100, 10, 100, 100, 10, display.BLACK)
display.fill_round_rect(10, 100, 100, 100, 10, display.YELLOW)
display.draw_triangle(300, 100, 400, 150, 400, 100, display.BLACK)

# Reset the rotation
display.set_rotation(0)

# Show on the display
display.display()

Der Kommentar in der Datei nennt Orange, aber das Modul definiert nur sechs Farben: BLACK, WHITE, YELLOW, RED, BLUE und GREEN.

Verwendete Funktionen​

Inkplate()returns Inkplate

Erstellt das Display-Objekt aus dem Modul inkplate7spectra.

ReturnsDas Display-Objekt.

display.begin()returns bool

Richtet das Board und einen weißen Framebuffer ein. Rufen Sie es einmal auf.

ReturnsTrue.

display.set_rotation(x)returns None

Legt die Drehung fest, 0 bis 3. Bei den Drehungen 1 und 3 werden Breite und Höhe vertauscht (480 × 800).

ReturnsNichts.

display.draw_pixel(x, y, c)returns None

Setzt einen Pixel auf die Farbe c.

ReturnsNichts.

display.draw_rect(x, y, w, h, c)returns None

Zeichnet einen Rechteckumriss mit der oberen linken Ecke bei (x, y).

ReturnsNichts.

display.draw_circle(x, y, r, c)returns None

Zeichnet einen Kreisumriss mit dem Mittelpunkt (x, y) und dem Radius r.

ReturnsNichts.

display.fill_circle(x, y, r, c)returns None

Zeichnet einen gefüllten Kreis mit dem Mittelpunkt (x, y) und dem Radius r.

ReturnsNichts.

display.draw_fast_hline(x, y, w, c)returns None

Zeichnet eine horizontale Linie mit der Länge w Pixel, beginnend bei (x, y).

ReturnsNichts.

display.draw_round_rect(x, y, q, h, r, c)returns None

Zeichnet einen abgerundeten Rechteckumriss mit der Breite q, der Höhe h und dem Eckenradius r.

ReturnsNichts.

display.fill_round_rect(x, y, q, h, r, c)returns None

Zeichnet ein gefülltes abgerundetes Rechteck mit der Breite q, der Höhe h und dem Eckenradius r.

ReturnsNichts.

display.draw_triangle(x0, y0, x1, y1, x2, y2, c)returns None

Zeichnet einen Dreiecksumriss durch die drei Eckpunkte.

ReturnsNichts.

display.display(leave_on=False)returns None

Sendet den Framebuffer an das Panel und aktualisiert es.

ReturnsNichts.

Jedes Farbargument ist ein Farbindex; verwenden Sie die Klassenkonstanten wie display.RED. Ein Wert über 5 wird ignoriert.

Was Sie erwarten können​

Nach dem Refresh erscheint dieselbe Gruppe von Formen viermal, jeweils von einer Ecke des Bildschirms aus: schwarze Linien und Umrisse, ein grüner Quadratumriss, ein blauer Kreisumriss, ein gefüllter roter Kreis und ein gefülltes gelbes abgerundetes Quadrat. In der Shell wird nichts ausgegeben.

🔗Vollständiges Beispiel öffnen

examples/inkplate7spectra/basic_color.py

→