AnyPlace.MainPage.ShowIndoorRoutesPoiToPoiResults C# (CSharp) Method

ShowIndoorRoutesPoiToPoiResults() private method

private ShowIndoorRoutesPoiToPoiResults ( ) : void
return void
        private void ShowIndoorRoutesPoiToPoiResults()
        {


            time.Text = "Duration: Unknown";
            // total meters
            Dispatcher.BeginInvoke(() =>
            {
                distance.Text = "Distance: Unknown";
            });


            routeNavDetails.Clear();
            var routeList = new List<DirectionsList>();


            if (Mymap.Layers.Contains(indoorLayer))
            {
                Mymap.Layers.Remove(indoorLayer);
            }



            if (_poisByBuilding != null)
            {
                foreach (var obj1 in _poisByBuilding.pois)
                {
                    if (obj1.puid.Equals(_floorPoiFrom))
                    {
                        if (obj1.is_building_entrance != null && obj1.is_building_entrance.Equals("true"))
                        {
                            var direction = new DirectionsList
                            {
                                direction = "Get into Building",
                                geocoordinate =
                                    new GeoCoordinate(double.Parse(obj1.coordinates_lat, CultureInfo.InvariantCulture),
                                        double.Parse(obj1.coordinates_lon, CultureInfo.InvariantCulture)),
                                image =
                                    new BitmapImage(new Uri("/Assets/Navigation/entrance.png", UriKind.Relative))
                            };
                            routeList.Add(direction);

                            _overlayFrom = new MapOverlay();
                            var im = new Image
                            {
                                Source =
                                    new BitmapImage(new Uri("/Assets/Navigation/entrance.png", UriKind.Relative)),
                                Width = 64,
                                Height = 64
                            };
                            _overlayFrom.Content = im;
                            _overlayFrom.GeoCoordinate = direction.geocoordinate; ;
                            _overlayFrom.PositionOrigin = new Point(0.5, 1.0);
                        }
                        else
                        {
                            var direction = new DirectionsList
                            {
                                direction = obj1.name,
                                geocoordinate =
                                    new GeoCoordinate(double.Parse(obj1.coordinates_lat, CultureInfo.InvariantCulture),
                                        double.Parse(obj1.coordinates_lon, CultureInfo.InvariantCulture)),
                                image = new BitmapImage(new Uri("/Assets/start.png", UriKind.Relative))
                            };
                            routeList.Add(direction);

                            _overlayFrom = new MapOverlay();
                            var im = new Image
                            {
                                Source = new BitmapImage(new Uri("/Assets/start.png", UriKind.Relative)),
                                Width = 64,
                                Height = 64
                            };
                            _overlayFrom.Content = im;
                            _overlayFrom.GeoCoordinate = direction.geocoordinate; ;
                            _overlayFrom.PositionOrigin = new Point(0.0, 1.0);
                        }
                    }
                }
            }

            if (_poisByBuilding != null)
            {
                foreach (var obj1 in _poisByBuilding.pois)
                {
                    if (obj1.puid.Equals(_floorPoiTo))
                    {
                        var direction = new DirectionsList
                        {
                            direction = obj1.name,
                            geocoordinate =
                                new GeoCoordinate(double.Parse(obj1.coordinates_lat, CultureInfo.InvariantCulture),
                                    double.Parse(obj1.coordinates_lon, CultureInfo.InvariantCulture)),
                            image = new BitmapImage(new Uri("/Assets/finish.png", UriKind.Relative))
                        };
                        routeList.Add(direction);

                        _overlayTo = new MapOverlay();
                        var im = new Image
                        {
                            Source = new BitmapImage(new Uri("/Assets/finish.png", UriKind.Relative))
                        };
                        _overlayTo.Content = im;
                        _overlayTo.GeoCoordinate = direction.geocoordinate; ;
                        _overlayTo.PositionOrigin = new Point(1.0, 1.0);
                    }
                }
            }
            indoorLayer.Clear();

            if (Mymap.Layers.Contains(indoorLayer))
                Mymap.Layers.Remove(indoorLayer);
            if (_floorPoiFromNumber == _floorPoiToNumber)
            {
                if (_selectedFloor == _floorPoiToNumber)
                {
                    indoorLayer.Add(_overlayFrom);
                    indoorLayer.Add(_overlayTo);
                }
            }
            else
            {
                if (_selectedFloor == _floorPoiFromNumber)
                {
                    indoorLayer.Add(_overlayFrom);
                }
                else
                    if (_selectedFloor == _floorPoiToNumber)
                        indoorLayer.Add(_overlayTo);
            }
            Mymap.Layers.Add(indoorLayer);

            CreaterouteOverlays();
            RouteLLS.ItemsSource = routeList;
            RouteLLS.SelectionChanged += RouteLLS_SelectionChanged;


            calcroutestext.Visibility = Visibility.Collapsed;
            calcProgrBar.Visibility = Visibility.Collapsed;
            time.Visibility = Visibility.Visible;
            distance.Visibility = Visibility.Visible;
        }
MainPage