Desenhando polígonos e Polilinhas
A diferença é que os polígonos são sempre fechados e as polilinhas podem ser fechadas (aí será um polígono) ou não. Embora haja diferenças, ambos são tratados como classe “Polygon”.
Alguns métodos requerem objetos do típo "Polygon" (da java.awt).
Vamos demonstrar alguns métodos para desenhar polígonos:
public void drawPolygon( int[] xPoints, int[] yPoints, int points )
Desenha um polígono. Recebe dois vetores de inteiros, com a localização dos pontos do eixo x, os pontos do eixo y e o número total de pontos do polígono.
Caso o último ponto seja diferente do primeiro, mais um segmento de linha será criado para conectar o último com o primeiro ponto, fechando o polígono.
public void drawPolyline( int[] xPoints, int[] yPoints, int points )
Desenha linhas conectadas. Recebe dois vetores de inteiros, com a localização dos pontos do eixo x, os pontos do eixo y e o número total de pontos da polilinha.
Caso o último ponto seja diferente do primeiro a polilinha não é fechada (não é um polígono).
public void drawPolygon( Polygon p )
Desenha o objeto Polygon.
public void fillPolygon( int[] xPoints, int[] yPoints, int points )
Mesmo método Polygon, mas este preenche (pinta) o polígono.
public void fillPolygon( Polygon p )
Desenha o objeto Polygon, porém preenchido.
Construtores (constructors) e métodos da classe Polygon:
public Polygon()
Criado o objeto polígono, sem pontos.
public Polygon( int[] xValues, int[] yValues, int numberOfPoints )
Cria o objeto polígono. Recebe dois vetores de inteiros, com a localização dos pontos do eixo x, os pontos do eixo y e o número total de pontos do polígono.
public void addPoint( int x, int y )
Adiciona um par de coordenadas ao polígono.
Para criar um painel para desenhar os polígonos, crie uma classe que extenda a JPanel e nela crie a paintComponent:
public class PolygonsJPanel extends JPanel
{
public void paintComponent( Graphics g )
{
super.paintComponent( g );
int[] xValues = { 20, 40, 50, 30, 20, 15 };
int[] yValues = { 50, 50, 60, 80, 80, 60 };
Polygon poligono = new Polygon( xValues, yValues, 6 );
g.drawPolygon( poligono );
}
}
Esses métodos e classes estão presentes em:
import java.awt.Graphics;
import java.awt.Polygon;
import javax.swing.JPanel;
Na sua classe main, crie um objeto dessa sua classe que desenha o polígono e add no seu frame.
Nenhum comentário:
Postar um comentário