经GML解析器解析后,依据featureType分类
在实际中有这样的需求:一次对多个要素类别(featureType)进行查询,要求对返回的要素集能按类别进行查看。
记得很多久以前满足这个需求很麻烦,用GML解析器解析后拿到要素数组,无法区分从哪个类别查询出来的,得分多次异步请求进行查询,再分别显示。
现在的OpenLayers.Format.GML解析器将GML解析成要素后会添加gml属性,其中有三个小项:featureType,featureNS,featureNSPrefix。好了,我们可以简单的遍历下整要素数组将不同的featureType的要素分捡出来。
OpenLayers.Layer.ArcGIS93Rest的图层透明设置
ArcGIS93Rest图层构造参数params可以设置"TRANSPARENT":true,将内容设置成透明。但是比较奇怪的是一旦这样做, OpenLayers会将此图层强行将此图层做为覆盖图层加载。难道在ArcGIS中设置为透明的图层必须做为覆盖层吗?这也太勉强了吧。
//layer is transparent
if (<strong>this.params.TRANSPARENT &&
this.params.TRANSPARENT.toString().toLowerCase() == "true"</strong>) {
// unless explicitly set in options, make layer an overlay
if ( (options == null) || (!options.isBaseLayer) ) {
this.isBaseLayer = false;
}
// jpegs can never be transparent, so intelligently switch the
// format, depending on the browser's capabilities
if (this.params.FORMAT == "jpg") {
this.params.FORMAT = OpenLayers.Util.alphaHack() ? "gif"
: "png";
}
}