OpenLayers学习笔记中级篇(六、地图交互)

1、Feature选取之选中样式



                  
    
    
    
    修改矢量地图
    
    



	

大家可以自己运行看一下效果!

2、Feature选取之条件过滤

涉及到选取,自然会有各种条件用于过滤,比如是鼠标左键单击,还是双击,是可以选取地图上的任意feature,还是某一类的feature。 对于这些需求,ol.interaction.Select都能满足,在API的文档里面就有相关的参数设置,下面就是一些简单的使用示例。

一、改变默认的单击选取方式

默认情况下,是支持鼠标左键单击选取feature的,在地图上其他地方点击一下,就取消选取了,但这并不是定死的选取方式,你完全可以自定义。 比如鼠标移动到feature上,就选取了,试试:



                  
    
    
    
    修改矢量地图
    
    



	

大家可以测试一下,在我们把鼠标移动feature时会改变feature的颜色,移开时会回复原来的颜色!

二、我们也可以直接对feature过滤



                  
    
    
    
    修改矢量地图
    
    



	

先看一下效果:

OpenLayers学习笔记中级篇(六、地图交互)_第1张图片

我们只希望用户能选取圆形,而不能选取五星,而上面的功能完美契合!

3、取消feature选中

取消选中有两种方式, 一种是在界面上以交互的方式取消选中,一种是用代码的方式取消选中,下面就分别介绍一下:

交互方式取消选中

如果是采用的默认的方式选取feature,即使用鼠标左键单击feature就可选取。那么这种交互方式下,要取消选中,则只需要同样使用鼠标左键,在地图其他地方单击一下,就可取消选中。 

如果采用的是自定义的方式选取feature,那么要取消选中,交互方式还是一样的,只要目标不再是已选中的feature就行,就能取消选中。 比如要素选取之条件过滤中,采用了自定义的鼠标移入feature就可选中,要取消选中,只需要把鼠标移出feature即可。

代码方式取消选中



                  
    
    
    
    修改矢量地图
    
    



	

大家可以测试一下,应该是没有问题的!至此,地图上元素的选取相关的知识点都介绍完毕,希望能逐个掌握并融会贯通于实际应用中。下一节我们来学习地图开发中常用的功能,也就是咱们的高级篇了,大家加油!

 

你可能感兴趣的:(OpenLayers,WebGIS)