Blinkenpaint - Klassen

Das Grafiktool Blinkenlights ist ein sehr einfaches Beispiel einer Anwendung für die Pixelgrafik, vergleichbar mit der Erstellung von Icons oder Handylogos.
Durch den geringen Attribute- und Methodenumfang ist diese Grafikanwendung besonders für die Einführung der Objektorientierung im Bereich der Pixelgrafik nach einem vereinfachten, didaktisch angepassten UML-Standard geeignet.
Und so müssten die Klassendefinitionen für Blinkenpaint aussehen. Als Klassen ergeben sich:

  • BLINKENPAINTFILM
  • BLINKENPAINTBILD
  • BLINKENPAINTFENSTER

Aus der Unterrichtserfahrung in der Klasse 8 hat sich dabei folgend Vorgehensweise als günstig erwiesen:

  • Zeigen eines kleinen fertigen Filmes, der mit Blinkenpaint erstellt wurde.
  • Einführung der Klasse BLINKENPAINTFILM und der dazugehören Attribute und des Attributwertebereich (AWB).
  • Auswahl eines konkreten Bildes aus diesem Film.
  • Einführung der Klasse BLINKENPAINTBILD und AWB.
  • Betrachtung der einzelnen Fenster.
  • Einführung der Klasse BLINKENPAINTFENSTER und AWB.

Hier die entsprechenden Klassendefinitionen:

BLINKENPAINTFILM
name : herz_s; schlange_s; ... <<Dateinamen ohne Dateiendung>>
einzelbildanzahl : 1; .. ; 10; ...
wiederholung : ja; nein
breite : 1; ...; 18
hoehe : 1; ...; 8
oeffene_blinkenpaintfilm(Name)
speichere_blinkenpaintfilm()
speichere_unter_blinkenpaintfilm(Name)
neuer_blinkenpaintfilm()
einfuegen_leeres_blinkenpaintbild()
einfuegen_kopiertes_blinkenpaintbild()
loeschen_aktuelles_blinkenpaintbild()
duplizieren_aktuelles_blinkenpaintbild()
setze_wiederholung(Wert)

 


BLINKENPAINTBILD
nummer : 1; ... ; 10, ...
inhalt : Herz; Schlange; ... <<Inhaltsbezeichnung>>
pausenzeit : 50 ms; 100 ms; 150 ms; ...
farbtiefe : 1 Bit
aufloesung : 18 wpf <<windows per floor>>
veraendere_inhalt(neuer Inhalt)
setze_pausenzeit(Zeitspanne)

 


BLINKENPAINTFENSTER
farbe : gelb; schwarz
position : (1;1); (1;2); ...; (18;8) <<(Spalte;Zeile)>>
aendere_farbe(neue Farbe)