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

_Example()

Func _Example()
	Local $hGUI, $hGraphics, $hBrush, $aPoints[21][2], $iI

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

	$hGUI = GUICreate("Заполненный многоугольник (случайный)", 400, 400)
	GUISetState()

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

	; Создаёт кисть, чтобы заполнить внутреннее пространство многоугольника
	$hBrush = _GDIPlus_BrushCreateSolid($GDIP_BROWN)

	; Создаёт случайные точки
	$aPoints[0][0] = 20

	For $iI = 1 To 20
		$aPoints[$iI][0] = Random(1, 399, 1)
		$aPoints[$iI][1] = Random(1, 399, 1)
	Next

	; Рисует заполненный многоугольник
	_GDIPlus_GraphicsFillPolygon2($hGraphics, $aPoints, $hBrush)

	Do
	Until GUIGetMsg() = $GUI_EVENT_CLOSE

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

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