Okey, hallo 
Ich habe ein kleines Problemchen:
Ich möchte ein Bild rotieren (in einer Methode), und das rotierte Bild dann zurückgeben. Das rotieren geht ja, aber wie groß wird das Bild nachher genau sein? Ich weiss, ich könnte einfach
länge = sqrt(breite² + höhe²);
breite = sqrt(breite² + höhe²);
benutzen, aber das ist ja dann das höchstmögliche Quadrat, aber ich möchte das möglichst kleine Rechteck haben, in dem das Bild liegen kann.. Ich hatte schon 2 Lösungsansätze, aber die sind irgendwie nach hinten lost gegangen...
Danke im Voraus
Ikaron
Edit: Hat sich erledigt
Geht aber grade nur bei Quadraten atm.
Edit 2: Gott bin ich blöd XD Jetzt geht's.
Lösung:
Ich habe ein kleines Problemchen:
Ich möchte ein Bild rotieren (in einer Methode), und das rotierte Bild dann zurückgeben. Das rotieren geht ja, aber wie groß wird das Bild nachher genau sein? Ich weiss, ich könnte einfach
länge = sqrt(breite² + höhe²);
breite = sqrt(breite² + höhe²);
benutzen, aber das ist ja dann das höchstmögliche Quadrat, aber ich möchte das möglichst kleine Rechteck haben, in dem das Bild liegen kann.. Ich hatte schon 2 Lösungsansätze, aber die sind irgendwie nach hinten lost gegangen...
Danke im Voraus
Ikaron
Edit: Hat sich erledigt
Edit 2: Gott bin ich blöd XD Jetzt geht's.
Lösung:
Java:
rSizeX = (int) Math.max(Math.abs(Math.sin(Math.toRadians(Math.toDegrees(Math.atan(sizeX / sizeY)) - angle)) * Math.sqrt(sizeX * sizeX + sizeY * sizeY) / 2), Math.abs(Math.sin(Math.toRadians(360 - Math.toDegrees(Math.atan(sizeX / sizeY)) - angle)) * Math.sqrt(sizeX * sizeX + sizeY * sizeY) / 2)) * 2
rSizeY = (int) Math.max(Math.abs(Math.cos(Math.toRadians(Math.toDegrees(Math.atan(sizeX / sizeY)) - angle)) * Math.sqrt(sizeX * sizeX + sizeY * sizeY) / 2), Math.abs(Math.cos(Math.toRadians(360 - Math.toDegrees(Math.atan(sizeX / sizeY)) - angle)) * Math.sqrt(sizeX * sizeX + sizeY * sizeY) / 2)) * 2;
Zuletzt bearbeitet: