Como funciona um setXORMode de um Graphics?

3 respostas
E

Galera estou um com dúvida já li a documentação, mas ainda não entendi como funciona o método setXORMode de um Graphics? como poder usa-lo e qual sua utilidade

Se alguém tiver alguma informação ou um link interessante para que eu possa pesquisar melhor obrigado.

3 Respostas

InicianteJavaHenriqu

Olá elias_almeida :smiley:

A classe Graphics possui dois modos de pintura. No modo “default”, objetos sobrepostos são simplesmente pintados um em cima do outro, mesmo se forem da mesma cor. Um modo altenativo chamado modo XOR é disponível para evitar que partes sobrepostas de objetos sejam pintadas da mesma cor:

public void paint( Graphics g ) 
{
   g.setColor( Color.blue ); 
   g.fillRect( 10, 10, 30, 30 ); // quadrado azul
   g.fillArc( 20, 20, 30, 30, 0, 360 ); // círculo azul parcialmente sobreposto
       // ao quadrado
   g.setXORMode( Color.red ); // passar para o modo XOR 
   g.fillRect( 80, 80, 30, 30 ); // quadrado azul
   g.fillArc( 90, 90, 30, 30, 0, 360 ); // círculo azul parcialmente sobreposto 
       // ao quadrado. A parte sobreposta é pintada de vermelho 
}

fonte :arrow: http://www.if.ufrgs.br/~betz/jaulas/aula5o.htm

E

Muito obrigado InicianteJavaHenrique entendi como funciona o setXORMode

Você conhece uma maneira de apagar algo que foi desenhado na tela, por exemplo desenho primeiro umcirculo depois um retângulo por cima do circulo e gostaria de apagar somente o retângulo que desenhei por cima do circulo

Tem como fazer isso?

Muito obrigado pela ajuda

InicianteJavaHenriqu

Sim. Você precisa armazenas seus shapes em um List.

flw :thumbup:

Criado 16 de fevereiro de 2012
Ultima resposta 18 de fev. de 2012
Respostas 3
Participantes 2