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

_Example()

Func _Example()
	Local $hGUI, $hGraphics, $hBrush20, $hBrush120, $tRectF

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

	$hGUI = GUICreate("Кисть градиента с заданным углом", 420, 200)
	GUISetState()

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

	; Создаёт структуру $tagGDIPRECTF, определяющую прямоугольник для кисти линейного градиента
	$tRectF = _GDIPlus_RectFCreate(0, 0, 50, 100)

	; Создаёт кисть линейного градиента, который плавно изменяет цвет с красного на зеленый с углом 20 градусов
	$hBrush20 = _GDIPlus_LineBrushCreateFromRectWithAngle($tRectF, 0xFFFF0000, 0xFF00FF00, 20, True, 1)

	; Создаёт кисть линейного градиента, который плавно изменяет цвет с красного на зеленый с углом 120 градусов
	$hBrush120 = _GDIPlus_LineBrushCreateFromRectWithAngle($tRectF, 0xFFFF0000, 0xFF00FF00, 120, True, 1)

	; Заполняет прямоугольник кистью с линейным градиентом с углом 20 градусов
	_GDIPlus_GraphicsFillRect($hGraphics, 0, 0, 200, 200, $hBrush20)

	; Заполняет прямоугольник кистью с линейным градиентом с углом 120 градусов
	_GDIPlus_GraphicsFillRect($hGraphics, 220, 0, 200, 200, $hBrush120)

	Do
	Until GUIGetMsg() = $GUI_EVENT_CLOSE

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

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