Inhaltsverzeichnis
6. Gemeinsames Projekt "Bahnhofsuhr"
Anforderungen an die Klasse Sekundenzeiger
// Instanzieren und Zeichnen an der 12:00:00 Uhr-Position: sekundenzeiger = new Sekundenzeiger(mitteX, mitteY, radius); // Drehen um einen Punkt in einem bestimmten Winkel: sekundenzeiger.drehenUm(mitteX, mitteY, 0.1/12);
{{ :schule:klassen:2017:10b:sekundenzeigerdetail.png|}} public class Sekundenzeiger { private Kreis kreisMitte; private Kreis kreisAussenRot; private Kreis kreisAussenWeiss; private Dreieck dreieck; public Sekundenzeiger(double mitteX, double mitteY, double radius){ kreisMitte = new Kreis(mitteX, mitteY, radius/20); kreisMitte.setFuellfarbe("rot"); double mitteYAussen = mitteY - radius * 0.6; kreisAussenRot = new Kreis(mitteX, mitteYAussen, radius/10); kreisAussenRot.setFuellfarbe("rot"); dreieck = new Dreieck(mitteX, mitteY - radius, radius/20, radius*6/5); dreieck.setFuellfarbe("rot"); kreisAussenWeiss = new Kreis(mitteX, mitteYAussen, radius/20); kreisAussenWeiss.setFuellfarbe("weiß"); } public void drehenUm(double mitteX, double mitteY, double winkel){ kreisMitte.drehenUm(mitteX, mitteY, winkel); kreisAussenWeiss.drehenUm(mitteX, mitteY, winkel); kreisAussenRot.drehenUm(mitteX, mitteY, winkel); dreieck.drehenUm(mitteX, mitteY, winkel); } }
UML-Klassendiagramm des Uhr-Projekts
Interfaces
Wie sieht das Interface timerListener
aus?
public interface TimerListener { public void timerSignalVerarbeiten(); }