BuildingSceneLayerView

类: geoscene/views/layers/BuildingSceneLayerView
继承于:BuildingSceneLayerView LayerView Accessor
起始版本:GeoScene API for JavaScript 4.17

表示 BuildingSceneLayer 添加到 SceneView 中的 Map 后的 LayerView。BuildingSceneLayerView 负责在 SceneView 中流式传输和渲染 BuildingSceneLayer's 的要素。

BuildingSceneLayerView 包含 BuildingSceneLayer 的所有组件子层子层视图列表。BuildingSceneLayerView 没有查询方法。要查询客户端加载的功能,请使用组件子层视图上的查询方法:

// query all the loaded features
view.whenLayerView(buildingSceneLayer).then(function(buildingSceneLayerView) {
   buildingSceneLayerView.sublayerViews.forEach(function(sublayerView) {
       const query = sublayerView.createQuery();
       sublayerView.queryFeatures(query).then(function(result) {
         console.log(result.features);
       });
   });
});

BuildingSceneLayerView 可用于突出显示任何组件子层中的功能。highlight 方法将应突出显示的特征作为参数:

// on user click, select the first feature in the BuildingSceneLayer
let highlight = null;

view.on("click", function (event) {
  view.hitTest(event.screenPoint, {include: buildingSceneLayer}).then((hitTestResult) => {
    if (highlight) {
      highlight.remove();
      highlight = null;
    }
    if (hitTestResult.results.length) {
      highlight = bslv.highlight(hitTestResult.results[0].graphic);
    }
  });
});
另请参阅:

属性概览

可以设置、检索或收听任何属性。请参阅使用属性主题。
显示继承的属性 隐藏继承的属性
名称 类型 描述
String更多信息

类的名称。

更多信息Accessor
BuildingSceneLayer更多信息

正在查看的图层。

更多信息BuildingSceneLayerView
Boolean更多信息

指示图层视图是否支持 MapViewspatialReference

更多信息LayerView
Collection<BuildingComponentSublayerView>更多信息

BuildingSceneLayer 的所有组件子层的子层视图集合。

更多信息BuildingSceneLayerView
Boolean更多信息

如果图层被暂停,则值为 true(即,当范围发生变化时,图层不会重绘或更新自身)。

更多信息LayerView
Boolean更多信息

图层更新时值为 true;例如,如果它正在获取数据的过程中。

更多信息LayerView
Boolean更多信息

true 时,图层在视图中可见。

更多信息LayerView

属性详情

declaredClass Stringreadonly inherited

类的名称。声明的类名格式为 geoscene.folder.className

layer BuildingSceneLayerreadonly

正在查看的图层。

spatialReferenceSupported Booleanreadonly inherited
起始版本:GeoScene API for JavaScript 4.23

指示图层视图是否支持 MapViewspatialReference。当 false 层视图将暂停

另请参阅:

BuildingSceneLayer 的所有组件子层的子层视图集合。

示例:
view.whenLayerView(buildingSceneLayer).then(function(buildingSceneLayerView) {
   console.log(buildingSceneLayerView.sublayerViews);
});
suspended Booleanreadonly inherited

如果图层被暂停,则值为 true(即,当范围发生变化时,图层不会重绘或更新自身)。

另请参阅:
updating Booleanreadonly inherited

图层更新时值为 true;例如,如果它正在获取数据的过程中。

默认值:false

true 时,图层在视图中可见。此属性的值是从 layer.visible 继承的,除非开发人员覆盖它。如果设置了这两个属性,layerView.visible 将优先于 layer.visible

默认值:true

方法概览

显示继承的方法 隐藏继承的方法
名称 返回类型 描述
Handle更多信息

突出显示给定的要素。

更多信息BuildingSceneLayerView
Boolean更多信息

isFulfilled() 可用于验证创建类的实例是否已完成(已解决或已拒绝)。

更多信息LayerView
Boolean更多信息

isRejected() 可用于验证创建类的实例是否被拒绝。

更多信息LayerView
Boolean更多信息

isResolved() 可用于验证创建类的实例是否已解决。

更多信息LayerView
Promise更多信息

when() 一旦创建了类的实例,就可以利用它。

更多信息LayerView

方法详情

highlight(target){Handle}

突出显示给定的要素。

参数:
可选

要突出显示的要素。传递给此函数的图形必须源自 BuildigSceneLayer 的组件子层之一。

返回:
类型 说明
Handle 返回一个带有 remove() 方法的高亮处理程序,可以调用该方法来删除高亮显示。
示例:
// on user click, select the first feature in the BuildingSceneLayer
let highlight = null;

view.on("click", function (event) {
  view.hitTest(event.screenPoint, {include: buildingSceneLayer}).then((hitTestResult) => {
    if (highlight) {
      highlight.remove();
      highlight = null;
    }
    if (hitTestResult.results.length) {
      highlight = bslv.highlight(hitTestResult.results[0].graphic);
    }
  });
});
isFulfilled(){Boolean}inherited

isFulfilled() 可用于验证创建类的实例是否已完成(已解决或已拒绝)。如果满足,则返回 true

返回:
类型 说明
Boolean 指示创建类的实例是否已完成(已解决或已拒绝)。
isRejected(){Boolean}inherited

isRejected() 可用于验证创建类的实例是否被拒绝。如果被拒绝,则返回 true

返回:
类型 说明
Boolean 指示创建类的实例是否已被拒绝。
isResolved(){Boolean}inherited

isResolved() 可用于验证创建类的实例是否已解决。如果已解决,将返回 true

返回:
类型 说明
Boolean 指示创建类的实例是否已解决。
when(callback, errback){Promise}inherited

when() 一旦创建了类的实例,就可以利用它。这个方法有两个输入参数:一个 callback 函数和一个 errback 函数。callback 在类的实例加载时执行。如果类的实例无法加载,则执行 errback

参数:
callback Function
optional

当 promise 解决时调用的函数。

errback Function
optional

当 promise 失败时执行的函数。

返回:
类型 说明
Promise 返回 callback 结果的新承诺,可用于链接其他函数。
示例:
// Although this example uses MapView, any class instance that is a promise may use when() in the same way
let view = new MapView();
view.when(function(){
  // This function will execute once the promise is resolved
}, function(error){
  // This function will execute if the promise is rejected due to an error
});

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.