Hallo Zusammen,
ich versuche eine Grafik so auf der Stelle zu drehen, dass ihr Mittelpunkt immer am gleichen Punkt ist (so wie ein Autorad). Das mit dem Drehen funktioniert auch, aber nur um den Punkt(0,0). Ich habe mir also gedacht, ich verändere einfach den Origin-Point in der umgekehrten Richtung, den ich dann dem DrawImage übergebe. Dieser müsste sich ja dann um die Grafik herumdrehen und das Bild dann immer an der gleichen Stelle rendern lassen (theoretisch!). Aber das funktioniert nicht, oder ich komme einfach nicht drauf. Jedenfalls sitze ich jetzt schon seit geschlagenen 2 Stunden an diesem blöden Punkt und es wird einfach nichts. Der Code sieht gerade so aus:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7:
| e.Graphics.RotateTransform(angle, System.Drawing.Drawing2D.MatrixOrder.Prepend ); Point origin =new Point(20 - (int)(Math.Cos(-angle / 180.0f * Math.PI) * 20),24 - (int)(Math.Sin(-angle / 180.0f * Math.PI) * 20)); e.Graphics.DrawImage(source, origin ); |
Ich verzweifle gerade dadran, das muss doch irgendwie zu machen sein. Hoffe ihr habt da nen Tipp für mich.
mfg
- VampireSilence