ArcGIS Runtime SDK for iOS
100.15
|
Renders @AGSGeoElements using symbols generated from an AGSDictionarySymbolStyle
.
The DictionaryRenderer applies symbols to features or graphics according to a set of input attribute values. The symbol primitives and logic (rule engine) for applying symbols is provided by an associated AGSDictionarySymbolStyle
. The AGSDictionarySymbolStyle
depends on attribute names to define the symbology of each feature. The attributes reference different symbol components in the style, which are assembled to create a complex symbol. In order to display geoelements using the AGSDictionaryRenderer
, attributes in your data must either use the expected attribute names or be mapped to the proper style attributes.
AGSDictionarySymbolStyle
Instance Methods | |
(instancetype) | - initWithDictionarySymbolStyle: |
(instancetype) | - initWithDictionarySymbolStyle:symbologyFieldOverrides:textFieldOverrides: |
(BOOL) | - isEqualToRenderer: |
(AGSSymbol *) | - symbolForFeature: |
(AGSSymbol *) | - symbolForFeature:applyAttributeOverrides: |
(AGSSymbol *) | - symbolForGraphic: |
(AGSSymbol *) | - symbolForGraphic:applyAttributeOverrides: |
(nullable id) | - toJSON: |
Class Methods | |
(instancetype) | + dictionaryRendererWithDictionarySymbolStyle: |
(instancetype) | + dictionaryRendererWithDictionarySymbolStyle:symbologyFieldOverrides:textFieldOverrides: |
(nullable id< AGSJSONSerializable >) | + fromJSON:error: |
Properties | |
AGSDictionarySymbolStyle * | dictionarySymbolStyle |
NSString * | rotationExpression |
AGSRotationType | rotationType |
AGSArcadeExpression * | scaleExpression |
AGSRendererSceneProperties * | sceneProperties |
NSDictionary< NSString *, NSString * > * | symbologyFieldOverrides |
NSDictionary< NSString *, NSString * > * | textFieldOverrides |
double | textVisibilityMaxScale |
double | textVisibilityMinScale |
BOOL | textVisible |
NSDictionary< NSString *, id > * | unknownJSON |
NSDictionary< NSString *, id > * | unsupportedJSON |
+ (instancetype) dictionaryRendererWithDictionarySymbolStyle: | (AGSDictionarySymbolStyle *) | dictionarySymbolStyle |
Initialize the renderer with a reference to the dictionary symbol style.
dictionarySymbolStyle | to use |
+ (instancetype) dictionaryRendererWithDictionarySymbolStyle: | (AGSDictionarySymbolStyle *) | dictionarySymbolStyle | |
symbologyFieldOverrides: | (NSDictionary< NSString *, id > *) | symbologyFieldOverrides | |
textFieldOverrides: | (NSDictionary< NSString *, NSString * > *) | textFieldOverrides | |
Initialize the renderer with a reference to the dictionary symbol style.
dictionarySymbolStyle | to use |
symbologyFieldOverrides | specifying the mapping between the field names that dictionarySymbolStyle specification expects and the field names in the source data |
textFieldOverrides | specifying the mapping between the field names that dictionarySymbolStyle specification expects and the field names in the source data |
|
staticrequiredinherited |
Initializes and returns an object from its JSON representation.
JSONObject | NSDictionary or NSArray containing the JSON. |
error | encountered during the operation, if any. |
- (instancetype) initWithDictionarySymbolStyle: | (AGSDictionarySymbolStyle *) | dictionarySymbolStyle |
Initialize the renderer with a reference to the dictionary symbol style.
dictionarySymbolStyle | to use |
- (instancetype) initWithDictionarySymbolStyle: | (AGSDictionarySymbolStyle *) | dictionarySymbolStyle | |
symbologyFieldOverrides: | (NSDictionary< NSString *, id > *) | symbologyFieldOverrides | |
textFieldOverrides: | (NSDictionary< NSString *, NSString * > *) | textFieldOverrides | |
Initialize the renderer with a reference to the dictionary symbol style.
dictionarySymbolStyle | to use |
symbologyFieldOverrides | specifying the mapping between the field names that dictionarySymbolStyle specification expects and the field names in the source data |
textFieldOverrides | specifying the mapping between the field names that dictionarySymbolStyle specification expects and the field names in the source data |
- (BOOL) isEqualToRenderer: | (AGSRenderer *) | other |
Compares two renderers for equality.
other | renderer to compare this one to. |
YES
if other
is equal to self
, otherwise NO
. - (AGSSymbol*) symbolForFeature: | (AGSFeature *) | feature |
Creates a symbol for the feature based on the scheme used by this renderer.
feature | The feature to determine the symbol for. |
feature
. - (AGSSymbol*) symbolForFeature: | (AGSFeature *) | feature | |
applyAttributeOverrides: | (BOOL) | applyAttributeOverrides | |
Creates a symbol for the feature based on the scheme used by this renderer and optionally apply attribute overrides.
If applyAttributeOverrides
is set to YES
and renderer contains an override expression, this method will return a symbol modified by the expression. If the expression cannot be properly evaluated due to missing fields or external data, then the original symbol is returned.
feature | The feature to determine the symbol for. |
applyAttributeOverrides | If set YES , applies the override attributes from the renderer. |
feature
. - (AGSSymbol*) symbolForGraphic: | (AGSGraphic *) | graphic |
Creates a symbol for the graphic based on the scheme used by this renderer.
graphic | The graphic to determine the symbol for. |
graphic
. - (AGSSymbol*) symbolForGraphic: | (AGSGraphic *) | graphic | |
applyAttributeOverrides: | (BOOL) | applyAttributeOverrides | |
Creates a symbol for the graphic based on the scheme used by this renderer and optionally apply attribute overrides.
graphic | The graphic to determine the symbol for. |
applyAttributeOverrides | If set YES , applies the override attributes from the renderer. |
graphic
.
|
requiredinherited |
Returns JSON representation for this object.
error | encountered during the operation, if any. |
NSDictionary
or NSArray
containing the JSON. Reimplemented in AGSPortalItem.
|
readwritenonatomicstrong |
The dictionary symbol style to be applied by the renderer
|
readwritenonatomiccopyinherited |
Constant value or an expression that specifies the angle of rotation based on a feature's attribute value. When an attribute name is specified in rotationExpression, it's enclosed in square brackets, for example, [Rotation].
|
readwritenonatomicassigninherited |
Controls the origin and direction of rotation. If the rotationType
is defined as AGSRotationTypeTypeArithmetic
, the symbol is rotated from East in a counter-clockwise direction where East is the 0° axis. If the rotationType is defined as AGSRotationTypeGeographic
, the symbol is rotated from North in a clockwise direction where North is the 0° axis.
|
readwritenonatomicstrong |
An AGSArcadeExpression
object with an expression for scaling symbols in a dictionary renderer.
AGSArcadeExpression
is evaluated at rendering time. If the expression is not valid or results in an invalid value, symbols will not be scaled and will display at their original size.
For example to scale symbols based on attribute value, AGSArcadeExpression::expression
property can be set to something like iif($feature.Symbol_Set == 40, 2.5, 1)
. This means that a scale symbol size is 2.5 times when symbol_set is 40
|
readwritenonatomicstronginherited |
Properties to apply only when rendering data in 3D scenes using AGSSceneView
.
|
readwritenonatomiccopy |
The NSDictionary
of a symbology attribute and its override used to fetch a symbol from the dictionary symbol style. An AGSDictionarySymbolStyle
uses a collection of expected attribute names to build a symbol based on input values. When initialized, fields in the input dataset are mapped to the expected attribute names using case-insensitive matching. If your data uses a different name for an expected symbol attribute, use the AGSDictionaryRenderer::symbologyFieldOverrides
to map an expected field to the correct field in your data. You can also exclude an expected field by providing an empty string for it in the overrides.
|
readwritenonatomiccopy |
The NSDictionary
of a text attribute and its override used to fetch symbol text and placement from the dictionary symbol style. An AGSDictionarySymbolStyle
uses a collection of expected attribute names to build a symbol based on input values. When initialized, fields in the input dataset are mapped to the expected attribute names using case-insensitive matching. If your data uses a different name for an expected text attribute, use the AGSDictionaryRenderer::textFieldOverrides
to map an expected field to the correct field in your data. You can also exclude an expected field by providing an empty string for it in the overrides.
|
readwritenonatomicassign |
The maximum scale (2D) or distance (3D) at which the symbol's text will be visible.
Provided by category AGSDictionaryRenderer(AGSDeprecated).
|
readwritenonatomicassign |
The minimum scale (2D) or distance (3D) at which the symbol's text will be visible.
Provided by category AGSDictionaryRenderer(AGSDeprecated).
|
readwritenonatomicassign |
The visibility for the text on the symbol.
Provided by category AGSDictionaryRenderer(AGSDeprecated).
|
readrequirednonatomiccopyinherited |
A dictionary of values that was in the source JSON but was unparsed by API.
NSDictionary
containing the unknown JSON.
|
readnonatomiccopyinherited |
A dictionary of values that are supported by the REST API, but not exposed through the SDK API.
NSDictionary
containing the unsupported JSON.