Rechteck grafisch ausgeben (2D)

Hakan

Mitglied
Guten Abend,

bin dabei java zu erlernen (Neuling):) und muss mit netbeans arbeiten. Meine Hausaufgabe besteht darin ein Rechteck zu erzeugen mit einer grafischen Ausgabe. Bis jetzt habe ich nur eine normale Ausgabe.
siehe hier:
Java:
[0,0; 0,0]
[1,2; 13,15]
[3,0; 13,0]
false
[1,18; 13,15]
Zusätzlich sollte man DrawableRect.java, ColoredRect.java, SecondApplet.java mit dem Programm einbinden. Habe ich auch gemacht, aber was ich nicht weiß ist, wie dadurch eine grafische Ausgabe zustande kommt. Habe versucht und versucht, aber nicht hinbekommen. Wäre über eure Hilfe sehr dankbar. :)

Rechteck.java

Java:
package rechteck;

public class Rechteck {
    // These are the data fields of the class
    public int x1, y1, width, height;

    /**
    * Erzeugt ein neues Exemplar vom Rechteck mit den Uebergebenen Werten.
    */
    public Rechteck(int x1, int y1, int x2, int y2) {
        this.x1 = x1;
        this.y1 = y1;
        this.width = x2;
        this.height = y2;
    }
     /**
     * Erzeugung von Rechtecken mit unterschiedlicher Breite und Hoehe.
     * Es wird ueberprueft das je ein positiver Wert vorliegt.
     */
    public Rechteck(int width, int height)
    {
        this(0, 0, width, height);
    }
    /**
     * Erzeugt ein neues Exemplar vom Rechteck, wobei alle Werte auf null gesetzt werden.
     */
    public Rechteck()
    {
        this(0, 0, 0, 0);
    }
    /**
     * Verschiebt das Rechteck an den durch x und y bezeichneten Punkt.
     */
    public void move(int deltax, int deltay)
    {
        x1 += deltax; width += deltax;
        y1 += deltay; height += deltay;
    }

    /**
     * Liefert true, wenn der durch x und y bezeichnete Punkt innerhalb des Rechtecks liegt, sonst false.
     */
    public boolean isInside(int x, int y)
    {
        return ((x >= x1)&& (x <= width)&& (y >= y1)&& (y <= height));
    }

    /**
     * Liefert das kleinste Rechteck zurueck, das dieses Rechteck und r vollstaendig enthealt.
     */
    public Rechteck union(Rechteck r)
    {
        return new Rechteck((this.x1 < r.x1) ? this.x1 : r.x1,
                            (this.y1 < r.y1) ? this.y1 : r.y1,
                            (this.width > r.width) ? this.width : r.width,
                            (this.height > r.height) ? this.height : r.height);
    }

    /**
     * Liefert den Ueberschneidungsbereich dieses Rechtecks mit r.
     * Falls kein gemeinsamer Bereich existiert, ergibt sich ein Rechteck,
     * das die Luecke zwischen den beiden Rechtecken buendig ausfuellt.
     */
    public Rechteck intersection(Rechteck r)
    {
        Rechteck Ergebnis =  new Rechteck((this.x1 > r.x1) ? this.x1 : r.x1,
                            (this.y1 > r.y1) ? this.y1 : r.y1,
                            (this.width < r.width) ? this.width : r.width,
                            (this.height < r.height) ? this.height : r.height);
        if (Ergebnis.x1 > Ergebnis.width) { Ergebnis.x1 = Ergebnis.width = 0; }
        if (Ergebnis.y1 > Ergebnis.height) { Ergebnis.y1 = Ergebnis.height = 0; }
        return Ergebnis;
    }

    /**
     *Liefert einen String, der die Koordinaten sowie die Breite und die Hoehe des Rechtecks enthealt.
     */
    @Override
    public String toString()
    {
        return "[" + x1 + "," + y1 + "; " + width + "," + height + "]";
    }

    public static void main(String[] args)
    {
        Rechteck rect = new Rechteck();
        Rechteck r0 = new Rechteck(1, 18, 13, 15);
        Rechteck r1 = new Rechteck(1, 2, 2, 5);
        Rechteck r2 = new Rechteck(3, 5, 13, 13);
       
        System.out.println(rect);
        System.out.println(r0.union(r1));
        System.out.println(r0.intersection(r2));
        System.out.println(r0.isInside(5, 15));
        System.out.println(r0.toString());
    }
}
 

