java-scuola/7.x/P7.19 Chart/Chart.java

41 lines
1.1 KiB
Java

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]));
}
}
}