ModelLayerDsl

This Interface contains all the functions that will be exposed to Koltin DSL.

Separated the DSL receiver class to this interface to avoid IDE code suggestion for property getters.

Functions

Link copied to clipboard
abstract fun filter(filter: Expression): ModelLayer

A filter is a property at the layer level that determines which features should be rendered in a style layer.

Link copied to clipboard
abstract fun maxZoom(maxZoom: Double): ModelLayer

The maximum zoom level for the layer. At zoom levels equal to or greater than the maxzoom, the layer will be hidden.

Link copied to clipboard
abstract fun minZoom(minZoom: Double): ModelLayer

The minimum zoom level for the layer. At zoom levels less than the minzoom, the layer will be hidden.

Link copied to clipboard
abstract fun modelAmbientOcclusionIntensity(modelAmbientOcclusionIntensity: Expression): ModelLayer
abstract fun modelAmbientOcclusionIntensity(modelAmbientOcclusionIntensity: Double = 1.0): ModelLayer

Intensity of the ambient occlusion if present in the 3D model. Default value: 1. Value range: 0, 1

Link copied to clipboard

Intensity of the ambient occlusion if present in the 3D model. Default value: 1. Value range: 0, 1

Link copied to clipboard
abstract fun modelCastShadows(modelCastShadows: Expression): ModelLayer
abstract fun modelCastShadows(modelCastShadows: Boolean = true): ModelLayer

Enable/Disable shadow casting for this layer Default value: true.

Link copied to clipboard
abstract fun modelColor(@ColorInt modelColor: Int): ModelLayer
abstract fun modelColor(modelColor: String = "#ffffff"): ModelLayer

The tint color of the model layer. model-color-mix-intensity (defaults to 0) defines tint(mix) intensity - this means that, this color is not used unless model-color-mix-intensity gets value greater than 0. Default value: "#ffffff".

Link copied to clipboard
abstract fun modelColorMixIntensity(modelColorMixIntensity: Expression): ModelLayer
abstract fun modelColorMixIntensity(modelColorMixIntensity: Double = 0.0): ModelLayer

Intensity of model-color (on a scale from 0 to 1) in color mix with original 3D model's colors. Higher number will present a higher model-color contribution in mix. Default value: 0. Value range: 0, 1

Link copied to clipboard

Intensity of model-color (on a scale from 0 to 1) in color mix with original 3D model's colors. Higher number will present a higher model-color contribution in mix. Default value: 0. Value range: 0, 1

Link copied to clipboard

The tint color of the model layer. model-color-mix-intensity (defaults to 0) defines tint(mix) intensity - this means that, this color is not used unless model-color-mix-intensity gets value greater than 0. Default value: "#ffffff".

Link copied to clipboard
abstract fun modelCutoffFadeRange(modelCutoffFadeRange: Expression): ModelLayer
abstract fun modelCutoffFadeRange(modelCutoffFadeRange: Double = 0.0): ModelLayer

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. Default value: 0. Value range: 0, 1

Link copied to clipboard
abstract fun modelEmissiveStrength(modelEmissiveStrength: Expression): ModelLayer
abstract fun modelEmissiveStrength(modelEmissiveStrength: Double = 0.0): ModelLayer

Strength of the emission. There is no emission for value 0. For value 1.0, only emissive component (no shading) is displayed and values above 1.0 produce light contribution to surrounding area, for some of the parts (e.g. doors). Expressions that depend on measure-light are not supported when using GeoJSON or vector tile as the model layer source. Default value: 0. Value range: 0, 5

Link copied to clipboard

Strength of the emission. There is no emission for value 0. For value 1.0, only emissive component (no shading) is displayed and values above 1.0 produce light contribution to surrounding area, for some of the parts (e.g. doors). Expressions that depend on measure-light are not supported when using GeoJSON or vector tile as the model layer source. Default value: 0. Value range: 0, 5

