地图瓦片

百度地图api离线版所需地图瓦片获取(JAVA类方式)

2017-06-14  本文已影响1011人  忧郁的冥

在一些特殊WEB项目中,服务器不允许通过api的形式访问外部接口,故需要使用离线方式实现地图相关应用,具体的实现方法网上有很多案例参考案例。案例中的demo经过测试可用,但对于瓦片地图资源方面描述的比较模糊。

1.通过地图下载器获取

网络上有多种地图下载器,如BIGMAP,水经注地图下载器,全能地图下载器等。经过多种下载器的测试之后,只有使用全能电子地图下载器下载的百度地图瓦片在命名规则上符合百度api的要求。

这一点在案例中也没有说明,案例所使用的瓦片地图需要按照Z(地图级别),X(横轴),Y(纵轴)。三级目录存放,且横轴目录文件夹需要按照从左至右的形式递增,而纵轴目录的文件则需按照从下至上的规律名称,最重要的是百度地图的瓦片是按照最高级及全球地图为起始瓦片进行的循序命名,所以当你只需要获取某些地区的瓦片时如果命名不符合要求则无法正常显示地图.通过其他下载器下载的地图瓦片或谷歌地图的瓦片都无法实现这一要求。

目录结构例图.png

全能电子地图下载器网上大多都是v1.96版的破解版本,实测可以正常下载谷歌地图瓦片,但是下载百度地图瓦片只能显示黑底白点图片.而使用v3.7版的则需进行注册,试用版所下载的瓦片带有明显水印,故最后我没有选择这种方式。

【注意】案例中的瓦片地图只支持jpg格式,而通过全能电子地图下载器下载的为png格式需要更改后缀名。

2.使用java形式自行下载

2.根据图片存储规则自动生成目录

    File file =new File(localPath);    
    //如果文件夹不存在则创建    
    if  (!file .exists()  && !file .isDirectory())      
    {       
        System.out.println("//目录不存在");  
        file .mkdir();
        System.out.println("//创建目录:"+localPath);
    } else   
    {  
        System.out.println("//目录存在");  
    }
上一篇 下一篇

猜你喜欢

热点阅读