dayaftereh

Top Contributor
Super 3 Fach Post!
Hey , schau dir das mal an!
Java:
import java.awt.Graphics;

import javax.swing.JApplet;

public class MainClass extends JApplet {
  String str = "";

  public void init() {
    str += "init; ";
  }

  public void start() {
    str += "start; ";
  }

  public void stop() {
    str += "stop; ";
  }

  public void destroy() {
    System.out.println("destroy");
  }

  public void paint(Graphics g) {
    g.drawString(str, 10, 25);
  }
}
Führe das mal als Applet aus und schau was passiert!
und mit auf das Graphics Object in der paint Methode kannst du jetzt ein Rechteck zeichenen:
Java:
g.drawRect(10,10,50, 50) ;
 
Zuletzt bearbeitet:

haf_blade

Mitglied
Da ich jetzt nicht genau weiß, was die drei einzubindenden Klassen tun ists schwierig zu sagen wie du zeichnen kannst.
Es gibt aber im allgemeinen zwei verschiedene Möglichkeiten um Zeichnungen in Java in einer Oberfläche auszugeben.

Als Applet (so klingt es wenn man sich die Namen der Klassen ansieht)
JAVA: 9.4.5 Zeichnen in Applets

Oder halt per Swing etc.
Sun Tutorial: Trail: 2D Graphics (The Java™ Tutorials)
Eins meiner Lieblingstutorials : Java2D: An Introduction and Tutorial

