Exemple #1
0
        private void Locator_PositionChanged(object sender, Plugin.Geolocator.Abstractions.PositionEventArgs e)
        {
            var center = new Xamarin.Forms.Maps.Position(e.Position.Latitude, e.Position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            locationsMap.MoveToRegion(span);
        }
Exemple #2
0
        protected override async void  OnAppearing()
        {
            base.OnAppearing();
            GetLocation();

            if (hasLocationPermission)
            {
                var locator = CrossGeolocator.Current;

                locator.PositionChanged += Locator_PositionChanged;
                await locator.StartListeningAsync(TimeSpan.Zero, 100);

                var position = await locator.GetPositionAsync();

                var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
                var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);
                locationsMap.MoveToRegion(span);

                using (SQLiteConnection conn = new SQLiteConnection(App.DatabasLocation, SQLiteOpenFlags.Create | SQLiteOpenFlags.ReadWrite))

                {
                    conn.CreateTable <Post>();
                    var Posts = conn.Table <Post>().ToList();

                    DisplayInMaps(Posts);
                }
            }
        }
Exemple #3
0
        private void MoveMap(Plugin.Geolocator.Abstractions.Position position)
        {
            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 1, 1);

            locationsMap.MoveToRegion(span);
        }
Exemple #4
0
        /// <summary>
        /// Center map on Rzeszów
        /// </summary>
        public void MoveMap()
        {
            var center = new Xamarin.Forms.Maps.Position(rzeszowLatitude, rzeszowLongitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, mapSpan, mapSpan);

            map.MoveToRegion(span);
        }
Exemple #5
0
        protected override async void OnAppearing()
        {
            base.OnAppearing();

            if (hasLocationPermission)
            {
                if (CrossGeolocator.IsSupported && CrossGeolocator.Current.IsGeolocationAvailable && CrossGeolocator.Current.IsGeolocationEnabled)
                {
                    locator.PositionChanged += Locator_PositionChanged;
                    await locator.StartListeningAsync(TimeSpan.FromSeconds(0), 50, true);

                    var position = await locator.GetPositionAsync();

                    var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
                    var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

                    locationsMap.MoveToRegion(MapSpan.FromCenterAndRadius(new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude),
                                                                          Distance.FromMiles(1)));

                    //using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
                    //{
                    //    conn.CreateTable<Post>();
                    //    var posts = conn.Table<Post>().ToList();

                    //    DisplayInMap(posts);
                    //}

                    var posts = await Post.Read();

                    DisplayInMap(posts);
                }
            }
        }
