+ +
+
+

MGLFillStyleLayer

+
+
+

+@interface MGLFillStyleLayer : MGLVectorStyleLayer
+ +
+
+

An MGLFillStyleLayer is a style layer that renders one or more filled (and +optionally stroked) polygons on the map.

+ +

Use a fill style layer to configure the visual appearance of polygon or +multipolygon features. These features can come from vector tiles loaded by an +MGLVectorTileSource object, or they can be MGLPolygon, MGLPolygonFeature, +MGLMultiPolygon, or MGLMultiPolygonFeature instances in an MGLShapeSource +or MGLComputedShapeSource object.

+ +

You can access an existing fill style layer using the +-[MGLStyle layerWithIdentifier:] method if you know its identifier; +otherwise, find it using the MGLStyle.layers property. You can also create a +new fill style layer and add it to the style using a method such as +-[MGLStyle addLayer:].

+

Example

+
let layer = MGLFillStyleLayer(identifier: "parks", source: parks)
+layer.sourceLayerIdentifier = "parks"
+layer.fillColor = NSExpression(forConstantValue: UIColor.green)
+layer.predicate = NSPredicate(format: "type == %@", "national-park")
+mapView.style?.addLayer(layer)
+
+ +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +

    Returns a fill style layer initialized with an identifier and source.

    + +

    After initializing and configuring the style layer, add it to a map view’s +style using the -[MGLStyle addLayer:] or +-[MGLStyle insertLayer:belowLayer:] method.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    - (nonnull instancetype)initWithIdentifier:(nonnull NSString *)identifier
    +                                    source:(nonnull MGLSource *)source;
    + +
    +
    +

    Swift

    +
    init(identifier: String, source: MGLSource)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + identifier + + +
    +

    A string that uniquely identifies the source in the style to +which it is added.

    +
    +
    + + source + + +
    +

    The source from which to obtain the data to style. If the source +has not yet been added to the current style, the behavior is undefined.

    +
    +
    +
    +
    +

    Return Value

    +

    An initialized foreground style layer.

    +
    + +
    +
    +
  • +
