Partilhar via


Regiões em 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 a 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 são frequentemente usadas para recorte e testes de colisão. O corte envolve restringir o desenho a uma determinada região do ecrã, geralmente a parte que precisa ser atualizada. O teste de colisão envolve verificar se o cursor está numa determinada região da tela quando um botão do rato é pressionado.

Você pode construir uma região a partir de um retângulo ou 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 intersecção de duas regiões é o conjunto de todos os pontos pertencentes a ambas as regiões. A união é o conjunto de todos os pontos pertencentes a uma ou outra ou 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 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 a outra, mas não ambos. 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)

Ver também