Example #1
0
        public TrackingViewModel(IMasterNavigationService masterNavigationService, IPageService pageService, IPositionService positionService)
        {
            //init display public vars
            UserPosition = new Xamarin.Forms.Maps.Position();
            counter      = 0;
            //SetHighlightedRoute();

            //for DEMO, init pin at first position
            //VehiculePositionPins.Add(new Pin() { Position = new Xamarin.Forms.Maps.Position(coordinatesX[0], coordinatesY[0]), Type = PinType.Generic, Label = "Navette autonome" });
            VehiculePositionPins.Add(new Pin()
            {
                Position = new Xamarin.Forms.Maps.Position(45.378963, -71.927798), Type = PinType.Generic, Label = "Navette autonome"
            });
            //UserPosition = new Xamarin.Forms.Maps.Position(coordinatesX[3], coordinatesY[3]);
            UserPosition = new Xamarin.Forms.Maps.Position(45.378963, -71.927798);


            //init private vars
            _navigationService = masterNavigationService;
            _pageService       = pageService;
            _positionService   = positionService;


            /*
             * SetPositionsCommand = new Command(async () => await SetPositions());
             * timer = new System.Timers.Timer();
             * timer.Interval = 2000;
             *
             * timer.Elapsed += OnTimedEvent;
             * timer.AutoReset = true;
             * timer.Enabled = true;*/
        }
Example #2
0
        //methods
        private async Task SetPositions()
        {
            if (VehiculePositionPins != null)
            {
                if (VehiculePositionPins.Count > 0)
                {
                    VehiculePositionPins.Clear();
                }
                var response = await _positionService.getCurrentPosition();

                VehiculePositionPins.Add(new Pin()
                {
                    Position = new Xamarin.Forms.Maps.Position(response.Latitude, response.Longitude), Type = PinType.Generic, Label = "Navette autonome"
                });
                UserPosition = new Xamarin.Forms.Maps.Position(response.Latitude, response.Longitude);
            }
        }
Example #3
0
 private void OnTimedEvent(Object source, System.Timers.ElapsedEventArgs e)
 {
     if (VehiculePositionPins.Count > 0)
     {
         VehiculePositionPins.Clear();
     }
     VehiculePositionPins.Add(new Pin()
     {
         Position = new Xamarin.Forms.Maps.Position(coordinatesX[counter], coordinatesY[counter]), Type = PinType.Generic, Label = "Navette autonome"
     });
     UserPosition = new Xamarin.Forms.Maps.Position(coordinatesX[3], coordinatesY[3]);
     if (counter < coordinatesX.Length - 1)
     {
         counter++;
     }
     else
     {
         timer.Stop();
         _pageService.DisplayAlert("test", "timer stopped", "OK");
     }
 }