import java.awt.Graphics2D; import java.awt.geom.Point2D; import java.awt.geom.Line2D; /** * Classe che rappresenta un grafico a barrecomposto da un numero variabile di dati * @author radaelli11353 */ public class Chart { private int[] valori; private int nValori; /** * Costruttore della classe Chart * @param maxValori Numero massimo di valori del grafico */ public Chart(int maxValori) { valori = new int[maxValori]; nValori = 0; } /** * Metodo per aggiungere un dato al grafico * @param valore Valore da aggiungere al grafico */ public void add(int valore) { if(nValori >= valori.length) throw new IllegalArgumentException(); valori[nValori] = valore; nValori++; } /** * Metodo che disegna il grafico in un contesto grafico * @param g2 Contesto grafico */ public void draw(Graphics2D g2) { for(int i = 0; i < nValori; i++) { g2.draw(new Line2D.Double(10+i*10, 450, 10+i*10, 450-valori[i])); } } }