Exemple #6
0
        // this is the old code - protected override void OnAppearing()
        protected async override void OnAppearing()
        {
            base.OnAppearing();

            //this is the original file
            var locator = CrossGeolocator.Current;

            locator.PositionChanged += Locator_PositionChanged;
            await locator.StartListeningAsync(new TimeSpan(0), 100);

            var position = await locator.GetPositionAsync();

            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            locationsMap.MoveToRegion(span);

            using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
            {
                // these are generics method   conn.CreateTable<Post>(),conn.Table<Post>()

                conn.CreateTable <Post>();
                var posts = conn.Table <Post>().ToList();

                DisplayInMap(posts);
            }
        }
        private void MoveMap(Position position)
        {
            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 0.005, 0.005);//  1 - oznacza ile stóp w lewo i w góre ustawia się mapa od lokalizacji

            locationsMap.MoveToRegion(span);
        }
        private void Locator_PositionChanged(object sender, Plugin.Geolocator.Abstractions.PositionEventArgs e)
        {
            var center = new Xamarin.Forms.Maps.Position(e.Position.Latitude, e.Position.Longitude);
            //var span = new Xamarin.Forms.Maps.MapSpan(center, 1, 1);
            //locationMap.MoveToRegion(span);

            //zoom differently
            double zoomLevel      = 16;
            double latlongDegrees = 360 / (Math.Pow(2, zoomLevel));
            var    span           = new Xamarin.Forms.Maps.MapSpan(center, latlongDegrees, latlongDegrees);

            LocationMap.MoveToRegion(span);

            var elapsedDistanceNumber = Location.CalculateDistance(
                ChosenLocation.Latitude,
                ChosenLocation.Longitude,
                e.Position.Latitude, e.Position.Longitude,
                DistanceUnits.Kilometers);

            //ElapsedDistanceMeters = "Distance moved " + elapsedDistanceNumber * 1000 + " meters";

            //var elapsedDistanceMetersDouble = elapsedDistanceNumber * 1000;

            ElapsedDistanceMeters = elapsedDistanceNumber * 1000;



            CheckDistanceViolation();
        }
        private void SetMapStartPoint()
        {
            var center = new Xamarin.Forms.Maps.Position(ChosenLocation.Latitude, ChosenLocation.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            LocationMap.MoveToRegion(span);
        }
Exemple #10
0
        protected override async void OnAppearing()
        {
            base.OnAppearing();

            var locator = CrossGeolocator.Current;

            locator.PositionChanged += Locator_PositionChanged;
            await locator.StartListeningAsync(TimeSpan.FromSeconds(0), 100);

            var position = await locator.GetPositionAsync();

            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            locationsMap.MoveToRegion(span);

            /*using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
             * {
             *  conn.CreateTable<Post>();
             *  var posts = conn.Table<Post>().ToList();
             *
             *  DisplayInMap(posts);
             * }*/
            var posts = await Post.Read();

            DisplayInMap(posts);
        }
Exemple #11
0
        protected override async void OnAppearing()
        {
            base.OnAppearing();
            try
            {
                var status = await CrossPermissions.Current.CheckPermissionStatusAsync(Plugin.Permissions.Abstractions.Permission.Location);

                if (status != PermissionStatus.Granted && !permissionRequested)
                {
                    if (await CrossPermissions.Current.ShouldShowRequestPermissionRationaleAsync(Permission.Location))
                    {
                        await DisplayAlert("Need permission", "App will have access to your location", "Ok");
                    }

                    var results = await CrossPermissions.Current.RequestPermissionsAsync(Permission.Location);

                    if (results.ContainsKey(Permission.Location))
                    {
                        status = results[Permission.Location];
                    }
                    permissionRequested = true;
                }
                if (status == PermissionStatus.Granted)
                {
                    map.IsShowingUser = true;
                }
                else if (status != PermissionStatus.Granted && permissionRequested)
                {
                    //await DisplayAlert("No permission", "You didnt grant permission to access your location", "Ok");
                    map.IsShowingUser = false;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }

            var locator = CrossGeolocator.Current;

            locator.PositionChanged += Locator_PositionChanged;
            TimeSpan timeSpan = new TimeSpan(0);
            await locator.StartListeningAsync(timeSpan, 10);


            var position = await locator.GetPositionAsync();

            var centre = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(centre, 2, 2);

            locationMap.MoveToRegion(span);

            using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
            {
                conn.CreateTable <Post>();
                var posts = conn.Table <Post>().ToList();

                DisplayInMap(posts);
            }
        }
Exemple #12
0
        // bespoke method for moving map (refactored here) 7-63
        private void MoveMap(Plugin.Geolocator.Abstractions.Position position)
        {
            var centre = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(centre, 1, 1);      // 1 degree of lat & lng is the region to span around the centre

            locationsMap.MoveToRegion(span);
            // For region, supply region centre, and degrees of lat & lng to show as a region around/spanning centre
        }
Exemple #13
0
        private void MoveMap(Plugin.Geolocator.Abstractions.Position position)
        {
            var positionOnMap = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);

            var span = new Xamarin.Forms.Maps.MapSpan(positionOnMap, 0.5, 0.5);

            appMap.MoveToRegion(span);
        }
Exemple #14
0
        private void MoveMap(Plugin.Geolocator.Abstractions.Position position)
        {
            //get the center in lat, long
            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);

            //get the span of the map with the center
            var mapspan = new Xamarin.Forms.Maps.MapSpan(center, 0.0015d, 0.0015d);

            //now move to the region
            customMap.MoveToRegion(mapspan);
        }
