BuitenTemperatuur.java 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package weerstation;
  2. import java.io.*;
  3. import java.net.*;
  4. import java.util.ArrayList;
  5. /**
  6. * Write a description of class OpdrachtDinges here.
  7. *
  8. * @author (your name)
  9. * @version (a version number or a date)
  10. */
  11. public class BuitenTemperatuur
  12. {
  13. private Measurement laatsteMeting;
  14. Measurement meting;
  15. ArrayList<Measurement> laatste24uur; //ArrayList om de Temperatuur in op te slaan
  16. double temp;
  17. double max;
  18. double min;
  19. double avg;
  20. public BuitenTemperatuur(Measurement measurement1, ArrayList<Measurement> measurement2)
  21. {
  22. updateRecent(measurement1);
  23. update24Hour(measurement2);
  24. }
  25. public double buitenTemperatuur()
  26. {
  27. meting.getOutsideTemp();
  28. return meting.getOutsideTemp();
  29. }
  30. public double getMaximale()
  31. {
  32. short maximale = 0; // Maximale is iets boven de 100
  33. for(int i=0; i < laatste24uur.size();i++)
  34. {
  35. if(laatste24uur.get(i).getRawOutsideTemp() > maximale)
  36. {
  37. maximale = laatste24uur.get(i).getRawOutsideTemp();
  38. }
  39. }
  40. return(Calculator.temperatuur((maximale)));
  41. }
  42. public double getMinimale()
  43. {
  44. short minimale = 1000; // Minimale is iets onder de 100
  45. for(int i=0; i < laatste24uur.size();i++)
  46. {
  47. if(laatste24uur.get(i).getRawOutsideTemp() < minimale)
  48. {
  49. minimale = laatste24uur.get(i).getRawOutsideTemp(); // Defineert average
  50. }
  51. }
  52. return(Calculator.temperatuur((minimale))); // Geeft minimale
  53. }
  54. public double getAverage()
  55. {
  56. short average = 0; // Average is nieuw
  57. for(int i=0; i < laatste24uur.size();i++)
  58. {
  59. average += laatste24uur.get(i).getRawOutsideTemp(); // Defineert average
  60. }
  61. average /= laatste24uur.size(); // Berekening average
  62. return(Calculator.temperatuur((average))); // Geeft average terug
  63. }
  64. public void updateRecent(Measurement measurement1)
  65. {
  66. this.laatsteMeting = measurement1;
  67. temp = laatsteMeting.getOutsideTemp();
  68. }
  69. public void update24Hour(ArrayList<Measurement> measurement2)
  70. {
  71. this.laatste24uur = measurement2;
  72. min = getMinimale();
  73. max = getMaximale();
  74. avg = getAverage();
  75. }
  76. public void display()
  77. {
  78. GUIboard.writeUpperDigits(temp);
  79. GUIboard.writeLeftDigits(max);
  80. GUIboard.writeRightDigits(min);
  81. GUIboard.writePageToMatrix("Buitentemperatuur", "Gemiddelde: " + avg, "");
  82. }
  83. }