OpenLayers学习——Style及StyleMap(三)

本节使用官网例子学习OpenLayers绘图是使用过滤器,即按照指定的规则进行符号化。主要代码如下:



在上面例子中,主要实现的按照指定规则进行符号的话的核心类是在构造Style时候使用了一组Rule,该类在OpenLayers.Rule 中,这个类用于按照指定规则绘图的SLD样式。

SLD是图层样式的描述文件格式,是OGC指定的图层样式标准,可以查看官方文档,SLD文件可以使用QGIS、UDig等一些开源软件直接从图层样式中导出,不需要手动编辑。

在Rule类中主要有两个重要的属性,(1)规则(2)样式(其实内部实现的并不直接是简单的样式)
在OpenLayers中实现规则的类有好几个,主要在Filter包下面,这里使用的OpenLayers.Filter.Comparison就是其中一种。

主要是比较过滤,即,使用指定列的值与给定值进行比较运算,比较运算符有以下几种:"==" "!=" "<" ">" "<=" ">=" ".." "~" "NULL";

查看源代码,在Comparison主要三个重要属性:“type”,"property","value",type就是上面比较运算符,property是Feature的一个Attribute的Name,value就是要判断的条件的值。

上面例子中的第一个Rule就是告诉绘图引擎,当该图层的某个Feature的topic的值等于point_invisible的时候使用对应的符号进行绘图。



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