Tag: gmap.net

如何在c#中添加多个制作者?

我有一个带有GPS坐标列表的文本文件。 我试图在文档的每个坐标上放置一个标记。 问题在于文档的长度发生变化以及我拥有它的方式,标记会被每次迭代所取代。 如何为每个纬度/经度点添加标记? 这是相关的代码: private GMapOverlay gMapOverlay; private GMapMarker marker; gmap.MapProvider = GMap.NET.MapProviders.GoogleMapProvider.Instance; gmap.MinZoom = 2; gmap.MaxZoom = 25; gmap.Zoom = 5; gmap.ShowCenter = false; gmap.DragButton = MouseButtons.Left; //setup the map overlay for displaying routes/points gMapOverlay = new GMapOverlay(“Path”); gmap.Overlays.Add(gMapOverlay); gMapOverlay.Markers.Clear(); gMapOverlay.Routes.Clear(); //GMarkerGoogle marker = new GMarkerGoogle(new PointLatLng(0, 0), GMarkerGoogleType.green); marker = new GMarkerGoogle(new […]

在GMap.net中缩放和平移

我正在尝试使用WPF内置事件启用GMap.Net控件多点触控,但我没有成功。 我发现了一系列关于多点触控的文章,就像这个和这个一样。 在所有这些中, ManipulationContainer是一个canvas和可移动控件放在它上面,但在GMap问题中, ManipulationContainer是GMapControl并且无法控制它。 我如何使用e.ManipulationDelta数据进行缩放和移动? GMapControl具有Zoom属性,通过增加或减少它,您可以放大或缩小。

GMap .net离线

我在c#(伟大的API,顺便说一句)中使用Gmap开发应用程序,不要与google-map API混淆,从那以后我做了一些非常酷且有用的东西。 我的问题是我的一些客户没有互联网连接,这就是为什么我需要能够离线显示背景(地图)。 我以前使用属性GMap.NET.AccessMode.ServerAndCache; 从服务器获取我的数据,现在我希望能够使用带有完整缓存的GMap.NET.AccessMode.CacheOnly 。 让他们加载带有连接的缓存以准备离线使用不是一种选择,PC永远不会连接到互联网。 经过一番研究,我了解到OpenStreetMap是唯一允许我免费使用地图的开源地图(这很好,因为它们有非常好的地图)。 我下载了20GB的欧洲地图,但我不知道如何将其指定为缓存(我知道如何找到缓存文件夹)。 大多数时候,我的谷歌搜索向我展示了人们试图创建一个虚拟sqlite服务器,其中包含通过localhost访问的数据库中的所有地图块,但老实说,我认为这非常复杂,我想知道是否有人有想法允许我离线使用这些地图或者这个api的文档链接,不可能在网上找到(我找到了消息来源,但几乎没有评论也没有解释)。 提前谢谢,抱歉我的英语不好。 réponsesenfrançaisbundvenues。

GMap.Net标记最初位置不正确

我使用GMap添加了一个标记,并指定了lat / long。 当应用程序启动时,标记放置在错误的位置(在GMap控件的中心),然后当我缩放时,它会转到指定的坐标。 这是GMap中的错误还是我做错了什么? 这是代码。 GMapOverlay markersOverlay, mo2; GMarkerGoogle marker, marker5; GMapOverlay polyOverlay; List points; GMapRoute gr; Graphics g; bool start = true; double move = .0001; //double move = 1; double lt = 73, lg = -180; // double lt = 29, lg = -93; public Form1() { AllocConsole(); InitializeComponent(); try { System.Net.IPHostEntry […]

Gmap.Net Marker位置不正确,但当地图缩放时,标记会移到正确的位置

我有一个带有Gmap.Net控制器的Windows窗体应用程序 ,我想要做的是根据提供位置的外部源添加标记。 问题是当我添加标记时,最初是在不正确的位置绘制的,但是在我缩小之后它会到达正确的位置。 所以这就是我到目前为止所得到的: 我的地图控制器声明位于巴拿马巴拿马。 private void button2_Click(object sender, EventArgs e) { //Layer count is just a variable to add new OverLays with different names var markersOverlay = new GMapOverlay(“markers” + layerCount); //Marker far away in Quebec, Canada just to check my point in discussion var marker = new GMarkerGoogle(new PointLatLng(58.0032, -79.4957), GMarkerGoogleType.red_small); markersOverlay.Markers.Add(marker); gmap.Overlays.Add(markersOverlay); […]

如何在C#中使用GMAP.NET在MAP上绘制圆圈

我在c#中使用GMAP.NET。 我能够在表单上显示地图,现在我正在尝试通过单击一个certian点来绘制CIRCLE鼠标,保持鼠标左键并将鼠标拖动到特定位置。 一旦绘制了圆形,我想从中心点获得半径,我确信GMAP能够做到这一点。 我正在使用Opentstreet地图。 我无法在function上实现这一点,任何使用GMAP控件的人都会与一些可行的代码分享您的经验。 谢谢