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. Calculator calculator = new Calculator();
  15. Measurement meting;
  16. ArrayList<Measurement> laatste24uur; //ArrayList om de Temperatuur in op te slaan
  17. double temp;
  18. double max;
  19. double min;
  20. double avg;
  21. public BuitenTemperatuur(Measurement measurement1, ArrayList<Measurement> measurement2)
  22. {
  23. updateRecent(measurement1);
  24. update24Hour(measurement2);
  25. }
  26. public double buitenTemperatuur()
  27. {
  28. meting.getOutsideTemp();
  29. return meting.getOutsideTemp();
  30. }
  31. public double getMaximale()
  32. {
  33. short maximale = 0; // Maximale is iets boven de 100
  34. for(int i=0; i < laatste24uur.size();i++)
  35. {
  36. if(laatste24uur.get(i).getRawOutsideTemp() > maximale)
  37. {
  38. maximale = laatste24uur.get(i).getRawOutsideTemp();
  39. }
  40. }
  41. return(calculator.temperatuur((maximale)));
  42. }
  43. public double getMinimale()
  44. {
  45. short minimale = 1000; // Minimale is iets onder de 100
  46. for(int i=0; i < laatste24uur.size();i++)
  47. {
  48. if(laatste24uur.get(i).getRawOutsideTemp() < minimale)
  49. {
  50. minimale = laatste24uur.get(i).getRawOutsideTemp(); // Defineert average
  51. }
  52. }
  53. return(calculator.temperatuur((minimale))); // Geeft minimale
  54. }
  55. public double getAverage()
  56. {
  57. short average = 0; // Average is nieuw
  58. for(int i=0; i < laatste24uur.size();i++)
  59. {
  60. average += laatste24uur.get(i).getRawOutsideTemp(); // Defineert average
  61. }
  62. average /= laatste24uur.size(); // Berekening average
  63. return(calculator.temperatuur((average))); // Geeft average terug
  64. }
  65. public void updateRecent(Measurement measurement1)
  66. {
  67. this.laatsteMeting = measurement1;
  68. temp = laatsteMeting.getOutsideTemp();
  69. }
  70. public void update24Hour(ArrayList<Measurement> measurement2)
  71. {
  72. this.laatste24uur = measurement2;
  73. min = getMinimale();
  74. max = getMaximale();
  75. avg = getAverage();
  76. }
  77. public void display()
  78. {
  79. GUIboard.writeUpperDigits(temp);
  80. GUIboard.writeLeftDigits(max);
  81. GUIboard.writeRightDigits(min);
  82. }
  83. }