Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Una figura cerrada, como un rectángulo o una elipse, consta de un contorno y un interior. El contorno se dibuja con un Pen objeto y el interior se rellena con un objeto brush. Windows GDI+ proporciona varias clases de pincel para rellenar los interiores de figuras cerradas: SolidBrush, HatchBrush, TextureBrush, LinearGradientBrushy PathGradientBrush. Todas estas clases heredan de la clase brush de. En la ilustración siguiente se muestra un rectángulo lleno de un pincel sólido y una elipse llena de un pincel de sombreado.
Pinceles sólidos
Para rellenar una forma cerrada, necesita un objeto graphicsy un objeto brush. El objeto graphics proporciona métodos, como FillRectangle y FillEllipse, y el objeto Brush almacena atributos del relleno, como el color y el patrón. La dirección del objeto Brush se pasa como uno de los argumentos al método fill. En el ejemplo siguiente se rellena una elipse con un color rojo sólido.
SolidBrush mySolidBrush(Color(255, 255, 0, 0));
myGraphics.FillEllipse(&mySolidBrush, 0, 0, 60, 40);
Tenga en cuenta que en el ejemplo anterior, el pincel es de tipo SolidBrush, que hereda de Brush.
Pinceles de sombreado
Al rellenar una forma con un pincel de sombreado, se especifica un color de primer plano, un color de fondo y un estilo de sombreado. El color de primer plano es el color del sombreado.
HatchBrush myHatchBrush(
HatchStyleVertical,
Color(255, 0, 0, 255),
Color(255, 0, 255, 0));
GDI+ proporciona más de 50 estilos de sombreado, especificados en HatchStyle. Los tres estilos que se muestran en la ilustración siguiente son Horizontal, ForwardDiagonal y Cross.
Pinceles de textura
Con un pincel de textura, puede rellenar una forma con un patrón almacenado en un mapa de bits. Por ejemplo, supongamos que la imagen siguiente se almacena en un archivo de disco denominado MyTexture.bmp.
En el ejemplo siguiente se rellena una elipse repitiendo la imagen almacenada en MyTexture.bmp.
Image myImage(L"MyTexture.bmp");
TextureBrush myTextureBrush(&myImage);
myGraphics.FillEllipse(&myTextureBrush, 0, 0, 100, 50);
En la ilustración siguiente se muestra la elipse rellenada.
Pinceles de degradado
Puede usar un pincel degradado para rellenar una forma con un color que cambie gradualmente de una parte de la forma a otra. Por ejemplo, un pincel de degradado horizontal cambiará el color a medida que se mueve del lado izquierdo de una figura al lado derecho. En el ejemplo siguiente se rellena una elipse con un pincel degradado horizontal que cambia de azul a verde mientras se mueve del lado izquierdo de la elipse al lado derecho.
LinearGradientBrush myLinearGradientBrush(
myRect,
Color(255, 0, 0, 255),
Color(255, 0, 255, 0),
LinearGradientModeHorizontal);
myGraphics.FillEllipse(&myLinearGradientBrush, myRect);
En la ilustración siguiente se muestra la elipse rellenada.
izquierdo
Un pincel degradado de trazado se puede configurar para cambiar el color a medida que se mueve desde el centro de una figura hacia el límite.
Los pinceles de degradado de ruta son bastante flexibles. El pincel degradado usado para rellenar el triángulo en la siguiente ilustración cambia gradualmente de rojo en el centro a cada uno de los tres colores diferentes en los vértices.