GISMap Image Layer
Displays data from an ArcGIS Map service by using dynamically generated map images. Functional characteristics Map images are created and returned by the server on every request, so they always show the latest data at the time of the request. Characteristics of the image, such as ImageAdjustmentLayer.getBrightness(), ImageAdjustmentLayer.getContrast(), ImageAdjustmentLayer.getGamma(), and Layer.getOpacity() can be specified. By obtaining the associated sub-layers of the ArcGISMapImageLayer using the ArcGISMapImageLayer.getMapImageSublayers() property, you can control if each sub-layer is ArcGISSublayer.getIsVisible() and filter the data via the ArcGISSublayer.getDefinitionExpression(). Also, the Layer.getSpatialReference() can be changed from the service's default and the service will reproject each image on the fly.
The underlying ServiceFeatureTable, for each map image sub-layer or for non-spatial tables used in the service, can be accessed via the ArcGISMapImageLayer.getTables() property. These tables can be queried using any valid combination of attribute, spatial, and temporal criteria via the numerous query methods. You can also query for FeatureTable.queryStatistics(StatisticsQueryParameters) to see summary statistics or to find related features in other tables via the numerous query methods.
If you want the background color for the map image to be transparent, make sure the ArcGISMapImageLayer.getImageFormat() is set to PNG.
Performance characteristic The map service creates map images on the fly. Rendering time depends on the amount and complexity of the data in the map. This will typically be slower than fetching the equivalent map as prerendered (or cached) tiles via an ArcGISTiledLayer. Because the server renders the map, map image layers require less processing time on the client than similar maps rendered locally.
ArcGIS map image layers are good candidates for showing features that change periodically, or that require filtering by the user. Although rendering occurs on the server, the client has access to service feature tables for all sublayers (as well as non-spatial tables and relationships).
Creates a map image layer object from an item.
Creates a map image layer object. If the specified URI is a portal item URL (see PortalItem.PortalItem(String) for the supported URL formats), the underlying PortalItem will be created and accessible through Layer.getItem().
Cancels loading metadata for the Loadable object.
Clones the ArcGISMapImageLayer.
Fetches the list of legend info.
Returns the layer content's effective visibility at the specified scale. Returns the effective layer content visibility. This effective visibility takes care of the effective visibility of the parents at the specified scale. Will return false if an error occurs.
Loads all of the map service's sublayers and non spatial tables.
Resets the sublayers of a map image layer to the default values defined by the service. After this call, any changes to the sublayers (either by using an ArcGISMapImageSublayer setter or by changing the sublayer collections) are lost. The sublayer hierarchy returns to its initial state (defined by the service) and image requests to display the layer will no longer use the dynamic layer capabilities of the service.
The unique identifying string for the layer, for example specified in a map or scene. The id is used by other parts of this API to refer to a specific Layer, such as in a set of FeatureFenceParameters or a FacilityLayerDefinition. If not supplied, all layers will be assigned a unique id when created.
The image format of the map image layer. If set to MapServiceImageFormat.Default, the default image format is defined by the service.