2D - Bild um y-Achse drehen

Status
Nicht offen für weitere Antworten.

MathiasBauer

Bekanntes Mitglied
Hallo,

ich habe ein Problem, was für euch hoffentlich keins ist:

Im Moment drehe ich ein Bild so:

Code:
Graphics2D g2 = (Graphics2D) g; 
BufferedImage sourceBI = new BufferedImage(image.getWidth(null), image.getHeight(null), BufferedImage.TYPE_INT_ARGB);
AffineTransform at = new AffineTransform();
at.rotate(45.0 * Math.PI / 180.0, sourceBI.getWidth() / 2.0, sourceBI.getHeight() / 2.0);
g2.setTransform(at);
g2.drawImage(image, 10, 10, this);

Ich möchte jedoch das Bild nach hinten (über die y-Achse) drehen. Wie kann ich das am Besten umsetzen? Vielen Dank im Voraus.
 

0x7F800000

Top Contributor
wie jetzt? in die tiefe? So als würdest du den bildschirm nach innen eindrücken? ???:L
Ich würd mal spontan sagen: mit Graphics2D geht das nicht, Affine transformation ist das nicht mehr.

Brauchst du das für echtzeit? Dann würde ich eher dazu raten, sich irgendeine 3D API anzuschauen, große Texturen verzerrungsfrei perspektivisch darzustellen ist eine ziemlich rechenintensive angelegenheit, da sollte die grafikkarte mit hardwarebeschleunigung dran.

Wenn das nicht zeitkritisch ist, könntest du dir die Projektion selber zusammenbasteln, das wäre schnell genug, aber recht aufwendig zu schreiben, diese software-rasterizing-geschichten sind zwar nicht allzu schwer, aber da hat man was zu schreiben, das ist keine Sache für eine Stunde... Würde ich nur empfehlen, wenn du am Thema interessiert bist, und nicht nur so schnell wie möglich ein egebnis haben willst.
 

MathiasBauer

Bekanntes Mitglied
Vielen Dank für die schnelle Antwort.

Mir ist schon klar, dass das mit 3D einfach zu lösen wäre. Jedoch kann und möchte ich nicht 3D einsetzen.

Ich möchte das, um eine Spielkarte aufzudecken. Es soll den Anschein haben, dass sie sich aufdreht. D.h. sie dreht sich um die Y-Achse. Aber nur dem Anschein nach.
 

Quaxli

Top Contributor
Dann würde ich überlegen, die Animation als Einzelbildsequenz zu hinterlegen und nicht extra berechnen lassen.
Evtl. könntest Du ja die Farben der Karten vom Programm ändern lassen, so daß Du jede Animation nur einmal pro Karte benötigst und nicht auch noch je Farbe.
 

Marco13

Top Contributor
Wenn es keine Perspektivische Verzerrung gibt, sieht eine Rotation um die x-Achse ("über die y-Achse"?) IMHO schlicht und einfach so aus, als ob die Karte, die Am Anfang die höhe 100 hat, langsam auf Höhe 0 skaliert wird, und danach (ihre Rückseite) wieder zurück auf höhe 100....
 

0x7F800000

Top Contributor
So eine Illusion kriegst du aber auch mit gewöhnlichen Affinen Transformationen hin, nur sieht es dann halt so aus, als würdest du mit einem sehr starken teleskop von ganz weit draußen auf die Karte herunterschauen. Dass die Perspektivische Verzerrung fehlt macht bei einer Karte doch gar nichts aus, würde auch mit gewöhnlichen Scherungen gut aussehen. Brauchst also nichts 3D: arbeite mit Scherungen.
 

MathiasBauer

Bekanntes Mitglied
Folgenden Vorschlag hatte mein Professor:

2 Bilder nebeneinenader. Das 1. Bild hat eine Breite von 0, das andere 100. Dann langsam das 1. Bild hochskalieren.

Das könnte klappen, oder was meint ihr?
 

Marco13

