1 4 import jcckit.GraphicsPlotCanvas; 5 import jcckit.data.DataPlot; 6 import jcckit.data.DataCurve; 7 import jcckit.data.DataPoint; 8 import jcckit.util.ConfigParameters; 9 10 import java.awt.event.*; 11 12 public class BrusselatorPlot extends GraphicsPlotCanvas { 13 private Brusselator _brusselator; 14 15 public BrusselatorPlot(ConfigParameters config, Brusselator brusselator) { 16 super(config); 17 _brusselator = brusselator; 18 brusselator.addActionListener(new ActionListener() { 19 public void actionPerformed(ActionEvent event) { 20 replot(); 21 } 22 }); 23 replot(); 24 } 25 26 private void replot() { 27 DataPlot plot = new DataPlot(); 28 DataCurve uCurve = new DataCurve("u"); 29 DataCurve vCurve = new DataCurve("v"); 30 double dx = _brusselator.getDx(); 31 for (int i = 0, n = _brusselator.getNumberOfPoints(); i < n; i++) { 32 uCurve.addElement(new DataPoint(dx * i, _brusselator.getU(i))); 33 vCurve.addElement(new DataPoint(dx * i, _brusselator.getV(i))); 34 } 35 plot.addElement(uCurve); 36 plot.addElement(vCurve); 37 connect(plot); 38 } 39 } 40 | Popular Tags |