private void gMapControl1_MouseDoubleClick(object sender, MouseEventArgs e) { var lat = gMapControl1.FromLocalToLatLng(e.X, e.Y).Lat; var lng = gMapControl1.FromLocalToLatLng(e.X, e.Y).Lng; if (_currentStationOnCurrentRoute < _namesOfStationsOnCurrentRoute.Count) { var station = new Station(_namesOfStationsOnCurrentRoute[_currentStationOnCurrentRoute]); _allStations.AddStation(station); AddMarker(lat, lng, station); } AddStationToRoute(); }
private void Btn_Add_Click(object sender, EventArgs e) { _stationsLoader = new StationsLoader(); for (int i = 1; i <= 4; i++) { var transportType = i; var url = $"http://www.yargortrans.ru/list.php?vt={transportType}"; var _transportType = SwitchTransportType(i); var Webget = new HtmlWeb() { OverrideEncoding = Encoding.Default }; var doc = Webget.Load(url); var routes = doc.DocumentNode.SelectNodes("//li[@class='route_list_item']//a"); for (int j = 0; j < routes.Count; j++) { string[] items = routes[j].InnerText.Split('.'); var routeNumber = items[0]; var routeNumberEn = ReplaceLetter(routeNumber); url = $"http://www.yargortrans.ru/config.php?vt={transportType}&nmar={routeNumberEn}"; _stationsLoader.Load(url, transportType); var directRoute = new List <string>(); var reverseRoute = new List <string>(); var lengthOfDirectRoute = _stationsLoader.CountOfStationsOnDirectRoute; for (int k = 0; k < lengthOfDirectRoute; k++) { directRoute.Add(_stationsLoader.StationsList[k]); _allStations.AddStation(new Station(_stationsLoader.StationsList[k])); } for (int k = lengthOfDirectRoute; k < _stationsLoader.StationsList.Count; k++) { reverseRoute.Add(_stationsLoader.StationsList[k]); _allStations.AddStation(new Station(_stationsLoader.StationsList[k])); } var route = new Route(routeNumberEn, _transportType); var routeContent = new RouteContent(directRoute, reverseRoute); _allRoutes.AddRoute(route, routeContent); _routeMatrix.AddRoute(route, directRoute, reverseRoute, _allStations); } } var formatter = new BinaryFormatter(); using (FileStream fs = new FileStream("allroutes.dat", FileMode.OpenOrCreate)) { formatter.Serialize(fs, _allRoutes); } using (FileStream fs = new FileStream("allstations.dat", FileMode.OpenOrCreate)) { formatter.Serialize(fs, _allStations); } using (FileStream fs = new FileStream("routematrix.dat", FileMode.OpenOrCreate)) { formatter.Serialize(fs, _routeMatrix); } label1.Visible = true; }