Condividi tramite


Tracciare una linea riempita con una texture

Invece di disegnare una linea o una curva con un colore a tinta unita, è possibile disegnare con una trama. Per disegnare linee e curve con una texture, creare un oggetto TextureBrush e passare l'indirizzo di questo oggetto TextureBrush al costruttore Pen . L'immagine associata al pennello texture viene utilizzata per piastrellare il piano (invisibilmente), e quando la penna disegna una linea o una curva, il tratto della penna scopre determinati pixel della texture piastrellata.

L'esempio seguente crea un oggetto immagine dal file Texture1.jpg. Tale immagine viene usata per costruire un oggetto TextureBrush , e l'oggetto TextureBrush viene usato per costruire un oggetto Pen . La chiamata a Graphics::DrawImage disegna l'immagine con l'angolo superiore sinistro all'ubicazione (0, 0). La chiamata a Graphics::DrawEllipse usa l'oggetto Pen per disegnare un'ellisse con trama.

Image         image(L"Texture1.jpg");
TextureBrush  tBrush(&image);
Pen           texturedPen(&tBrush, 30);

graphics.DrawImage(&image, 0, 0, image.GetWidth(), image.GetHeight());
graphics.DrawEllipse(&texturedPen, 100, 20, 200, 100);

La figura seguente mostra l'immagine e l'ellisse con trama.

illustrazione che mostra una piccola immagine rettangolare, quindi un segmento di linea ellittica riempito con l'immagine originale