Berührung zwischen Rechtecken

Diskutiere Berührung zwischen Rechtecken im Java Basics - Anfänger-Themen Bereich.
N

Nesselbrand

Wie kann man erkennen ob sich zwei Rectangles (java.awt.Ractangle) berühren?
 
MoxxiManagarm

MoxxiManagarm

Nur Berührung oder schneiden?

Ich gehe mal von Berührung aus...
Java:
Rectangle left = new Rectangle(0, 0, 2, 2);
Rectangle right = new Rectangle(2, 1, 2, 2);
     
System.out.println(left.intersection(right)); // java.awt.Rectangle[x=2,y=1,width=0,height=1]
Sie berühren sich, wenn

Java:
(width == 0 && height >= 0) || (height == 0 && width >= 0)
Im Sonderfall width == 0 && height == 0 ist es eine Ecke.
 
Zuletzt bearbeitet:
N

Nesselbrand

wie kann ich dann die intersection dann weiterverwenden also wenn ich testen will ob sisch zwei rechtecke berühren?
 
T

temi

wie kann ich dann die intersection dann weiterverwenden also wenn ich testen will ob sisch zwei rechtecke berühren?
Schau dir doch einfach mal die Doku an: https://docs.oracle.com/javase/7/docs/api/java/awt/Rectangle.html#intersects(java.awt.Rectangle)

intersection() liefert als Ergebnis ein Rectangle, das in der Größe der Überschneidung der beiden Ausgangsrechtecke entspricht, mittels Vergleich (siehe Post von @MoxxiManagarm) kannst du damit weiterarbeiten.


intersects() liefert als Ergebnis ein boolean.

Such dir aus, was dir passt.
 
Thema: 

Berührung zwischen Rechtecken

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben