当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS WFSLayerView.queryExtent用法及代码示例


基本信息

以下是所在类或对象的基本信息。

类: esri/views/layers/WFSLayerView

继承: WFSLayerView > LayerView > Accessor

自从:用于 JavaScript 4.20 的 ArcGIS API

用法说明

WFSLayerView.queryExtent函数(或属性)的定义如下:

queryExtent (query, options) {Promise<Object>}


对 layerView 中可用于绘制的要素执行 Query 并返回满足查询的要素的 Extent

已知限制

  • 空间查询与 projection engine 文档中列出的限制相同。
  • 如果 layerView 具有以下任何一项,则当前不支持空间查询SpatialReference
    • GDM 2000 (4742) - 马来西亚
    • Gusterberg (Ferro) (8042) - 奥地利/捷克共和国
    • ISN2016 (8086) - 冰岛
    • SVY21 (4757) - 新加坡

参数:

类型说明
query Query autocast
可选的
来自 Object

指定查询的属性和空间过滤器。当没有参数传递给此方法时,将返回客户端中的所有函数。要仅返回视图中可见的要素,请将查询对象中的 geometry 参数设置为视图的范围。

options Object
可选的

具有以下属性的对象。

规格:
signal

AbortSignal

可选的

可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被名为 AbortErrorError 拒绝。另请参阅AbortController,了解有关如何构建可用于传递中止信号的控制器的更多信息。

返回:

类型 说明
Promise<Object> 解析后,返回满足输入查询的要素的范围和计数。有关详细信息,请参阅下面的对象规格表。
属性 类型 说明
count Number 满足输入查询的特征数。
extent Extent 满足查询的要素的范围。

例子:

const layer = new WFSLayer({
  url: WFSUrl  // URL to a WFS service
});

view.whenLayerView(layer).then(function(layerView){
  layerView.watch("updating", function(val){
    if(!val){  // wait for the layerView to finish updating
      layerView.queryExtent().then(function(results){
        view.goTo(results.extent);  // go to the extent of all the graphics in the layerView
      });
    }
  });
});
// Expand the extent so that a feature (i.e. point feature)
// won't be off screen after the end of goTo animation.
layerView.queryExtent()
 .then(function(result) {
   const zoomScale = 16000;
   const extent = result.extent;

   extent.expand((zoomScale / view.scale) * view.resolution);
   view.goTo(extent);
});

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 WFSLayerView.queryExtent。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。