From a61cd85edc8c569156b3fb15acef45067dbcd76f Mon Sep 17 00:00:00 2001
From: Sara <sarasdj@stud.ntnu.no>
Date: Tue, 20 Feb 2024 11:06:03 +0100
Subject: [PATCH] add: single test polygon

---
 app/lib/pages/marker_handler/marker_data.dart |   2 +-
 app/lib/pages/widgets/map_widget.dart         |   4 +-
 app/lib/pages/widgets/osm_map.dart            |  42 ++++++++++--------
 .../__pycache__/get_markers.cpython-311.pyc   | Bin 4249 -> 4249 bytes
 server/map/add_new_water_body.py              |   0
 server/map/get_markers.py                     |   3 +-
 server/sql_db/icedb                           | Bin 40960 -> 40960 bytes
 7 files changed, 27 insertions(+), 24 deletions(-)
 create mode 100644 server/map/add_new_water_body.py

diff --git a/app/lib/pages/marker_handler/marker_data.dart b/app/lib/pages/marker_handler/marker_data.dart
index 5dbc70bb..fd466ed8 100644
--- a/app/lib/pages/marker_handler/marker_data.dart
+++ b/app/lib/pages/marker_handler/marker_data.dart
@@ -28,7 +28,7 @@ class Measurement {
       cornerList: (json['Corners'] as List<dynamic>)
           .map((data) => Corner.fromJson(data))
           .toList(),
-      bodyOfWater: json['WaterBodyName'],
+      bodyOfWater: json['BodyOfWater'],
       /*
             dataList: (json['Data'] != null && json['Data'] is List)
           ? (json['Data'] as List<dynamic>).map((data) => Data.fromJson(data)).toList()
diff --git a/app/lib/pages/widgets/map_widget.dart b/app/lib/pages/widgets/map_widget.dart
index e8d22998..d757b7b9 100644
--- a/app/lib/pages/widgets/map_widget.dart
+++ b/app/lib/pages/widgets/map_widget.dart
@@ -46,7 +46,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
                     height: screenWidth * boxHeight,
                     child: OSMmap(markerList: widget.markerList), // OpenStreetMap layer
                   ),
-                  SizedBox(
+                  /*SizedBox(
                     width: screenWidth * boxWidth,
                     height: screenWidth * boxHeight,
                     child: Stack(
@@ -58,7 +58,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
                         ),
                       ],
                     ),
-                  ),
+                  ),*/
                   Positioned( // Quick view box layered over map
                     bottom: 10,
                     right: 10,
diff --git a/app/lib/pages/widgets/osm_map.dart b/app/lib/pages/widgets/osm_map.dart
index 3e8eeeb2..3507756f 100644
--- a/app/lib/pages/widgets/osm_map.dart
+++ b/app/lib/pages/widgets/osm_map.dart
@@ -14,33 +14,37 @@ class OSMmap extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
+    // Init list of polygons
+    List<Polygon> polygons = [];
+
+    // Map each element from markerList to a measurement object
+    markerList.forEach((Measurement measurement) {
+      // Map corners to a list of LatLng objects
+      List<LatLng> points = measurement.cornerList.map((Corner corner) {
+        return LatLng(corner.latitude, corner.longitude);
+      }).toList();
+
+      Polygon polygon = Polygon(
+        points: points, // Use list of corner coordinates to render polygon
+        color: Colors.blue.withOpacity(0.5),
+        isFilled: true,
+      );
+      polygons.add(polygon); // Add each polygon to a list
+    });
+
     return FlutterMap(
       options: MapOptions(
-        center: mapCenter, // From consts
+        center: mapCenter,
         zoom: 9.0,
       ),
       children: [
-        TileLayer( // Map from OpenStreetMap
+        TileLayer(
           urlTemplate: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
           subdomains: const ['a', 'b', 'c'],
         ),
-        PolygonLayer( // Map each element in markerList to Measurement object
-          polygons: markerList.map((Measurement measurement) {
-            return Polygon(
-              points: measurement.cornerList.map((Corner corner) {
-                // Map corner coordinates to LatLng objects
-                return LatLng(corner.latitude, corner.longitude);
-              }).toList(),
-              /*onTap: () { NB: figure out how to make polygons interactive
-                                setState(() {
-                                  selectedMarker = measurement;
-                                });
-                              },*/
-              color: Colors.blue,
-              isFilled: true,
-            );
-          }).toList(),
-        )
+        PolygonLayer(
+          polygons: polygons, // Return map with list of polygons included
+        ),
       ],
     );
   }
diff --git a/server/map/__pycache__/get_markers.cpython-311.pyc b/server/map/__pycache__/get_markers.cpython-311.pyc
index f1ffc5e1e2334b2d572c69c525febcab86c55e61..136fe074aa97b652908bd4f21f45768bb9a6020e 100644
GIT binary patch
delta 34
pcmbQKI8%{#IWI340}$LUx{}(lk#{d2o3h%1q9x{=FYujY1OT*W3wr<n

delta 34
pcmbQKI8%{#IWI340}yZ&UP<lV$h()1O+|eL(-Qa17x+#x0sx?N3RD09

diff --git a/server/map/add_new_water_body.py b/server/map/add_new_water_body.py
new file mode 100644
index 00000000..e69de29b
diff --git a/server/map/get_markers.py b/server/map/get_markers.py
index cb8e5804..fccd78df 100644
--- a/server/map/get_markers.py
+++ b/server/map/get_markers.py
@@ -76,7 +76,7 @@ def get_all_markers(self, cursor, valid: bool):
                     },
                     'Data': [data_object],
                     'Corners': [corner_object],
-                    'BodyOfWater' : row[14]
+                    'BodyOfWater': row[14]
                 }
 
         # Convert dictionary values to list of measurements
@@ -103,4 +103,3 @@ def get_all_markers(self, cursor, valid: bool):
 
     # Write marker data to response object
     self.wfile.write(marker_data.encode('utf-8'))
-
diff --git a/server/sql_db/icedb b/server/sql_db/icedb
index e01a5712975ae037329fb433f502db93106da42e..71aeb6857a09efb0d2d1b93f743e20fdaed071ed 100644
GIT binary patch
delta 112
zcmZoTz|?SnX@WGP#6%fqRtW~Zv{xHb-19@@Z>(KCKg>aO!nEBpjz1P-W@Y4LXJ>Zs
zOY*(+apfNe)eRuVDlsOoIFo~43d<|69#IF?UZ=w+-<=U<WaR{^2P&6Y!(piIpjsq!
Ly;$PUq5=Z|^KB<*

delta 112
zcmZoTz|?SnX@WGP_(U0JR&fTsvd)bu?)jln8Jt(9N;s%~Nm!L~=!Y0HD<da6JF|md
z6p&}W6(}Cu_t`f~j0r5x1QbuKk-ilO6n86bynaWNk(Cpu9w;1VYG3mXC~O%akmR?h
GzyJV3W+hMn

-- 
GitLab