Compartir a través de


Relleno de figuras abiertas

Para rellenar una ruta de acceso, pase la dirección de un objeto GraphicsPath al método Graphics::FillPath . El método Graphics::FillPath rellena la ruta de acceso según el modo de relleno (alternativo o desenlazado) establecido actualmente para la ruta de acceso. Si el trazado tiene figuras abiertas, este se rellena como si esas figuras estuvieran cerradas. GDI+ cierra una figura dibujando una línea recta desde su punto final hasta su punto inicial.

En el ejemplo siguiente se crea un trazado que tiene una figura abierta (un arco) y una cerrada (una elipse). El método Graphics::FillPath rellena la ruta de acceso según el modo de relleno predeterminado, que es 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);

En la ilustración siguiente se muestra la salida del código anterior. Tenga en cuenta que la ruta de acceso se rellena (según FillModeAlternate) como si la figura abierta estuviera cerrada por una línea recta desde su punto final hasta su punto inicial.

ilustración que muestra una elipse alta que se superpone a la mitad inferior de una elipse ancha; la unión se rellena, pero la intersección está vacía.