Compartilhar via


Regiões no GDI+

Uma região é uma parte da área de exibição de um dispositivo de saída. As regiões podem ser simples (um único retângulo) ou complexas (uma combinação de polígonos e curvas fechadas). A ilustração a seguir mostra duas regiões: uma construída a partir de um retângulo e outra construída a partir de um caminho.

Captura de tela de uma região construída a partir de um retângulo e uma captura de tela de uma região construída a partir de um caminho.

Usando regiões

As regiões geralmente são usadas para recorte e teste de colisão. O recorte envolve restringir o desenho a uma determinada região da área de visualização, geralmente a parte que precisa ser atualizada. O teste de clique envolve a verificação para determinar se o cursor está em uma determinada região da tela quando um botão do mouse é pressionado.

Você pode construir uma região a partir de um retângulo ou um caminho. Você também pode criar regiões complexas combinando regiões existentes. A classe Region fornece os seguintes métodos para combinar regiões: Intersect, Union, Xor, Excludee Complement.

A interseção de duas regiões é o conjunto de todos os pontos que pertencem a ambas as regiões. A união é o conjunto de todos os pontos que pertencem a uma ou outra ou a ambas as regiões. O complemento de uma região é o conjunto de todos os pontos que não estão na região. A ilustração a seguir mostra a interseção e a união das duas regiões mostradas na ilustração anterior.

Captura de tela de uma interseção e uma união das duas regiões da ilustração anterior.

O método Xor, aplicado a um par de regiões, produz uma região que contém todos os pontos que pertencem a uma região ou outra, mas não a ambas. O método Exclude, aplicado a um par de regiões, produz uma região que contém todos os pontos na primeira região que não estão na segunda região. A ilustração a seguir mostra as regiões resultantes da aplicação dos métodos Xor e Exclude às duas regiões mostradas no início deste tópico.

Captura de tela dos resultados do método Xor e dos resultados do método Exclude aplicados às duas regiões da ilustração anterior.

Para preencher uma região, você precisa de um objeto Graphics, um objeto Brush e um objeto Region. O objeto Graphics fornece o método FillRegion e o objeto Brush armazena atributos do preenchimento, como cor ou padrão. O exemplo a seguir preenche uma região com uma cor sólida.

myGraphics.FillRegion(mySolidBrush, myRegion);
myGraphics.FillRegion(mySolidBrush, myRegion)

Consulte também