Top Contributor
Wäre nett, wenn mir jemand erläutern würde, wo der Unterschied zu dem ist, was ich beschrieben habe (modulo vertauschter Breite und Höhe)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Bild wird nicht geladen Spiele- und Multimedia-Programmierung 4
D Java Bild bewegen funktioniert nicht Spiele- und Multimedia-Programmierung 8
J OpenGL Bild wird nicht richtig angezeigt Spiele- und Multimedia-Programmierung 2
S Wie kann ich ein Bild in einen Frame einfügen? Spiele- und Multimedia-Programmierung 2
U DPI von einem Bild definieren Spiele- und Multimedia-Programmierung 5
J Bild ohne Quallitätsverlust skalieren Spiele- und Multimedia-Programmierung 11
Silvascus Bild --> JFrame Hintergrund Spiele- und Multimedia-Programmierung 3
D getsubimage aus BufferedImage und Rueckwandlung in ein ImagePlus bild Spiele- und Multimedia-Programmierung 0
A Bild(sequenz) wird nicht geladen Spiele- und Multimedia-Programmierung 1
windl EXIFF Header in ein Bild schreiben Spiele- und Multimedia-Programmierung 0
L Bild in Richtung Maus drehen Spiele- und Multimedia-Programmierung 4
B Bild ohne Image auf die Festplatte streamen Spiele- und Multimedia-Programmierung 4
R [lwjgl] Cursor -> versetzt Zeichnen / Bild ist umgedreht Spiele- und Multimedia-Programmierung 2
F [JMyron] Bild von int[] zu BufferedImage Spiele- und Multimedia-Programmierung 2
Hoppelmann Alphamap (Bild) für 3D-Terrain generieren Spiele- und Multimedia-Programmierung 2
K Bild von USB-Webcam über JMF Spiele- und Multimedia-Programmierung 2
M Farbwerte für Flächen aus einem Bild erkennen Spiele- und Multimedia-Programmierung 3
S Wolken Bild/Grafik vom Programm erstellen lassen Spiele- und Multimedia-Programmierung 11
P Bild Pixelweise auslesen Spiele- und Multimedia-Programmierung 13
K Bild berührt Bild Spiele- und Multimedia-Programmierung 29
aze Nicht rechteckiges Bild zeichnen Spiele- und Multimedia-Programmierung 5
A Bild einer Webcam auffangen Spiele- und Multimedia-Programmierung 20
B Generierung einer Wertetabelle aus einem Bild Spiele- und Multimedia-Programmierung 3
lumo LWJGL - Bild rendern Spiele- und Multimedia-Programmierung 16
A .jpg-Bild auf andere Position verschieben Spiele- und Multimedia-Programmierung 4
F Bild im sourcecode Spiele- und Multimedia-Programmierung 32
F Bild einfärben Spiele- und Multimedia-Programmierung 5
J JOGL - Bild wird immer wieder weiß Spiele- und Multimedia-Programmierung 2
Q Rechteck in BIld suchen Spiele- und Multimedia-Programmierung 8
M Bild kopieren Spiele- und Multimedia-Programmierung 2
S Bild capturen mit direcShow Spiele- und Multimedia-Programmierung 2
B Character Bild links/rechts Spiele- und Multimedia-Programmierung 19
Developer_X Bild Größe einstellen Spiele- und Multimedia-Programmierung 2
ARadauer bild in bild suchen Spiele- und Multimedia-Programmierung 6
S Bild spiegeln Spiele- und Multimedia-Programmierung 7
N Farberkennung und -ersetzung in einem Bild Spiele- und Multimedia-Programmierung 2
G Palette aus Bild extrahieren Spiele- und Multimedia-Programmierung 5
A Wasserzeichen auf Bild Spiele- und Multimedia-Programmierung 2
G Paintsurface ins Bild konvertieren Spiele- und Multimedia-Programmierung 8
M Sich nach links verschiebendes Bild Spiele- und Multimedia-Programmierung 2
F Bild generieren Spiele- und Multimedia-Programmierung 3
J Animation hinter transparentem Bild auf der GlassPane Spiele- und Multimedia-Programmierung 6
A Kein Bild Spiele- und Multimedia-Programmierung 3
T Bild als mehrdimesionaler Array Spiele- und Multimedia-Programmierung 4
H Bild von Webcam laden Spiele- und Multimedia-Programmierung 4
P Bild, Pixel- / Bereichsfarbe auslesen Spiele- und Multimedia-Programmierung 12
G start Bild einfrügen in ein Java Spiel Spiele- und Multimedia-Programmierung 7
Quaxli off-topic: HDR-Bild errechnen Spiele- und Multimedia-Programmierung 3
P linie in bild zeichnen Spiele- und Multimedia-Programmierung 2
G Auf Tastendruck bild verschieben Spiele- und Multimedia-Programmierung 5
O ich hab da ein problem mit nem bild Spiele- und Multimedia-Programmierung 8
C JPEG oder BMP Bild erstellen Spiele- und Multimedia-Programmierung 5
A Bild im Raum darstellen (Texture2D) Spiele- und Multimedia-Programmierung 4
V Wie berechnet man das Bild eines Schwarzen Loches in Java? Spiele- und Multimedia-Programmierung 10
K Einzelne Pixel in einem Bild lesen Spiele- und Multimedia-Programmierung 5
N Bild zu zeichnen (drawImage) klappt nur manchmal?? Spiele- und Multimedia-Programmierung 8
P repaint verschiebt das Bild Spiele- und Multimedia-Programmierung 2
S BMP-Bild Pixel für Pixel bearbeiten Spiele- und Multimedia-Programmierung 1
P 2D Bild drehen Spiele- und Multimedia-Programmierung 4
M durchsichtiges Bild nach clearRect Spiele- und Multimedia-Programmierung 8
M RGB-Bild in Graustufen-Bild umwandeln Spiele- und Multimedia-Programmierung 2
M Bild-Spiegelung mit Java! Spiele- und Multimedia-Programmierung 5
S Bild auf Bild = Nichts? Spiele- und Multimedia-Programmierung 3
S Bild in Speicherbild zeichnen = Nichts? Spiele- und Multimedia-Programmierung 3
N Bild im Panel ändern Spiele- und Multimedia-Programmierung 3
D nicht 4-eckiges bild auf Hintergrund bewegen Spiele- und Multimedia-Programmierung 2
R Bild drehen Spiele- und Multimedia-Programmierung 24
J Bild generieren Spiele- und Multimedia-Programmierung 5
X Bild auf aktueller position drehen Spiele- und Multimedia-Programmierung 2
K Java2d Bild als JPG oder so speichern Spiele- und Multimedia-Programmierung 10
B j3d Rotation um mehr als eine Achse Spiele- und Multimedia-Programmierung 9
T [gelöst] Java3D: Unerwünschte Rotation um die 3.Achse vermeiden? Spiele- und Multimedia-Programmierung 3
J [JOGL] Kamera zentrieren über Achse Spiele- und Multimedia-Programmierung 4
C Java3D Rotation um einen Punkt (y-achse) Spiele- und Multimedia-Programmierung 2
J Hilfe: Rotation X und Y Achse (Java3d) Spiele- und Multimedia-Programmierung 12
S Drehen nur um x-Achse Spiele- und Multimedia-Programmierung 5
S Rotation um verschobene Achse Spiele- und Multimedia-Programmierung 7
A "Textur-Achse" drehen. Spiele- und Multimedia-Programmierung 2
N RotationInterpolator um die eigene X-Achse Spiele- und Multimedia-Programmierung 2
M um eigene Achse drehen Spiele- und Multimedia-Programmierung 3
Tr3kk3r Kamera nur um x und y, nicht um z achse rotieren Spiele- und Multimedia-Programmierung 2
G Slick2D SpriteSheet drehen in kuckrichtung Spiele- und Multimedia-Programmierung 1
M Kann nur nach rechts drehen Spiele- und Multimedia-Programmierung 7
Androbin mehr-dimensionale(n) Array(s) "drehen" Spiele- und Multimedia-Programmierung 8
A AffineTransform: Nach Drehen verschieben Spiele- und Multimedia-Programmierung 2
Creylon [LWJGL] 2D Sprite Rotieren/Drehen Spiele- und Multimedia-Programmierung 6
E [LWJGL] Karusell, mehrere Objekte drehen sich um einen Mittelpunkt Spiele- und Multimedia-Programmierung 31
R Drehen eines Bildes relativ zur Mauszeigerposition Spiele- und Multimedia-Programmierung 2
A Drehen von einem Image Spiele- und Multimedia-Programmierung 4
CookieSoft 3D Würfel will sich nicht drehen! [LWJGL] Spiele- und Multimedia-Programmierung 2
T JOGL 2D Objekte drehen rotate Spiele- und Multimedia-Programmierung 4
F 2D Shooter (von oben) Kugelberechnung und drehen der Figur Spiele- und Multimedia-Programmierung 17
R Koordinaten, Breite, Höhe nach drehen berechnen? Spiele- und Multimedia-Programmierung 3
T [java3d] Figur drehen Spiele- und Multimedia-Programmierung 16
B vertikal schreiben oder eine Bilddatei drehen? Spiele- und Multimedia-Programmierung 11
B Bounds drehen sich nicht mit.... Spiele- und Multimedia-Programmierung 7
P Rechteck drehen Spiele- und Multimedia-Programmierung 3
N Rundenstrategiespiel - Problem beim Drehen eines Bildes Spiele- und Multimedia-Programmierung 18
Z Obejkt drehen & vorwärts bewegen Spiele- und Multimedia-Programmierung 9
K Bilder drehen Spiele- und Multimedia-Programmierung 5

Ähnliche Java Themen

Neue Themen


Oben