FillExtrusionLayer
public struct FillExtrusionLayer : Layer
An extruded (3D) polygon.
See also
Mapbox Style Specification-
Unique layer name
Declaration
Swift
public var id: String
-
Rendering type of this layer.
Declaration
Swift
public let type: LayerType
-
An expression specifying conditions on source features. Only features that match the filter are displayed.
Declaration
Swift
public var filter: Expression?
-
Name of a source description to be used for this layer. Required for all layer types except
BackgroundLayer
,SkyLayer
, andLocationIndicatorLayer
.Declaration
Swift
public var source: String?
-
Layer to use from a vector tile source.
Required for vector tile sources. Prohibited for all other source types, including GeoJSON sources.
Declaration
Swift
public var sourceLayer: String?
-
The slot this layer is assigned to. If specified, and a slot with that name exists, it will be placed at that position in the layer order.
Declaration
Swift
public var slot: String?
-
The minimum zoom level for the layer. At zoom levels less than the minzoom, the layer will be hidden.
Declaration
Swift
public var minZoom: Double?
-
The maximum zoom level for the layer. At zoom levels equal to or greater than the maxzoom, the layer will be hidden.
Declaration
Swift
public var maxZoom: Double?
-
Whether this layer is displayed.
Declaration
Swift
public var visibility: Value<Visibility>
-
Radius of a fill extrusion edge in meters. If not zero, rounds extrusion edges for a smoother appearance.
Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionEdgeRadius: Value<Double>?
-
Provides a control to futher fine-tune the look of the ambient occlusion on the ground beneath the extruded buildings. Lower values give the effect a more solid look while higher values make it smoother. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionAmbientOcclusionGroundAttenuation: Value<Double>?
-
Transition options for
fillExtrusionAmbientOcclusionGroundAttenuation
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionAmbientOcclusionGroundAttenuationTransition: StyleTransition?
-
The extent of the ambient occlusion effect on the ground beneath the extruded buildings in meters. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionAmbientOcclusionGroundRadius: Value<Double>?
-
Transition options for
fillExtrusionAmbientOcclusionGroundRadius
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionAmbientOcclusionGroundRadiusTransition: StyleTransition?
-
Controls the intensity of shading near ground and concave angles between walls. Default value 0.0 disables ambient occlusion and values around 0.3 provide the most plausible results for buildings.
Declaration
Swift
public var fillExtrusionAmbientOcclusionIntensity: Value<Double>?
-
Transition options for
fillExtrusionAmbientOcclusionIntensity
.Declaration
Swift
public var fillExtrusionAmbientOcclusionIntensityTransition: StyleTransition?
-
Shades area near ground and concave angles between walls where the radius defines only vertical impact. Default value 3.0 corresponds to height of one floor and brings the most plausible results for buildings. This property works only with legacy light. When 3D light is enabled
fill-extrusion-ambient-occlusion-wall-radius
andfill-extrusion-ambient-occlusion-ground-radius
are used instead.Declaration
Swift
public var fillExtrusionAmbientOcclusionRadius: Value<Double>?
-
Transition options for
fillExtrusionAmbientOcclusionRadius
.Declaration
Swift
public var fillExtrusionAmbientOcclusionRadiusTransition: StyleTransition?
-
Shades area near ground and concave angles between walls where the radius defines only vertical impact. Default value 3.0 corresponds to height of one floor and brings the most plausible results for buildings. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionAmbientOcclusionWallRadius: Value<Double>?
-
Transition options for
fillExtrusionAmbientOcclusionWallRadius
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionAmbientOcclusionWallRadiusTransition: StyleTransition?
-
The height with which to extrude the base of this layer. Must be less than or equal to
fill-extrusion-height
.Declaration
Swift
public var fillExtrusionBase: Value<Double>?
-
Transition options for
fillExtrusionBase
.Declaration
Swift
public var fillExtrusionBaseTransition: StyleTransition?
-
The base color of the extruded fill. The extrusion’s surfaces will be shaded differently based on this color in combination with the root
light
settings. If this color is specified asrgba
with an alpha component, the alpha component will be ignored; usefill-extrusion-opacity
to set layer opacity.Declaration
Swift
public var fillExtrusionColor: Value<StyleColor>?
-
Transition options for
fillExtrusionColor
.Declaration
Swift
public var fillExtrusionColorTransition: StyleTransition?
-
This parameter defines the range for the fade-out effect before an automatic content cutoff on pitched map views. The automatic cutoff range is calculated according to the minimum required zoom level of the source and layer. The fade range is expressed in relation to the height of the map view. A value of 1.0 indicates that the content is faded to the same extent as the map’s height in pixels, while a value close to zero represents a sharp cutoff. When the value is set to 0.0, the cutoff is completely disabled. Note: The property has no effect on the map if terrain is enabled.
Declaration
Swift
public var fillExtrusionCutoffFadeRange: Value<Double>?
-
The color of the flood light effect on the walls of the extruded buildings. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightColor: Value<StyleColor>?
-
Transition options for
fillExtrusionFloodLightColor
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightColorTransition: StyleTransition?
-
Provides a control to futher fine-tune the look of the flood light on the ground beneath the extruded buildings. Lower values give the effect a more solid look while higher values make it smoother. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightGroundAttenuation: Value<Double>?
-
Transition options for
fillExtrusionFloodLightGroundAttenuation
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightGroundAttenuationTransition: StyleTransition?
-
The extent of the flood light effect on the ground beneath the extruded buildings in meters. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightGroundRadius: Value<Double>?
-
Transition options for
fillExtrusionFloodLightGroundRadius
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightGroundRadiusTransition: StyleTransition?
-
The intensity of the flood light color. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightIntensity: Value<Double>?
-
Transition options for
fillExtrusionFloodLightIntensity
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightIntensityTransition: StyleTransition?
-
The extent of the flood light effect on the walls of the extruded buildings in meters. This property works only with 3D light, i.e. when
lights
root property is defined.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightWallRadius: Value<Double>?
-
Transition options for
fillExtrusionFloodLightWallRadius
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionFloodLightWallRadiusTransition: StyleTransition?
-
The height with which to extrude this layer.
Declaration
Swift
public var fillExtrusionHeight: Value<Double>?
-
Transition options for
fillExtrusionHeight
.Declaration
Swift
public var fillExtrusionHeightTransition: StyleTransition?
-
The opacity of the entire fill extrusion layer. This is rendered on a per-layer, not per-feature, basis, and data-driven styling is not available.
Declaration
Swift
public var fillExtrusionOpacity: Value<Double>?
-
Transition options for
fillExtrusionOpacity
.Declaration
Swift
public var fillExtrusionOpacityTransition: StyleTransition?
-
Name of image in sprite to use for drawing images on extruded 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.
Declaration
Swift
public var fillExtrusionPattern: Value<ResolvedImage>?
-
Indicates whether top edges should be rounded when fill-extrusion-edge-radius has a value greater than 0. If false, rounded edges are only applied to the sides. Default is true.
Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionRoundedRoof: Value<Bool>?
-
The geometry’s offset. Values are [x, y] where negatives indicate left and up (on the flat plane), respectively.
Declaration
Swift
public var fillExtrusionTranslate: Value<[Double]>?
-
Transition options for
fillExtrusionTranslate
.Declaration
Swift
public var fillExtrusionTranslateTransition: StyleTransition?
-
Controls the frame of reference for
fill-extrusion-translate
.Declaration
Swift
public var fillExtrusionTranslateAnchor: Value<FillExtrusionTranslateAnchor>?
-
Whether to apply a vertical gradient to the sides of a fill-extrusion layer. If true, sides will be shaded slightly darker farther down.
Declaration
Swift
public var fillExtrusionVerticalGradient: Value<Bool>?
-
A global multiplier that can be used to scale base, height, AO, and flood light of the fill extrusions.
Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionVerticalScale: Value<Double>?
-
Transition options for
fillExtrusionVerticalScale
.Declaration
Swift
@_documentation(visibility: public) @_spi(Experimental) public var fillExtrusionVerticalScaleTransition: StyleTransition?
-
Undocumented
Declaration
Swift
public init(id: String, source: String)
-
Declaration
Swift
public func encode(to encoder: Encoder) throws
-
Declaration
Swift
public init(from decoder: Decoder) throws