Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Apr 29th, 2012  |  syntax: None  |  size: 6.43 KB  |  hits: 22  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. import sum.kern.*;
  2.  
  3. /**
  4.  * Wir programmieren ein Malprogramm.
  5.  *
  6.  * Marcel Schwegler & Peter Berens
  7.  * Version 1.0
  8.  */
  9. public class Malprogramm
  10. {
  11.    
  12.     // Es werden Objekte der Klassen Bildschirm, Buntstift, Maus und Tastatur erstellt
  13.     private Bildschirm meinBildschirm;
  14.     private Buntstift meinStift;
  15.     private Maus meineMaus;
  16.     private Tastatur meineTastatur;
  17.    
  18.     private int MausPosition_H;
  19.     private int MausPosition_V;
  20.     private int farbe;
  21.     private int linienbreite;
  22.     private int fuellMuster;
  23.    
  24.     /**
  25.      * Konstruktor für Objekte der Klasse Malprogramm
  26.      */
  27.     public Malprogramm()
  28.     {
  29.        meinBildschirm = new Bildschirm();
  30.        meinStift = new Buntstift();
  31.        meineMaus = new Maus();
  32.        meineTastatur = new Tastatur();
  33.        
  34.        MausPosition_H = 0;           // Die Horizontale Mausposition wird beim Starten des Programmes auf die x-Koordinate 0 gesetzt.
  35.        MausPosition_V = 0;           // Die Vertikale Mausposition wird beim Starten des Programmes auf die y-Koordinate 0 gesetzt.
  36.        farbe = 0;                    // Die Farbe des Stiftes wird beim Starten des Programmes auf den Wert 0, also Schwarz gesetzt.
  37.        linienbreite = 2;             // Die Linienbreite des Stiftes wird beim Start des Programms auf den Wert 2 gesetzt.
  38.        fuellMuster = 1;              // Das Fuellmuster des Stiftes wird beim Start des Programms auf den Wert ^gesetzt.
  39.        
  40.        malenDurchBewegenDerMaus();
  41.     }
  42.  
  43.    
  44.     // Methoden der Klasse Malprogramm
  45.      
  46.    // Der Stift wird auf die Position x = 0 und y = 0 bewegt.
  47.    // Ist die Bedingung erfuellt, dass die Maus nicht gedrueckt ist, bekommt der Stift immer wieder eine einzelne neue Mauskoordinate, der er folgt. Dann wird auf dieser Koordinate ein Punkt gezeichnet.
  48.    // Wenn die Bedingung weiterhin erfüllt ist, wiederholt sich dieser Prozess. Deshalb sieht die Punktkette am Ende wie eine Linie aus.
  49.    // Die Schleife wird mit einem Mausklick beendet.
  50.     public void malenDurchBewegenDerMaus()
  51.     {  meinStift.bewegeBis(0, 0);
  52.        do
  53.        {
  54.             if  (meineMaus.istGedrueckt())
  55.             {            
  56.                    meinStift.bewegeBis(meineMaus.hPosition(), meineMaus.vPosition());
  57.                    meinStift.zeichneKreis(2);
  58.             }
  59.        } while (!meineMaus.doppelKlick());
  60.         }
  61.        
  62.        
  63.     public void radiere()
  64.     // Der Stift nimmt die Hintergrundfarbe an, und übermalt damit den Bildschirm
  65.     {
  66.     }
  67.    
  68.     public void füllmuster(int fuelmuster)
  69.     // Durch Eingabe von Zahlen bzw. einem Integer (1,2,3) kann das Füllmuster auf durchsichtig, durchscheinend oder undurchsichitig geändert werden.
  70.     {
  71.     }
  72.    
  73.     public void farbwechsel(int farbe)
  74.     // Farbe kann durch eine Tastenkombination oder Eingabe geändert werden
  75.     {
  76.     }
  77.    
  78.     public void punktsetzenDurchMausdruck ()
  79.     // Durch einen Druck auf den Mausknopf, wird ein Punkt an der aktuellen Mausposition gezeichnet. Das Programm wird durch einen Doppelklick beendet.
  80.     {
  81.     }
  82.    
  83.     public void punktDurchKlick()
  84.     // Mit einem Klick auf den Mausknopf wird an der aktuellen Position ein Punkt gezeichnet. Durch Doppelklick wird das Programm beendet.
  85.     {
  86.     }
  87.    
  88.     public void freihandzeichnen()
  89.     //Solange der Mausknopf gedrückt ist, folgt eine Linie auf dem Bildschirm den Bewegungen der Maus. Das Programm wird durch einen Doppelklick beendet.
  90.     {
  91.     }
  92.    
  93.     public void freihandzeichnenMitRadieren()
  94.     //Solange der Mausknopf gedrückt ist, folgt eine Linie auf dem Bildschirm den Bewegungen der Maus. Das Programm wird durch einen Doppelklick beendet.
  95.     //Zusätzlich kann durch drücken einer Taste auf "Radieren" gewechselt werden.
  96.     {
  97.     }    
  98.    
  99.     public void LinieZeichnen()
  100.     // Wenn der Mausknopf gedrückt wird, wird ein Punkt an der Mausposition gezeichnet. Wenn der Mausknopf losgelassen wird, wird dieser Punkt mit
  101.     // der Mausposition im Moment des loslassen verbunden. Das Programm wird durch einen Doppelklick beendet.
  102.     {
  103.     }
  104.    
  105.     public void LinieZeichnenMitFarbwechsel()
  106.     // Wenn der Mausknopf gedrückt wird, wird ein Punkt an der Mausposition gezeichnet. Wenn der Mausknopf losgelassen wird, wird dieser Punkt mit
  107.     // der Mausposition im Moment des Loslassen verbunden. Das Programm wird durch einen Doppelklick beendet. Zusätzlich kann durch drücken der Taste "r" die Zeichenfarbe auf Rot gesetzt werden.
  108.     {
  109.     }
  110.    
  111.     public void LinieZeichnenMitZweifachemFarbwechsel()
  112.     // Wenn der Mausknopf gedrückt wird, wird ein Punkt an der Mausposition gezeichnet. Wenn der Mausknopf losgelassen wird, wird dieser Punkt mit
  113.     // der Mausposition im Moment des Loslassen verbunden. Durch Drücken der Taste "r" wird die Zeichenfarbe des Programmes auf Rot gesetzt, durch das Drücken einer anderen Taste auf Schwarz.
  114.     // Das Programm wird druch einen Doppelklick beendet.
  115.     {
  116.     }
  117.    
  118.     public void LinieZeichnenMitMehrfachemFarbwechsel()
  119.     // Wenn der Mausknopf gedrückt wird, wird ein Punkt an der Mausposition gezeichnet. Wenn der Mausknopf losgelassen wird, wird dieser Punkt mit
  120.     // der Mausposition im Moment des Loslassen verbunden. Zusätzlich kann die Zeichenfarbe durch drücken verschiedener Tasten verändert werden. Dazu wird der Anfangsbuchstabe der Farben (schwarz, rot, grün,
  121.     // oder blau) gedrückt. Das Programm wird durch einen Doppelklick beendet.
  122.     {
  123.     }
  124.    
  125.     public int MaushPosition ()
  126.     // Gibt die aktuelle horizontale Mausposition zurück
  127.     {
  128.         return meineMaus.hPosition();
  129.     }
  130.    
  131.     public int MausvPosition ()
  132.     // Gibt die aktuelle vertikale Mausposition zurück
  133.     {
  134.         return meineMaus.vPosition();
  135.     }
  136.    
  137.     public void zeichneLinie ()
  138.     // Es wird eine Linie zwischen zwei angeklickten Punkten auf dem Bildschirm gezeichnet
  139.     {
  140.     }
  141.    
  142.     public void Linienbreite(int breite)
  143.     // Stift ändert Breite durch eine Tastenkombination oder Eingabe
  144.     {
  145.     }
  146.    
  147.     public boolean istGedrueckt ()
  148.     // Gibt zurück, ob die Maus gedrückt wurde
  149.     {
  150.         return meineMaus.istGedrueckt();
  151.     }
  152.    
  153.     public void gibFrei()
  154.     // die Methode zerstört die Objekte und gibt dadurch den belegten Arbeitsspeicher frei
  155.     {
  156.         meinBildschirm.gibFrei();
  157.         meinStift.gibFrei();
  158.         meineMaus.gibFrei();
  159.         meineTastatur.gibFrei();
  160.     }
  161.        
  162. }