29.01.2014 Aufrufe

Script Java

Script Java

Script Java

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

7.3 Arrays<br />

g.drawLine(x+r,y+r,<br />

x+r+(int)Math.round(0.9*r*Math.sin(2*Math.PI*minutes/60)),<br />

y+r-(int)Math.round(0.9*r*Math.cos(2*Math.PI*minutes/60)));<br />

Die ersten beiden Parameter bezeichnen die Startkoordinaten, also den Mittelpunkt der<br />

Uhr, die letzten beiden die Koordinaten der Zeigerspitze, welche analog zu obiger Formel<br />

ermittelt werden. Die Klasse Math deklariert die Konstante PI und die Klassenmethoden<br />

sin(), cos() sowie round(), wobei letztere eine etwaige Gleitkommazahl zur<br />

nächstgelegenen ganzen Zahl rundet. Da round() eine Integer-Zahl vom Typ long<br />

zurückgibt, drawLine() aber Parameter vom Typ int erwartet, muss der ganze<br />

Ausdruck noch zu einem int konvertiert werden. Bei minutes handelt es sich natürlich<br />

um die in der Klasse Time deklarierte Instanzvariable.<br />

Für den Stundenzeiger, welcher 70% des Kreisradius beträgt, ergibt sich der folgende<br />

Methodenaufruf:<br />

g.drawLine(x+r,y+r,<br />

x+r+(int)Math.round<br />

(0.7*r*Math.sin(2*Math.PI*getMinutesAfterMidnight()/720)),<br />

y+r-(int)Math.round<br />

(0.7*r*Math.cos(2*Math.PI*getMinutesAfterMidnight()/720)));<br />

Um die Anzahl der verstrichenen Minuten seit Mitternacht zu berechnen, wird die in der<br />

Klasse Time deklarierte Methode getMinutesAfterMidnight() aufgerufen.<br />

7.3 Arrays<br />

Vorliegende Programmversion „Time - Version 3“ ermöglicht zusätzlich die<br />

viertelstündliche Ausgabe der Zeit in Form eines Texts. Änderungen sind wiederum fett<br />

hervorgehoben.<br />

import java.awt.*;<br />

import java.awt.event.*;<br />

import java.util.*;<br />

public class Time {<br />

private int hours, minutes;<br />

public Time(int h, int m) {<br />

setTime(h,m);<br />

}<br />

public Time() {setTime(0,0);}<br />

// 0

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!