ArcGIS Runtime SDK for iOS: AGSPictureFillSymbolLayer Class Reference
ArcGIS Runtime SDK for iOS  100.15
AGSPictureFillSymbolLayer Class Reference

Description

A class representing a picture fill symbol layer.

The class represents a polygon geometry filled with an image. This symbol layer, if it is the sole symbol layer in an AGSMultilayerPolygonSymbol fills the geometry associated with the symbol with the specified image. The image, should it not fill the geometry, will be tiled throughout the fill.

It is also used to represent the Web Scene specification's Icon3DSymbolLayers. IconSymbol3DLayers from Web Scene JSON as long as those Icon3DSymbolLayers contain pictures rather than primitives or vector paths, those symbol layers are represented as instances of AGSPictureFillSymbolLayer. If those Icon3DSymbolLayers are primitives or vector paths, they are represented as AGSVectorMarkerSymbolLayer objects.

It provides a similar user experience to the simple AGSPictureFillSymbol, but can be used in an AGSMultilayerSymbol.

Since
100.5
Inheritance diagram for AGSPictureFillSymbolLayer:
AGSFillSymbolLayer <AGSLoadable> <AGSRemoteResource> AGSSymbolLayer AGSObject

Instance Methods

(void) - cancelLoad
 
(instancetype) - initWithImage:
 
(instancetype) - initWithURL:
 
(BOOL) - isEqualToSymbolLayer:
 
(void) - loadWithCompletion:
 
(void) - retryLoadWithCompletion:
 

Class Methods

(instancetype) + pictureFillSymbolLayerWithImage:
 
(instancetype) + pictureFillSymbolLayerWithURL:
 

Properties

BOOL colorLocked
 
AGSCredentialcredential
 
BOOL enabled
 
AGSImageimage
 
NSError * loadError
 
AGSLoadStatus loadStatus
 
AGSRequestConfigurationrequestConfiguration
 
AGSColortintColor
 
AGSSymbolLayerType type
 
NSURL * URL
 

Method Documentation

◆ cancelLoad

- (void) cancelLoad
requiredinherited

Cancels loading if it is in progress, otherwise it does nothing. This should be called carefully because other objects could be waiting for loadWithCompletion: or retryLoadWithCompletion: to complete and this will call them all back with the error of NSUserCancelledError

Since
100

◆ initWithImage:

- (instancetype) initWithImage: (AGSImage *)  image

Initialize a picture fill symbol layer with the provided image

Parameters
imageto use with the symbol layer
Returns
Initialized picture fill symbol layer
Since
100.5

◆ initWithURL:

- (instancetype) initWithURL: (NSURL *)  URL

Initialize a picture fill symbol layer with the provided URL to an image

Parameters
URLto an image
Returns
Initialized picture fill symbol layer
Since
100.5

◆ isEqualToSymbolLayer:

- (BOOL) isEqualToSymbolLayer: (AGSSymbolLayer *)  other

Compares whether two symbol layers are equal.

Parameters
otherThe other symbol layer to compare this symbol layer to.
Returns
YES if the symbol layers are equal, NO if not.
Since
100.5

◆ loadWithCompletion:

- (void) loadWithCompletion: (nullable void(^)(NSError *__nullable error))  completion
requiredinherited

Loads data for the object asynchronously. The completion block is invoked upon completion.

You can call this method any number of times, however only one attempt is made to load the data. If it is already loading, it will just continue to load (i.e. not force a reload). If it has already loaded successfully, the completion block will be invoked right away. If it has already failed to load, the completion block will be invoked right away with error previously encountered. This method supports multiple callers and will call them all back on completion. However, each caller's completion block will be invoked once and only once.

Parameters
completionblock that is invoked when object loads successfully or fails to load. An error is passed to the block if the object fails to load.
Note
The completion block is always invoked on the main thread.
Since
100
See also
- cancelLoad to cancel loading
- retryLoadWithCompletion: to force reload

