This commit is contained in:
ahren 2023-11-27 12:20:52 +01:00
parent 2398e3c8a4
commit f3c3dc5fc0
3 changed files with 22 additions and 6 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
/build/ /build/
/dist/

View File

@ -12,7 +12,9 @@ import javax.swing.WindowConstants;
/** /**
* *
* @author ahren * Programm, um mit Hilfe von Sinus und Cosinus drei sich drehende Zeiger zu
* implementieren.
* @author Je-To
*/ */
public class Start public class Start
{ {

View File

@ -19,8 +19,9 @@ import java.util.logging.Logger;
import javax.swing.JComponent; import javax.swing.JComponent;
/** /**
* * Klasse für selbst gezeichnete Zeiger, die sich über einenn eigenen Thread
* @author ahren * drehen können.
* @author Je-To
*/ */
public class Zeiger extends JComponent implements Runnable public class Zeiger extends JComponent implements Runnable
{ {
@ -39,6 +40,12 @@ public class Zeiger extends JComponent implements Runnable
private ExecutorService eService; private ExecutorService eService;
private Future task; private Future task;
/**
* Initialisierung des Zeigers
* @param schlafzeit = Zeit, die der Thread wartet, bevor der Zeiger sich
* wieder weiterbewegt
* @param zeigerlaenge = verhältnismäßige Zeigerlänge
*/
public Zeiger(long schlafzeit, int zeigerlaenge) public Zeiger(long schlafzeit, int zeigerlaenge)
{ {
this.schlafzeit = schlafzeit; this.schlafzeit = schlafzeit;
@ -50,6 +57,9 @@ public class Zeiger extends JComponent implements Runnable
task = null; task = null;
} }
/**
* Thread für das Ändern des Winkels
*/
@Override @Override
public void run() public void run()
{ {
@ -58,8 +68,6 @@ public class Zeiger extends JComponent implements Runnable
synchronized(this) synchronized(this)
{ {
alpha += 0.08; alpha += 0.08;
xAussen = xMitte +cos(2*PI*alpha) * radius;
yAussen = yMitte + sin(2*PI*alpha) * radius;
} }
this.repaint(); this.repaint();
try try
@ -80,6 +88,11 @@ public class Zeiger extends JComponent implements Runnable
task = eService.submit(this); task = eService.submit(this);
} }
} }
/**
* Zeichnen des Zeigers abhängig vom Winkel Alpha
* @param g
*/
@Override @Override
public void paintComponent(Graphics g) public void paintComponent(Graphics g)
{ {