Функция _GDIPlus_PathBrushCreate

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


_GDIPlus_PathBrushCreate

Создаёт объект PathGradientBrush на основе массива точек и задаёт режим повтора кисти

#Include <GDIP.au3>
_GDIPlus_PathBrushCreate($aPoints[, $iWrapMode = 0])

Параметры

$aPoints Массив точек, который определяет границы кисти градиента
[0][0] - Кол-во пунктов
[1][0] - X-координата точки 1
[1][1] - Y-координата точки 1
[2][0] - X-координата точки 2
[2][1] - Y-координата точки 2
[n][0] - X-координата точки n
[n][1] - Y-координата точки n
$iWrapMode [необязательный] Режим повтора, который определяет, как сопрягаются области.
0 - Плиткой, без зеркального отражения
1 - Плиткой с зеркальным отражением по горизонтали, как при перемещении от одной плитки к следующей в том же ряду
2 - Плиткой с зеркальным отражением по вертикали как при перемещении от одной плитки к следующей в том же столбце
3 - Плиткой с зеркальным отражением по горизонтали, как при перемещении в том же ряду и по вертикали как при перемещении в том же столбце
4 - Никакая плитка не помещается

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

Успех:Возвращает указатель на новый объект PathGradientBrush
Ошибка:Возвращает 0, либо:
Если ошибка DllCall(), устанавливает @error и @extended возвращённые вызовом DllCall()
$GDIP_STATUS содержит не нулевое значение кода ошибки

Примечания

После завершения использования объекта вызовите _GDIPlus_BrushDispose, чтобы освободить ресурсы объекта

См. также

См. также

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

Пример

#include <GDIP.au3>
#include <GUIConstantsEx.au3>

_Example()

Func _Example()
    Local $hGUI, $hGraphics, $hBrush
    Local $aColors[11] = [10, 0xFFFF0000, 0xFFFF0000, 0xFF0000FF, 0xFFFF0000, 0xFFFF0000, 0xFF0000FF, 0xFFFF0000, 0xFFFFFFFF, 0xFFFF0000, 0xFF0000FF]
    ; Local $aPoints[11][2] = [[10], [0, 100], [130, 100], [200, 0], [270, 100], [400, 100], [300, 150], [400, 300], [200, 200], [0, 300], [100, 150]]
    Local $aPoints[11][2] = [[10], [303, 114], [215, 178], [248, 281], [160, 218], [72, 281], [105, 178], [17, 114], [126, 113], [160, 10], [194, 113]]

    ; Инициализирует библиотеку GDI+
    _GDIPlus_Startup()

    $hGUI = GUICreate("_GDIPlus_PathBrushCreate", 400, 300)
    GUISetState()

    ; Создаёт графический объект из дескриптора окна
    $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)

    ; Создаёт путь кисти градиента из точек
    $hBrush = _GDIPlus_PathBrushCreate($aPoints)
    ; Устанавливает цвет центра кисти градиента
    _GDIPlus_PathBrushSetCenterColor($hBrush, 0xFF00FF00)
    ; Устанавливает цвета окружения кисти градиента
    _GDIPlus_PathBrushSetSurroundColorsWithCount($hBrush, $aColors)

    ; Заполняет многоугольник используя кисть градиента
    _GDIPlus_GraphicsFillPolygon($hGraphics, $aPoints, $hBrush)

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    ; Освобождает ресурсы
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_GraphicsDispose($hGraphics)

    ; Закрывает библиотеку GDI+
    _GDIPlus_Shutdown()
EndFunc