Exemple #15
0
        private async void GetLocation()
        {
            if (hasLocationPermission)
            {
                var position = await Geolocation.GetLocationAsync();

                if (position != null)
                {
                    var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
                    var span   = new Xamarin.Forms.Maps.MapSpan(center, 1, 1);
                    map.MoveToRegion(span);
                }
            }
        }
Exemple #16
0
        void Locator_PositionChanged(object sender, Plugin.Geolocator.Abstractions.PositionEventArgs e)
        {
            var center = new Xamarin.Forms.Maps.Position(e.Position.Latitude, e.Position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            locationMap.MoveToRegion(span);

            using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
            {
                conn.CreateTable <Post>();
                var posts = conn.Table <Post>().ToList();

                DisplayInMap(posts);
            }
        }
Exemple #17
0
        private void MoveMap(Plugin.Geolocator.Abstractions.Position position)
        {
            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 1, 1);

            locationsMap.MoveToRegion(span);

            using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
            {
                //var posts = conn.Table<Post>().ToList();
                var places = new List <Place>();

                DisplayInMap(places);
            }
        }
Exemple #18
0
        protected async override void OnAppearing()
        {
            base.OnAppearing();

            var locator = CrossGeolocator.Current;

            locator.PositionChanged += Locator_PositionChanged;
            await locator.StartListeningAsync(TimeSpan.FromSeconds(0), 100);

            var position = await locator.GetPositionAsync();

            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            locationMap.MoveToRegion(span);
        }
Exemple #19
0
        private void MoveMap(Plugin.Geolocator.Abstractions.Position position)
        {
            var Theposition = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var Map         = new Xamarin.Forms.Maps.MapSpan(Theposition, 1, 1);


            var pin = new Xamarin.Forms.Maps.Pin()
            {
                Type     = Xamarin.Forms.Maps.PinType.Place,
                Position = Theposition,
                Label    = "Traore"
            };

            LocationsMap.MoveToRegion(Map);
            LocationsMap.Pins.Add(pin);

            pin.Clicked += async(sender, e) => {
                await DisplayAlert("Test", "Test", "test");
            };
        }
Exemple #20
0
        protected async override void OnAppearing()
        {
            base.OnAppearing();

            var locator = CrossGeolocator.Current;

            locator.PositionChanged += Locator_PositionChanged;
            await locator.StartListeningAsync(System.TimeSpan.Zero, 100);

            var position = await locator.GetPositionAsync();

            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            locationsMap.MoveToRegion(span);

            var posts = await Post.GetUserPosts();

            DisplayInMap(posts);
        }
        protected async override void OnAppearing()
        {
            base.OnAppearing();

            var locator = CrossGeolocator.Current;

            locator.PositionChanged += Locator_PositionChanged;
            await locator.StartListeningAsync(TimeSpan.Zero, 100);

            var position = await locator.GetPositionAsync();

            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
            var span   = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            locationsMap.MoveToRegion(span);

            var pinPosition = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);

            var pin = new Pin()
            {
                Type     = PinType.SavedPin,
                Position = pinPosition,
                Label    = "Exeption Label",
                Address  = "Exeption Address",
            };

            locationsMap.Pins.Add(pin);

            //uncomment this after getting valid API credentials
            //using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation))
            //{
            //    conn.CreateTable<Post>();
            //    var posts = conn.Table<Post>().ToList();

            //    DisplayInMap(posts);
            //}
        }
Exemple #22
0
        protected override async void OnAppearing()
        {
            base.OnAppearing();

            var locator = CrossGeolocator.Current;

            locator.PositionChanged += Locator_PositionChanged;

            await locator.StartListeningAsync(TimeSpan.Zero, 100);

            var position = await locator.GetPositionAsync();

            var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);

            var span = new Xamarin.Forms.Maps.MapSpan(center, 2, 2);

            gameLocationsMap.MoveToRegion(span);

            var gameLocations = await GameLocation.Read();

            DisplayGameLocationsInMap(gameLocations);

            //  var gameLocations = await GameLocation.GetGameLocations(position.Latitude, position.Longitude);
        }
