^ 关注我,带你一起学GIS ^
注:当前使用的是 ol[9.2.4] 版本,天地图使用的
key
请到天地图官网申请,并替换为自己的key
前言
❝
OpenLayers 提供了许多默认的交互操作,方便用户与地图进行交互。这些默认操作为用户提供了丰富的交互方式,能够满足大多数地图查看和分析的需求。开发者还可以根据具体的应用场景对这些操作进行自定义或扩展,以实现更符合用户需求的功能
以下是一些常见默认操作。
1. 常规操作
平移
平移是最基础的操作之一,用户只需通过按住鼠标左键进行拖动,来改变地图的视图位置,查看地图的不同区域。
双击放大
用户可以在地图上任意位置双击左键实现地图放大操作。
滚轮缩放
用户向前滑动滚轮实现地图放大,向后滑动滚轮实现地图缩小。
2. 组合操作
按住Shift键,拖动鼠标左键,可以实现矩形放大。 按住shift键,拖动鼠标右键,可以实现矩形放大。 按住Alt+Shift键,拖动鼠标可以实现地图旋转。
3. 默认地图控件
ol.control.defaults
为默认地图控件对象,在该对象中默认开启了属性attribution
、旋转rotate
地图控件。可以通过defaults
方法调整地图控件显示或者隐藏,该方法接收一个地图控件配置对象。地图控件初始布局
如若不需要显示地图控件,可将其对应值设置为false
。
// 地图默认控件
controls: ol.control.defaults.defaults({
zoom: true, // 缩放控件
attribution: false, // 属性控件
rotate: false // 旋转控件
})
4. 默认交互控件
默认情况下,地图中包含的一组交互。通过在构造函数选项中将适当的选项设置为false
,可以排除特定的交互,但交互的顺序是固定的。如果你想为交互指定不同的顺序,需要在创建Map
实例之前创建自己的Interaction
实例,并按照自己想要的顺序将它们插入到Collection
中。按顺序,默认的交互控件是:DragRotate、DoubleClickZoom、DragPan、PinchRotate、PinchZoom KeyboardPan、KeyboardZoom、MouseWheelZoom、DragZoom
。
交互控件默认处于开启状态。
如若不需要使用交互控件,可将其对应值设置为false
。如需要禁止地图双击放大操作,则将doubleClickZoom
值设置为false
。
// 默认交互控件
interactions: ol.interaction.defaults.defaults({
altShiftDragRotate: true, // Alt+Shift拖动旋转
doubleClickZoom: true, // 双击放大
keyboard: true, // 开启键盘
mouseWheelZoom: true, // 滚轮缩放
shiftDragZoom: true, // Shift拖动缩放
pinchRotate: true, // pinch(手势)旋转
pinchZoom: true, // pinch(手势)缩放
dragPan: false // 平移
})
注:keyboard
值虽然设置为true
,但测试中发现键盘事件并未起作用
❝
OpenLayers示例数据下载,请在公众号后台回复:ol数据
全国信息化工程师-GIS 应用水平考试资料,请在公众号后台回复:GIS考试
❝
GIS之路公众号已经接入了智能助手,欢迎大家前来提问。
欢迎访问我的博客网站-长谈GIS:
http://shanhaitalk.com
都看到这了,不要忘记点赞、收藏+关注 哦!
本号不定时更新有关 GIS开发 相关内容,欢迎关注