Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Rectangle-klassen har metoder for å spørre om tilstanden og endre tilstanden. Spørremetodene dekker høyde og bredde og koordinatene til øverste venstre og nederste høyre hjørne og om rektanglet inneholder spesifikke punkt(er). Endringsmetodene dekker forskyving (translasjon) og endring av bredden og høydenutviding.

Logikken til metodene må tilfredsstille følgende krav:

...

  • void translate(int dx, int dy) - forskyver rektanglet dx enheter langs x-aksen og dy enheter langs y-aksen. Bredden og høyden forblir uendret.void expand(int dw, int dh) - øker evt. minsker bredden og høyden til rektanglet. Både bredden og høyden skal kunne settes til 0, men ikke bli negative.
  • boolean add(int x, int y) - utvider (om nødvendig) dette rektanglet slik at det (akkurat) inneholder punktet x,y. Etter kallet skal altså contains(x, y) altså returnere true. Returnerer true om dette rektanglet faktisk ble endret, ellers false.
  • boolean add(Rectangle rect) - utvider (om nødvendig) dette rektanglet slik at det (akkurat) inneholder hele rect-argumentet. Returnerer true om dette rektanglet faktisk ble endret, ellers false. Dersom rect er tomt, så skal dette rektanglet ikke endres.

...