Utilisez la fonction Polygon
qui utilise le pinceau actuel pour remplir le polygone. L'exemple suivant dessine un triangle est indiqué en rouge et rempli de bleu:
#include <windows.h>
#include <windowsx.h>
...
HPEN hPen = CreatePen(PS_SOLID, 2, RGB(255, 0, 0));
HPEN hOldPen = SelectPen(hdc, hPen);
HBRUSH hBrush = CreateSolidBrush(RGB(0, 0, 255));
HBRUSH hOldBrush = SelectBrush(hdc, hBrush);
POINT vertices[] = { {200, 100}, {300, 300}, {100, 300} };
Polygon(hdc, vertices, sizeof(vertices)/sizeof(vertices[0]));
SelectBrush(hdc, hOldBrush);
DeleteObject(hBrush);
SelectPen(hdc, hOldPen);
DeleteObject(hPen);
Le résultat ressemble à ceci:
dessiner un polygone? – jpw
Si je me souviens bien, il y a un remplissage polygonal. Un triangle est un cas particulier de polygone. Ou il suffit probablement de dessiner un triangle avec un pinceau de fond et un mode de remplissage sélectionné. –
Vous voulez * Dessiner * ou * Remplir *? Si vous voulez remplir, vous devez d'abord créer une région avec CreatePolygonRgn, puis utiliser FillRgn pour le remplir (avec un pinceau). –