new QueryFeaturesInLayersOptions(options)
多图层要素查询参数。支持的服务类型:IGS要素服务、IGS地图服务、IGS地图文档mrfs 、IGS矢量图层gdbp 、 IGS场景服务、ArcGIS要素服务
| Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
构造参数
|
Example
多图层要素查询使用示例
1.支持的服务类型
const mapServer = new MapServer({
url: "http://{ip}:{port}/igs/rest/services/{serverName}/MapServer",
});
const featureServer = new FeatureServer({
url: "http://{ip}:{port}/igs/rest/services/{serverName}/FeatureServer",
});
const sceneServer = new SceneServer({
url: "http://{ip}:{port}/igs/rest/services/{serverName}/SceneServer",
});
const featureServerV1 = new FeatureServer({
url: "http://{ip}:{port}/igs/rest/mrfs/docs/{serverName}",
});
const featureServerGDBP = new FeatureServer({
url: "http://{ip}:{port}/igs/rest/mrfs/layer",
});
const arcgisFeatureServer = new ArcGISFeatureServer({
url: "http://{ip}:{port}/arcgis/rest/services/{serverName}/FeatureServer",
});
2.调用方法,以要素服务举例,其他服务跟要素服务调用方法一致
2.1 几何过滤
const queryFeaturesInLayersOptions = {
layerDefs: [
{
layerId: "0",
where: `1=1`,
// 对于部分服务需要传入gdbp
// gdbp: "gdbp://MapGISLocalPlus/湖北省/ds/行政区/sfcls/湖北省市级区划",
},
{
layerId: "1-0",
where: `1=1`,
// 对于部分服务需要传入gdbp
// gdbp: "gdbp://MapGISLocalPlus/湖北省/ds/行政区/sfcls/湖北省市级区划",
},
],
geometry: new Extent({
xmin: 12579102.459639914,
ymin: 3375646.034919311,
xmax: 12690421.950433187,
ymax: 3503549.8435043753,
spatialReference: new SpatialReference("EPSG:3857"),
}),
geometryPrecision: 3,
f: "json",
}
featureServer.queryFeaturesInLayers(queryFeaturesInLayersOptions)
2.2 返回信息
const queryFeaturesInLayersOptions = {
layerDefs: [
{
layerId: "0",
where: `1=1`,
// 对于部分服务需要传入gdbp
// gdbp: "gdbp://MapGISLocalPlus/湖北省/ds/行政区/sfcls/湖北省市级区划",
},
{
layerId: "1-0",
where: `1=1`,
// 对于部分服务需要传入gdbp
// gdbp: "gdbp://MapGISLocalPlus/湖北省/ds/行政区/sfcls/湖北省市级区划",
},
]
}
featureServer.queryFeaturesInLayers(queryFeaturesInLayersOptions).then((res)=>{
const data = res.data
const layers = data.layers || []
layers.forEach((layer) => {
const featureSet = layer.featureSet
})
})
Members
-
distanceNumber
-
几何缓冲的距离,需要保证和几何坐标系一致。geometry为Point、LineString时有效(若数据源为大数据PG数据,且geometryType为Point或LineString时为必填数据), ArcGIS服务不支持此参数
-
fString
-
查询返回的数据格式。支持"json" "geojson" "csv"(csv仅IGS要素服务、IGS地图服务、IGS场景服务、IGS资源服务支持)、"pbf"(pbf仅ArcGIS服务支持)返回格式
-
failurequeryFailure
-
查询失败回调函数,若使用Promise方式则不必填写
-
geometryGeometry undefined
-
要素查询几何条件。目前IGS支持Point|LineString|Circle|Extent|Polygon|MultiPolygon几种类型,ArcGIS支持Point|MultiPoint|LineString|MultiLineString|Extent|Polygon几种类型
-
geometryPrecisionNumber undefined
-
返回要素几何信息中坐标xy的精度
-
headersObject undefined
-
请求头参数
-
inSrsSpatialReference Object String undefined
-
输入几何空间参考系,仅当为IGS要素服务、IGS地图服务、IGS场景服务、IGS资源服务、ArcGIS地图服务、ArcGIS要素服务时,此参数生效, 默认会以geometry的spatialReference作为输入几何的空间参考系。IGS1.0接口需要保证输入的数据空间参考系和数据源空间参考系信息一致,此参数设置无效,仅能通过outSrs设置输出数据的空间参考系
-
layerDefsArray.<LayerDef> Array.<Object> undefined
-
多图层的属性条件,包括layerId、where、outFields。对于IGS地图文档mrfs 、IGS矢量图层gdbp服务,此参数为必传参数,由于接口限制,可以传入多个layerDef,但是where、outFields属性只能支持第一个def内的参数,对于IGS矢量图层gdbp来说,需要传入gdbp代替layerId。 当值为空时,查询所有图层,并当为拉框查询时,自动过滤不需要不需要查询的图层,示例:"[{ "layerId":"0-0","where": "name='中国'", "outfields": "field1,field2"}]"。ArcGIS服务对于where条件需要输入尽量不要为空,部分版本不传入where条件查询会报错
-
methodString
-
请求类型
-
objectIdsString
-
仅当服务为IGS地图文档mrfs 、IGS矢量图层gdbp 时,此值生效。过滤id,多个用英文逗号分隔(参数优先级很高,可能导致其它筛选条件失效)
-
orderByFieldsString
-
排序字段,格式: fieldName [ASC|DESC]。例如
Name ASC,Age DESC,当为IGS服务时,由于服务接口限制,仅输入的第一个字段生效,即Name ASC -
outSrsSpatialReference Object String undefined
-
输出几何空间参照系,优先推荐使用wkid,不同服务兼容性更高
-
resultRecordCountNumber
-
分页参数:结果返回条数,默认20,ArcGIS服务不支持此参数
-
returnAttributeBoolean
-
是否返回属性,默认为true,ArcGIS服务不支持此参数
-
returnCountOnlyBoolean
-
仅当为IGS要素服务、IGS地图服务、IGS场景服务、IGS资源服务、ArcGIS地图服务、ArcGIS要素服务时,此参数生效,是否只返回条数,默认为false
-
returnGeometryBoolean
-
是否返回几何,默认为true
-
returnIdsOnlyBoolean
-
仅当为IGS要素服务、IGS地图服务、IGS场景服务、IGS资源服务、ArcGIS地图服务、ArcGIS要素服务时,此参数生效。是否只返回id,默认为false
-
returnStyleBoolean
-
是否返回图形参数信息,默认为false,ArcGIS服务不支持此参数
-
returnZNumber
-
是否返回Z轴,默认为false
-
spatialRelSpatialRelation String
-
几何条件的空间判定规则,Intersects(相交)、EnvelopeIntersects(外包矩形相交)、Contains(包含)、Disjoint(相离,ArcGIS服务不支持)
-
successqueryLayerInfoSuccess
-
查询成功回调函数,若使用Promise方式则不必填写
-
supportArc3Boolean
-
仅当为IGS要素服务、IGS地图服务时此参数生效。是否返回弧段数据,默认为false