Remplissage des figures ouvertes
Vous pouvez remplir un chemin en passant l’adresse d’un objet GraphicsPath à la méthode Graphics::FillPath . La méthode Graphics::FillPath remplit le chemin en fonction du mode de remplissage (alternatif ou enroulement) actuellement défini pour le chemin. Si le chemin comporte des figures ouvertes, le chemin est rempli comme si ces figures étaient fermées. GDI+ ferme une figure en dessinant une ligne droite de son point de terminaison à son point de départ.
L’exemple suivant crée un chemin qui a une figure ouverte (un arc) et une figure fermée (une ellipse). La méthode Graphics::FillPath remplit le chemin en fonction du mode de remplissage par défaut, qui est FillModeAlternate.
GraphicsPath path;
// Add an open figure.
path.AddArc(0, 0, 150, 120, 30, 120);
// Add an intrinsically closed figure.
path.AddEllipse(50, 50, 50, 100);
Pen pen(Color(128, 0, 0, 255), 5);
SolidBrush brush(Color(255, 255, 0, 0));
// The fill mode is FillModeAlternate by default.
graphics.FillPath(&brush, &path);
graphics.DrawPath(&pen, &path);
L’illustration suivante montre la sortie du code précédent. Notez que le chemin est rempli (selon FillModeAlternate) comme si la figure ouverte était fermée par une ligne droite de son point de fin à son point de départ.