Skip to content
Snippets Groups Projects
Commit d42f5492 authored by Sara Savanovic Djordjevic's avatar Sara Savanovic Djordjevic
Browse files

upate: random OSM map location for testing, SatLayer

parent 2396207e
No related branches found
No related tags found
1 merge request!2App2
import 'package:flutter/material.dart';
import '../marker_handler/marker_data.dart';
import '../consts.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:latlong2/latlong.dart';
import 'quick_view_chart.dart';
import 'stat_charts.dart';
import 'osm_map.dart';
import 'sat_layer.dart';
class MapContainerWidget extends StatefulWidget {
final List<Measurement> markerList;
......@@ -44,6 +43,19 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
height: screenWidth * boxHeight,
child: OSMmap(markerList: widget.markerList), // OpenStreetMap layer
),
SizedBox(
width: screenWidth * boxWidth,
height: screenWidth * boxHeight,
child: Stack(
children: [
SatLayer(markerList: widget.markerList), // Satellite layer
Visibility(
visible: satLayer, // Only show layer if satellite button is toggled on
child: SatLayer(markerList: widget.markerList),
),
],
),
),
Positioned( // Quick view box layered over map
bottom: 10,
right: 10,
......@@ -55,7 +67,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
color: Colors.blue.withOpacity(0.7),
child: Stack(
children: [
Visibility( // Content only visible when box is maximized
Visibility( // Graph only visible when box is maximized and a marker is selected
visible: !isMinimized && selectedMarker != null,
child: Center(
child: Padding(
......@@ -63,7 +75,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
child: SizedBox(
width: (screenWidth * boxWidth) / 2.3,
height: (screenWidth * boxWidth) / 2.3,
child: const QuickViewChart(),
child: const QuickViewChart(), // Quick view graph
),
),
),
......@@ -85,7 +97,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
),
),
),
Positioned(
Positioned( // Satellite button
top: 10,
right: 10,
child: GestureDetector(
......@@ -93,6 +105,7 @@ class _MapContainerWidgetState extends State<MapContainerWidget> {
setState(() {
satLayer = !satLayer; // Toggle satellite layer state on press
});
print("satLayer? : $satLayer");
},
child: Container(
padding: const EdgeInsets.all(8),
......
......@@ -31,7 +31,7 @@ class OSMmap extends StatelessWidget {
// Map corner coordinates to LatLng objects
return LatLng(corner.latitude, corner.longitude);
}).toList(),
/*onTap: () {
/*onTap: () { NB: figure out how to make polygons interactive
setState(() {
selectedMarker = measurement;
});
......
import 'package:flutter/material.dart';
import '../marker_handler/marker_data.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:latlong2/latlong.dart';
class SatLayer extends StatelessWidget {
final List<Measurement> markerList;
const SatLayer({
Key? key,
required this.markerList,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return FlutterMap(
options: MapOptions(
center: LatLng(31.0274,89.0065), // NB: random location in Tibet for testing purposes
zoom: 9.0,
),
children: [
TileLayer( // Map from OpenStreetMap
urlTemplate: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
subdomains: const ['a', 'b', 'c'],
),
],
);
}
}
......@@ -49,6 +49,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "3.0.3"
csslib:
dependency: transitive
description:
name: csslib
sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb"
url: "https://pub.dev"
source: hosted
version: "1.0.0"
equatable:
dependency: transitive
description:
......@@ -102,11 +110,24 @@ packages:
url: "https://pub.dev"
source: hosted
version: "4.0.0"
flutter_plugin_android_lifecycle:
dependency: transitive
description:
name: flutter_plugin_android_lifecycle
sha256: b068ffc46f82a55844acfa4fdbb61fad72fa2aef0905548419d97f0f95c456da
url: "https://pub.dev"
source: hosted
version: "2.0.17"
flutter_test:
dependency: "direct dev"
description: flutter
source: sdk
version: "0.0.0"
flutter_web_plugins:
dependency: transitive
description: flutter
source: sdk
version: "0.0.0"
google_fonts:
dependency: "direct main"
description:
......@@ -115,6 +136,62 @@ packages:
url: "https://pub.dev"
source: hosted
version: "4.0.4"
google_maps:
dependency: transitive
description:
name: google_maps
sha256: "555d5d736339b0478e821167ac521c810d7b51c3b2734e6802a9f046b64ea37a"
url: "https://pub.dev"
source: hosted
version: "6.3.0"
google_maps_flutter:
dependency: "direct main"
description:
name: google_maps_flutter
sha256: ae66fef3e71261d7df2eff29b2a119e190b2884325ecaa55321b1e17b5504066
url: "https://pub.dev"
source: hosted
version: "2.5.3"
google_maps_flutter_android:
dependency: transitive
description:
name: google_maps_flutter_android
sha256: "714530f865f13bb3b9505c58821c3baed5d247a871724acf5d2ea5808fbed02c"
url: "https://pub.dev"
source: hosted
version: "2.6.2"
google_maps_flutter_ios:
dependency: transitive
description:
name: google_maps_flutter_ios
sha256: "29503b5159da2308a66212c3827963998bfb943ba073e2114fb2d486b47fd2c8"
url: "https://pub.dev"
source: hosted
version: "2.4.2"
google_maps_flutter_platform_interface:
dependency: transitive
description:
name: google_maps_flutter_platform_interface
sha256: "6060779f020638a8eedeb0fb14234818e5fa32ec45a4653d6428ab436e2bbc64"
url: "https://pub.dev"
source: hosted
version: "2.4.3"
google_maps_flutter_web:
dependency: transitive
description:
name: google_maps_flutter_web
sha256: "6245721c160d6f531c1ef568cf9bef8d660cd585a982aa75121269030163785a"
url: "https://pub.dev"
source: hosted
version: "0.5.4+3"
html:
dependency: transitive
description:
name: html
sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a"
url: "https://pub.dev"
source: hosted
version: "0.15.4"
http:
dependency: "direct main"
description:
......@@ -139,6 +216,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.19.0"
js:
dependency: transitive
description:
name: js
sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3
url: "https://pub.dev"
source: hosted
version: "0.6.7"
js_wrapping:
dependency: transitive
description:
name: js_wrapping
sha256: e385980f7c76a8c1c9a560dfb623b890975841542471eade630b2871d243851c
url: "https://pub.dev"
source: hosted
version: "0.7.4"
latlong2:
dependency: "direct main"
description:
......@@ -323,6 +416,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "5.0.0"
sanitize_html:
dependency: transitive
description:
name: sanitize_html
sha256: "12669c4a913688a26555323fb9cec373d8f9fbe091f2d01c40c723b33caa8989"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
sky_engine:
dependency: transitive
description: flutter
......@@ -352,6 +453,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.2"
stream_transform:
dependency: transitive
description:
name: stream_transform
sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
string_scanner:
dependency: transitive
description:
......@@ -441,5 +550,5 @@ packages:
source: hosted
version: "1.0.4"
sdks:
dart: ">=3.2.0 <4.0.0"
flutter: ">=3.10.0"
dart: ">=3.2.3 <4.0.0"
flutter: ">=3.16.6"
......@@ -15,6 +15,7 @@ dependencies:
provider: ^5.0.0
fl_chart: ^0.20.0-nullsafety1
google_fonts: any
google_maps_flutter: ^2.0.12
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment