Skip To ContentArcGIS for DevelopersSign In Dashboard

BuildingSceneLayerView

Class: esri/views/layers/BuildingSceneLayerView
Inheritance: BuildingSceneLayerView LayerView Accessor
Since: ArcGIS API for JavaScript 4.17

Represents the LayerView of a BuildingSceneLayer after it has been added to a Map in a SceneView. BuildingSceneLayerView is responsible for streaming and rendering a BuildingSceneLayer's features in the SceneView.

The BuildingSceneLayerView contains a list of sublayer views for all the component sublayers of a BuildingSceneLayer. The BuildingSceneLayerView doesn't have query methods. To query the features loaded on the client, use the query methods on the component sublayer views:

// 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);
       });
   });
});

The BuildingSceneLayerView can be used to highlight features in any of the component sublayers. The highlight method takes as arguments the features that should be highlighted:

// 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);
    }
  });
});
See also:

Property Overview

Any properties can be set, retrieved or listened to. See the Working with Properties topic.
NameTypeSummaryClass
String

The name of the class.

more details
more detailsAccessor
BuildingSceneLayer

The layer being viewed.

more details
more detailsBuildingSceneLayerView
Collection<BuildingComponentSublayerView>

Collection of sublayer views for all the component sublayers of the BuildingSceneLayer.

more details
more detailsBuildingSceneLayerView
Boolean

Value is true if the layer is suspended (i.e., layer will not redraw or update itself when the extent changes).

more details
more detailsLayerView
Boolean

Value is true when the layer is updating; for example, if it is in the process of fetching data.

more details
more detailsLayerView
Boolean

When true, the layer is visible in the view.

more details
more detailsLayerView

Property Details

declaredClass Stringreadonly inherited

The name of the class. The declared class name is formatted as esri.folder.className.

layer BuildingSceneLayerreadonly

The layer being viewed.

Collection of sublayer views for all the component sublayers of the BuildingSceneLayer.

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

Value is true if the layer is suspended (i.e., layer will not redraw or update itself when the extent changes).

updating Booleanreadonly inherited

Value is true when the layer is updating; for example, if it is in the process of fetching data.

Default Value:false

When true, the layer is visible in the view. Set this property to false to hide the layer from the view.

Default Value:true

Method Overview

NameReturn TypeSummaryClass
Handle

Highlights the given feature(s).

more details
more detailsBuildingSceneLayerView
Boolean

isFulfilled() may be used to verify if creating an instance of the class is fulfilled (either resolved or rejected).

more details
more detailsLayerView
Boolean

isRejected() may be used to verify if creating an instance of the class is rejected.

more details
more detailsLayerView
Boolean

isResolved() may be used to verify if creating an instance of the class is resolved.

more details
more detailsLayerView
Promise

when() may be leveraged once an instance of the class is created.

more details
more detailsLayerView

Method Details

highlight(target){Handle}

Highlights the given feature(s).

Parameter:
optional

The feature(s) to highlight. The graphics that are passed to this function must originate from one of the component sublayers of the BuildigSceneLayer.

Returns:
TypeDescription
HandleReturns a highlight handler with a remove() method that can be called to remove the highlight.
Example:
// 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() may be used to verify if creating an instance of the class is fulfilled (either resolved or rejected). If it is fulfilled, true will be returned.

Returns:
TypeDescription
BooleanIndicates whether creating an instance of the class has been fulfilled (either resolved or rejected).
isRejected(){Boolean}inherited

isRejected() may be used to verify if creating an instance of the class is rejected. If it is rejected, true will be returned.

Returns:
TypeDescription
BooleanIndicates whether creating an instance of the class has been rejected.
isResolved(){Boolean}inherited

isResolved() may be used to verify if creating an instance of the class is resolved. If it is resolved, true will be returned.

Returns:
TypeDescription
BooleanIndicates whether creating an instance of the class has been resolved.
when(callback, errback){Promise}inherited

when() may be leveraged once an instance of the class is created. This method takes two input parameters: a callback function and an errback function. The callback executes when the instance of the class loads. The errback executes if the instance of the class fails to load.

Parameters:
callback Function
optional

The function to call when the promise resolves.

errback Function
optional

The function to execute when the promise fails.

Returns:
TypeDescription
PromiseReturns a new promise for the result of callback that may be used to chain additional functions.
Example:
// Although this example uses MapView, any class instance that is a promise may use when() in the same way
var 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
});

API Reference search results

NameTypeModule
Loading...