void geolocator_PositionChanged(Geolocator sender, PositionChangedEventArgs args)
        {
            Dispatcher.BeginInvoke(() =>
            {
                //LatitudeTextBlock.Text = args.Position.Coordinate.Latitude.ToString("0.00000000");
                //LongitudeTextBlock.Text = args.Position.Coordinate.Longitude.ToString("0.00000000");

                GeoCoordinate currentCoordinate = new GeoCoordinate(args.Position.Coordinate.Latitude,
                                                                    args.Position.Coordinate.Longitude);
                currCoordinate = currentCoordinate;

                MainMap.SetView(currentCoordinate, MainMap.ZoomLevel);

                HeadingPath.Visibility    = Visibility.Visible;
                SecretTestPath.Visibility = Visibility.Visible;

                GeoCoordinate diamondCoordinate = new GeoCoordinate(StaticViewModel.MapViewModel.currentPlace.Latitude,
                                                                    StaticViewModel.MapViewModel.currentPlace.Longitude);

                if (StaticMethod.Distance(currentCoordinate, diamondCoordinate) <= 0.1)
                {
                    DiamondControl tempDiamondControl = diamondOverlay.Content as DiamondControl;
                    tempDiamondControl.ChangeColor();

                    CollectGrid.Visibility = Visibility.Visible;
                }
                else
                {
                    CollectGrid.Visibility = Visibility.Collapsed;
                }
            });
        }
Exemple #2
0
        private void InitializeUI()
        {
            int i = StaticData.CurrentErrollments.CompletedPlace;

            RouteNameTextBlock.Text = StaticViewModel.MapViewModel.RouteDetailsModel.Name;
            AddressTextBlock.Text   = StaticViewModel.MapViewModel.RouteDetailsModel.Places[i].Address;
            CreatorTextBlock.Text   = StaticViewModel.MapViewModel.RouteDetailsModel.Merchant.Name;
            //AddressRun.Text = "Address: " + StaticViewModel.MapViewModel.RouteDetailsModel.Places[i].Address;
            //CategoryRun.Text = StaticViewModel.MapViewModel.RouteDetailsModel.Category.ToString();
            //CategoryRun.Text = "Catergory: Food";

            GeoCoordinate fisrtPointCoordinate =
                new GeoCoordinate(StaticViewModel.MapViewModel.RouteDetailsModel.Places[i].Latitude,
                                  StaticViewModel.MapViewModel.RouteDetailsModel.Places[i].Longitude);

            MainMap.Center    = fisrtPointCoordinate;
            MainMap.ZoomLevel = 16;

            DiamondControl newDiamondControl = new DiamondControl();
            MapOverlay     diamondOverlay    = new MapOverlay();

            diamondOverlay.Content = newDiamondControl;

            diamondOverlay.GeoCoordinate = fisrtPointCoordinate;

            MapLayer tempMapLayer = new MapLayer();

            tempMapLayer.Add(diamondOverlay);

            MainMap.Layers.Add(tempMapLayer);
        }
        private void ResetDiamond()
        {
            DiamondControl newDiamondControl = new DiamondControl();

            newDiamondControl.Tag = StaticViewModel.MapViewModel.currentPlace;

            diamondOverlay               = new MapOverlay();
            diamondOverlay.Content       = newDiamondControl;
            diamondOverlay.GeoCoordinate = new GeoCoordinate(StaticViewModel.MapViewModel.currentPlace.Latitude,
                                                             StaticViewModel.MapViewModel.currentPlace.Longitude);

            PlacesMapLayer.Clear();
            PlacesMapLayer.Add(diamondOverlay);
        }
        //TODO: Initialize Diamond Pushpin
        private void InitializeDiamond()
        {
            int i = StaticData.CurrentErrollments.CompletedPlace;

            DiamondControl newDiamondControl = new DiamondControl();

            newDiamondControl.Tag = places[i];

            StaticViewModel.MapViewModel.currentPlace = places[i];

            diamondOverlay.Content       = newDiamondControl;
            diamondOverlay.GeoCoordinate = new GeoCoordinate(places[i].Latitude, places[i].Longitude);

            PlacesMapLayer.Clear();

            PlacesMapLayer.Add(diamondOverlay);

            //Test place

            Place testPlace = new Place();

            testPlace.GeoLocation = new GeoCoordinate(10.833769, 106.681338);
            testPlace.Latitude    = 10.833769;
            testPlace.Longitude   = 106.681338;

            testPlace.Content = "Test place";

            DiamondControl testDiamondControl = new DiamondControl();

            testDiamondControl.Tag = testPlace;

            MapOverlay testOverlay = new MapOverlay();

            testOverlay.Content       = testDiamondControl;
            testOverlay.GeoCoordinate = testPlace.GeoLocation;

            PlacesMapLayer.Add(testOverlay);
        }