Class Fahrbahn


  • class Fahrbahn
    extends Ereignisbehandlung
    Verwaltet die Fahrzeuge auf einer Fahrbahn.
    Version:
    V1.0
    Author:
    Albert Wiedemann
    • Field Detail

      • x

        private int x
        x-Position
      • y

        private int y
        y-Position
      • start

        private int start
        start-Position
      • ende

        private int ende
        ende-Position
      • rand

        private int rand
        rand-Position
      • wartezeit

        private int wartezeit
        Wartezeit zur nächsten Fahrzeugerzeugung
      • ampel

        private Ampel ampel
        zuständige Ampel
    • Constructor Detail

      • Fahrbahn

        Fahrbahn​(Ampel a,
                 int x,
                 int y)
        Erzeugt eine leere Fahrbahn ab dem linken Rand unterhalb der Fenstermitte.
        Parameters:
        a - für diese Richtung zuständige Ampel
        x - x-Koordinate der Fahrbahn
        y - y-Koordinate der Fahrbahn
    • Method Detail

      • FahrzeugEinreihen

        void FahrzeugEinreihen​(Fahrzeug f)
        Reiht ein neues Fahrzeug an der Startposition in die Fahrbahn ein.
        Parameters:
        f - das neue Fahrzeug
      • IstDraussen

        private boolean IstDraussen​(Fahrzeug f)
        Ermittelt, ob ein Fahrzeug entfernt werden muss
        Parameters:
        f - das in Frage kommende Fahrzeug
      • VorgängerZählt

        private boolean VorgängerZählt​(int ampelabstand,
                                       int vorgängerabstand,
                                       Fahrzeug f)
        Ermittelt, ob das Fahrzeug sich nach dem Vorgänger richten oder die Ampel beachten muss.
        Parameters:
        ampelabstand - Abstand zur Ampel (Haltelinie)
        vorgängerabstand - Abstand zum Vorgängerfahrzeug
        f - das aktuelle Fahrzeug
        Returns:
        true, wenn der Vorgänger wichtig ist, false, wenn die Ampel zählt
      • FahrzeugeBewegen

        void FahrzeugeBewegen()
        Bewegt alle Fahrzeuge der Fahrbahn für eine Sekunde.
      • PositionSetzen

        void PositionSetzen​(int x,
                            int y)
        Setzt die Position der Fahrbahn.
        Parameters:
        x - x-Position
        y - y-Position
      • FahrzeuganzahlGeben

        int FahrzeuganzahlGeben()
        Ausgabe der Fahrzeuganzahl
        Returns:
        Anzahl der Fahrzeuge auf der Fahrbahn
      • FahrzeugErzeugen

        private Fahrzeug FahrzeugErzeugen()
        Erzeugt eine zufällige Farbe für das Fahrzeug