Per disegnare un poligono in Java, si può chiaramente usare la funzione drawLine, ma esiste anche un meccanismo che rende le cose più facili. Il procedimento consiste in tre passi:
int x={....};
int y={....};
Polygon pol=new Polygon(x, y, x.lenght);
Le prime due istruzioni creano due vettori, che devono avere
la stessa dimensione. L'idea è che il primo punto
avrà coordinate x[0],y[0], il secondo punto
avrà coordinate x[1],y[1], e così via.
La terza istruzione dichiara il poligono: in questo modo, viene
creata una nuova variabile pol, ossia viene creata
una zona di memoria in cui viene memorizzato un poligono. In
particolare, il poligono è formato da x.lenght
punti (numero di elementi del vettore x), e le
coordinate dei suoi punti sono determinate dai valori memorizzati
nei vettori x e y.
Polygon nomepoligono=new Polygon();
Questa dichiarazione crea un poligono che non contiene punti.
Per poter definire il poligono che serve a noi, occorre
aggiungere dei punti al poligono. La istruzione che aggiunge
un punto a un poligono è:
nomepoligono.addPoint(x,y);
Questa istruzione aggiunge il punto di coordinate x,y
al poligono che è stato definito con nome
nomepoligono. Partendo da un poligono vuoto e
aggiungendo uno per volta i punti necessari, si può
creare qualsiasi poligono.
/*
Disegna due poligoni.
*/
import java.awt.*;
public class Poligoni extends java.applet.Applet {
public void paint(Graphics g) {
/* metodo 1: definizione con due vettori */
int x[]={10, 20, 30, 40};
int y[]={5, 30, 5, 21};
Polygon pol=new Polygon(x, y, x.length);
/* metodo 2: si parte dal poligono vuoto e si aggiungono
ogni volta dei punti */
Polygon p=new Polygon();
p.addPoint(100,100);
p.addPoint(100,180);
p.addPoint(180,140);
p.addPoint(160,110);
/* disegna i poligoni */
g.drawPolygon(pol);
g.drawPolygon(p);
}
}
Le due istruzioni finali del programma sono quelle che disegnano
effettivamente i due poligoni. L'esecuzione del programma produce
il seguente risultato.