Package pi.dsa.turtle

Class TurtleController

java.lang.Object
pi.dsa.turtle.TurtleController
Direct Known Subclasses:
AutoStartTurtleController

public class TurtleController extends Object
Definiert die Methoden, mit denen die Schildkröte gesteuert werden kann.

Es handelt sich um das absolute Minimum an Methoden um eine Turtlegrafik zeichnen zu können. Methoden, die grafische Einstellungen vornehmen sind nicht enthalten.

Since:
0.40.0
Author:
Josef Friedrich
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    Steuert die Animationen, die während des Malprozesses der Schildkröte zu sehen sind.
    Steuert die Malfläche, also den Hintergrund, auf dem die Schildkröte malt.
    final pi.dsa.turtle.TurtleDressController
    Steuert die Kleidung der Schildkröte, d. h. das Aussehen der Schildkröte.
    Steuert den Mal- bzw. Zeichenstift der Schildkröte.
    protected TurtleScene
     
     
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Bewegt die Schildkröte in Blickrichtung 3 Meter nach hinten, also rückwärts.
    void
    backward(double distance)
    Bewegt die Schildkröte in Blickrichtung die angegebene Entfernung nach hinten, also rückwärts.
    void
    direction(double direction)
    Setzt die Blickrichtung der Schildkröte.
    void
    Bewegt die Schildkröte in Blickrichtung 3 Meter nach vorne.
    void
    forward(double distance)
    Bewegt die Schildkröte in Blickrichtung die angegebene Entfernung nach vorne.
    void
    left(double rotation)
    Dreht die Blickrichtung der Schildkröte nach links.
    void
    Wechselt in den Modus „nicht zeichnen“.
    void
    Wechselt in den Modus „zeichnen“.
    void
    Bewegt die Schildkröte in Blickrichtung 3 Meter nach vorne.
    void
    move(double distance)
    Bewegt die Schildkröte in Blickrichtung die angegebene Entfernung nach vorne.
    void
    position(double x, double y)
    Setzt die Schildkröte auf eine neue Position.
    void
    position(Vector position)
    Setzt die Schildkröte auf eine neue Position.
    void
    right(double rotation)
    Dreht die Blickrichtung der Schildkröte nach rechts.
    void
    rotate(double rotation)
    Dreht die Blickrichtung der Schildkröte.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • animation

      public final TurtleAnimationController animation
      Steuert die Animationen, die während des Malprozesses der Schildkröte zu sehen sind.
      Since:
      0.40.0
    • background

      public final TurtleBackgroundController background
      Steuert die Malfläche, also den Hintergrund, auf dem die Schildkröte malt.
      Since:
      0.40.0
    • dress

      public final pi.dsa.turtle.TurtleDressController dress
      Steuert die Kleidung der Schildkröte, d. h. das Aussehen der Schildkröte.
      Since:
      0.41.0
    • pen

      public final TurtlePenController pen
      Steuert den Mal- bzw. Zeichenstift der Schildkröte.
      Since:
      0.40.0
    • stats

      public final TurtleStatisticsController stats
      Since:
      0.42.0
    • window

      public final TurtleWindowController window
      Since:
      0.41.0
    • scene

      protected TurtleScene scene
      Since:
      0.40.0
  • Constructor Details

    • TurtleController

      public TurtleController(TurtleScene scene)
      Since:
      0.40.0
  • Method Details

    • forward

      public void forward()
      Bewegt die Schildkröte in Blickrichtung 3 Meter nach vorne.
      Since:
      0.38.0
    • forward

      public void forward(double distance)
      Bewegt die Schildkröte in Blickrichtung die angegebene Entfernung nach vorne.

      In der GraphicsAndGames-Engine des Cornelsen Verlags heißt die Methode Gehen, in der Engine Alpha laufe.

      Parameters:
      distance - Die Entfernung in Meter, die die Schildkröte zurücklegen soll. Negative Werte bewegen die Schildkröte rückwärts statt vorwärts.
      Since:
      0.38.0
    • move

      public void move()
      Bewegt die Schildkröte in Blickrichtung 3 Meter nach vorne.

      Diese Methode ist identisch mit der forward()-Methode. Es handelt sich um eine Alias-Methode.

      Since:
      0.41.0
      See Also:
    • move

      public void move(double distance)
      Bewegt die Schildkröte in Blickrichtung die angegebene Entfernung nach vorne.

      Diese Methode ist identisch mit der forward(double)-Methode. Es handelt sich um eine Alias-Methode.

      In der GraphicsAndGames-Engine des Cornelsen Verlags heißt die Methode Gehen, in der Engine Alpha laufe.

      Parameters:
      distance - Die Entfernung in Meter, die die Schildkröte zurücklegen soll. Negative Werte bewegen die Schildkröte rückwärts statt vorwärts.
      Since:
      0.41.0
      See Also:
    • backward

      public void backward()
      Bewegt die Schildkröte in Blickrichtung 3 Meter nach hinten, also rückwärts.
      Since:
      0.40.0
    • backward

      public void backward(double distance)
      Bewegt die Schildkröte in Blickrichtung die angegebene Entfernung nach hinten, also rückwärts.
      Parameters:
      distance - Die Entfernung in Meter, die die Schildkröte zurücklegen soll. Negative Werte bewegen die Schildkröte vorwärts statt rückwärts.
      Since:
      0.40.0
    • position

      @Setter public void position(Vector position)
      Setzt die Schildkröte auf eine neue Position.

      Im Gegensatz zur forward(double)-Methode geschieht die Bewegung hier ruckhaft. Die Schildkröte wird quasi in die Luft gehoben und an einer anderen Stelle wieder abgesetzt. Deshalb wird auch keine Linie gezeichnet und auch keine Animation durchgeführt. Sonst könnte mit dieser Methode „geschummelt“ werden.

      Parameters:
      position - Die gewünschte Position als Vektor in Meter.
      Since:
      0.38.0
    • position

      @Setter public void position(double x, double y)
      Setzt die Schildkröte auf eine neue Position.

      Im Gegensatz zur forward(double)-Methode geschieht die Bewegung hier ruckhaft. Die Schildkröte wird quasi in die Luft gehoben und an einer anderen Stelle wieder abgesetzt. Deshalb wird auch keine Linie gezeichnet und auch keine Animation durchgeführt. Sonst könnte mit dieser Methode „geschummelt“ werden.

      Parameters:
      x - Die x-Koordinate der gewünschten Position in Meter.
      y - Die y-Koordinate der gewünschten Position in Meter.
      Since:
      0.38.0
    • left

      public void left(double rotation)
      Dreht die Blickrichtung der Schildkröte nach links.
      Parameters:
      rotation - Der Drehwinkel in Grad. Negative Werte drehen die Schildkröte nach rechts.
      Since:
      0.38.0
    • right

      public void right(double rotation)
      Dreht die Blickrichtung der Schildkröte nach rechts.
      Parameters:
      rotation - Der Drehwinkel in Grad. Negative Werte drehen die Schildkröte nach links.
      Since:
      0.40.0
    • rotate

      public void rotate(double rotation)
      Dreht die Blickrichtung der Schildkröte.

      In der GraphicsAndGames-Engine des Cornelsen Verlags heißt die Methode Drehen, in der Engine Alpha rotiere.

      Parameters:
      rotation - Der Drehwinkel in Grad. Positive Werte drehen gegen den Uhrzeigersinn also nach links, negative Werte im Uhrzeigersinn also nach rechts.
      Since:
      0.38.0
      See Also:
    • direction

      @Setter public void direction(double direction)
      Setzt die Blickrichtung der Schildkröte.
      Parameters:
      direction - Die Blickrichtung der Schildkröte in Grad: 0°: nach rechts (Osten), 90°: nach oben (Norden) 180°: nach links (Westen) 270°: nach unten (Süden)
      Since:
      0.38.0
    • lowerPen

      public void lowerPen()
      Wechselt in den Modus „zeichnen“.

      In der GraphicsAndGames-Engine des Cornelsen Verlags heißt die Methode StiftSenken, in der Engine Alpha ansetzen.

      Since:
      0.38.0
    • liftPen

      public void liftPen()
      Wechselt in den Modus „nicht zeichnen“.

      In der GraphicsAndGames-Engine des Cornelsen Verlags heißt die Methode StiftHeben, in der Engine Alpha absetzen.

      Since:
      0.38.0