OutsideHum.java 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. import java.net.*;
  2. import java.util.ArrayList;
  3. /**
  4. * Write a description of class OpdrachtDinges here.
  5. *
  6. * @author (your name)
  7. * @version (a version number or a date)
  8. */
  9. public class OpdrachtBuitenLuchtvochtigheid
  10. {
  11. Weerstation weerstation; //connectie maken met Weerstation klasse
  12. Measurement meting; //connectie maken met Measurement klasse
  13. ArrayList<Measurement> laatste24uur; //ArrayList om de luchtvochtigheid op te slaan
  14. double vochtigheid;
  15. private Measurement laatsteMeting;
  16. double max;
  17. double min;
  18. double avg;
  19. public OpdrachtBuitenLuchtvochtigheid()
  20. {
  21. weerstation = new Weerstation(); //maakt een nieuw weerstation aan
  22. meting = weerstation.getMostRecentMeasurement(); //pakken recenste gegevens MOET VERWIJDERD WORDEN
  23. }
  24. public double buitenLuchtvochtigheid()
  25. {
  26. meting.getOutsideHum(); //waardes van buitenluchtvochtigheid ophalen uit de meting klasse
  27. return meting.getOutsideHum();
  28. }
  29. public double berekenMaximale()
  30. {
  31. short maximale = 0;
  32. for(int i=0; i < laatste24uur.size();i++) //zolang i kleiner is dan de grootte van de ArrayList laatste24uur voert het de if-statement uit
  33. {
  34. if(laatste24uur.get(i).getRawOutsideHum() > maximale) //plek (i) in de ArrayList laatste24uur vraag je de waarde RawOutsideHum van op. Als die groter is dan huidige maximale, vervang je maximale door dat getal.
  35. {
  36. maximale = laatste24uur.get(i).getRawOutsideHum();
  37. }
  38. }
  39. return(maximale);
  40. }
  41. public double berekenMinimale()
  42. {
  43. short minimale = 100;
  44. for(int i=0; i < laatste24uur.size();i++)
  45. {
  46. if(laatste24uur.get(i).getRawOutsideHum() < minimale)
  47. {
  48. minimale = laatste24uur.get(i).getRawOutsideHum();
  49. }
  50. }
  51. return(minimale);
  52. }
  53. public double berekenAverage()
  54. {
  55. int average = 0;
  56. for(int i=0; i < laatste24uur.size(); i ++)
  57. {
  58. average += laatste24uur.get(i).getRawOutsideHum();
  59. }
  60. average /= laatste24uur.size();
  61. return(average);
  62. }
  63. public void updateRecent(Measurement measurement1){
  64. this.laatsteMeting = measurement1;
  65. vochtigheid = laatsteMeting.getOutsideHum();
  66. }
  67. public void update24Hour(ArrayList<Measurement> measurement2){
  68. this.laatste24uur = measurement2;
  69. min = berekenMinimale();
  70. max = berekenMaximale();
  71. avg = berekenAverage();
  72. }
  73. public void display(){
  74. GUIboard.writeUpperDigits(vochtigheid);
  75. GUIboard.writeLeftDigits(max);
  76. GUIboard.writeRightDigits(min);
  77. }
  78. }