Courbes ouvertes et fermées
L’illustration suivante montre deux courbes : une ouverte et une fermée.
Les courbes fermées ont un intérieur et peuvent donc être remplies d’un pinceau. La classe Graphics dans Windows GDI+ fournit les méthodes suivantes pour remplir des figures fermées et des courbes : FillRectangle, FillEllipse, FillPie, FillPolygon, FillClosedCurve, Graphics ::FillPathet Graphics ::FillRegion. Chaque fois que vous appelez l’une de ces méthodes, vous devez passer l’adresse de l’un des types de pinceau spécifiques (solidBrush, HatchBrush , TextureBrush, LinearGradientBrush, ou PathGradientBrush) en tant qu’argument.
La méthode FillPie est un compagnon de la méthode DrawArc. Tout comme la méthode DrawArc dessine une partie du contour d’un ellipse, la méthode FillPie remplit une partie de l’intérieur d’un ellipse. L’exemple suivant dessine un arc et remplit la partie correspondante de l’intérieur de l’ellipse.
myGraphics.FillPie(&mySolidBrush, 0, 0, 140, 70, 0, 120);
myGraphics.DrawArc(&myPen, 0, 0, 140, 70, 0, 120);
L’illustration suivante montre l’arc et le secteur rempli.
La méthode FillClosedCurve est un compagnon de la méthode DrawClosedCurve. Les deux méthodes ferment automatiquement la courbe en connectant le point de terminaison au point de départ. L’exemple suivant dessine une courbe qui passe à travers (0, 0), (60, 20) et (40, 50). Ensuite, la courbe est automatiquement fermée en connectant (40, 50) au point de départ (0, 0), et l’intérieur est rempli d’une couleur unie.
Point myPointArray[] =
{Point(10, 10), Point(60, 20),Point(40, 50)};
myGraphics.DrawClosedCurve(&myPen, myPointArray, 3);
myGraphics.FillClosedCurve(&mySolidBrush, myPointArray, 3, FillModeAlternate)
Un chemin peut se composer de plusieurs figures (sous-chemins). La méthode Graphics ::FillPath remplit l’intérieur de chaque figure. Si une figure n’est pas fermée, la méthode Graphics ::FillPath remplit la zone qui serait entourée si la figure était fermée. L’exemple suivant dessine et remplit un chemin qui se compose d’un arc, d’un spline cardinal, d’une chaîne et d’un secteur.
myGraphics.FillPath(&mySolidBrush, &myGraphicsPath);
myGraphics.DrawPath(&myPen, &myGraphicsPath);
L’illustration suivante montre le chemin avant et après qu’il est rempli d’un pinceau solide. Notez que le texte de la chaîne est décrit, mais pas rempli, par la méthode Graphics ::D rawPath. Il s’agit de la méthode Graphics ::FillPath qui peint les intérieurs des caractères de la chaîne.