/// <summary> /// 拓扑点转GMap标志点 /// </summary> /// <param name="point"></param> /// <returns></returns> public GMapMarker PointToMarker(TopologyElement.Point point) { GMapMarker gMapMarker = new GMarkerGoogle(PointToMapPoint(point), GMarkerGoogleType.green); gMapMarker.ToolTipText = string.Format("ID{0}:{1},{2}", point.ID, point.Lat, point.Lon); gMapMarker.ToolTip.Foreground = Brushes.Black; gMapMarker.ToolTip.TextPadding = new Size(20, 10); return(gMapMarker); }
private GMapRoute TwoPointsToLine(TopologyElement.Point point1, TopologyElement.Point point2, string arcId) { List <PointLatLng> points = new List <PointLatLng>(); points.Add(PointToMapPoint(point1)); points.Add(PointToMapPoint(point2)); GMapRoute route = new GMapRoute(points, arcId); route.Stroke = new Pen(Color.BlueViolet, 3); return(route); }
/// <summary> /// 添加GMapMarkerImage的点 /// </summary> /// <param name="gMapMarker"></param> //private void AddMarkers(GMapMarkerImage gMapMarker) //{ markersOverlay.Markers.Add(gMapMarker); } /// <summary> /// 拓扑点转直线 /// </summary> /// <param name="point1"></param> /// <param name="point2"></param> /// <returns></returns> private GMapRoute TwoPointsToLine(TopologyElement.Point point1, TopologyElement.Point point2) { List <PointLatLng> points = new List <PointLatLng>(); points.Add(PointToMapPoint(point1)); points.Add(PointToMapPoint(point2)); GMapRoute route = new GMapRoute(points, ""); route.Stroke = new Pen(Color.Green, 3); return(route); }
private void gmap_Load(object sender, EventArgs e) { //加载谷歌中国地图 GMapProvider.TimeoutMs = 0; gmap.MapProvider = GMapProviders.GoogleChinaMap; gmap.MapProvider = GMap.NET.MapProviders.GoogleChinaMapProvider.Instance; ////加载谷歌卫星地图 //gmap.MapProvider = GMapProviders.GoogleChinaSatelliteMap; //GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerAndCache; gmap.DragButton = System.Windows.Forms.MouseButtons.Left; gmap.Zoom = 12; gmap.ShowCenter = false; gmap.MaxZoom = 24; gmap.MinZoom = 2; this.gmap.Position = new PointLatLng(39.923518, 116.539009); this.gmap.IsAccessible = false; GMapProvider.TimeoutMs = 1000; TopologyElement.Point pt = new TopologyElement.Point(); pt.Lat = 39.923518; pt.Lon = 116.539009; pt.ID = 1; }
/// <summary> /// 获得纠偏后的地理坐标点 /// </summary> /// <param name="pt">拓扑元素点</param> /// <returns></returns> private PointLatLng PointToMapPoint(TopologyElement.Point point) { double[] correctLatLng = transform(point.Lat, point.Lon); return(new PointLatLng(correctLatLng[0], correctLatLng[1])); }