Java+vue天地图离线开发

一、应用场景:

基于天地图开发时需要远程调用天地图的js、css以及各层级瓦片数据,但是在内网环境或者非互联网环境下无法远程访问资源,下面详细介绍本人离线开发的步骤。


二、天地图资源下载

1.天地图key申请

进入天地图网址天地图API

点击“控制台”进行账号注册,注册成功后,点击右上角“创建新应用”,得到Key名称。

2.天地图js、css资源下载

需要下载的天地图静态资源包括:

tiandituApi.js(http://api.tianditu.gov.cn/api?v=4.0&tk=

components.js(https://api.tianditu.gov.cn/v4.0/components.js

military.js(https://api.tianditu.gov.cn/v4.0/military.js

service.js(https://api.tianditu.gov.cn/v4.0/service.js

tianditu4.0.css(http://api.tianditu.gov.cn/v4.0/css/tianditu4.0.css

将四个文件的代码复制到本地。

3.天地图瓦片数据下载

在天地图官网,点击“地图API”。

网站最下面有个瓦片数据连接地址。

但是不同的瓦片有不同的下载地址,上两张图中有瓦片的分类,包括:矢量底图、矢量注记、影像底图等等,不同的瓦片图不同的下载地址。

如果根据瓦片地址一个个去下载,工作量巨大,而且各个点位不清晰,无法采用人工方式去下载,我们可以使用java代码去统一抓取瓦片数据。

java抓取瓦片代码:

public class TileDownload {

    //不同的瓦片采用不同的下载地址,一般用的比较多的还是矢量地图
    //矢量(行政) - 等经纬度
    public static String vec_c = "http://{server}.tianditu.gov.cn/vec_c/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=c&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk={tk}";
    //矢量(行政) - 墨卡托
    public static String vec_w = "http://{server}.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk={tk}";
    //矢量注记(行政) - 等经纬度
    public static String cva_c = "http://{server}.tianditu.gov.cn/cva_c/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=c&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk={tk}";
    //矢量注记(行政) - 墨卡托
    public static String cva_w = "http://{server}.tianditu.gov.cn/cva_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk={tk}";

    //影像 - 等经纬度
    public static String img_c = "http://{server}.tianditu.gov.cn/img_c/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=c&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk={tk}";
    //影像 - 墨卡托
    public static String img_w = "http://{server}.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk={tk}";
    //影像注记 - 等经纬度
    public static String cia_c = "http://{server}.tianditu.gov.cn/cia_c/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cia&STYLE=defau
  • 23
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用Vue地图(TianDiTu)来搭建离线服务。以下是一些基本步骤: 1. 准备工作:首先,确保你已经安装了Vue以及相关的开发环境。然后,你需要到地图(TianDiTu)的官网注册账号并获取API密钥。 2. 创建Vue项目:使用Vue CLI创建一个新的Vue项目。打开终端,运行以下命令: ``` vue create offline-service ``` 按照提示进行配置,选择你需要的特性。 3. 安装地图组件:在Vue项目的根目录中,运行以下命令来安装地图Vue组件: ``` npm install @turf/turf vue-tianditu ``` 这将安装地图Vue组件以及用于地理空间计算的Turf.js库。 4. 配置地图组件:在Vue项目的`main.js`文件中,添加以下代码来引入和配置地图组件: ```javascript import Vue from 'vue' import VueTianditu from 'vue-tianditu' Vue.use(VueTianditu, { key: '你的API密钥', }) ``` 确保替换 `'你的API密钥'` 为你在地图官网获取的API密钥。 5. 使用地图组件:在Vue项目中的组件中使用地图组件。例如,在`App.vue`中添加以下代码来显示一个简单的地图: ```html <template> <div id="app"> <vue-tianditu> <!-- 添加其他地图相关的组件或标记等 --> </vue-tianditu> </div> </template> ``` 你可以根据需要在`<vue-tianditu>`标签内添加其他地图相关的组件或标记等。 6. 构建和运行:完成上述配置后,你可以使用Vue CLI提供的命令来构建和运行你的离线服务应用: ``` npm run serve ``` 这将启动一个开发服务器,并在浏览器中显示你的应用。 以上是一个简单的示例,你可以根据具体需求使用更多地图提供的功能和组件来搭建离线服务。希望能对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值