v1.0.0和v1.1.0 版本协议的抽象类。
SuperMap. |
v1.0.0和v1.1.0 版本协议的抽象类。 |
Constructor | |
SuperMap. |
给定图层的WFS协议类。 |
Functions | |
destroy | 清除协议。 |
read | 为读取新要素构造一个请求。 WFS将基本的增删改查操作分为GetFeature请求(用来读取) 和Transactions(其他操作)。 |
setFeatureType | 动态改变要素(feature)类型。 |
setGeometryName | 在实例化以后设置geometryName选项(option)。 |
给定图层的WFS协议类。
options | {Object} 可选对象,其属性将被设置到实例。 |
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, 绘制的对象由多个部分组成。当多次绘 制时,程序会将绘制的要素组合成一个要素。 |
read: function( options )
为读取新要素构造一个请求。 WFS将基本的增删改查操作分为GetFeature请求(用来读取) 和Transactions(其他操作)。
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); } } }
清除协议。
destroy: function()
为读取新要素构造一个请求。 WFS将基本的增删改查操作分为GetFeature请求(用来读取) 和Transactions(其他操作)。
read: function( options )
动态改变要素(feature)类型。
setFeatureType: function( featureType )
在实例化以后设置geometryName选项(option)。
setGeometryName: function( geometryName )