abstract fun modelHeightBasedEmissiveStrengthMultiplier(modelHeightBasedEmissiveStrengthMultiplier: Expression): ModelLayer
abstract fun modelHeightBasedEmissiveStrengthMultiplier(modelHeightBasedEmissiveStrengthMultiplier: List<Double> = listOf(1.0, 1.0, 1.0, 1.0, 0.0)): ModelLayer

Emissive strength multiplier along model height (gradient begin, gradient end, value at begin, value at end, gradient curve power (logarithmic scale, curve power = pow(10, val)). Default value: 1,1,1,1,0.

Emissive strength multiplier along model height (gradient begin, gradient end, value at begin, value at end, gradient curve power (logarithmic scale, curve power = pow(10, val)). Default value: 1,1,1,1,0.

Link copied to clipboard
abstract fun modelId(modelId: String = ""): ModelLayer

Model to render. It can be either a string referencing an element to the models root property or an internal or external URL Default value: "".

Link copied to clipboard
abstract fun modelOpacity(modelOpacity: Double = 1.0): ModelLayer

The opacity of the model layer. Default value: 1. Value range: 0, 1

Link copied to clipboard

The opacity of the model layer. Default value: 1. Value range: 0, 1

Link copied to clipboard
abstract fun modelReceiveShadows(modelReceiveShadows: Expression): ModelLayer
abstract fun modelReceiveShadows(modelReceiveShadows: Boolean = true): ModelLayer

Enable/Disable shadow receiving for this layer Default value: true.

Link copied to clipboard
abstract fun modelRotation(modelRotation: List<Double> = listOf(0.0, 0.0, 0.0)): ModelLayer

The rotation of the model in euler angles lon, lat, z. Default value: 0,0,0.

Link copied to clipboard

The rotation of the model in euler angles lon, lat, z. Default value: 0,0,0.

Link copied to clipboard
abstract fun modelRoughness(modelRoughness: Double = 1.0): ModelLayer

Material roughness. Material is fully smooth for value 0, and fully rough for value 1. Affects only layers using batched-model source. Default value: 1. Value range: 0, 1

Link copied to clipboard

Material roughness. Material is fully smooth for value 0, and fully rough for value 1. Affects only layers using batched-model source. Default value: 1. Value range: 0, 1

Link copied to clipboard
abstract fun modelScale(modelScale: List<Double> = listOf(1.0, 1.0, 1.0)): ModelLayer

The scale of the model. Default value: 1,1,1.

Link copied to clipboard
abstract fun modelScaleMode(modelScaleMode: ModelScaleMode = ModelScaleMode.MAP): ModelLayer

Defines scaling mode. Only applies to location-indicator type layers. Default value: "map".

Link copied to clipboard

The scale of the model. Default value: 1,1,1.

Link copied to clipboard
abstract fun modelTranslation(modelTranslation: Expression): ModelLayer
abstract fun modelTranslation(modelTranslation: List<Double> = listOf(0.0, 0.0, 0.0)): ModelLayer

The translation of the model in meters in form of longitudal, latitudal, altitude offsets. Default value: 0,0,0.

Link copied to clipboard

The translation of the model in meters in form of longitudal, latitudal, altitude offsets. Default value: 0,0,0.

Link copied to clipboard
abstract fun modelType(modelType: ModelType = ModelType.COMMON_3D): ModelLayer

Defines rendering behavior of model in respect to other 3D scene objects. Default value: "common-3d".

Link copied to clipboard
abstract fun slot(slot: String): ModelLayer

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.

Link copied to clipboard
abstract fun sourceLayer(sourceLayer: String): ModelLayer

A source layer is an individual layer of data within a vector source. A vector source can have multiple source layers.

Link copied to clipboard
abstract fun visibility(visibility: Expression): ModelLayer
abstract fun visibility(visibility: Visibility): ModelLayer

Whether this layer is displayed.

Inheritors

Link copied to clipboard