noDataTileBehavior property

NoDataTileBehavior noDataTileBehavior

Controls how a tile request that returns 'NoData' is resampled.

Zooming in can result in tile requests with no tiles at the requested level of detail. In this case, there are options that control what to display where the tile should be including:

  • NoDataTileBehavior.upSample - Resample the pixels from a lower level of detail tile. This can result in pixelation or blurriness. This is the default behavior for operational layers.
  • NoDataTileBehavior.blank - The 'NoData' pixels will show the raster picture as being blank (or disappearing). This is the default behavior for basemap reference layers.
  • NoDataTileBehavior.show_ - This will show the raster picture with the text 'No Data' stamped over it once you pass the lowest level-of-detail scale.

Note: Sometimes, to see the effect on the map when setting the ImageTiledLayer.noDataTileBehavior property, the Layer.maxScale value must also be explicitly set. The Layer.maxScale property may need to be smaller than the level-of-detail setting that was used to create the tiled images in ArcGIS Pro or ArcGIS Desktop. For example, consider an operational image tile layer showing forest cover that was created with the level-of-detail assumption that it was to be viewed above a scale of 5000 (meaning you will not see 'NoData' until you zoom closer to the Earth than a 5000 scale). However, you want to be able to zoom in closer to the Earth surface, say down to 3000 or 300. By setting the Layer.maxScale property to a number smaller than 5000, you will be able to zoom in closer to the Earth and see the effects of changing the ImageTiledLayer.noDataTileBehavior enumerations.

Implementation

NoDataTileBehavior get noDataTileBehavior {
  final coreValue = _withThrowingErrorHandler((errorHandler) {
    return runtimecore.RT_ImageTiledLayer_getNoDataTileBehavior(
        _handle, errorHandler);
  });
  return NoDataTileBehavior._fromCoreValue(coreValue);
}
void noDataTileBehavior=(NoDataTileBehavior value)

Implementation

set noDataTileBehavior(NoDataTileBehavior value) {
  _withThrowingErrorHandler((errorHandler) {
    runtimecore.RT_ImageTiledLayer_setNoDataTileBehavior(
        _handle, value.coreValue, errorHandler);
  });
}