コード例 #1
0
 private void ZoomAndCenterTrack(Core.NavigationElements.ITrack track)
 {
     if (_mapRoutes[track.UniqueID].Count > 0)
     {
         this.ZoomAndCenterRoute(_mapRoutes[track.UniqueID][0]);
     }
 }
コード例 #2
0
 /// <summary>
 /// Draws track on map.
 /// </summary>
 /// <param name="track"></param>
 /// <param name="zoomAndCenter">Whether to zoom and center on the current track or not.</param>
 public void DrawTrack(Core.NavigationElements.ITrack track, bool zoomAndCenter)
 {
     DrawTrack(track);
     if (zoomAndCenter)
     {
         ZoomAndCenterTrack(track);
     }
 }
コード例 #3
0
 public List <GMapRoute> GetRoute(Core.NavigationElements.ITrack track)
 {
     if (_mapRoutes.ContainsKey(track.UniqueID))
     {
         return(_mapRoutes[track.UniqueID]);
     }
     return(new List <GMapRoute>(0));
 }
コード例 #4
0
 public void RemoveTrack(Core.NavigationElements.ITrack track)
 {
     if (_mapRoutes.ContainsKey(track.UniqueID))
     {
         foreach (GMap.NET.WindowsForms.GMapRoute route in _mapRoutes[track.UniqueID])
         {
             _trackOverlay.Routes.Remove(route);
         }
     }
 }
コード例 #5
0
        /// <summary>
        /// Refreshes a secific track.
        /// </summary>
        /// <param name="track"></param>
        public void RefreshTrack(Core.NavigationElements.ITrack track)
        {
            // TODO: Need to nice refrsh tracks.
            if (_mapRoutes.ContainsKey(track.UniqueID))
            {
                foreach (GMapRoute route in _mapRoutes[track.UniqueID])
                {
                    _trackOverlay.Routes.Remove(route);
                }

                foreach (Core.NavigationElements.ITrackSegment trackSegment in track.TrackSegments)
                {
                    GMapRoute route = new GMapRoute(ConvertTrackSegment(trackSegment), "segment");
                    _trackOverlay.Routes.Add(route);
                }

                base.Refresh();
            }
        }
コード例 #6
0
        private void DrawTrack(Core.NavigationElements.ITrack track)
        {
            if (_mapRoutes.ContainsKey(track.UniqueID) == false)
            {
                _mapRoutes.Add(track.UniqueID, null);
            }


            List <GMap.NET.WindowsForms.GMapRoute> routes = new List <GMapRoute>();

            foreach (ITrackSegment segment in track.TrackSegments)
            {
                List <GMap.NET.PointLatLng> points = ConvertTrackSegment(segment);
                var route = new GMap.NET.WindowsForms.GMapRoute(points, "segment");
                routes.Add(route);
                _trackOverlay.Routes.Add(route);
            }

            _mapRoutes[track.UniqueID] = routes;
            _trackOverlay.IsVisibile   = true;
        }