Aggiunti es P7.17 18 19
Aggiunto definitivamente esercizi grafici Cloud, Polygon e Chart (esercizi P7.17, P7.18 e P7.19)
This commit is contained in:
@@ -3,29 +3,39 @@ import java.awt.geom.Point2D;
|
||||
import java.awt.geom.Line2D;
|
||||
|
||||
/**
|
||||
Classe che rappresenta lo stato di una lampadina
|
||||
@author radaelli11353
|
||||
*/
|
||||
* Classe che rappresenta un poligono composto da un numero variabile di punti
|
||||
* @author radaelli11353
|
||||
*/
|
||||
public class Polygon {
|
||||
public static final int DIAMETRO = 5;
|
||||
private Point2D.Double[] punti;
|
||||
private int nPunti;
|
||||
|
||||
public Polygon() {
|
||||
punti = new Point2D.Double[100];
|
||||
/**
|
||||
* Costruttore della classe Polygon
|
||||
* @param maxPunti Numero massimo di punti per il poligono
|
||||
*/
|
||||
public Polygon(int maxPunti) {
|
||||
punti = new Point2D.Double[maxPunti];
|
||||
nPunti = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Metodo per aggiungere un punto al poligono
|
||||
* @param aPoint Punto da aggiungere al poligono
|
||||
*/
|
||||
public void add(Point2D.Double aPoint) {
|
||||
if(nPunti >= punti.length) throw new IllegalArgumentException();
|
||||
punti[nPunti] = aPoint;
|
||||
nPunti++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Metodo che disegna il poligono in un contesto grafico
|
||||
* @param g2 Contesto grafico
|
||||
*/
|
||||
public void draw(Graphics2D g2) {
|
||||
for(int i = 0; i < nPunti - 1; i++) {
|
||||
Line2D.Double linea = new Line2D.Double(punti[i].getX(), punti[i].getY(), punti[i+1].getX(), punti[i+1].getY());
|
||||
g2.draw(linea);
|
||||
g2.draw(new Line2D.Double(punti[i].getX(), punti[i].getY(), punti[i+1].getX(), punti[i+1].getY()));
|
||||
}
|
||||
g2.draw(new Line2D.Double(punti[nPunti - 1].getX(), punti[nPunti - 1].getY(), punti[0].getX(), punti[0].getY()));
|
||||
}
|
||||
|
Reference in New Issue
Block a user