Größe von Bild festlegen

a16rgi11os

Mitglied
Hallo zusammen,
ich möchte ein Programm schreiben, welches Bilder verpixelt. Dazu habe ich die methode public void pix(int a1, int a2, int b1 und int b2) erstellt. (Das das Bild aufgerufen wird usw. hab ich vorher bereits erstellt. Nur dass das Foto genau die Fenstergröße hat hab ich nicht ganz hinbekommen). Nun aber zum Problem:
Anschließend will ich sicherstellen, dass a1 < a2 ist und b1 < b2 und falls dies nicht der Fall ist beide vertauschen. das ganze habe ich folgendermaßen realisiert.
Java:
 if (a2 > a1) {
			int h = a1;
			a1 = a2;
			a2 = h;
		}
		if (b2 > b1) {
			int h = b1;
			b1 = b2;
			b2 = h;
} [code=Java]
Ich glaub so weit stimmt es auch. Nun möchte ich sicherstellen, dass alle Koordinaten innerhalb des Bildes liegen, falls dies nicht der Fall sein soll möchte ich einen zu kleinen Wert auf 0 setzten und einen zu großen Wert auf den höchsten erlaubten Wert. 
Außderm möchte ich festlegen, dass das Foto genau die größe des Fensters hat.

Aber dabei bin ich völlig überfragt, ich hab keine Idee wie ich es angehen kann.
Ich bin völliger Anfänger und es ist erst mein drittes Programm welches ich schreibe. Ich bin über jede Hilfe dankbar.
 
Code:
wenn a1 > Bildbreite
    a1 = Bildbreite
ansonsten
    wenn a1 < 0
        a1 = 0
Hängt halt davon ab, wie du das "Bild" im Programm vorliegen hast...
 
okey, damit es in der richtigen Größe angezeigt wird, habe ich jetzt hinbekommen 🙂
Java:
 int breite = image.getWidth();
		int hoehe = image.getHeight();
		setSize(breite, hoehe);
aber das Problem mit den gültigen Bereichen, weiß ich leider immer noch nicht
 
okey, damit es in der richtigen Größe angezeigt wird, habe ich jetzt hinbekommen 🙂
Java:
 int breite = image.getWidth();
		int hoehe = image.getHeight();
		setSize(breite, hoehe);
aber das Problem mit den gültigen Bereichen, weiß ich leider immer noch nicht
Wo ist da das Problem? Es gibt Werte a1, a2, b1, b2, die wohl "Koordinaten" auf dem Bild darstellen sollen und man hat die Breite und Höhe des Bildes. Wenn man davon ausgeht, das das Bild bei Koordinate (0,0) anfängt, muss man doch nur prüfen ob wie Werte zwischen 0 und der Breite/Höhe des Bildes liegen. Für eine beliebige Startposition (n, m) müssen die Werte zwischen n/m und (Breite +n)/(Höhe+m) liegen.
 

Neue Themen


Zurück
Oben