Achso und noch ne Kleinigkeit. Du hast den Thread 2 mal erstellt! ;)
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
berserkerdq2 Kann ich ein Rechteck mittig im Fenster halten, egal wie ich die Bildschirmgröße verändere? AWT, Swing, JavaFX & SWT 3
berserkerdq2 Mein Rechteck hat 4 Seiten, ich soll je nach dem, welche Seite berührt wurde, etwas ausführen, wie prüfe ich das? AWT, Swing, JavaFX & SWT 12
B AWT Rechteck abnehmen lassen AWT, Swing, JavaFX & SWT 9
N Mit KeyListener ein rechteck zeichnen AWT, Swing, JavaFX & SWT 9
E Button verschwindet nachdem ein Rechteck gezeichnet wurde AWT, Swing, JavaFX & SWT 5
T Java Swing - kleines Rechteck unter dem cursor AWT, Swing, JavaFX & SWT 5
S Swing Rechteck über JTable zeichnen (per MouseListener) AWT, Swing, JavaFX & SWT 1
L Swing Ein Rechteck in ein Grid Zeichnen AWT, Swing, JavaFX & SWT 5
D Quadrat, Rechteck zeichnen AWT, Swing, JavaFX & SWT 3
F Java Swing Rechteck in JPanel zeichnen AWT, Swing, JavaFX & SWT 7
F 2D-Grafik Gestricheltes Rechteck AWT, Swing, JavaFX & SWT 1
Z Frame mit Rechteck! AWT, Swing, JavaFX & SWT 16
T Problem beim Zeichnen von Rechteck AWT, Swing, JavaFX & SWT 3
S Warum wird dieses Rechteck nicht korrekt gemalt? AWT, Swing, JavaFX & SWT 7
S "Quadrat oder Rechteck" - Check AWT, Swing, JavaFX & SWT 3
C Rechteck drehen AWT, Swing, JavaFX & SWT 1
D 2D-Grafik Rechteck befindet sich unter dem Rahmen des JFrame. AWT, Swing, JavaFX & SWT 1
M JavaFX Rechteck mit MausListener AWT, Swing, JavaFX & SWT 3
B Rechteck Mit Hilfe Von Timeline, KeyFrames animieren AWT, Swing, JavaFX & SWT 3
I Rechteck eines Graphics eines JPanels in einem anderen JPanel anzeigen AWT, Swing, JavaFX & SWT 7
T transparent geht nicht (btw: rechteck) AWT, Swing, JavaFX & SWT 13
J SWT Rechteck Füllfarbe wird bei Action falsch gefüll AWT, Swing, JavaFX & SWT 2
H Rechteck via Mouse bewegen AWT, Swing, JavaFX & SWT 2
A Rechteck zeichen AWT, Swing, JavaFX & SWT 4
C Auto fahren - Rechteck JFrame AWT, Swing, JavaFX & SWT 6
E Swing Rechteck und Kreise verschieben AWT, Swing, JavaFX & SWT 3
G Swing Rechteck uebermalen AWT, Swing, JavaFX & SWT 10
M Rechteck "umdrehen"/über die Kante drehen AWT, Swing, JavaFX & SWT 4
J 2D-Grafik Rechteck mit dickerem Rand zeichnen AWT, Swing, JavaFX & SWT 8
G Rechteck mit Farbverlauf AWT, Swing, JavaFX & SWT 5
E Rechteck in JPanel Zeichnen AWT, Swing, JavaFX & SWT 6
G Rechteck zeichnen + "special features" :-) AWT, Swing, JavaFX & SWT 16
A Java Button mal nicht nur als rechteck AWT, Swing, JavaFX & SWT 16
B awt rechteck zeichnen AWT, Swing, JavaFX & SWT 3
R Rechteck drehen! AWT, Swing, JavaFX & SWT 4
K Problem mit JLabel, Rechteck, repaint() ;) AWT, Swing, JavaFX & SWT 2
J Auf Button - Druck soll Rechteck Farbe verändern AWT, Swing, JavaFX & SWT 8
M Rechteck zeichnen AWT, Swing, JavaFX & SWT 4
TheJavaKid Kreis, Rechteck, Linie. verschieben AWT, Swing, JavaFX & SWT 5
S Rechteck per Mouse aufziehen AWT, Swing, JavaFX & SWT 7
A Dreidimensionales Rechteck AWT, Swing, JavaFX & SWT 3
C Schräges Rechteck in Swing? AWT, Swing, JavaFX & SWT 7
G Rechteck normalisieren AWT, Swing, JavaFX & SWT 2
P Rechteck "verkehrt" herum zeichnen AWT, Swing, JavaFX & SWT 2
H LayoutManager RPG Programmieren, eigenes Spielfeld grafisch generieren aus Tileset AWT, Swing, JavaFX & SWT 18
Y Objekte grafisch darstellen ohne GMF - Composite auf Canvas? AWT, Swing, JavaFX & SWT 2
H Swing Arbeitsspeicherauslastung anderer Programme grafisch darstellen AWT, Swing, JavaFX & SWT 16
M Array grafisch darstellen AWT, Swing, JavaFX & SWT 9
P Binärbaum grafisch ausgeben AWT, Swing, JavaFX & SWT 4
D Swing Bresenham Linienalgorithmus grafisch darstellen AWT, Swing, JavaFX & SWT 6
M Swing Prozentwerte grafisch darstellen - wie? AWT, Swing, JavaFX & SWT 4
F "Objekte" mit "Verbindungen" grafisch darstellen AWT, Swing, JavaFX & SWT 4
G Statistik grafisch ausgeben AWT, Swing, JavaFX & SWT 6
P Netz grafisch darstellen AWT, Swing, JavaFX & SWT 4
G Button auswerten und ausgeben ob richtig oder falsch AWT, Swing, JavaFX & SWT 1
_user_q Versionscode aus build.gradle in Java-Klasse ausgeben lassen AWT, Swing, JavaFX & SWT 14
Encera ArrayList mit eigenen Objekten in JavaFX sortieren und ausgeben AWT, Swing, JavaFX & SWT 50
J Eingaben aus Textfield & ComboBox speichern und in ComboBox wieder ausgeben AWT, Swing, JavaFX & SWT 3
donnico2 Objekte in der GUI ausgeben mit Hilfe einer DAO AWT, Swing, JavaFX & SWT 1
A Titelleiste soll Pfad ausgeben AWT, Swing, JavaFX & SWT 16
P Swing Zufallsbilder auf Frame ausgeben AWT, Swing, JavaFX & SWT 1
T Anderen Java Code durch Code kompilieren und Fehler in Label ausgeben AWT, Swing, JavaFX & SWT 5
M Swing Objekt Array in GUI ausgeben AWT, Swing, JavaFX & SWT 1
B Textfelder in einer ListView ausgeben AWT, Swing, JavaFX & SWT 13
G Eingabe in JTextField in Array speichern und in JList ausgeben AWT, Swing, JavaFX & SWT 7
S GUI Kreuz zeichnen und Position ausgeben AWT, Swing, JavaFX & SWT 3
J Datensatz in jTable ausgeben AWT, Swing, JavaFX & SWT 3
M JavaFX JavaFX ResultSet in TableView ausgeben AWT, Swing, JavaFX & SWT 2
J Event Handling Input auf String testen, Fehlermeldung ausgeben AWT, Swing, JavaFX & SWT 4
T [Neuling] Textfeld Inhalt überprüfen und falsche Stellen als msg Ausgeben AWT, Swing, JavaFX & SWT 1
T JOptionPane Dialog plus Rechnung ausgeben AWT, Swing, JavaFX & SWT 1
K Swing GridLayout - x und y bei Mausklick ausgeben AWT, Swing, JavaFX & SWT 4
sandaime Swing 3 JComboBoxen ausgelesen Elemente einzel ausgeben AWT, Swing, JavaFX & SWT 6
C JavaFX mehrere Kreise nach Eingabeprozess ausgeben AWT, Swing, JavaFX & SWT 2
S Höhendaten in einer Grafik ausgeben AWT, Swing, JavaFX & SWT 2
L Array mit JButton, wie rausfinden auf welche JButton geklickt wurde + index des JButtons ausgeben AWT, Swing, JavaFX & SWT 4
K Pfad mit JFileChooser ausgeben lassen AWT, Swing, JavaFX & SWT 7
B Map, Set oder List in GUI ausgeben AWT, Swing, JavaFX & SWT 5
F Swing String[] in JTextArea ausgeben. Jeder Eintrag in neue Zeile, aber ohne "\n"- Geht das? AWT, Swing, JavaFX & SWT 3
B Text auf Display ausgeben [LWJGL] AWT, Swing, JavaFX & SWT 2
V GUI mit Swing -> Wenn IP eingegeben Domain ausgeben AWT, Swing, JavaFX & SWT 15
precoc Konsole in GUI ausgeben AWT, Swing, JavaFX & SWT 8
MiMa Dateien aus Ordner in einer JList Ausgeben AWT, Swing, JavaFX & SWT 32
MiMa Integer Zahl in Textfield ausgeben AWT, Swing, JavaFX & SWT 12
P Elemente einer JList ausgeben AWT, Swing, JavaFX & SWT 11
B Swing Komponente an Position eines Objektes ausgeben lassen AWT, Swing, JavaFX & SWT 3
A mehrere Zeilen in GUi ausgeben AWT, Swing, JavaFX & SWT 2
D SpinnerDateModel NUR Uhrzeit ausgeben AWT, Swing, JavaFX & SWT 7
C ausgewählte JtoggleButton als Variablenwert ausgeben AWT, Swing, JavaFX & SWT 14
C Konsolenausgabe in TextArea ausgeben AWT, Swing, JavaFX & SWT 8
T jSlider-Value als Float in jLabel ausgeben AWT, Swing, JavaFX & SWT 2
J Bitmaps nebeneinander ausgeben AWT, Swing, JavaFX & SWT 4
A Formatierten String ausgeben (drawString) AWT, Swing, JavaFX & SWT 5
M Swing Eine andere Klasse über Button starten und in TextArea ausgeben AWT, Swing, JavaFX & SWT 13
S Swing Grundprinzip String ausgeben, aber wie? AWT, Swing, JavaFX & SWT 6
S AWT Arrays in externer jTable Klasse ausgeben AWT, Swing, JavaFX & SWT 3
P Datenelement anderer Klasse in JTextArea ausgeben AWT, Swing, JavaFX & SWT 4
M Swing Eingabe auf JTextField automatisch ausgeben auf JLabel AWT, Swing, JavaFX & SWT 2
maddin86 Eingabe in Textfeld 1 synchron in Textfeld 2 ausgeben AWT, Swing, JavaFX & SWT 9
R String in JFrame ausgeben AWT, Swing, JavaFX & SWT 10

Ähnliche Java Themen


Oben