A base class for dynamic layers. You would typically work with concrete dynamic layers represented by the sub-classes of this class, for instance, AGSDynamicMapServiceLayer
.
Sub-classes must provide implementation for the spatialReference, fullEnvelope, initialEnvelope, and units properties declared by AGSLayer
. They must also provide implementation for the exportMapImage:
method and notify the exportDelegate when appropriate. It is also the responsibility of sub-classes to update the loaded property and notify the delegate when appropriate.
In a Model-View-Controller architecture, this object represents the Model. It is responsible for creating or fetching the map image. The corresponding View object, AGSDynamicLayerView
, is responsible for displaying the map image on screen. It is created when sub-classes, for instance AGSDynamicMapServiceLayer
, are added to the map.
Public Member Functions | |
(void) | - dataChanged |
(NSOperation < AGSDynamicLayerDrawingOperation > *) | - exportMapImage: |
(void) | - layerDidFailToLoad: |
(void) | - layerDidLoad |
Properties | |
id< AGSLayerDelegate > | delegate |
NSError * | error |
id< AGSExportMapImageDelegate > | exportDelegate |
AGSEnvelope * | fullEnvelope |
AGSDynamicLayerGPSAutoPanDrawingMode | gpsAutoPanDrawingMode |
AGSEnvelope * | initialEnvelope |
BOOL | loaded |
double | maxScale |
double | minScale |
NSString * | name |
BOOL | renderNativeResolution |
AGSSpatialReference * | spatialReference |
BOOL | timeAware |
AGSUnits | units |
- (void) dataChanged |
This method tells the layer that the data has changed and it should be redrawn.
Implemented in AGSGraphicsLayer.
- (NSOperation<AGSDynamicLayerDrawingOperation>*) exportMapImage: | (AGSExportImageParams *) | params |
Get new map image. The exportDelegate is notified when the image is exported. This method must be implemented by subclasses.
params | The input parameters for the export image operation. |
- (void) layerDidFailToLoad: | (NSError *) | error |
Method to notify the delegate that a layer failed to load. This method will also post a "LayerFailedToLoad" notification that can be observed by the developer.
error | Information regarding the cause of the layer failing to load. |
- (void) layerDidLoad |
Method to notify the delegate that a layer successfully loaded. This method will also post a "LayerDidLoad" notification that can be observed by the developer.
- (id<AGSLayerDelegate>) delegate [read, write, assign, inherited] |
Delegate to be notified when the layer is loaded or fails to load. When this layer is loaded, a corresponding AGSLayerView
object is automatically set as the delegate. This delegate must not be replaced.
- (NSError*) error [read, retain, inherited] |
Information about the error associated with a layer.
- (id<AGSExportMapImageDelegate>) exportDelegate [read, write, assign] |
Delegate to be notified of events related to exporting the map image. When this layer is loaded, a corresponding View object is automatically set as the exportDelegate
which should not be replaced.
- (AGSEnvelope*) fullEnvelope [read, assign, inherited] |
Full extent of the layer.
Implemented in AGSBingMapLayer, AGSGPResultLayer, and AGSOpenStreetMapLayer.
- (AGSDynamicLayerGPSAutoPanDrawingMode) gpsAutoPanDrawingMode [read, write, assign] |
Defines the drawing behavior for a dynamic layer when the map's gps is in an auto-pan mode. For some layers, especially those that make network request, you may want this property accordingly. When the map is navigating from the gps it can generate a lot of requests resulting in a heavy server load.
- (AGSEnvelope*) initialEnvelope [read, assign, inherited] |
Initial extent of the layer.
Implemented in AGSBingMapLayer, AGSGPResultLayer, AGSGraphicsLayer, and AGSOpenStreetMapLayer.
- (BOOL) loaded [read, assign, inherited] |
A property indicating whether the layer is loaded and ready to be used. When the layer is loaded, the value becomes YES
, and layer properties can be accessed.
- (double) maxScale [read, assign] |
- (double) minScale [read, assign] |
- (NSString*) name [read, retain, inherited] |
The name of the layer. This property will be set by the framework when the layer is added to the map.
- (BOOL) renderNativeResolution [read, assign, inherited] |
Gets a value that determines if the layer renders at the native resolution. This property will not have any affect on iOS devices without a retina display. If using an iOS device with a retina display and you want to take advantage of that display you can set this value to YES. If YES, this layer will use more memory and network bandwidth, but the layer will render at a higher resolution. This property is not settable for every layer type.
Implemented in AGSGPResultLayer, AGSGraphicsLayer, AGSDynamicMapServiceLayer, AGSImageServiceLayer, AGSTiledMapServiceLayer, and AGSLocalTiledLayer.
- (AGSSpatialReference*) spatialReference [read, assign, inherited] |
The spatial reference of the layer.
Implemented in AGSBingMapLayer, AGSGPResultLayer, and AGSOpenStreetMapLayer.
- (BOOL) timeAware [read, assign, inherited] |
A property indicating whether the layer is time-aware.
- (AGSUnits) units [read, write, assign, inherited] |
The units the layer is in. Possible values include
AGSUnitsCentimeters
AGSUnitsDecimalDegrees
AGSUnitsDecimeters
AGSUnitsFeet
AGSUnitsInches
AGSUnitsKilometers
AGSUnitsMeters
AGSUnitsMiles
AGSUnitsMillimeters
AGSUnitsNauticalMiles
AGSUnitsPoints
AGSUnitsUnknown
AGSUnitsYards