Koordinatensystemabfrage

  • Ich hab 2 Rechtecke.. Rechteck eck1 = new Rechteck(2,-1,4,2) und Rechteck eck2 = new Rechteck(2,-2,3,4).
    (links,unten,breite,hoehe)

    Jetzt möchte ich dafür eine eigene Methode schreiben die abprüft, ob diese beiden Rechtecke im Koordinatensystem einen gleichen Punkt haben. Das würd ja eine mega große If Abfrage werden!? Oder denk ich da zu kompliziert?

    Mir fällt derzeit leider keine Möglichkeit ein um ihm das anders abzufragen.

  • Naja je nachdem wie du das Rechteck angibst.
    Wenn du es z.B. als Array oder Liste von Punkten angibst kannst du machen:

    PHP
    for (Point p: rechteck) {
           if rechteck2.contains(p) {
                 return true;
           }
    }
    return false;

    Müsst eigentlich gehen oder? :)

    lg

  • Meine erste Idee:

    Geradengleichungen aller Geraden aufstellen, dann jede des 1. Rechtecks mit jeder des 2. gleichsetzen, so bekommst du die Schnittpunkte. (So es welche gibt)
    Wenn es nur um die Eckpunkte geht, so wie Horrendus schreibt mMn am einfachsten.

    lg,
    Whiskey

    ;) Lebe wie du, wenn du stirbst, wünschen wirst gelebt zu haben (Christian F. Gellert) ;)

  • geraden werden sich fast immer (ausser parallel) schneiden, weil die ja nicht endlich sind.

    aber es gibt in java eine rectangle class und bereits eine intersects methode mit der das problem recht schnell gelöst sein dürfte. einfach in d api nachschaun (fuer diese rectangle class, ist aber wichtig, dass die x,y coordinaten d oberen linken ecke angegeben werden, also musst noch umrechnen, sonst alles wie gehabt)

    lg

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!