public List<GMapMarker> GetMarkers() { XNamespace nx = "http://www.opengis.net/kml/2.2"; var placemarks = from placeMark in loaded.Descendants(nx + "Placemark") where placeMark.Element(nx + "name").Value != "Flight path" select placeMark; List<GMapMarker> markers = new List<GMapMarker>(); placemarks.ToList().ForEach((placemark) =>{ var location = ParseCoordinate(placemark.Descendants(nx + "coordinates").First().Value); GMapMarker marker; if (placemark.Descendants(nx + "name").First().Value.Contains("Landing")) marker = new GMapMarkerGoogleGreen(location); else marker = new GMapMarkerGoogleRed(location); marker.ToolTipText = placemark.Descendants(nx + "description").First().Value; marker.ToolTipMode = MarkerTooltipMode.OnMouseOver; markers.Add(marker); }); return markers; }
private void addPIN(PointLatLng point) { GMapOverlay markersOverlay = new GMapOverlay(gmap, "marker"); this.marker = new GMapMarkerGoogleRed(point); markersOverlay.Markers.Add(marker); gmap.Overlays.Add(markersOverlay); marker.ToolTipText = this.article.mLink; marker.ToolTipMode = MarkerTooltipMode.Never; }
void MarkerRed(string text, double x, double y) { //Инициализация нового КРАСНОГО маркера, с указанием его координат. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed markerR = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed( //Указываем координаты new GMap.NET.PointLatLng(x, y)); markerR.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapBaloonToolTip(markerR); //Текст отображаемый при наведении на маркер. markerR.ToolTipText = text; //Красный маркет markersOverlay.Markers.Add(markerR); }
private void addpolygonmarkerred(string tag, double lng, double lat, int alt, Color? color, GMapOverlay overlay) { try { PointLatLng point = new PointLatLng(lat, lng); GMapMarkerGoogleRed m = new GMapMarkerGoogleRed(point); m.ToolTipMode = MarkerTooltipMode.Always; m.ToolTipText = tag; m.Tag = tag; GMapMarkerRect mBorders = new GMapMarkerRect(point); { mBorders.InnerMarker = m; } overlay.Markers.Add(m); overlay.Markers.Add(mBorders); } catch (Exception) { } }
// ПРИМЕР РАБОТЫ С КАРТОЙ ! // (данный код используйте по своему усмотрению!) void SetParamsMap() { // Создание элемента, отображающего карту ! gMapControl1 = new GMapControl(); // Растягивание элемента на все окно! gMapControl1.Dock = DockStyle.Fill; // Добавление элемента this.Controls.Add(gMapControl1); // ОБЩИЕ НАСТРОЙКИ КАРТЫ //Указываем, что будем использовать карты OpenStreetMap. gMapControl1.MapProvider = GMap.NET.MapProviders.GMapProviders.OpenStreetMap; // Указываем источник данных карты (выбран: интренети или локальный кэш) GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerAndCache; //Настройки для компонента GMap. gMapControl1.Bearing = 0; // МАСШТАБИРОВАНИЕ //Указываем значение максимального приближения. gMapControl1.MaxZoom = 18; //Указываем значение минимального приближения. gMapControl1.MinZoom = 2; //Указываем, что при загрузке карты будет использоваться //16ти кратной приближение. gMapControl1.Zoom = 17; //Устанавливаем центр приближения/удаления //курсор мыши. gMapControl1.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter; // НАВИГАЦИЯ ПО КАРТЕ //CanDragMap - Если параметр установлен в True, //пользователь может перетаскивать карту помощью правой кнопки мыши. gMapControl1.CanDragMap = true; //Указываем что перетаскивание карты осуществляется //с использованием левой клавишей мыши. По умолчанию - правая. gMapControl1.DragButton = MouseButtons.Left; //Указываем элементу управления, что необходимо при открытии карты // прейти по координатам gMapControl1.Position = new GMap.NET.PointLatLng(53.902800, 27.561759); // ОТОБРАЖЕНИЕ МАРКЕРОВ НА КАРТЕ //MarkersEnabled - Если параметр установлен в True, //любые маркеры, заданные вручную будет показаны. //Если нет, они не появятся. gMapControl1.MarkersEnabled = true; //Создаем новый список маркеров, с указанием компонента //в котором они будут использоваться и названием списка. 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(53.902542, 27.561781)); markerG.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerG); //Текст отображаемый при наведении на маркер. markerG.ToolTipText = "Объект №1"; //Инициализация нового КРАСНОГО маркера, с указанием его координат. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed markerR = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed( //Указываем координаты new GMap.NET.PointLatLng(53.902752, 27.561294)); markerR.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapBaloonToolTip(markerR); //Текст отображаемый при наведении на маркер. markerR.ToolTipText = "Объект №2"; //Добавляем маркеры в список маркеров. //Зеленый маркер markersOverlay.Markers.Add(markerG); //Красный маркет markersOverlay.Markers.Add(markerR); //Добавляем в компонент, список маркеров. gMapControl1.Overlays.Add(markersOverlay); // СОБЯТИЯ ПО КАРТЕ ! gMapControl1.MouseClick += gMapControl1_MouseClick; }
// add test route private void button3_Click(object sender, EventArgs e) { MapRoute route = GMaps.Instance.GetRouteBetweenPoints(start, end, false, (int) MainMap.Zoom); if(route != null) { // add route GMapRoute r = new GMapRoute(route.Points, route.Name); r.Color = Color.Blue; routes.Routes.Add(r); // add route start/end marks GMapMarker m1 = new GMapMarkerGoogleRed(start); m1.ToolTipText = "Start: " + route.Name; m1.TooltipMode = MarkerTooltipMode.Always; GMapMarker m2 = new GMapMarkerGoogleGreen(end); m2.ToolTipText = "End: " + end.ToString(); m2.TooltipMode = MarkerTooltipMode.Always; objects.Markers.Add(m1); objects.Markers.Add(m2); MainMap.ZoomAndCenterRoute(r); // testing kml support //KmlType info = GMaps.Instance.GetRouteBetweenPointsKml(start, end, false); //if(info != null) //{ //} } }
public override void OnMapMouseDoubleClick(object sender, MouseEventArgs e) { if (!_start) return; PointLatLng currentPoint = this._gMapControl.FromLocalToLatLng(e.X, e.Y); double mercatorX, mercatorY; Helper.LonLat2Mercator(currentPoint.Lng, currentPoint.Lat, out mercatorX, out mercatorY); Point2D point2D = new Point2D(mercatorX, mercatorY); _point2Ds.Add(point2D); Map map = new Map(_mapUrl); QueryParameterSet queryParameterSet = new QueryParameterSet(); queryParameterSet.ReturnContent = true; queryParameterSet.QueryOption = QuerySetting.QueryOption; queryParameterSet.ExpectCount = QuerySetting.ExceptionCount; queryParameterSet.QueryParams = new QueryParameter[QuerySetting.LayerNames.Count]; for (int i = 0; i < QuerySetting.LayerNames.Count; i++) { queryParameterSet.QueryParams[i] = new QueryParameter(); queryParameterSet.QueryParams[i].Name = QuerySetting.LayerNames[i]; } Geometry geo = new Geometry(); geo.Parts = new int[1] { _point2Ds.Count }; geo.Points = _point2Ds.ToArray(); geo.Type = GeometryType.REGION; QueryResult queryResult = null; try { queryResult = map.QueryByGeometry(_mapName, geo, SpatialQueryMode.INTERSECT, queryParameterSet); } catch (ServiceException serviceException) { MessageBox.Show(serviceException.Message); } //高亮显示查询结果。 if (queryResult != null && queryResult.Recordsets != null && queryResult.Recordsets.Length > 0) { for (int i = 0; i < queryResult.Recordsets.Length; i++) { if (queryResult.Recordsets[i] != null && queryResult.Recordsets[i].Features != null && queryResult.Recordsets[i].Features.Length > 0) { for (int j = 0; j < queryResult.Recordsets[i].Features.Length; j++) { if (queryResult.Recordsets[i].Features[j].Geometry != null && ( queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.POINT || queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.TEXT)) { double lat, lng; Helper.Mercator2LonLat(queryResult.Recordsets[i].Features[j].Geometry.Points[0].X, queryResult.Recordsets[i].Features[j].Geometry.Points[0].Y, out lng, out lat); PointLatLng pointLatLng = new PointLatLng(lat, lng); GMapMarkerGoogleRed marker = new GMapMarkerGoogleRed(pointLatLng); _highLightOverlay.Markers.Add(marker); } else if (queryResult.Recordsets[i].Features[j].Geometry != null && (queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.REGION || queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.RECTANGLE)) { if (queryResult.Recordsets[i].Features[j].Geometry.Parts != null) //queryResult.Recordsets[i].Features[j].Geometry.Parts.Length > 1) { int startIndex = 0; for (int k = 0; k < queryResult.Recordsets[i].Features[j].Geometry.Parts.Length; k++) { List<PointLatLng> regionClient = new List<PointLatLng>(); for (int n = startIndex; n < queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; n++) { double lat, lng; Helper.Mercator2LonLat(queryResult.Recordsets[i].Features[j].Geometry.Points[n].X, queryResult.Recordsets[i].Features[j].Geometry.Points[n].Y, out lng, out lat); regionClient.Add(new PointLatLng(lat, lng)); } GMapPolygonExtension hight = new GMapPolygonExtension("", regionClient, 2.0F, System.Drawing.Color.FromArgb(125, 255, 0, 0), System.Drawing.Color.FromArgb(50, 255, 0, 0)); _highLightOverlay.Polygons.Add(hight); startIndex += queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; } } } else if (queryResult.Recordsets[i].Features[j].Geometry != null && (queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.LINE)) { int startIndex = 0; for (int k = 0; k < queryResult.Recordsets[i].Features[j].Geometry.Parts.Length; k++) { List<PointLatLng> regionClient = new List<PointLatLng>(); for (int n = startIndex; n < startIndex + queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; n++) { double lat, lng; Helper.Mercator2LonLat(queryResult.Recordsets[i].Features[j].Geometry.Points[n].X, queryResult.Recordsets[i].Features[j].Geometry.Points[n].Y, out lng, out lat); regionClient.Add(new PointLatLng(lat, lng)); } GMapRouteExtension hight = new GMapRouteExtension("", regionClient, System.Drawing.Color.FromArgb(125, 255, 0, 0), 5.0F, false); _highLightOverlay.Routes.Add(hight); startIndex += queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; } } } } } } _gMapOverlay.Polygons.Clear(); _points.Clear(); _point2Ds.Clear(); flag = false; _start = false; base.OnMapMouseDoubleClick(sender, e); }
private void addpolygonmarkergrid(string tag, double lng, double lat, int alt) { try { PointLatLng point = new PointLatLng(lat, lng); GMapMarkerGoogleRed m = new GMapMarkerGoogleRed(point); m.ToolTipMode = MarkerTooltipMode.Never; m.ToolTipText = "grid" + tag; m.Tag = "grid" + tag; //ArdupilotMega.GMapMarkerRectWPRad mBorders = new ArdupilotMega.GMapMarkerRectWPRad(point, (int)float.Parse(TXT_WPRad.Text), MainMap); GMapMarkerRect mBorders = new GMapMarkerRect(point); { mBorders.InnerMarker = m; } drawnpolygons.Markers.Add(m); drawnpolygons.Markers.Add(mBorders); } catch (Exception) { } }
public override void OnMapMouseUp(object sender, MouseEventArgs e) { if (!_start) return; this._gMapOverlay.Polygons.Clear(); PointLatLng currentPoint = this._gMapControl.FromLocalToLatLng(e.X, e.Y); double mecatorStartX = 0, mecatorStartY = 0; double mecatorEndX = 0, mecatorEndY = 0; Helper.LonLat2Mercator(_startPoint.Lng, _startPoint.Lat, out mecatorStartX, out mecatorStartY); Helper.LonLat2Mercator(currentPoint.Lng, currentPoint.Lat, out mecatorEndX, out mecatorEndY); double left = mecatorStartX > mecatorEndX ? mecatorEndX : mecatorStartX; double bottom = mecatorStartY > mecatorEndY ? mecatorEndY : mecatorStartY; double right = mecatorStartX > mecatorEndX ? mecatorStartX : mecatorEndX; double top = mecatorStartY > mecatorEndY ? mecatorStartY : mecatorEndY; Rectangle2D rect = new Rectangle2D(left, bottom, right, top); Geometry geo = new Geometry(rect); geo.Type = GeometryType.REGION; //MessageBox.Show(string.Format("left:{0};bottom:{1};right:{2};top{3}", left, bottom, right, top)); //List<PointLatLng> test = new List<PointLatLng>(); //double lat1, lng1; //Helper.Mercator2LonLat(rect.LeftBottom.X, rect.LeftBottom.Y, out lng1, out lat1); //test.Add(new PointLatLng(lat1, lng1)); //Helper.Mercator2LonLat(rect.LeftBottom.X, rect.RightTop.Y, out lng1, out lat1); //test.Add(new PointLatLng(lat1, lng1)); //Helper.Mercator2LonLat(rect.RightTop.X, rect.RightTop.Y, out lng1, out lat1); //test.Add(new PointLatLng(lat1, lng1)); //Helper.Mercator2LonLat(rect.RightTop.X, rect.LeftBottom.Y, out lng1, out lat1); //test.Add(new PointLatLng(lat1, lng1)); //GMapPolygonExtension testgp = new GMapPolygonExtension("", test, 2.0F, // System.Drawing.Color.FromArgb(100, 0, 0, 255), System.Drawing.Color.FromArgb(255, 255, 0, 0)); //this._gMapOverlay.Polygons.Add(testgp); QueryParameterSet queryParameterSet = new QueryParameterSet(); queryParameterSet.ReturnContent = true; queryParameterSet.QueryOption = QuerySetting.QueryOption; queryParameterSet.ExpectCount = QuerySetting.ExceptionCount; queryParameterSet.QueryParams = new QueryParameter[QuerySetting.LayerNames.Count]; for (int i = 0; i < QuerySetting.LayerNames.Count; i++) { queryParameterSet.QueryParams[i] = new QueryParameter(); queryParameterSet.QueryParams[i].Name = QuerySetting.LayerNames[i]; } QueryResult queryResult = null; try { queryResult = _map.QueryByGeometry(_mapName, geo, SpatialQueryMode.INTERSECT, queryParameterSet); } catch (ServiceException serviceException) { MessageBox.Show(serviceException.Message); } if (queryResult != null && queryResult.Recordsets != null && queryResult.Recordsets.Length > 0) { for (int i = 0; i < queryResult.Recordsets.Length; i++) { if (queryResult.Recordsets[i] != null && queryResult.Recordsets[i].Features != null && queryResult.Recordsets[i].Features.Length > 0) { for (int j = 0; j < queryResult.Recordsets[i].Features.Length; j++) { if (queryResult.Recordsets[i].Features[j].Geometry != null && ( queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.POINT || queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.TEXT)) { double lat, lng; Helper.Mercator2LonLat(queryResult.Recordsets[i].Features[j].Geometry.Points[0].X, queryResult.Recordsets[i].Features[j].Geometry.Points[0].Y, out lng, out lat); PointLatLng pointLatLng = new PointLatLng(lat, lng); GMapMarkerGoogleRed marker = new GMapMarkerGoogleRed(pointLatLng); _highLightOverlay.Markers.Add(marker); } else if (queryResult.Recordsets[i].Features[j].Geometry != null && (queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.REGION || queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.RECTANGLE)) { if (queryResult.Recordsets[i].Features[j].Geometry.Parts != null) //queryResult.Recordsets[i].Features[j].Geometry.Parts.Length > 1) { int startIndex = 0; for (int k = 0; k < queryResult.Recordsets[i].Features[j].Geometry.Parts.Length; k++) { List<PointLatLng> regionClient = new List<PointLatLng>(); for (int n = startIndex; n < startIndex + queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; n++) { double lat, lng; Helper.Mercator2LonLat(queryResult.Recordsets[i].Features[j].Geometry.Points[n].X, queryResult.Recordsets[i].Features[j].Geometry.Points[n].Y, out lng, out lat); regionClient.Add(new PointLatLng(lat, lng)); } GMapPolygonExtension hight = new GMapPolygonExtension("", regionClient, 2.0F, System.Drawing.Color.FromArgb(125, 255, 0, 0), System.Drawing.Color.FromArgb(50, 255, 0, 0)); _highLightOverlay.Polygons.Add(hight); startIndex += queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; } } } else if (queryResult.Recordsets[i].Features[j].Geometry != null && (queryResult.Recordsets[i].Features[j].Geometry.Type == GeometryType.LINE)) { int startIndex = 0; for (int k = 0; k < queryResult.Recordsets[i].Features[j].Geometry.Parts.Length; k++) { List<PointLatLng> regionClient = new List<PointLatLng>(); for (int n = startIndex; n < queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; n++) { double lat, lng; Helper.Mercator2LonLat(queryResult.Recordsets[i].Features[j].Geometry.Points[n].X, queryResult.Recordsets[i].Features[j].Geometry.Points[n].Y, out lng, out lat); regionClient.Add(new PointLatLng(lat, lng)); } GMapRouteExtension hight = new GMapRouteExtension("", regionClient, System.Drawing.Color.FromArgb(125, 255, 0, 0), 5.0F, false); _highLightOverlay.Routes.Add(hight); startIndex += queryResult.Recordsets[i].Features[j].Geometry.Parts[k]; } } } } } } _start = false; base.OnMapMouseUp(sender, e); }
// ПРИМЕР РАБОТЫ С КАРТОЙ ! // (данный код используйте по своему усмотрению!) void SetParamsMap() { // Создание элемента, отображающего карту ! gMapControl1 = new GMapControl(); // Растягивание элемента на все окно! gMapControl1.Dock = DockStyle.Fill; // Добавление элемента this.Controls.Add(gMapControl1); // ОБЩИЕ НАСТРОЙКИ КАРТЫ //Указываем, что будем использовать карты OpenStreetMap. gMapControl1.MapProvider = GMap.NET.MapProviders.GMapProviders.OpenStreetMap; // Указываем источник данных карты (выбран: интренети или локальный кэш) GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerAndCache; //Настройки для компонента GMap. gMapControl1.Bearing = 0; // МАСШТАБИРОВАНИЕ //Указываем значение максимального приближения. gMapControl1.MaxZoom = 18; //Указываем значение минимального приближения. gMapControl1.MinZoom = 2; //Указываем, что при загрузке карты будет использоваться //16ти кратной приближение. gMapControl1.Zoom = 17; //Устанавливаем центр приближения/удаления //курсор мыши. gMapControl1.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter; // НАВИГАЦИЯ ПО КАРТЕ //CanDragMap - Если параметр установлен в True, //пользователь может перетаскивать карту помощью правой кнопки мыши. gMapControl1.CanDragMap = true; //Указываем что перетаскивание карты осуществляется //с использованием левой клавишей мыши. По умолчанию - правая. gMapControl1.DragButton = MouseButtons.Left; //Указываем элементу управления, что необходимо при открытии карты // прейти по координатам gMapControl1.Position = new GMap.NET.PointLatLng(53.902800, 27.561759); // ОТОБРАЖЕНИЕ МАРКЕРОВ НА КАРТЕ //MarkersEnabled - Если параметр установлен в True, //любые маркеры, заданные вручную будет показаны. //Если нет, они не появятся. gMapControl1.MarkersEnabled = true; //Создаем новый список маркеров, с указанием компонента //в котором они будут использоваться и названием списка. 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(53.902542, 27.561781)); markerG.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapRoundedToolTip(markerG); //Текст отображаемый при наведении на маркер. markerG.ToolTipText = "Объект №1"; //Инициализация нового КРАСНОГО маркера, с указанием его координат. GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed markerR = new GMap.NET.WindowsForms.Markers.GMapMarkerGoogleRed( //Указываем координаты new GMap.NET.PointLatLng(53.902752, 27.561294)); markerR.ToolTip = new GMap.NET.WindowsForms.ToolTips.GMapBaloonToolTip(markerR); //Текст отображаемый при наведении на маркер. markerR.ToolTipText = "Объект №2"; //Добавляем маркеры в список маркеров. //Зеленый маркер markersOverlay.Markers.Add(markerG); //Красный маркет markersOverlay.Markers.Add(markerR); //Добавляем в компонент, список маркеров. gMapControl1.Overlays.Add(markersOverlay); // СОБЯТИЯ ПО КАРТЕ ! gMapControl1.MouseClick += gMapControl1_MouseClick; }
// add test route private void button3_Click(object sender, EventArgs e) { RoutingProvider rp = MainMap.MapProvider as RoutingProvider; if (rp == null) { rp = GMapProviders.GoogleMap; // use google if provider does not implement routing } MapRoute route = rp.GetRouteBetweenPoints(start, end, false, (int)MainMap.Zoom); if (route != null) { // add route GMapRoute r = new GMapRoute(route.Points, route.Name); routes.Routes.Add(r); // add route start/end marks GMapMarker m1 = new GMapMarkerGoogleRed(start); m1.ToolTipText = "Start: " + route.Name; m1.ToolTipMode = MarkerTooltipMode.Always; GMapMarker m2 = new GMapMarkerGoogleGreen(end); m2.ToolTipText = "End: " + end.ToString(); m2.ToolTipMode = MarkerTooltipMode.Always; objects.Markers.Add(m1); objects.Markers.Add(m2); MainMap.ZoomAndCenterRoute(r); } }
private void DataFrame_RowHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e) { Geometry selectedGeometry = this.DataFrame.Rows[e.RowIndex].Tag as Geometry; _highLightOverlay.Markers.Clear(); _highLightOverlay.Polygons.Clear(); _highLightOverlay.Routes.Clear(); if (selectedGeometry.Type == GeometryType.POINT || selectedGeometry.Type == GeometryType.TEXT) { double lat, lng; Helper.Mercator2LonLat(selectedGeometry.Points[0].X, selectedGeometry.Points[0].Y, out lng, out lat); PointLatLng pointLatLng = new PointLatLng(lat, lng); GMapMarkerGoogleRed marker = new GMapMarkerGoogleRed(pointLatLng); _highLightOverlay.Markers.Add(marker); } else if (selectedGeometry.Type == GeometryType.LINE) { } else if (selectedGeometry.Type == GeometryType.RECTANGLE || selectedGeometry.Type == GeometryType.REGION || selectedGeometry.Type == GeometryType.ROUNDRECTANGLE) { } }
private GMap.NET.PointLatLng CreateWayPoint(GMap.NET.PointLatLng point) { frm = new Navigation.EditWayPoint(1200, true); if (frm.Altitude == 0) { if (frm.ShowDialog() == DialogResult.Abort) return new GMap.NET.PointLatLng(); } route.Points.Add(point); UAVCommons.Navigation.WayPoint wpoint = new UAVCommons.Navigation.WayPoint(); wpoint.Longitude = point.Lng; wpoint.Latitude = point.Lat; string altstring = " ("; altstring += frm.Altitude; wpoint.IsAbsolute = frm.IsAbsolute; if (frm.IsAbsolute) { wpoint.Altitude = frm.Altitude; altstring += "M"; wpoint.AltitudeAGL = 0; } else { wpoint.AltitudeAGL = frm.Altitude; wpoint.Altitude = 0; altstring+= "M AGL"; } altstring += ")"; WayPoints.Add(wpoint); GMapMarker mymarker = new GMapMarkerGoogleRed(point); mymarker.Tag = route.Points.Count - 1; mymarker.ToolTipMode = MarkerTooltipMode.Always; mymarker.ToolTipText = "Wegpunkt " + Convert.ToString(route.Points.Count) + altstring; overlay.Markers.Add(mymarker); route.Overlay.IsVisibile = true; route.IsVisible = true; gMapControl1.UpdateRouteLocalPosition(route); gMapControl1.UpdateMarkerLocalPosition(mymarker); return point; }