1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Schnitt von zwei Rechtecken liefert false?

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Extremefall, 03.07.2012.

  1. Extremefall, 03.07.2012 #1
    Extremefall

    Extremefall Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    83
    Erhaltene Danke:
    1
    Registriert seit:
    29.03.2012
    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):
    __________________________
    ---------|
    ---------|
    ---------|

    ________|______________
     
  2. MrYouMath, 03.07.2012 #2
    MrYouMath

    MrYouMath Neuer Benutzer

    Beiträge:
    13
    Erhaltene Danke:
    0
    Registriert seit:
    03.07.2012
    Also wenn die Intersection die Schnittfläche bewertet, dann solltest du die Leeremenge bekommen(da keine Fläche in der Schnittfigur).
     
  3. Extremefall, 04.07.2012 #3
    Extremefall

    Extremefall Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    83
    Erhaltene Danke:
    1
    Registriert seit:
    29.03.2012
    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.
     

Diese Seite empfehlen