GIS前端编程 地图常用操作


地图操作是WebGIS应用的基本功能,如缩放、移动等操作。在实际WebGIS应用中,地图操作方式多种多样。下面主要介绍以下几种地图操作:地图背景设置、地图定位、地图级数控制、获取显示参数、图层探查、图层组控制、图层层级控制、导出图片、导出PDF、卷帘。

地图背景设置

地图背景可以用一张背景图片填充,当地图缩放的范围较大时,地图周围填充背景图片,避免出现空白,同时起到美化作用,效果如图
在这里插入图片描述
主要实现步骤如下。
(1)新建一个HTML页面,参照2.4.2节加载一幅天地图地图作为底图。
(2)在地图容器div中设置背景图片样式,即设置background-image为一张背景图片,该背景图片存储在网站的某一个目录下。
代码如下:
在这里插入图片描述

地图定位

地图定位与移动操作类似,目的是使地图自动移动到以某一个点为屏幕中心的位置。移动操作是通过鼠标交互任意移动地图,地图定位则有一个固定的目标位置,以某一个固定点为屏幕中心,将地图移动到目标位置上。地图定位功能可以调用Map类中的setView()方法实现。
使用地图定位,用户可以在当前显示级别下以某一个点为屏幕中心定位地图,也可以将地图定位到某一级别的目标位置。
本实例在天地图地图的基础上,实现地图的定位功能,主要实现步骤如下。
(1)新建一个HTML页面,加载一幅天地图地图作为底图。
(2)在地图容器的div中创建定位按钮,并为定位按钮添加相应的单击函数,在该单击函数中调用的定位方法为map.setView()。
代码如下
在这里插入图片描述

地图级数控制

地图级数控制,即根据需求更改地图视图的显示级数,用户可以通过Map类中的setView()方法实现。本实例在天地图地图的基础上,在文本框中输入参数,单击按钮后动态更改当前视图的显示级数,主要实现步骤如下。
(1)新建一个HTML页面,加载一幅天地图地图作为底图。
(2)在地图容器div中添加文本框及按钮,并为按钮添加单击事件,在该单击事件中实现地图显示级数控制的方法为map.setView()。
代码如下:
在这里插入图片描述

获取显示参数

获取显示参数,即获取当前地图视图的各种状态参数值,如当前中心、当前级数、当前地图范围、当前视口范围等。在Leaflet中可以通过Map类中的getCenter()、getZoom()、getBounds()、getSize()方法来获取这些参数。
本实例在天地图地图的基础上,通过单击按钮弹出对应的地图参数信息,主要实现步骤如下。
(1)新建一个HTML页面,
加载一幅天地图地图作为底图。
(2)在地图容器div中添加按钮,并为按钮添加单击事件,在该按钮的单击事件方法中分别调用Map类中的getCenter()、getZoom()、getBounds()、getSize()方法来获取相应的显示参数。
代码如下:
在这里插入图片描述
图层探查
图层探查,即对置于地图下方的图层进行一定范围的探查,以便用户查看到不易察觉的地理地况。
下面以Leaflet插件资源库中的插件为例,通过封装好的L.MagnifyingGlass类创建图层探查器,并设置探查图层、探查半径等参数,从而实现图层探查功能,主要实现步骤如下。
(1)新建一个HTML页面,加载一个天地图矢量图层和一个天地图影像图层。
(2)在区域中添加leaflet.magnifyingglass.css样式表和leaflet.magnifyingglass.js脚本库,插件下载地址为https://github.com/bbecquet/Leaflet.MagnifyingGlass。
(3)在加载地图的init()函数中,初始化图层探查器并将其添加到地图容器中。
代码如下:

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr Robot

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值