Exemple #23
0
 private void MoveMap(Position position)
 {
     Xamarin.Forms.Maps.Position center  = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude);
     Xamarin.Forms.Maps.MapSpan  mapSpan = new Xamarin.Forms.Maps.MapSpan(center, DEFAULT_LATITUDE_DEGREES, DEFAULT_LONGITUDE_DEGREES);
     travelsMap.MoveToRegion(mapSpan);
 }
Exemple #24
0
 public void SetVisibleRegion(MapSpan value) => VisibleRegion = value;
Exemple #25
0
 bool Equals(MapSpan other)
 {
     return(Center.Equals(other.Center) && LongitudeDegrees.Equals(other.LongitudeDegrees) && LatitudeDegrees.Equals(other.LatitudeDegrees));
 }
Exemple #26
0
        protected async override void OnAppearing()
        {
            base.OnAppearing();
            try
            {
                var request  = new GeolocationRequest(GeolocationAccuracy.Best, TimeSpan.FromSeconds(6));
                var location = await Geolocation.GetLocationAsync(request);

                //var location = await Geolocation.GetLastKnownLocationAsync();
                Xamarin.Forms.Maps.Position position = new Xamarin.Forms.Maps.Position(location.Latitude, location.Longitude);
                Xamarin.Forms.Maps.MapSpan  mapSpan  = new Xamarin.Forms.Maps.MapSpan(position, 0.01, 0.01);
                Xamarin.Forms.Maps.Map      map      = new Xamarin.Forms.Maps.Map(mapSpan)
                {
                    IsShowingUser = true
                };
                Xamarin.Forms.Maps.Pin boardwalkPin = new Xamarin.Forms.Maps.Pin
                {
                    Label    = "U Plaza",
                    Address  = "The city with a KhonKean",
                    Type     = Xamarin.Forms.Maps.PinType.SearchResult,
                    Position = new Xamarin.Forms.Maps.Position(16.480157, 102.818123)
                               //16.43307340526658, 102.8255601788635  16.480157,102.818123
                };
                Xamarin.Forms.Maps.Pin boardwalkPin2 = new Xamarin.Forms.Maps.Pin
                {
                    Label    = "โจ๊กเผาหม้อ",
                    Address  = "โจ๊กกกกกกกก",
                    Type     = Xamarin.Forms.Maps.PinType.SearchResult,
                    Position = new Xamarin.Forms.Maps.Position(16.483848, 102.818624)
                               //16.43307340526658, 102.8255601788635  16.480157,102.818123
                };
                map.Pins.Add(boardwalkPin);
                map.Pins.Add(boardwalkPin2);

                var listpin = new List <Xamarin.Forms.Maps.Pin>();

                //var boardwalkPin3 = new List<Xamarin.Forms.Maps.Pin>() {
                //};
                //listpin.Add(boardwalkPin);

                //boardwalkPin2.MarkerClicked += async (s, args) =>
                //{
                //    args.HideInfoWindow = true;
                //    string pinName = ((Xamarin.Forms.Maps.Pin)s).Label;
                //    await DisplayAlert("Pin Clicked", $"{pinName} was clicked.", "Ok");
                //};
                map.MapClicked += async(s, arg) =>
                {
                    var x      = arg.Position.Latitude;
                    var y      = arg.Position.Longitude;
                    var answer = await this.DisplayAlert("แจ้งเตือน", $"ต้องการMarkใช่หรือไม่", "Yes", "CLOSE");

                    Debug.WriteLine("Answer: " + answer);
                    //this.DisplayAlert("แจ้งเตือน", $"ต้องการMarkใช่หรือไม่", "Yes", "CLOSE");
                    if (answer == true)
                    {
                        Xamarin.Forms.Maps.Pin boardwalkPinx = new Xamarin.Forms.Maps.Pin
                        {
                            Label    = "โจ๊กเผาหม้อ",
                            Address  = "โจ๊กกกกกกกก",
                            Type     = Xamarin.Forms.Maps.PinType.SearchResult,
                            Position = new Xamarin.Forms.Maps.Position(x, y),

                            //16.43307340526658, 102.8255601788635  16.480157,102.818123
                        };
                        map.Pins.Add(boardwalkPinx);
                    }
                };


                Content = map;

                //Xamarin.Forms.GoogleMaps.Map map2 = new Xamarin.Forms.GoogleMaps.Map() {

                //};
                //map2.MapLongClicked += (sender, e) =>
                //{
                //    var lat = e.Point.Latitude.ToString("0.000");
                //    var lng = e.Point.Longitude.ToString("0.000");
                //    this.DisplayAlert("MapLongClicked", $"{lat}/{lng}", "CLOSE");
                //};
            }
            catch (FeatureNotSupportedException fnsEx)
            {
                Console.WriteLine(fnsEx);
            }
            catch (FeatureNotEnabledException fneEx)
            {
                Console.WriteLine(fneEx);
            }
            catch (PermissionException pEx)
            {
                Console.WriteLine(pEx);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
Exemple #27
0
        protected async override void OnAppearing()
        {
            base.OnAppearing();
            try
            {
                var request  = new GeolocationRequest(GeolocationAccuracy.Best, TimeSpan.FromSeconds(6));
                var location = await Geolocation.GetLocationAsync(request);

                //var location = await Geolocation.GetLastKnownLocationAsync();
                Xamarin.Forms.Maps.Position position = new Xamarin.Forms.Maps.Position(location.Latitude, location.Longitude);
                Xamarin.Forms.Maps.MapSpan  mapSpan  = new Xamarin.Forms.Maps.MapSpan(position, 0.01, 0.01);
                Xamarin.Forms.Maps.Map      map      = new Xamarin.Forms.Maps.Map(mapSpan)
                {
                    IsShowingUser = true
                };
                var latnow  = location.Latitude;
                var longnow = location.Longitude;
                reverseGeocodeEntry.Text = location.Latitude + "," + location.Longitude;
                //< x:Double x:Name = "latnow" ></ x:Double >
                //< x:Double x:Name = "longnow" ></ x:Double >
                Xamarin.Forms.Maps.Pin boardwalkPin = new Xamarin.Forms.Maps.Pin
                {
                    Label    = "U Plaza",
                    Address  = "The city with a KhonKean",
                    Type     = Xamarin.Forms.Maps.PinType.SearchResult,
                    Position = new Xamarin.Forms.Maps.Position(16.480157, 102.818123)
                               //16.43307340526658, 102.8255601788635  16.480157,102.818123
                };
                Xamarin.Forms.Maps.Pin boardwalkPin2 = new Xamarin.Forms.Maps.Pin
                {
                    Label    = "โจ๊กเผาหม้อ",
                    Address  = "โจ๊กกกกกกกก",
                    Type     = Xamarin.Forms.Maps.PinType.SearchResult,
                    Position = new Xamarin.Forms.Maps.Position(16.483848, 102.818624)
                               //16.43307340526658, 102.8255601788635  16.480157,102.818123
                };
                map.Pins.Add(boardwalkPin);
                map.Pins.Add(boardwalkPin2);
                Position positionx = new Position(location.Latitude, location.Longitude);
                map.MoveToRegion(new MapSpan(positionx, 0.1, 0.1));
                //this.mapapi = map;
                Content = map;

                //map.Pins.Add(new Pin
                //{
                //    Label = "Xamarin",
                //    Position = positionx
                //});
                //var polyline = new Xamarin.Forms.GoogleMaps.Polyline();
                //Xamarin.Forms.Maps.Pin pin = new Xamarin.Forms.Maps.Pin
                //{
                //    Type = PinType.Place,
                //    Position = new Position(16.480157, 102.818123),
                //    Label = "First",
                //    Address = "First",
                //    //Icon = Xamarin.Forms.GoogleMaps.BitmapDescriptorFactory.FromView(new Image() { Source = "ic_taxi.png", WidthRequest = 25, HeightRequest = 25 })
                //};
                //map.Pins.Add(pin);
            }
            catch (FeatureNotSupportedException fnsEx)
            {
                Console.WriteLine(fnsEx);
            }
            catch (FeatureNotEnabledException fneEx)
            {
                Console.WriteLine(fneEx);
            }
            catch (PermissionException pEx)
            {
                Console.WriteLine(pEx);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }