Функция _GDIPlus_MatrixTranslate

         Описание функции


_GDIPlus_MatrixTranslate

Обновляет матрицу с продуктом в себе и смещает матрицу

#include <GDIPlus.au3>
_GDIPlus_MatrixTranslate($hMatrix, $fOffsetX, $fOffsetY [, $bAppend = False])

Параметры

$hMatrix Дескриптор объекта Matrix
$fOffsetX Количество пикселей добавляемых вдоль оси х
$fOffsetY Количество пикселей добавляемых вдоль оси y
$bAppend [необязательный] Указывает порядок умножения:
    True - Указывает, что смещение матрицы влево
    False - Указывает, что смещение матрицы вправо

Возвращаемое значение

Успех:Возвращает True
Ошибка:Возвращает False

См. также

Искать GdipTranslateMatrix в библиотеке MSDN

Пример

#include <GUIConstantsEx.au3>
#include <GDIPlus.au3>

; Создаёт GUI
$hWnd = GUICreate("GDI+ Example", 400, 300)
GUISetState()

; Старт GDI+
_GDIPlus_Startup()
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hWnd)

$hMatrix = _GDIPlus_MatrixCreate()
; Перемещает матрицу на половину ширины и высоты к центру
_GDIPlus_MatrixTranslate($hMatrix, 200, 150)
_GDIPlus_MatrixRotate($hMatrix, 45) ; поворачивает на 45 градусов
_GDIPlus_GraphicsSetTransform($hGraphics, $hMatrix)

$hPen = _GDIPlus_PenCreate(0xFF00FF00, 10)

_GDIPlus_GraphicsClear($hGraphics)
; Рисует прямоугольник вокруг левого верхнего угла GUI, но так как мы сделали преобразования с матрицей, то она появится в центре GUI
_GDIPlus_GraphicsDrawRect($hGraphics, -50, -50, 100, 100, $hPen)


Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE

; Очищает ресурсы
_GDIPlus_PenDispose($hPen)
_GDIPlus_MatrixDispose($hMatrix)
_GDIPlus_GraphicsDispose($hGraphics)
_GDIPlus_Shutdown()