Drehen in Delphi TImage
Mache ich just for fun einen virtuellen desktop zu spielen Magic The Gathering mit Freunden. Ich bin mit Delphi 2010. Die Karten sind vertreten in der Anwendung von TImage
Komponenten (laden von PNG-Dateien der Karten, die aus einer Datenbank geladen). Der Punkt hier ist, dass im MTG-eine sehr gewöhnliche Sache zu tun ist, Tippen Sie auf eine Karte (drehen um 90 ° Grad nach rechts). Es gibt einen einfachen Weg, dies zu tun? Ich weiß wirklich nicht brauchen, die "animation", nur die Karte gedreht, einmal geklickt wird (animation wäre schön, wenn). Das Spiel soll gleichzeitig mit vielen Karten und Sie kann überall verschoben werden kann, in form. Ich denke, dass das Bild von der Karte abgegriffen und ungenutzt in der Datenbank, aber vielleicht ist das ein overkill, wenn es eine schöne und effiziente Art und Weise zum drehen der Karten.
Irgendwelche Ideen?
Ein weiteres: stackoverflow.com/questions/848025/rotating-bitmaps-in-code
Dies könnte interessant für Sie sein stackoverflow.com/q/10585068/960757.
Schön. Danke, TLama!
InformationsquelleAutor Averroes | 2012-05-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Oder lassen Sie die
TImage
und z.B.TPaintBox
und GDI+ - Bibliothek. GDI+ hat dieRotateFlip
- Methode direkt, dies zu tun. Mit derGDI+ - Bibliothek für Delphi
würde das so Aussehen:Solch ein overkill, nicht wahr 😕
InformationsquelleAutor TLama
Könnte man eine TPaintBox statt ein TImage und verwenden SetWorldTransform mit einer drehmatrix zu ziehen, die angezapft Karte. Ich benutze StretchDrawRotated:
InformationsquelleAutor Uli Gerhardt
Old-skool Weg dies zu tun ist mit PlgBlt.
Ich würde empfehlen, übergeben Sie die Karte als bitmap b1, und ein temporäres TBitmap-Instanz, die Sie erstellen, nur für den Aufruf dieser Prozedur aus, und dann verwenden Sie es zum zeichnen auf einem Ziel-Canvas. Sie könnte auch die Vorgehensweise ein bisschen zu akzeptieren, eine Leinwand Griff-und Ziel-Koordinaten zu übergeben, in PlgBlt direkt.
InformationsquelleAutor Stijn Sanders
Können Sie auch die Graphics32-Bibliothek oder nur in dieser Funktion nahm ich vor einiger Zeit von CodeCentral:
Rotate
? graphics32.org/documentation/Docs/Units/GR32_Transforms/Classes/...das könnte langsam sein...
InformationsquelleAutor François
Graphics32-Bibliothek wurde bereits erwähnt, dort oben.
Erwähnen möchte ich noch eine gute Bibliothek
Vampyre Imaging
InformationsquelleAutor Arioch 'The