OutsideHum.java 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  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 OutsideHum
  10. {
  11. Measurement meting; //connectie maken met Measurement klasse
  12. ArrayList<Measurement> laatste24uur; //ArrayList om de luchtvochtigheid op te slaan
  13. double vochtigheid;
  14. private Measurement laatsteMeting;
  15. double max;
  16. double min;
  17. double avg;
  18. public OutsideHum(Measurement measurement1, ArrayList<Measurement> measurement2)
  19. {
  20. updateRecent(measurement1);
  21. update24Hour(measurement2);
  22. }
  23. public double buitenLuchtvochtigheid()
  24. {
  25. meting.getOutsideHum(); //waardes van buitenluchtvochtigheid ophalen uit de meting klasse
  26. return meting.getOutsideHum();
  27. }
  28. public double berekenMaximale()
  29. {
  30. short maximale = 0;
  31. 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
  32. {
  33. 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.
  34. {
  35. maximale = laatste24uur.get(i).getRawOutsideHum();
  36. }
  37. }
  38. return(maximale);
  39. }
  40. public double berekenMinimale()
  41. {
  42. short minimale = 100;
  43. for(int i=0; i < laatste24uur.size();i++)
  44. {
  45. if(laatste24uur.get(i).getRawOutsideHum() < minimale)
  46. {
  47. minimale = laatste24uur.get(i).getRawOutsideHum();
  48. }
  49. }
  50. return(minimale);
  51. }
  52. public double berekenAverage()
  53. {
  54. int average = 0;
  55. for(int i=0; i < laatste24uur.size(); i ++)
  56. {
  57. average += laatste24uur.get(i).getRawOutsideHum();
  58. }
  59. average /= laatste24uur.size();
  60. return(average);
  61. }
  62. public void updateRecent(Measurement measurement1){
  63. this.laatsteMeting = measurement1;
  64. vochtigheid = laatsteMeting.getOutsideHum();
  65. }
  66. public void update24Hour(ArrayList<Measurement> measurement2){
  67. this.laatste24uur = measurement2;
  68. min = berekenMinimale();
  69. max = berekenMaximale();
  70. avg = berekenAverage();
  71. }
  72. public void display(){
  73. GUIboard.writeUpperDigits(vochtigheid);
  74. GUIboard.writeLeftDigits(max);
  75. GUIboard.writeRightDigits(min);
  76. GUIboard.writePageToMatrix("Luchtv. Buiten", "Gemiddelde: " + avg, "");
  77. }
  78. }