< prev index next >

application/tests/org.openjdk.jmc.greychart.test/src/test/java/org/openjdk/jmc/greychart/testutil/RenderingOutOfOrderTester.java

Print this page




  64                         MIN_Y, MAX_Y, 0, 0);
  65 
  66         private final static double MAX_Y = 5;
  67         private final static double MIN_Y = -5;
  68 
  69         private static DateXAxis xaxis;
  70         private static TimestampDataSeries SINUS_DATA;
  71         private static TimestampDataSeries SAW_DATA;
  72 
  73         private final static Date START_TIME = new Date();
  74         private static GreyChartPanel panel;
  75 
  76         private long m_time = 0;
  77 
  78         private class MyMouseListener extends MouseAdapter {
  79                 /**
  80                  * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
  81                  */
  82                 @Override
  83                 public void mouseClicked(MouseEvent e) {
  84                         System.out.println("Adding value!"); //$NON-NLS-1$
  85                         doStep();
  86                 }
  87 
  88                 /**
  89                  * @see java.awt.event.MouseListener#mouseEntered(java.awt.event.MouseEvent)
  90                  */
  91                 @Override
  92                 public void mouseEntered(MouseEvent e) {
  93                         System.out.println("Entered graph!"); //$NON-NLS-1$
  94                 }
  95 
  96                 /**
  97                  * @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent)
  98                  */
  99                 @Override
 100                 public void mouseExited(MouseEvent e) {
 101                         System.out.println("Exited graph!"); //$NON-NLS-1$
 102                 }
 103 
 104         }
 105 
 106         /**
 107          * Entry point.
 108          *
 109          * @param args
 110          */
 111         public static void main(String[] args) {
 112                 Set<String> options = new HashSet<>();
 113                 for (String s : args) {
 114                         options.add(s);
 115                 }
 116                 RenderingOutOfOrderTester tester = new RenderingOutOfOrderTester();
 117                 tester.setup(options);
 118         }
 119 
 120         private void setup(Set<String> options) {
 121                 SeriesProviderSet<ITimestampedData> provider = new SeriesProviderSet<>();
 122                 SINUS_DATA = new TimestampDataSeries();
 123                 SAW_DATA = new TimestampDataSeries();
 124                 provider.addDataSeries(SAW_DATA);
 125                 provider.addDataSeries(SINUS_DATA);
 126                 String title = "Out of order rendering test. Click for next point!"; //$NON-NLS-1$
 127                 DefaultXYGreyChart<ITimestampedData> graph = new DefaultXYGreyChart<>();
 128 
 129                 DefaultYAxis yaxis_left = new DefaultYAxis(graph);
 130                 DefaultYAxis yaxis_right = new DefaultYAxis(graph);
 131                 yaxis_left.setMin(MIN_Y);
 132                 yaxis_left.setMax(MAX_Y);
 133                 yaxis_left.setTickSize(4);
 134                 yaxis_left.setNumberOfTicks(20);
 135                 yaxis_left.setAlwaysShowZero(false);
 136                 yaxis_left.setAutoPadding(0.05);
 137                 yaxis_left.setTitle("Saw value"); //$NON-NLS-1$
 138                 yaxis_left.setPosition(Position.LEFT);
 139                 yaxis_right.setMin(MIN_Y);
 140                 yaxis_right.setMax(MAX_Y);
 141                 yaxis_right.setTickSize(4);
 142                 yaxis_right.setNumberOfTicks(20);
 143                 yaxis_right.setAlwaysShowZero(false);
 144                 yaxis_right.setAutoPadding(0.05);
 145                 yaxis_right.setTitle("Sine value"); //$NON-NLS-1$
 146                 yaxis_right.setPosition(Position.RIGHT);
 147 
 148                 graph.setMetadataProvider(new DefaultMetadataProvider());
 149                 graph.setAutoUpdateOnAxisChange(true);
 150                 xaxis = new DateXAxis(graph);
 151                 xaxis.setRange(START_TIME.getTime(), START_TIME.getTime() + 60000);
 152                 xaxis.setPaintGridLinesEnabled(true);
 153                 xaxis.setNumberOfTicks(20);
 154 
 155                 graph.setDataProvider(provider);
 156 
 157                 graph.setXAxis(xaxis);
 158                 graph.addYAxis(yaxis_left);
 159                 graph.addYAxis(yaxis_right);
 160 
 161                 graph.getXAxis().setTitle("Time"); //$NON-NLS-1$
 162 
 163                 panel = new GreyChartPanel(graph);
 164                 graph.setIndexRenderer(new DefaultVerticalIndexRenderer(graph));
 165                 panel.setBackground(new Color(240, 240, 240));
 166 
 167                 panel.addMouseListener(new MyMouseListener());
 168                 panel.setName("rendering performance"); //$NON-NLS-1$
 169                 panel.setBackground(Color.WHITE);
 170                 panel.getChart().getPlotRenderer().setBackground(Color.LIGHT_GRAY);
 171                 // Range chosen to provoke interpolation.
 172                 xaxis.setRange(105, 1015);
 173                 graph.setAntialiasingEnabled(false);
 174                 ChartRenderingToolkit.testComponent(panel, 1200, 800);
 175                 graph.setTitle(title);
 176                 for (int i = 0; i < 9; i++) {
 177                         doStep();
 178                 }
 179         }
 180 
 181         /**
 182          * Adds two points of data, out of order, to the series.
 183          */
 184         public void doStep() {
 185                 DefaultTimestampedData tsd1Sin = new DefaultTimestampedData(m_time, Double.valueOf(m_sine.getValue(m_time)));
 186                 DefaultTimestampedData tsd1Saw = new DefaultTimestampedData(m_time, Double.valueOf(m_saw.getValue(m_time)));
 187                 m_time += 10;
 188                 DefaultTimestampedData tsd2Sin = new DefaultTimestampedData(m_time, Double.valueOf(m_sine.getValue(m_time)));


  64                         MIN_Y, MAX_Y, 0, 0);
  65 
  66         private final static double MAX_Y = 5;
  67         private final static double MIN_Y = -5;
  68 
  69         private static DateXAxis xaxis;
  70         private static TimestampDataSeries SINUS_DATA;
  71         private static TimestampDataSeries SAW_DATA;
  72 
  73         private final static Date START_TIME = new Date();
  74         private static GreyChartPanel panel;
  75 
  76         private long m_time = 0;
  77 
  78         private class MyMouseListener extends MouseAdapter {
  79                 /**
  80                  * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
  81                  */
  82                 @Override
  83                 public void mouseClicked(MouseEvent e) {
  84                         System.out.println("Adding value!");
  85                         doStep();
  86                 }
  87 
  88                 /**
  89                  * @see java.awt.event.MouseListener#mouseEntered(java.awt.event.MouseEvent)
  90                  */
  91                 @Override
  92                 public void mouseEntered(MouseEvent e) {
  93                         System.out.println("Entered graph!");
  94                 }
  95 
  96                 /**
  97                  * @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent)
  98                  */
  99                 @Override
 100                 public void mouseExited(MouseEvent e) {
 101                         System.out.println("Exited graph!");
 102                 }
 103 
 104         }
 105 
 106         /**
 107          * Entry point.
 108          *
 109          * @param args
 110          */
 111         public static void main(String[] args) {
 112                 Set<String> options = new HashSet<>();
 113                 for (String s : args) {
 114                         options.add(s);
 115                 }
 116                 RenderingOutOfOrderTester tester = new RenderingOutOfOrderTester();
 117                 tester.setup(options);
 118         }
 119 
 120         private void setup(Set<String> options) {
 121                 SeriesProviderSet<ITimestampedData> provider = new SeriesProviderSet<>();
 122                 SINUS_DATA = new TimestampDataSeries();
 123                 SAW_DATA = new TimestampDataSeries();
 124                 provider.addDataSeries(SAW_DATA);
 125                 provider.addDataSeries(SINUS_DATA);
 126                 String title = "Out of order rendering test. Click for next point!";
 127                 DefaultXYGreyChart<ITimestampedData> graph = new DefaultXYGreyChart<>();
 128 
 129                 DefaultYAxis yaxis_left = new DefaultYAxis(graph);
 130                 DefaultYAxis yaxis_right = new DefaultYAxis(graph);
 131                 yaxis_left.setMin(MIN_Y);
 132                 yaxis_left.setMax(MAX_Y);
 133                 yaxis_left.setTickSize(4);
 134                 yaxis_left.setNumberOfTicks(20);
 135                 yaxis_left.setAlwaysShowZero(false);
 136                 yaxis_left.setAutoPadding(0.05);
 137                 yaxis_left.setTitle("Saw value");
 138                 yaxis_left.setPosition(Position.LEFT);
 139                 yaxis_right.setMin(MIN_Y);
 140                 yaxis_right.setMax(MAX_Y);
 141                 yaxis_right.setTickSize(4);
 142                 yaxis_right.setNumberOfTicks(20);
 143                 yaxis_right.setAlwaysShowZero(false);
 144                 yaxis_right.setAutoPadding(0.05);
 145                 yaxis_right.setTitle("Sine value");
 146                 yaxis_right.setPosition(Position.RIGHT);
 147 
 148                 graph.setMetadataProvider(new DefaultMetadataProvider());
 149                 graph.setAutoUpdateOnAxisChange(true);
 150                 xaxis = new DateXAxis(graph);
 151                 xaxis.setRange(START_TIME.getTime(), START_TIME.getTime() + 60000);
 152                 xaxis.setPaintGridLinesEnabled(true);
 153                 xaxis.setNumberOfTicks(20);
 154 
 155                 graph.setDataProvider(provider);
 156 
 157                 graph.setXAxis(xaxis);
 158                 graph.addYAxis(yaxis_left);
 159                 graph.addYAxis(yaxis_right);
 160 
 161                 graph.getXAxis().setTitle("Time");
 162 
 163                 panel = new GreyChartPanel(graph);
 164                 graph.setIndexRenderer(new DefaultVerticalIndexRenderer(graph));
 165                 panel.setBackground(new Color(240, 240, 240));
 166 
 167                 panel.addMouseListener(new MyMouseListener());
 168                 panel.setName("rendering performance");
 169                 panel.setBackground(Color.WHITE);
 170                 panel.getChart().getPlotRenderer().setBackground(Color.LIGHT_GRAY);
 171                 // Range chosen to provoke interpolation.
 172                 xaxis.setRange(105, 1015);
 173                 graph.setAntialiasingEnabled(false);
 174                 ChartRenderingToolkit.testComponent(panel, 1200, 800);
 175                 graph.setTitle(title);
 176                 for (int i = 0; i < 9; i++) {
 177                         doStep();
 178                 }
 179         }
 180 
 181         /**
 182          * Adds two points of data, out of order, to the series.
 183          */
 184         public void doStep() {
 185                 DefaultTimestampedData tsd1Sin = new DefaultTimestampedData(m_time, Double.valueOf(m_sine.getValue(m_time)));
 186                 DefaultTimestampedData tsd1Saw = new DefaultTimestampedData(m_time, Double.valueOf(m_saw.getValue(m_time)));
 187                 m_time += 10;
 188                 DefaultTimestampedData tsd2Sin = new DefaultTimestampedData(m_time, Double.valueOf(m_sine.getValue(m_time)));
< prev index next >