◆ pictureFillSymbolLayerWithImage:

+ (instancetype) pictureFillSymbolLayerWithImage: (AGSImage *)  image

Initialize a picture fill symbol layer with the provided image

Parameters
imageto use with the symbol layer
Returns
Initialized picture fill symbol layer
Since
100.5

◆ pictureFillSymbolLayerWithURL:

+ (instancetype) pictureFillSymbolLayerWithURL: (NSURL *)  URL

Initialize a picture fill symbol layer with the provided URL to an image

Parameters
URLto an image
Returns
Initialized picture fill symbol layer
Since
100.5

◆ retryLoadWithCompletion:

- (void) retryLoadWithCompletion: (nullable void(^)(NSError *__nullable error))  completion
requiredinherited

Tries to reload when an object has failed to load. This method should be called judiciously. It should be called when:

  1. you didn't have network connectivity earlier when it failed and you want to retry now that you have connectivity
  2. the server was down earlier when it failed and you want to retry
  3. the request is taking too long and you want to cancel it and retry, in which case you will first call cancelLoad and then this method

If the data hasn't started loading, it will start loading. If it is already loading, it will just continue to load. If it has already loaded successfully, calls back right away. If it has already failed to load, tries again. This method supports multiple callers and will call them all back on completion. However, each caller's completion block will be invoked once and only once.

Parameters
completionblock that is invoked when object loads successfully or fails to load. An error is passed to the block if the object fails to load.
Note
The completion block is always invoked on the main thread.
Since
100

Property Documentation

◆ colorLocked

- (BOOL) colorLocked
readwritenonatomicassigninherited

Indicates whether or not the symbol layer is color locked. If YES, the layer's color will not change.

Since
100.5

◆ credential

- (AGSCredential*) credential
readwritenonatomicstronginherited

Security credentials to access the remote resource. Only applicable if the resource is secured.

Since
100

◆ enabled

- (BOOL) enabled
readwritenonatomicassigninherited

Indicates whether or not the symbol layer is enabled. Layer will be rendered only when enabled.

Since
100.5

◆ image

- (AGSImage*) image
readnonatomicstrong

The image being used by the picture fill symbol layer. May be nil until loadStatus is AGSLoadStatusLoaded

Since
100.5

◆ loadError

- (NSError*) loadError
readnonatomicstronginherited

The error that was encountered during the most recent load operation. Will be nil if the operation succeeded.

Since
100

◆ loadStatus

- (AGSLoadStatus) loadStatus
readrequirednonatomicassigninherited

Status of the load operation.

Since
100

◆ requestConfiguration

- (AGSRequestConfiguration*) requestConfiguration
readwritenonatomicstronginherited

The AGSRequestConfiguration object which defines the behavior and policies to use when accessing the remote resource. The default will be nil. If it is nil the [AGSRequestConfiguration globalConfiguration] will be used.

Since
100

◆ tintColor

- (AGSColor*) tintColor
readwritenonatomicstrong

The tint color of a picture fill symbol layer. The tint color is applied to the entire image by multiplying each RGB color channel in the image by the corresponding color channel of the tint color. The default tint color is white with 100% opacity, i.e. RGBA(255, 255, 255, 255), which leaves the image with its native colors. A white tint color with opacity less than 100% tints the image white, with the reduced opacity respected.

When getting the tint color from a symbol, the consensus value is reported. If there is no consensus (one or more layers have different colors), a nil value is reported for the color. Likewise, setting a value for tint color on a symbol will apply that tint color to all layers the symbol contains.

Since
100.6

◆ type

- (AGSSymbolLayerType) type
readnonatomicassigninherited

The type of the symbol layer. AGSSymbolLayerTypeUnknown is returned when an error occurs

Since
100.5

◆ URL

- (NSURL*) URL
readrequirednonatomicstronginherited

The URL of the remote resource.

Since
100