private void DrawTrackPointAddr(IList <TrackPoint> data) { string oldAddress = string.Empty; string oldRoad = string.Empty; foreach (var p in data) { string address = MapHelper.GetAreaFromGpsData(p); if (!string.IsNullOrEmpty(address) && address != oldAddress) { oldAddress = address; // Marker //var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(Feng.Map.GoogleMapOffset.GetOffseted(new PointLatLng(p.Lat, p.Lon))); var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(new PointLatLng(p.Latitude, p.Longitude)); m.ToolTipText = address + "," + p.GpsTime.ToLongTimeString(); m_trackOverlay.Markers.Add(m); } string road = MapHelper.GetRoadFromGpsData(p); if (!string.IsNullOrEmpty(road) && road != oldRoad) { oldRoad = road; //var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed(Feng.Map.GoogleMapOffset.GetOffseted(new PointLatLng(p.Lat, p.Lon))); var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(new PointLatLng(p.Latitude, p.Longitude)); m.ToolTipText = road + "," + p.GpsTime.ToLongTimeString(); m_trackOverlay.Markers.Add(m); } } }
private void markCurrentLocation(Geocoder.Location location) { var lat = location.Latitude; var lon = location.Longitude; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(new GMap.NET.PointLatLng(lat, lon)); currentPosition = m; markerOverlay.Markers.Add(m); m.ToolTipText = "Current Position"; }
//метод для отслежки клиента private void button4_Click(object sender, EventArgs e) { if (comboBox1234.Text == String.Empty) { MessageBox.Show("Выберите клиента чтобы отследить!"); } else { //Очищаем таблицу перед загрузкой данных. dtRouter.Rows.Clear(); //Создаем список способов перемещения. List <string> mode = new List <string>(); //Автомобильные маршруты по улично-дорожной сети. mode.Add("driving"); //Пешеходные маршруты по прогулочным дорожкам и тротуарам. mode.Add("walking"); //Велосипедные маршруты по велосипедным дорожкам и предпочитаемым улицам. mode.Add("bicycling"); //Маршруты общественного транспорта. mode.Add("transit"); //Фрмируем запрос к API маршрутов Google. string url = string.Format( "http://maps.googleapis.com/maps/api/directions/xml?origin={0},&destination={1}&sensor=false&language=ru&mode={2}", Uri.EscapeDataString(textBox1.Text), Uri.EscapeDataString(textBox2.Text), Uri.EscapeDataString(mode[comboBox1.SelectedIndex])); //Выполняем запрос к универсальному коду ресурса (URI). System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url); //Получаем ответ от интернет-ресурса. System.Net.WebResponse response = request.GetResponse(); //Экземпляр класса System.IO.Stream //для чтения данных из интернет-ресурса. System.IO.Stream dataStream = response.GetResponseStream(); //Инициализируем новый экземпляр класса //System.IO.StreamReader для указанного потока. System.IO.StreamReader sreader = new System.IO.StreamReader(dataStream); //Считываем поток от текущего положения до конца. string responsereader = sreader.ReadToEnd(); //Закрываем поток ответа. response.Close(); System.Xml.XmlDocument xmldoc = new System.Xml.XmlDocument(); xmldoc.LoadXml(responsereader); if (xmldoc.GetElementsByTagName("status")[0].ChildNodes[0].InnerText == "OK") { System.Xml.XmlNodeList nodes = xmldoc.SelectNodes("//leg//step"); //Формируем строку для добавления в таблицу. object[] dr; for (int i = 0; i < nodes.Count; i++) { //Указываем что массив будет состоять из //восьми значений. dr = new object[8]; //Номер шага. dr[0] = i; //Получение координат начала отрезка. dr[1] = xmldoc.SelectNodes("//start_location").Item(i).SelectNodes("lat").Item(0).InnerText.ToString(); dr[2] = xmldoc.SelectNodes("//start_location").Item(i).SelectNodes("lng").Item(0).InnerText.ToString(); //Получение координат конца отрезка. dr[3] = xmldoc.SelectNodes("//end_location").Item(i).SelectNodes("lat").Item(0).InnerText.ToString(); dr[4] = xmldoc.SelectNodes("//end_location").Item(i).SelectNodes("lng").Item(0).InnerText.ToString(); //Получение времени необходимого для прохождения этого отрезка. dr[5] = xmldoc.SelectNodes("//duration").Item(i).SelectNodes("text").Item(0).InnerText.ToString(); //Получение расстояния, охватываемое этим отрезком. dr[6] = xmldoc.SelectNodes("//distance").Item(i).SelectNodes("text").Item(0).InnerText.ToString(); //Получение инструкций для этого шага, представленные в виде текстовой строки HTML. dr[7] = HtmlToPlainText(xmldoc.SelectNodes("//html_instructions").Item(i).InnerText.ToString()); //Добавление шага в таблицу. dtRouter.Rows.Add(dr); } //Выводим в текстовое поле адрес начала пути. textBox1.Text = xmldoc.SelectNodes("//leg//start_address").Item(0).InnerText.ToString(); //Выводим в текстовое поле адрес конца пути. textBox2.Text = xmldoc.SelectNodes("//leg//end_address").Item(0).InnerText.ToString(); //Выводим в текстовое поле время в пути. textBox3.Text = xmldoc.GetElementsByTagName("duration")[nodes.Count].ChildNodes[1].InnerText; //Выводим в текстовое поле расстояние от начальной до конечной точки. textBox4.Text = xmldoc.GetElementsByTagName("distance")[nodes.Count].ChildNodes[1].InnerText; //Переменные для хранения координат начала и конца пути. double latStart = 0.0; double lngStart = 0.0; double latEnd = 0.0; double lngEnd = 0.0; //Получение координат начала пути. latStart = System.Xml.XmlConvert.ToDouble(xmldoc.GetElementsByTagName("start_location")[nodes.Count].ChildNodes[0].InnerText); lngStart = System.Xml.XmlConvert.ToDouble(xmldoc.GetElementsByTagName("start_location")[nodes.Count].ChildNodes[1].InnerText); //Получение координат конечной точки. latEnd = System.Xml.XmlConvert.ToDouble(xmldoc.GetElementsByTagName("end_location")[nodes.Count].ChildNodes[0].InnerText); lngEnd = System.Xml.XmlConvert.ToDouble(xmldoc.GetElementsByTagName("end_location")[nodes.Count].ChildNodes[1].InnerText); //Выводим в текстовое поле координаты начала пути. textBox5.Text = latStart + ";" + lngStart; //Выводим в текстовое поле координаты конечной точки. textBox6.Text = latEnd + ";" + lngEnd; //Устанавливаем заполненную таблицу в качестве источника. dataGridView1.DataSource = dtRouter; //Устанавливаем позицию карты на начало пути. gMapControl1.Position = new GMap.NET.PointLatLng(latStart, lngStart); //Создаем новый список маркеров, с указанием компонента //в котором они будут использоваться и названием списка. GMap.NET.WindowsForms.GMapOverlay markersOverlay = new GMap.NET.WindowsForms.GMapOverlay(gMapControl1, "marker"); //Инициализация нового ЗЕЛЕНОГО маркера, с указанием координат начала пути. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen markerG = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(latStart, lngStart)); markerG.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerG); //Указываем, что подсказку маркера, необходимо отображать всегда. markerG.ToolTipMode = GMap.NET.WindowsForms.MarkerTooltipMode.Always; //Формируем подсказку для маркера. string[] wordsG = textBox1.Text.Split(','); string dataMarkerG = string.Empty; foreach (string word in wordsG) { dataMarkerG += word + ";\n"; } //Устанавливаем текст подсказки маркера. markerG.ToolTipText = dataMarkerG; //Инициализация нового Красного маркера, с указанием координат конца пути. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed markerR = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed( new GMap.NET.PointLatLng(latEnd, lngEnd)); markerG.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerG); //Указываем, что подсказку маркера, необходимо отображать всегда. markerR.ToolTipMode = GMap.NET.WindowsForms.MarkerTooltipMode.Always; //Формируем подсказку для маркера. string[] wordsR = textBox2.Text.Split(','); string dataMarkerR = string.Empty; foreach (string word in wordsR) { dataMarkerR += word + ";\n"; } //Текст подсказки маркера. markerR.ToolTipText = dataMarkerR; //Добавляем маркеры в список маркеров. markersOverlay.Markers.Add(markerG); markersOverlay.Markers.Add(markerR); //Очищаем список маркеров компонента. gMapControl1.Overlays.Clear(); //Создаем список контрольных точек для прокладки маршрута. List <GMap.NET.PointLatLng> list = new List <GMap.NET.PointLatLng>(); //Проходимся по определенным столбцам для получения //координат контрольных точек маршрута и занесением их //в список координат. for (int i = 0; i < dtRouter.Rows.Count; i++) { double dbStartLat = double.Parse(dtRouter.Rows[i].ItemArray[1].ToString(), System.Globalization.CultureInfo.InvariantCulture); double dbStartLng = double.Parse(dtRouter.Rows[i].ItemArray[2].ToString(), System.Globalization.CultureInfo.InvariantCulture); list.Add(new GMap.NET.PointLatLng(dbStartLat, dbStartLng)); double dbEndLat = double.Parse(dtRouter.Rows[i].ItemArray[3].ToString(), System.Globalization.CultureInfo.InvariantCulture); double dbEndLng = double.Parse(dtRouter.Rows[i].ItemArray[4].ToString(), System.Globalization.CultureInfo.InvariantCulture); list.Add(new GMap.NET.PointLatLng(dbEndLat, dbEndLng)); } //Очищаем все маршруты. markersOverlay.Routes.Clear(); //Создаем маршрут на основе списка контрольных точек. GMap.NET.WindowsForms.GMapRoute r = new GMap.NET.WindowsForms.GMapRoute(list, "Route"); //Указываем, что данный маршрут должен отображаться. r.IsVisible = true; //Устанавливаем цвет маршрута. r.Stroke.Color = Color.DarkGreen; //Добавляем маршрут. markersOverlay.Routes.Add(r); //Добавляем в компонент, список маркеров и маршрутов. gMapControl1.Overlays.Add(markersOverlay); //Указываем, что при загрузке карты будет использоваться //9ти кратное приближение. gMapControl1.Zoom = 9; //Обновляем карту. gMapControl1.Refresh(); } } }
private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e) { int deviceId = Convert.ToInt32(checkedListBox1.Items[e.Index]); if (e.NewValue == CheckState.Unchecked) { foreach (GMapMarker item in markersOverlay.Markers) { if (Convert.ToInt32(item.Tag) == deviceId) { markersOverlay.Markers.Remove(item); break; } } RemoveDataPerDevice(deviceId); //pictureBox1.ImageLocation = parserXml.DeviceImage; //pictureBox1.Update(); } if (e.NewValue == CheckState.Checked) { RequestDeviceData(deviceId, false); List<Measurement> last = RequestDeviceData(deviceId, true); //String filepath = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName) + @"\Images\smile.png"; //CustomMarker marker = new CustomMarker(new PointLatLng(34.6961334816182, 25.2985095977783), new Bitmap(filepath)); //marker.Size = new Size(11, 11); System.Globalization.NumberFormatInfo nmf = new System.Globalization.NumberFormatInfo(); nmf.NumberDecimalSeparator = "."; if (last.Count > 0) { if (Convert.ToDouble(last[0].temprature) > 25.0) { //GMapMarker marker = new GMap.NET.WindowsForms.Markers.GMapMarker(new PointLatLng(Convert.ToDouble(last[0].latitude, nmf), Convert.ToDouble(last[0].longitude, nmf))); GMapMarker marker = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed(new PointLatLng(Convert.ToDouble(last[0].latitude, nmf), Convert.ToDouble(last[0].longitude, nmf))); marker.Tag = deviceId; markersOverlay.Markers.Add(marker); } else { GMapMarker marker = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(new PointLatLng(Convert.ToDouble(last[0].latitude, nmf), Convert.ToDouble(last[0].longitude, nmf))); marker.Tag = deviceId; markersOverlay.Markers.Add(marker); } } pictureBox1.ImageLocation = String.Format("http://chemigallego.es:2013/SmartCity/GetImage.aspx?device={0}", deviceId); pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; pictureBox1.Update(); } foreach (GMapMarker item in markersOverlay.Markers) { gMapControl1.UpdateMarkerLocalPosition(item); } gMapControl1.ZoomAndCenterMarkers("markers"); dataGridView1.DataSource = null; dataGridView1.DataSource = Data; dataGridView1.Refresh(); // Make sure this comes first dataGridView1.Parent.Refresh(); // Make sure this comes second }
private void DrawTrackPointAddr(IList<TrackPoint> data) { string oldAddress = string.Empty; string oldRoad = string.Empty; foreach (var p in data) { string address = MapHelper.GetAreaFromGpsData(p); if (!string.IsNullOrEmpty(address) && address != oldAddress) { oldAddress = address; // Marker //var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(Feng.Map.GoogleMapOffset.GetOffseted(new PointLatLng(p.Lat, p.Lon))); var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(new PointLatLng(p.Latitude, p.Longitude)); m.ToolTipText = address + "," + p.GpsTime.ToLongTimeString(); m_trackOverlay.Markers.Add(m); } string road = MapHelper.GetRoadFromGpsData(p); if (!string.IsNullOrEmpty(road) && road != oldRoad) { oldRoad = road; //var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed(Feng.Map.GoogleMapOffset.GetOffseted(new PointLatLng(p.Lat, p.Lon))); var m = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(new PointLatLng(p.Latitude, p.Longitude)); m.ToolTipText = road + "," + p.GpsTime.ToLongTimeString(); m_trackOverlay.Markers.Add(m); } } }
private void Form1_Load(object sender, EventArgs e) { //Настройки для компонента GMap. gMapControl1.Bearing = 0; //CanDragMap - Если параметр установлен в True, //пользователь может перетаскивать карту ///с помощью правой кнопки мыши. gMapControl1.CanDragMap = true; //Указываем что перетаскивание карты осуществляется //с использованием левой клавишей мыши. //По умолчанию - правая. gMapControl1.DragButton = MouseButtons.Left; gMapControl1.GrayScaleMode = true; //MarkersEnabled - Если параметр установлен в True, //любые маркеры, заданные вручную будет показаны. //Если нет, они не появятся. gMapControl1.MarkersEnabled = true; //Указываем значение максимального приближения. gMapControl1.MaxZoom = 18; //Указываем значение минимального приближения. gMapControl1.MinZoom = 2; //Устанавливаем центр приближения/удаления //курсор мыши. gMapControl1.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter; //Отказываемся от негативного режима. gMapControl1.NegativeMode = false; //Разрешаем полигоны. gMapControl1.PolygonsEnabled = true; //Разрешаем маршруты. gMapControl1.RoutesEnabled = true; //Скрываем внешнюю сетку карты //с заголовками. gMapControl1.ShowTileGridLines = false; //Указываем, что при загрузке карты будет использоваться //18ти кратной приближение. gMapControl1.Zoom = 18; //Указываем, что все края элемента управления //закрепляются у краев содержащего его элемента //управления(главной формы), а их размеры изменяются //соответствующим образом. gMapControl1.Dock = DockStyle.Fill; //Указываем, что будем использовать карты Google. gMapControl1.MapProvider = GMap.NET.MapProviders.GMapProviders.GoogleMap; GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerOnly; //Если вы используете интернет через прокси сервер, //указываем свои учетные данные. GMap.NET.MapProviders.GMapProvider.WebProxy = System.Net.WebRequest.GetSystemWebProxy(); GMap.NET.MapProviders.GMapProvider.WebProxy.Credentials = System.Net.CredentialCache.DefaultCredentials; //Указываем элементу управления, //что необходимо при открытии карты прейти по //координатам красной площади в Москве. gMapControl1.Position = new GMap.NET.PointLatLng(55.75393, 37.620795); //Создаем новый список маркеров, с указанием компонента //в котором они будут использоваться и названием списка. GMap.NET.WindowsForms.GMapOverlay markersOverlay = new GMap.NET.WindowsForms.GMapOverlay(gMapControl1, "marker"); //Инициализация нового ЗЕЛЕНОГО маркера, с указанием его координат. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen markerG = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( //Указываем координаты Красной площади new GMap.NET.PointLatLng(55.75393, 37.620795)); markerG.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerG); //Текст отображаемый при наведении на маркер. markerG.ToolTipText = "Красная площадь"; //Инициализация нового КРАСНОГО маркера, с указанием его координат. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed markerR = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed( //Указываем координаты Красной площади new GMap.NET.PointLatLng(55.75393, 37.620695)); markerR.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapBaloonToolTip(markerG); //Текст отображаемый при наведении на маркер. markerR.ToolTipText = "Красная площадь"; //Добавляем маркеры в список маркеров. //Зеленый маркер markersOverlay.Markers.Add(markerG); //Красный маркет markersOverlay.Markers.Add(markerR); //Добавляем в компонент, список маркеров. gMapControl1.Overlays.Add(markersOverlay); }
private void button1_Click(object sender, EventArgs e) { //Запрос к API геокодирования Google. string url = string.Format( "http://maps.googleapis.com/maps/api/geocode/xml?address={0}&sensor=true_or_false&language=ru", Uri.EscapeDataString(textBox1.Text)); //Выполняем запрос к универсальному коду ресурса (URI). System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url); //Получаем ответ от интернет-ресурса. System.Net.WebResponse response = request.GetResponse(); //Экземпляр класса System.IO.Stream //для чтения данных из интернет-ресурса. System.IO.Stream dataStream = response.GetResponseStream(); //Инициализируем новый экземпляр класса //System.IO.StreamReader для указанного потока. System.IO.StreamReader sreader = new System.IO.StreamReader(dataStream); //Считывает поток от текущего положения до конца. string responsereader = sreader.ReadToEnd(); //Закрываем поток ответа. response.Close(); System.Xml.XmlDocument xmldoc = new System.Xml.XmlDocument(); xmldoc.LoadXml(responsereader); if (xmldoc.GetElementsByTagName("status")[0].ChildNodes[0].InnerText == "OK") { //Получение широты и долготы. System.Xml.XmlNodeList nodes = xmldoc.SelectNodes("//location"); //Переменны широты и долготы. double latitude = 0.0; double longitude = 0.0; //Получаем широту и долготу. foreach (System.Xml.XmlNode node in nodes) { latitude = System.Xml.XmlConvert.ToDouble(node.SelectSingleNode("lat").InnerText.ToString()); longitude = System.Xml.XmlConvert.ToDouble(node.SelectSingleNode("lng").InnerText.ToString()); } string formattedAddress = xmldoc.SelectNodes("//formatted_address").Item(0).InnerText.ToString(); //Массив, элементы которого содержат подстроки данного экземпляра, разделенные //одним или более знаками из separator. Дополнительные сведения см. в разделе //"Примечания". string[] words = formattedAddress.Split(','); string dataMarker = string.Empty; foreach (string word in words) { dataMarker += word + Environment.NewLine; } GMap.NET.WindowsForms.GMapOverlay markersOverlay = new GMap.NET.WindowsForms.GMapOverlay(gMapControl1, "marker"); //Инициализация нового ЗЕЛЕНОГО маркера, с указанием его координат. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen markerG = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(latitude, longitude)); markerG.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerG); shir = Convert.ToString(latitude); dolg = Convert.ToString(longitude); //Указываем, что подсказку маркера, необходимо отображать всегда. markerG.ToolTipMode = GMap.NET.WindowsForms.MarkerTooltipMode.Always; //Текст подсказки маркера. //Для Варианта 1,2. markerG.ToolTipText = dataMarker; markersOverlay.Markers.Add(markerG); //Очищаем список маркеров. gMapControl1.Overlays.Clear(); //Добавляем в компонент, список маркеров. gMapControl1.Overlays.Add(markersOverlay); //Устанавливаем позицию карты. gMapControl1.Position = new GMap.NET.PointLatLng(latitude, longitude); //Указываем, что при загрузке карты будет использоваться //17ти кратное приближение. gMapControl1.Zoom = 17; //Обновляем карту. gMapControl1.Refresh(); } }
private void gMapControl1_MouseClick(object sender, MouseEventArgs e) { //Переменные для хранения //координат устанавливаемого маркера. double lat = 0.0; double lng = 0.0; //Проверяем, что нажата правая клавиша мыши. if (e.Button == System.Windows.Forms.MouseButtons.Right) { //Получаем координаты, где устанавливается новый маркер. lat = gMapControl1.FromLocalToLatLng(e.X, e.Y).Lat; lng = gMapControl1.FromLocalToLatLng(e.X, e.Y).Lng; shir = Convert.ToString(lat); dolg = Convert.ToString(lng); //MessageBox.Show(shir + " " + dolg); //Запрос к API геокодирования Google. string url = string.Format( "http://maps.google.com/maps/api/geocode/xml?latlng={0},{1}&sensor=true_or_false&language=ru", lat.ToString().Replace(",", "."), lng.ToString().Replace(",", ".")); //Выполняем запрос к универсальному коду ресурса (URI). System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url); //Получаем ответ от интернет-ресурса. System.Net.WebResponse response = request.GetResponse(); //Экземпляр класса System.IO.Stream //для чтения данных из интернет-ресурса. System.IO.Stream dataStream = response.GetResponseStream(); //Инициализируем новый экземпляр класса //System.IO.StreamReader для указанного потока. System.IO.StreamReader sreader = new System.IO.StreamReader(dataStream); //Считывает поток от текущего положения до конца. string responsereader = sreader.ReadToEnd(); //Закрываем поток ответа. response.Close(); //Инициализируем новый документ Xml. System.Xml.XmlDocument xmldoc = new System.Xml.XmlDocument(); xmldoc.LoadXml(responsereader); if (xmldoc.GetElementsByTagName("status")[0].ChildNodes[0].InnerText == "OK") { //Получение информации о найденном объекте. //Берем первый возвращаемый адрес. string formatted_address = xmldoc.SelectNodes("//formatted_address").Item(0).InnerText.ToString(); //Получаем массив, элементы которого содержат подстроки //данного экземпляра, разделенные //одним или более знаками из separator. string[] words = formatted_address.Split(','); string dataMarker = string.Empty; //Получаем строку с переходами. foreach (string word in words) { dataMarker += word + " " + Environment.NewLine; } //Создаем новый список маркеров, с указанием компонента //в котором они будут использоваться и названием списка. GMap.NET.WindowsForms.GMapOverlay markersOverlay = new GMap.NET.WindowsForms.GMapOverlay(gMapControl1, "marker"); //Инициализация нового ЗЕЛЕНОГО маркера, с указанием его координат. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen markerG = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(lat, lng)); markerG.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerG); //Указываем, что подсказку маркера, необходимо отображать всегда. markerG.ToolTipMode = GMap.NET.WindowsForms.MarkerTooltipMode.Always; gMapControl1.OnMarkerClick += MarkerClick; //Текст подсказки маркера. markerG.ToolTipText = dataMarker; //Добавляем маркеры в список маркеров. markersOverlay.Markers.Add(markerG); //Очищаем список маркеров компонента. gMapControl1.Overlays.Clear(); //Добавляем в компонент, список маркеров. gMapControl1.Overlays.Add(markersOverlay); //Устанавливаем позицию карты. gMapControl1.Position = new GMap.NET.PointLatLng(lat, lng); //Указываем, что при загрузке карты будет использоваться //16ти кратное приближение. gMapControl1.Zoom = 17; //Обновляем карту. gMapControl1.Refresh(); } } }
private void Form1_Load(object sender, EventArgs e) { //Настройки для компонента GMap. gMapControl1.Bearing = 0; //CanDragMap - Если параметр установлен в True, //пользователь может перетаскивать карту ///с помощью правой кнопки мыши. gMapControl1.CanDragMap = true; //Указываем, что перетаскивание карты осуществляется //с использованием левой клавишей мыши. //По умолчанию - правая. gMapControl1.DragButton = MouseButtons.Left; gMapControl1.GrayScaleMode = true; //MarkersEnabled - Если параметр установлен в True, //любые маркеры, заданные вручную будет показаны. //Если нет, они не появятся. gMapControl1.MarkersEnabled = true; //Указываем значение максимального приближения. gMapControl1.MaxZoom = 18; //Указываем значение минимального приближения. gMapControl1.MinZoom = 2; //Устанавливаем центр приближения/удаления //курсор мыши. gMapControl1.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter; //Отказываемся от негативного режима. gMapControl1.NegativeMode = false; //Разрешаем полигоны. gMapControl1.PolygonsEnabled = true; //Разрешаем маршруты gMapControl1.RoutesEnabled = true; //Скрываем внешнюю сетку карты //с заголовками. gMapControl1.ShowTileGridLines = false; //Указываем, что при загрузке карты будет использоваться //18ти кратное приближение. gMapControl1.Zoom = 5; //Указываем что все края элемента управления //закрепляются у краев содержащего его элемента //управления(главной формы), а их размеры изменяются //соответствующим образом. //gMapControl1.Dock = DockStyle.Fill; //Указываем что будем использовать карты Google. gMapControl1.MapProvider = GMap.NET.MapProviders.GMapProviders.GoogleMap; GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerOnly; //Если вы используете интернет через прокси сервер, //указываем свои учетные данные. GMap.NET.MapProviders.GMapProvider.WebProxy = System.Net.WebRequest.GetSystemWebProxy(); GMap.NET.MapProviders.GMapProvider.WebProxy.Credentials = System.Net.CredentialCache.DefaultCredentials; //Создаем новый список маркеров, с указанием компонента //в котором они будут использоваться и названием списка GMap.NET.WindowsForms.GMapOverlay markersOverlay = new GMap.NET.WindowsForms.GMapOverlay(gMapControl1, "marker"); //Инициализация нового ЗЕЛЕНОГО маркера, с указанием его координат GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker1 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.484640, 84.947649)); marker1.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker1); //Текст отображаемый при наведении на маркер marker1.ToolTipText = "Томск"; //Инициализация нового маркера, с указанием его координат GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker2 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.603185, 84.880913)); marker2.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker2); //Текст отображаемый при наведении на маркер marker2.ToolTipText = "Северск"; //Инициализация нового маркера, с указанием его координат GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker3 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(55.354727, 86.088374)); marker3.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker3); //Текст отображаемый при наведении на маркер marker3.ToolTipText = "Кемерово"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker4 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(53.720976, 91.44242300000001)); marker4.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker4); //Текст отображаемый при наведении на маркер marker4.ToolTipText = "Абакан"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker5 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(64.539304, 40.518735)); marker5.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker5); //Текст отображаемый при наведении на маркер marker5.ToolTipText = "Архангельск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker6 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(51.128422, 71.430564)); marker6.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker6); //Текст отображаемый при наведении на маркер marker6.ToolTipText = "Астана"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker7 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(46.347869, 48.033574)); marker7.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker7); //Текст отображаемый при наведении на маркер marker7.ToolTipText = "Астрахань"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker8 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(53.356132, 83.74961999999999)); marker8.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker8); //Текст отображаемый при наведении на маркер marker8.ToolTipText = "Барнаул"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker9 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(50.597467, 36.588849)); marker9.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker9); //Текст отображаемый при наведении на маркер marker9.ToolTipText = "Белгород"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker10 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(52.541444, 85.219686)); marker10.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker10); //Текст отображаемый при наведении на маркер marker10.ToolTipText = "Бийск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker11 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(42.871027, 74.59452)); marker11.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker11); //Текст отображаемый при наведении на маркер marker11.ToolTipText = "Бишкек"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker12 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(50.290658, 127.527173)); marker12.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker12); //Текст отображаемый при наведении на маркер marker12.ToolTipText = "Благовещенск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker13 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.151382, 101.634152)); marker13.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker13); //Текст отображаемый при наведении на маркер marker13.ToolTipText = "Братск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker14 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(53.2434, 34.364198)); marker14.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker14); //Текст отображаемый при наведении на маркер marker14.ToolTipText = "Брянск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker15 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(58.521475, 31.275475)); marker15.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker15); //Текст отображаемый при наведении на маркер marker15.ToolTipText = "Великий Новгород"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker16 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(43.134019, 131.928379)); marker16.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker16); //Текст отображаемый при наведении на маркер marker16.ToolTipText = "Владивосток"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker17 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(43.024122, 44.690476)); marker17.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker17); //Текст отображаемый при наведении на маркер marker17.ToolTipText = "Владикавказ"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker18 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.129042, 40.40703)); marker18.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker18); //Текст отображаемый при наведении на маркер marker18.ToolTipText = "Владимир"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker19 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(48.707103, 44.516939)); marker19.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker19); //Текст отображаемый при наведении на маркер marker19.ToolTipText = "Волгоград"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker20 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(59.220492, 39.891568)); marker20.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker20); //Текст отображаемый при наведении на маркер marker20.ToolTipText = "Вологда"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker21 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(51.661535, 39.200287)); marker21.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker21); //Текст отображаемый при наведении на маркер marker21.ToolTipText = "Воронеж"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker22 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(43.317992, 45.698197)); marker22.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker22); //Текст отображаемый при наведении на маркер marker22.ToolTipText = "Грозный"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker23 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(48.015877, 37.80285)); marker23.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker23); //Текст отображаемый при наведении на маркер marker23.ToolTipText = "Донецк"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker24 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.838002, 60.597295)); marker24.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker24); //Текст отображаемый при наведении на маркер marker24.ToolTipText = "Екатеринбург"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker25 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(57.000348, 40.973921)); marker25.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker25); //Текст отображаемый при наведении на маркер marker25.ToolTipText = "Иваново"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker26 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.852775, 53.211463)); marker26.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker26); //Текст отображаемый при наведении на маркер marker26.ToolTipText = "Ижевск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker27 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(52.286387, 104.28066)); marker27.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker27); //Текст отображаемый при наведении на маркер marker27.ToolTipText = "Иркутск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker28 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(55.795793, 49.106585)); marker28.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker28); //Текст отображаемый при наведении на маркер marker28.ToolTipText = "Казань"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker29 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(55.916229, 37.854467)); marker29.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker29); //Текст отображаемый при наведении на маркер marker29.ToolTipText = "Калининград"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker30 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(54.507014, 36.252277)); marker30.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker30); //Текст отображаемый при наведении на маркер marker30.ToolTipText = "Калуга"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker31 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.414897, 61.918905)); marker31.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker31); //Текст отображаемый при наведении на маркер marker31.ToolTipText = "Каменск-Уральский"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker32 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(50.402395, 30.532690)); marker32.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker32); //Текст отображаемый при наведении на маркер marker32.ToolTipText = "Киев"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker33 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(54.079033, 34.323163)); marker33.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker33); //Текст отображаемый при наведении на маркер marker33.ToolTipText = "Киров"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker34 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(50.54986, 137.007867)); marker34.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker34); //Текст отображаемый при наведении на маркер marker34.ToolTipText = "Комсомольск-на-Амуре"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker35 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(55.916229, 37.854467)); marker35.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker35); //Текст отображаемый при наведении на маркер marker35.ToolTipText = "Королев"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker36 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(57.767683, 40.926418)); marker36.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker36); //Текст отображаемый при наведении на маркер marker36.ToolTipText = "Кострома"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker37 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(45.023877, 38.970157)); marker37.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker37); //Текст отображаемый при наведении на маркер marker37.ToolTipText = "Краснодар"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker38 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(56.008691, 92.870529)); marker38.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker38); //Текст отображаемый при наведении на маркер marker38.ToolTipText = "Красноярск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker39 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(51.730361, 36.192647)); marker39.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker39); //Текст отображаемый при наведении на маркер marker39.ToolTipText = "Курск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker40 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(52.61022, 39.594719)); marker40.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker40); //Текст отображаемый при наведении на маркер marker40.ToolTipText = "Липецк"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker41 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(53.411677, 58.984415)); marker41.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker41); //Текст отображаемый при наведении на маркер marker41.ToolTipText = "Магнитогорск"; GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker42 = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(42.984913, 47.504646)); marker42.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker42); //Текст отображаемый при наведении на маркер marker42.ToolTipText = "Махачкала"; //Добавляем маркеры в список маркеров markersOverlay.Markers.Add(marker1); markersOverlay.Markers.Add(marker2); markersOverlay.Markers.Add(marker3); markersOverlay.Markers.Add(marker4); markersOverlay.Markers.Add(marker5); markersOverlay.Markers.Add(marker6); markersOverlay.Markers.Add(marker7); markersOverlay.Markers.Add(marker8); markersOverlay.Markers.Add(marker9); markersOverlay.Markers.Add(marker10); markersOverlay.Markers.Add(marker11); markersOverlay.Markers.Add(marker12); markersOverlay.Markers.Add(marker13); markersOverlay.Markers.Add(marker14); markersOverlay.Markers.Add(marker15); markersOverlay.Markers.Add(marker16); markersOverlay.Markers.Add(marker17); markersOverlay.Markers.Add(marker18); markersOverlay.Markers.Add(marker19); markersOverlay.Markers.Add(marker20); markersOverlay.Markers.Add(marker21); markersOverlay.Markers.Add(marker22); markersOverlay.Markers.Add(marker23); markersOverlay.Markers.Add(marker24); markersOverlay.Markers.Add(marker25); markersOverlay.Markers.Add(marker26); markersOverlay.Markers.Add(marker27); markersOverlay.Markers.Add(marker28); markersOverlay.Markers.Add(marker29); markersOverlay.Markers.Add(marker30); markersOverlay.Markers.Add(marker31); markersOverlay.Markers.Add(marker32); markersOverlay.Markers.Add(marker33); markersOverlay.Markers.Add(marker34); markersOverlay.Markers.Add(marker35); markersOverlay.Markers.Add(marker36); markersOverlay.Markers.Add(marker37); markersOverlay.Markers.Add(marker38); markersOverlay.Markers.Add(marker39); markersOverlay.Markers.Add(marker40); markersOverlay.Markers.Add(marker41); markersOverlay.Markers.Add(marker42); //Добавляем в компонент, список маркеров gMapControl1.Overlays.Add(markersOverlay); }
private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e) { int deviceId = Convert.ToInt32(checkedListBox1.Items[e.Index]); if (e.NewValue == CheckState.Unchecked) { foreach (GMapMarker item in markersOverlay.Markers) { if (Convert.ToInt32(item.Tag) == deviceId) { markersOverlay.Markers.Remove(item); break; } } RemoveDataPerDevice(deviceId); //pictureBox1.ImageLocation = parserXml.DeviceImage; //pictureBox1.Update(); } if (e.NewValue == CheckState.Checked) { RequestDeviceData(deviceId, false); List <Measurement> last = RequestDeviceData(deviceId, true); //String filepath = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName) + @"\Images\smile.png"; //CustomMarker marker = new CustomMarker(new PointLatLng(34.6961334816182, 25.2985095977783), new Bitmap(filepath)); //marker.Size = new Size(11, 11); System.Globalization.NumberFormatInfo nmf = new System.Globalization.NumberFormatInfo(); nmf.NumberDecimalSeparator = "."; if (last.Count > 0) { if (Convert.ToDouble(last[0].temprature) > 25.0) { //GMapMarker marker = new GMap.NET.WindowsForms.Markers.GMapMarker(new PointLatLng(Convert.ToDouble(last[0].latitude, nmf), Convert.ToDouble(last[0].longitude, nmf))); GMapMarker marker = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed(new PointLatLng(Convert.ToDouble(last[0].latitude, nmf), Convert.ToDouble(last[0].longitude, nmf))); marker.Tag = deviceId; markersOverlay.Markers.Add(marker); } else { GMapMarker marker = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen(new PointLatLng(Convert.ToDouble(last[0].latitude, nmf), Convert.ToDouble(last[0].longitude, nmf))); marker.Tag = deviceId; markersOverlay.Markers.Add(marker); } } pictureBox1.ImageLocation = String.Format("http://chemigallego.es:2013/SmartCity/GetImage.aspx?device={0}", deviceId); pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; pictureBox1.Update(); } foreach (GMapMarker item in markersOverlay.Markers) { gMapControl1.UpdateMarkerLocalPosition(item); } gMapControl1.ZoomAndCenterMarkers("markers"); dataGridView1.DataSource = null; dataGridView1.DataSource = Data; dataGridView1.Refresh(); // Make sure this comes first dataGridView1.Parent.Refresh(); // Make sure this comes second }
private void gMapControl1_Load(object sender, EventArgs e) { //Настройки для компонента GMap. gMapControl1.Bearing = 0; //CanDragMap - Если параметр установлен в True, //пользователь может перетаскивать карту ///с помощью правой кнопки мыши. gMapControl1.CanDragMap = true; //Указываем, что перетаскивание карты осуществляется //с использованием левой клавишей мыши. //По умолчанию - правая. gMapControl1.DragButton = MouseButtons.Left; gMapControl1.GrayScaleMode = true; //MarkersEnabled - Если параметр установлен в True, //любые маркеры, заданные вручную будет показаны. //Если нет, они не появятся. gMapControl1.MarkersEnabled = true; //Указываем значение максимального приближения. gMapControl1.MaxZoom = 18; //Указываем значение минимального приближения. gMapControl1.MinZoom = 2; //Устанавливаем центр приближения/удаления //курсор мыши. gMapControl1.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter; //Отказываемся от негативного режима. gMapControl1.NegativeMode = false; //Разрешаем полигоны. gMapControl1.PolygonsEnabled = true; //Разрешаем маршруты gMapControl1.RoutesEnabled = true; //Скрываем внешнюю сетку карты //с заголовками. gMapControl1.ShowTileGridLines = false; //Указываем, что при загрузке карты будет использоваться //18ти кратное приближение. gMapControl1.Zoom = 5; //Указываем что все края элемента управления //закрепляются у краев содержащего его элемента //управления(главной формы), а их размеры изменяются //соответствующим образом. gMapControl1.Dock = DockStyle.Fill; //Указываем что будем использовать карты Google. gMapControl1.MapProvider = GMap.NET.MapProviders.GMapProviders.GoogleMap; GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerOnly; //Если вы используете интернет через прокси сервер, //указываем свои учетные данные. GMap.NET.MapProviders.GMapProvider.WebProxy = System.Net.WebRequest.GetSystemWebProxy(); GMap.NET.MapProviders.GMapProvider.WebProxy.Credentials = System.Net.CredentialCache.DefaultCredentials; // Создаем новый список маркеров, с указанием компонента //в котором они будут использоваться и названием списка GMap.NET.WindowsForms.GMapOverlay markersOverlay = new GMap.NET.WindowsForms.GMapOverlay(gMapControl1, "marker"); int scetchik = 1; for (int i = 0; i < genetic.fmap.Length; i++) { GeoPoint an = new GeoPoint(); an = MarkerF.Coord(C.g[genetic.fmap[i]]); { //Инициализация нового ЗЕЛЕНОГО маркера, с указанием его координат GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen marker = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleGreen( new GMap.NET.PointLatLng(an.Lat, an.Long)); marker.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(marker); //Текст отображаемый при наведении на маркер marker.ToolTipText = scetchik.ToString(); //Добавляем маркер в список маркеров markersOverlay.Markers.Add(marker); //Добавляем в компонент, список маркеров gMapControl1.Overlays.Add(markersOverlay); } scetchik++; } GeoPoint startmarker = new GeoPoint(); startmarker = MarkerF.Coord(C.start); GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed markerR = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed( new GMap.NET.PointLatLng(startmarker.Lat, startmarker.Long)); markerR.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerR); //Текст отображаемый при наведении на маркер markerR.ToolTipText = "Start"; //Добавляем маркер в список маркеров markersOverlay.Markers.Add(markerR); //Добавляем в компонент, список маркеров gMapControl1.Overlays.Add(markersOverlay); }