zoukankan      html  css  js  c++  java
  • c# winform GMAP.NET离线模式怎么保存和使用离线地图?

    1)GMAP.NET是开源地图控件,可以使用多个基于WEB服务的地图源:谷歌地图、微软BING地图……

    2)在你应用程序中,使用这套控件从这些地图源获取并显示地图的同时,地图数据也被保存到你的计算机上。这样,不联网时,使用地图的应用程序仍然能够使用已经保存在本计算机的地图数据。

    3)保存地图数据的过程是自动完成的,不需要你做任何编程

    4)地图数据通常保存在文件夹C:Users[用户名]AppDataLocalGMap.NET下,这个文件夹是保存地图数据默认的位置

    5)你可以将这个文件下的所有文件和文件复制到任何地方,比如,复制到D:GMap.NET下

    6)要使用离线地图,只需要:

    //如果不使用默认文件夹下的离线地图文件夹,必须设置你使用的离线地图文件夹
    mapControl1.CacheLocation = @"D:GMap.NET"
     //只使用离线地图!
    mapControl1.Manager.Mode = AccessMode.CacheOnly;

     二、http://www.cnblogs.com/luxiaoxun/p/3530341.html   

    GMap.Net开发之技巧小结

    非常感谢分享,支持你。
    有几个问题请教,在你不忙的时候能给出答案,非常感谢
    1. 我在离线地图数据包时,在gMapControl的Load事件初始化地图
    new Thread(()=>GMap.Instance.ImportFromGMDB(AppDomain.CurrentDomain.BaseDirectory+"MapData\Data_Terrain.gmdb")).Start();
    gMapControl1.Manager.Mode = GMap.NET.AccessMode.ServerOnly;
    //设置控件的地图来源
    gMapControl1.MapProvider = GMap.NET.MapProviders.GMapProviders.GoogleChinaTerrainMap;
    //设置控件显示的当前中心点位置
    gMapControl1.Position = new GMap.NET.PointLatLng(21.0,116);

    Mode 设置为 ServerOnly 时,地图都是异常,Exception:未能解析远程名称:mt1.google.cn 等等同类异常。
    如果:Mode 设置为 CacheOnly 时,地图正常展示。

    ==---===

    1、Manager.Mode,Mode 设置为 ServerOnly 时,gmap需要联网获取网络服务上的地图图片,出现Exception说明它没有正确获取到。Mode 设置为 CacheOnly 时,访问的是本地离线的,默认是在mapControl.CacheLocation这个路径上的gmdb,不过你通过GMap.Instance.ImportFromGMDB这个接口已经设置了本地离线的gmdb数据包。

    发现自己的不足,善于利用找到的方法去扬长避短。行动起来。
  • 相关阅读:
    十四、自定义构建购物计算组件&表单组件
    从微信小程序到鸿蒙js开发【04】——list组件
    HarmonyOS应用开发-Component体系介绍(一)
    HarmonyOS单模块编译与源码导读
    烧录失败导致boot无法加载的解决措施,再也不怕烧成砖了
    从微信小程序到鸿蒙js开发【03】——fetch获取数据&简单天气预报
    抛弃床的温暖,只为了它丨云库一款跑在鸿蒙系统上的应用丨篇二
    swift 弹窗
    Swift字符串常用操作总结
    swift 随机数
  • 原文地址:https://www.cnblogs.com/rechen/p/5090726.html
Copyright © 2011-2022 走看看