SuperMap.Protocol.WFS.v1

v1.0.0和v1.1.0 版本协议的抽象类。

Inherits from

Summary
SuperMap.Protocol.WFS.v1 v1.0.0和v1.1.0 版本协议的抽象类。
Constructor
SuperMap.Protocol.WFS 给定图层的WFS协议类。
Functions
destroy 清除协议。
read 为读取新要素构造一个请求。 WFS将基本的增删改查操作分为GetFeature请求(用来读取) 和Transactions(其他操作)。
setFeatureType 动态改变要素(feature)类型。
setGeometryName 在实例化以后设置geometryName选项(option)。

Constructor

SuperMap.Protocol.WFS

给定图层的WFS协议类。

Parameters

options {Object} 可选对象,其属性将被设置到实例。

有效的options属性

url {String} 接收请求的URL。
featureType {String} 要素类型名(必要的),可以理解成数据集(不带数据 源前缀)。
featureNS {String} 要素的命名空间 (必要的,但是如果GML被解析同时 featurePrefix提供并匹配服务器端用于featureType的prefix,那它就能够被 自动检测到。).
featurePrefix {String} 要素的命名空间别名 (可选 - 只有当featureNS被提供 了才会被使用)。 默认值是 ‘feature’。可以理解成“数据源”。
geometryName {String} 几何图形属性名称。 对于WFS版本1.0默认值是 ‘the_geom’ ,对于高版本为null。当为null的时候它将被设置成read操作读 到的第一个几何图形属性名称。
multi {Boolean} 如果设置为true, 绘制的对象由多个部分组成。当多次绘 制时,程序会将绘制的要素组合成一个要素。

Functions

destroy

destroy: function()

清除协议。

read

read: function( options )

为读取新要素构造一个请求。 WFS将基本的增删改查操作分为GetFeature请求(用来读取) 和Transactions(其他操作)。

Parameters

options {Object} 除了在实例设置的选项对象以外(设置在实例的选项对象具有较高 优先级)read操作的选项对象。

使用一个配置好的协议(protocol)来获取要素,应用程序可以像下边这样做:

   //属性过滤器
  var filter = new SuperMap.Filter.Comparison({
       type:SuperMap.Filter.Comparison.EQUAL_TO,
       property:"CAPITAL",
       value:"北京"
   });

  // 空间过滤器,可以通过DrawFeature控件来获取geometry
 //     var geometry = event.feature.geometry;
 //     filter = new SuperMap.Filter.Spatial({
 //            type: SuperMap.Filter.Spatial.INTERSECTS,
 //            value: geometry
 //        });

var  protocolRead = new SuperMap.Protocol.WFS({
      version:"1.0.0",
      url:"http://localhost:8090/iserver/services/data-world/wfs100",
      featureType:"Capitals",
      featureNS:"http://www.supermap.com/World",
      featurePrefix:"World",
      geometryName:"the_geom"
  });

protocolRead.read({
    readOptions: {output: "object"},
    filter:filter,
    maxFeatures: null,
    callback: queryCompleted
});

//定义回调函数,这里将返回的要素添加到定义好的vectorLayer里边,也可以进行其他操作
function queryCompleted(resp) {
  if (resp.features) {
      for (var j=0; j<resp.features.length; j++) {
          feature = resp.features[j];
          vectorLayer.addFeatures(feature);
      }
  }
}

setFeatureType

setFeatureType: function( featureType )

动态改变要素(feature)类型。

Parameters

featureType {String} 要素类型名,可以理解成数据集(不带数据源前缀)。

setGeometryName

setGeometryName: function( geometryName )

在实例化以后设置geometryName选项(option)。

Parameters

geometryName {String} 几何图形属性名称。
destroy: function()
清除协议。
read: function( options )
为读取新要素构造一个请求。 WFS将基本的增删改查操作分为GetFeature请求(用来读取) 和Transactions(其他操作)。
setFeatureType: function( featureType )
动态改变要素(feature)类型。
setGeometryName: function( geometryName )
在实例化以后设置geometryName选项(option)。
抽象的矢量图层协议类。它不能够被直接实例化,如果要使用其实例,应该使 用它的一个实现子类。
Close