Schnitt von zwei Rechtecken liefert false?

E

Extremefall

Ambitioniertes Mitglied
3
Hallo,
ich habe zwei Rechtecke, wo ich mittels intersects einen Schnitt überprüfe. Daher würde ich gerne wissen, warum der Schnitt nicht erkannt wird. Hier sind die Koordinaten der beiden Rechtecke, die ich beim Debuggen erhalten habe:

Rechteck A:
Links oben (0/0) rechts oben (38/0) links unten (0/30) rechts unten (38/30)
Rechteck B:
Links oben (38/0) rechts oben (68/0) links unten (38/30) rechts unten (68/30)

Also liegt das Rechteck B auf der rechten Kante vom Rechteck A (siehe Beispiel):
__________________________
---------|
---------|
---------|

________|______________
 
Also wenn die Intersection die Schnittfläche bewertet, dann solltest du die Leeremenge bekommen(da keine Fläche in der Schnittfigur).
 
Ich habe nun ein komisches Problem. Ich habe eine Methode geheWeiter(). Dadurch wird ein Bild um x nach rechts verschoben. Das klappt auch. Nun ergibt allerdings das erzeugte Rechteck eine andere Position:
Code:
  private Rect generateRect(ImageView image){
         Rect imagerect= new Rect();
        
          

         imagerect.left = image.getLeft();
         imagerect.top = image.getTop();
         imagerect.bottom = image.getBottom();
         imagerect.right = image.getRight();
         Log.d("Links1",""+image.getLeft());
         Log.d("oben1",""+image.getTop());
         Log.d("rechts1",""+image.getRight());
         Log.d("bottom1",""+image.getBottom());
         return imagerect;
    }
Wie kommt das? Denn nun ist der Wert von image.getLeft() = 0, obwohl man das Bild in der GUI verschoben sieht. Die Methode geheWeiter() wurde vor der Methode generateRect auf dem gleichen Bild ausgeführt.
 

Ähnliche Themen

M
  • MikelKatzengreis
Antworten
10
Aufrufe
245
swa00
swa00
S
Antworten
17
Aufrufe
573
jogimuc
J
5
Antworten
22
Aufrufe
1.445
590239
5
Zurück
Oben Unten