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


JavaScript ArcGIS BuildingComponentSublayerView用法及代码示例


基本信息

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

类: esri/views/layers/BuildingComponentSublayerView

继承: BuildingComponentSublayerView > Accessor

自从:用于 JavaScript 4.17 的 ArcGIS API

用法说明

表示 BuildingComponentSublayer 的子层视图。子图层视图可用于查询视图中加载的要素。子层视图可以通过 BuildingSceneLayerView 上的 sublayerViews 属性访问:

// query all sublayers for features that satisfy the sql expression
let query = new Query();
query.where = "FamilyType = 'Landscape'";
view.whenLayerView(buildingSceneLayer).then(function(bslv) {
   bslv.sublayerViews.forEach(function(componentSublayerView) {
     componentSublayerView.queryFeatures(query).then(function(result) {
       console.log(result.features);
     });
   });
});

BuildingComponentSublayerView 上的查询是针对已为当前视图加载的函数执行的。这意味着一旦图层完成更新,就保证只有可见的特征可用。当意图在整个数据集中进行查询或搜索时,不应使用BuildingComponentSublayerView 上的查询方法,而应使用BuildingComponentSublayer 上的查询方法。

可以在特定的子图层视图上调用突出显示方法:

view.whenLayerView(buildingSceneLayer).then(function(bslv) {
  // get the sublayer view of the component sublayer with id 1
  const sublayerView = bslv.sublayerViews.find(function(sublayerView) {
    return sublayerView.sublayer.id === 1;
  });
  const query = sublayerView.createQuery();
  query.spatialRelationship = "contains";
  query.geometry = polygonGeometry;
  // query sublayer view
  sublayerView.queryObjectIds(query).then(function(result) {
    sublayerView.highlight(result);
  });
});

相关用法


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