+
+
+ +
    +
  • +
    + + + + fillAntialiased + +
    +
    +
    +
    +

    Whether or not the fill should be antialiased.

    + +

    The default value of this property is an expression that evaluates to YES. +Set this property to nil to reset it to the default value.

    + +

    This attribute corresponds to the fill-antialias +layout property in the Mapbox Style Specification.

    + +

    You can set this property to an expression containing any of the following:

    + +
      +
    • Constant Boolean values
    • +
    • Predefined functions, including mathematical and string operators
    • +
    • Conditional expressions
    • +
    • Variable assignments and references to assigned variables
    • +
    • Step functions applied to the $zoomLevel variable
    • +
    + +

    This property does not support applying interpolation functions to the +$zoomLevel variable or applying interpolation or step functions to feature +attributes.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (getter=isFillAntialiased, assign, readwrite, nonatomic,
    +          null_resettable) NSExpression *fillAntialiased;
    + +
    +
    +

    Swift

    +
    var fillAntialiased: NSExpression! { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillColor + +
    +
    +
    +
    +

    The color of the filled part of this layer.

    + +

    The default value of this property is an expression that evaluates to +NSColor.blackColor. Set this property to nil to reset it to the default +value.

    + +

    This property is only applied to the style if fillPattern is set to nil. +Otherwise, it is ignored.

    + +

    You can set this property to an expression containing any of the following:

    + +
      +
    • Constant NSColor values
    • +
    • Predefined functions, including mathematical and string operators
    • +
    • Conditional expressions
    • +
    • Variable assignments and references to assigned variables
    • +
    • Interpolation and step functions applied to the $zoomLevel variable and/or +feature attributes
    • +
    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic, null_resettable)
    +    NSExpression *fillColor;
    + +
    +
    +

    Swift

    +
    var fillColor: NSExpression! { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillColorTransition + +
    +
    +
    +
    +

    The transition affecting any changes to this layer’s fillColor property.

    + +

    This property corresponds to the fill-color-transition property in the style JSON file format.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic) MGLTransition fillColorTransition;
    + +
    +
    +

    Swift

    +
    var fillColorTransition: MGLTransition { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillOpacity + +
    +
    +
    +
    +

    The opacity of the entire fill layer. In contrast to the fillColor, this +value will also affect the 1pt stroke around the fill, if the stroke is used.

    + +

    The default value of this property is an expression that evaluates to the float +1. Set this property to nil to reset it to the default value.

    + +

    You can set this property to an expression containing any of the following:

    + +
      +
    • Constant numeric values between 0 and 1 inclusive
    • +
    • Predefined functions, including mathematical and string operators
    • +
    • Conditional expressions
    • +
    • Variable assignments and references to assigned variables
    • +
    • Interpolation and step functions applied to the $zoomLevel variable and/or +feature attributes
    • +
    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic, null_resettable)
    +    NSExpression *fillOpacity;
    + +
    +
    +

    Swift

    +
    var fillOpacity: NSExpression! { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillOpacityTransition + +
    +
    +
    +
    +

    The transition affecting any changes to this layer’s fillOpacity property.

    + +

    This property corresponds to the fill-opacity-transition property in the style JSON file format.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic) MGLTransition fillOpacityTransition;
    + +
    +
    +

    Swift

    +
    var fillOpacityTransition: MGLTransition { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillOutlineColor + +
    +
    +
    +
    +

    The outline color of the fill. Matches the value of fillColor if unspecified.

    + +

    This property is only applied to the style if fillPattern is set to nil, +and fillAntialiased is set to an expression that evaluates to YES. +Otherwise, it is ignored.

    + +

    You can set this property to an expression containing any of the following:

    + +
      +
    • Constant NSColor values
    • +
    • Predefined functions, including mathematical and string operators
    • +
    • Conditional expressions
    • +
    • Variable assignments and references to assigned variables
    • +
    • Interpolation and step functions applied to the $zoomLevel variable and/or +feature attributes
    • +
    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic, null_resettable)
    +    NSExpression *fillOutlineColor;
    + +
    +
    +

    Swift

    +
    var fillOutlineColor: NSExpression! { get set }
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +

    The transition affecting any changes to this layer’s fillOutlineColor property.

    + +

    This property corresponds to the fill-outline-color-transition property in the style JSON file format.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic)
    +    MGLTransition fillOutlineColorTransition;
    + +
    +
    +

    Swift

    +
    var fillOutlineColorTransition: MGLTransition { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillPattern + +
    +
    +
    +
    +

    Name of image in sprite to use for drawing image fills. For seamless patterns, +image width and height must be a factor of two (2, 4, 8, …, 512). Note that +zoom-dependent expressions will be evaluated only at integer zoom levels.

    + +

    You can set this property to an expression containing any of the following:

    + +
      +
    • Constant string values
    • +
    • Predefined functions, including mathematical and string operators
    • +
    • Conditional expressions
    • +
    • Variable assignments and references to assigned variables
    • +
    • Step functions applied to the $zoomLevel variable
    • +
    + +

    This property does not support applying interpolation functions to the +$zoomLevel variable or applying interpolation or step functions to feature +attributes.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic, null_resettable)
    +    NSExpression *fillPattern;
    + +
    +
    +

    Swift

    +
    var fillPattern: NSExpression! { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillPatternTransition + +
    +
    +
    +
    +

    The transition affecting any changes to this layer’s fillPattern property.

    + +

    This property corresponds to the fill-pattern-transition property in the style JSON file format.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic) MGLTransition fillPatternTransition;
    + +
    +
    +

    Swift

    +
    var fillPatternTransition: MGLTransition { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillTranslation + +
    +
    +
    +
    +

    The geometry’s offset.

    + +

    This property is measured in points.

    + +

    The default value of this property is an expression that evaluates to an +NSValue object containing a CGVector struct set to 0 points rightward and 0 +points upward. Set this property to nil to reset it to the default value.

    + +

    This attribute corresponds to the fill-translate +layout property in the Mapbox Style Specification.

    + +

    You can set this property to an expression containing any of the following:

    + +
      +
    • Constant CGVector values
    • +
    • Predefined functions, including mathematical and string operators
    • +
    • Conditional expressions
    • +
    • Variable assignments and references to assigned variables
    • +
    • Interpolation and step functions applied to the $zoomLevel variable
    • +
    + +

    This property does not support applying interpolation or step functions to +feature attributes.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic, null_resettable)
    +    NSExpression *fillTranslation;
    + +
    +
    +

    Swift

    +
    var fillTranslation: NSExpression! { get set }
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +

    The transition affecting any changes to this layer’s fillTranslation property.

    + +

    This property corresponds to the fill-translate-transition property in the style JSON file format.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic) MGLTransition fillTranslationTransition;
    + +
    +
    +

    Swift

    +
    var fillTranslationTransition: MGLTransition { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fillTranslationAnchor + +
    +
    +
    +
    +

    Controls the frame of reference for fillTranslation.

    + +

    The default value of this property is an expression that evaluates to map. +Set this property to nil to reset it to the default value.

    + +

    This property is only applied to the style if fillTranslation is non-nil. +Otherwise, it is ignored.

    + +

    This attribute corresponds to the fill-translate-anchor +layout property in the Mapbox Style Specification.

    + +

    You can set this property to an expression containing any of the following:

    + +
      +
    • Constant MGLFillTranslationAnchor values
    • +
    • Any of the following constant string values: + +
        +
      • map: The fill is translated relative to the map.
      • +
      • viewport: The fill is translated relative to the viewport.
      • +
    • +
    • Predefined functions, including mathematical and string operators
    • +
    • Conditional expressions
    • +
    • Variable assignments and references to assigned variables
    • +
    • Step functions applied to the $zoomLevel variable
    • +
    + +

    This property does not support applying interpolation functions to the +$zoomLevel variable or applying interpolation or step functions to feature +attributes.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (assign, readwrite, nonatomic, null_resettable)
    +    NSExpression *fillTranslationAnchor;
    + +
    +
    +

    Swift

    +
    var fillTranslationAnchor: NSExpression! { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +