Berechnet den Inhalt eines Matrix-Objekts als Produkt aus sich selbst und einer Translationsmatrix neu (Anmerkung: Verschiebung des Inhalts des Matrix).
#Include <GDIPlus.au3>
_GDIPlus_MatrixTranslate($hMatrix, $fOffsetX, $fOffsetY[, $bAppend = False])
Parameter
| $hMatrix | Handle auf ein Matrix-Objekt |
| $fOffsetX | Anzahl der Pixel, die auf der X-Achse hinzugefügt werden |
| $fOffsetY | Anzahl der Pixel, die auf der Y-Achse hinzugefügt werden |
| $bAppend | [optional] Legt die Reihenfolge der Matrizenmultiplikation fest: True - Legt fest, dass die Translationsmatrix links steht False - Legt fest, dass die Translationsmatrix rechts steht |
Rückgabewert
| Erfolg: | True |
| Fehler: | False |
Bemerkungen
Keine.
Verwandte Funktionen
Siehe auch
Suche in der MSDN Bibliothek nach GdipTranslateMatrix
Beispiel
#include <GUIConstantsEx.au3>
#include <GDIPlus.au3>
; Erstellt eine GUI
$hWnd = GUICreate("GDI+Beispiel", 400, 300)
GUISetState()
; Startet GDI+
_GDIPlus_Startup()
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hWnd)
$hMatrix = _GDIPlus_MatrixCreate()
; Verschiebt die Matrix halb in der Breite und halb in der Höhe zur Mitte
_GDIPlus_MatrixTranslate($hMatrix, 200, 150)
_GDIPlus_MatrixRotate($hMatrix, 45)
_GDIPlus_GraphicsSetTransform($hGraphics, $hMatrix)
$hPen = _GDIPlus_PenCreate(0xFF00FF00, 10)
_GDIPlus_GraphicsClear($hGraphics)
; Zeichnet um die linke Ecke der GUI. Jedoch erscheint das Objekt in der Mitte der GUI da die Matrix verschoben wurde
_GDIPlus_GraphicsDrawRect($hGraphics, -50, -50, 100, 100, $hPen)
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; Ressourcen freigeben
_GDIPlus_PenDispose($hPen)
_GDIPlus_MatrixDispose($hMatrix)
_GDIPlus_GraphicsDispose($hGraphics)
_GDIPlus_Shutdown()