Como Preencher Figuras Abertas
Você pode preencher um caminho passando um GraphicsPath objeto para o FillPath método. O FillPath método preenche o caminho de acordo com o modo de preenchimento (alternativo ou sinuoso) atualmente definido para o caminho. Se o caminho tiver figuras abertas, ele será preenchido como se essas figuras que foram fechadas. GDI+ fecha uma figura desenhando uma linha reta de seu ponto final até seu ponto inicial.
Exemplo
O exemplo a seguir cria um caminho que tem uma figura aberta (um arco) e uma figura fechada (uma elipse). O FillPath método preenche o caminho de acordo com o modo de preenchimento padrão, que é Alternate.
A ilustração a seguir mostra a saída do código de exemplo. Observe que o caminho é preenchido (de acordo com Alternate) como se a figura aberta fosse fechada por uma linha reta de seu ponto final até seu ponto inicial.
GraphicsPath path = new GraphicsPath();
// 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 = new Pen(Color.FromArgb(128, 0, 0, 255), 5);
SolidBrush brush = new SolidBrush(Color.Red);
// The fill mode is FillMode.Alternate by default.
e.Graphics.FillPath(brush, path);
e.Graphics.DrawPath(pen, path);
Dim path As New GraphicsPath()
' Add an open figure.
path.AddArc(0, 0, 150, 120, 30, 120)
' Add an intrinsically closed figure.
path.AddEllipse(50, 50, 50, 100)
Dim pen As New Pen(Color.FromArgb(128, 0, 0, 255), 5)
Dim brush As New SolidBrush(Color.Red)
' The fill mode is FillMode.Alternate by default.
e.Graphics.FillPath(brush, path)
e.Graphics.DrawPath(pen, path)
Compilando o código
O exemplo anterior foi projetado para uso com o Windows Forms e requer PaintEventArgse
, que é um parâmetro do Paint manipulador de eventos.
Confira também
.NET Desktop feedback