LuciadCPillar 2024.0.04
|
Builder for the luciad::MbTilesFeatureLayer class. More...
#include <luciad/layers/mbtiles/MbTilesFeatureLayer.h>
Public Member Functions | |
Builder (Builder &&other) noexcept | |
Builder (const Builder &other) | |
~Builder () | |
std::shared_ptr< MbTilesFeatureLayer > | build () const |
Returns a new layer, based on the properties set on this builder. More... | |
Builder & | labeled (bool labeled) |
Sets whether the layer should display labels initially. More... | |
Builder & | model (std::shared_ptr< IFeatureTileModel > model) |
Sets the feature tile model of the layer. More... | |
Builder & | operator= (Builder other) noexcept |
Builder & | style (std::string path) |
Sets the style of the layer. More... | |
Builder & | title (std::string title) |
Sets the title to use for the layer. More... | |
Builder & | visible (bool visible) |
Sets whether the layer should be visible initially. More... | |
Builder for the luciad::MbTilesFeatureLayer class.
luciad::MbTilesFeatureLayer::Builder::Builder | ( | const Builder & | other | ) |
|
noexcept |
luciad::MbTilesFeatureLayer::Builder::~Builder | ( | ) |
std::shared_ptr< MbTilesFeatureLayer > luciad::MbTilesFeatureLayer::Builder::build | ( | ) | const |
Returns a new layer, based on the properties set on this builder.
luciad::LogicException | If not all mandatory parameters are set. |
luciad::IOException | If decoding the style fails. |
Builder & luciad::MbTilesFeatureLayer::Builder::labeled | ( | bool | labeled | ) |
Sets whether the layer should display labels initially.
The default is true.
labeled | whether the layer should display labels initially. |
MbTilesFeatureLayer::setLabeled
Builder & luciad::MbTilesFeatureLayer::Builder::model | ( | std::shared_ptr< IFeatureTileModel > | model | ) |
Sets the feature tile model of the layer.
Calling this function is mandatory.
model | the feature tile model of the layer. Cannot be nullptr . |
luciad::NullArgumentException | when the given model is nullptr . |
Builder & luciad::MbTilesFeatureLayer::Builder::style | ( | std::string | path | ) |
Sets the style of the layer.
If not set, a default style is used instead.
The currently supported format is the Mapbox style format (see the Mapbox style specification). Only the sections that are relevant for styling MBTiles are supported, namely:
When the Mapbox style contains a background layer style, it is applied on the extent of the feature tile data set. Use of interpolation based on zoom level is not supported for the background. The background at zoom level 0 is used.
Note that not all types, expressions and style properties defined by the Mapbox style format are supported. When an unsupported option is used in the style, that option is ignored and if appropriate, a fallback value is used instead.
The following is currently supported:
array<number>
array<string>
boolean
color
: strings of the following format are supported: "#RRGGBB"
, "#RGB"
, "#RRGGBBAA"
, "#RGBA"
, "rgb(r, g, b)"
, "rgba(r, g, b, a)"
, "hsl(h, s%, l%)"
, "hsla(h, s%, l%, a)"
) formatted
: format
expressions are converted to strings and their formatting options are stripped and ignored number
string
array
(lengths are not asserted), boolean
, format
(converted to string
and the formatting options are stripped and ignored), literal
, number
, string
, to-boolean
, to-color
(if a string
or array<number>
cannot be converted, transparent black is returned), to-number
(if a string
cannot be converted, 0
is returned), to-string
, typeof
geometry-type
, id
at
(if index invalid, 0
/""
is returned for array<number>
/array<string>
respectively), get
(only for feature properties, not objects), has
(only for feature properties, not objects), in
, index-of
, length
, slice
interpolate
(interpolate-hcl
and interpolate-lab
interpolate in RGB colorspace as well), step
!
, !=
, <
, <=
, ==
, >
, >=
, all
, any
, case
, coalesce
, match
concat
, downcase
, is-supported-script
(always returns true
), resolved-locale
(always returns "en"
), upcase
hsl
, hsla
, rgb
, rgba
, to-rgba
-
, *
, /
, %
, ^
, +
, abs
, acos
, asin
, atan
, ceil
, cos
, e
, floor
, ln
, ln2
, log10
, log2
, max
, min
, pi
, random
, round
, sin
, sqrt
, tan
zoom
stops
, property
, base
, type
, default
, existential filters, comparison filters, set membership filters, combining filters id
type
filter
layout
maxzoom
minzoom
paint
source-layer
background-color
background-opacity
background-pattern
visibility
fill-color
fill-opacity
fill-outline-color
fill-pattern
fill-translate
visibility
line-color
line-dasharray
line-offset
line-opacity
line-pattern
visibility
icon-allow-overlap
: also allows other symbols to be drawn on top (i.e. the behavior of icon-ignore-placement
) icon-anchor
icon-color
icon-image
icon-keep-upright
icon-offset
icon-opacity
icon-optional
icon-padding
icon-rotate
icon-rotation-alignment
icon-size
icon-text-fit
icon-text-fit-padding
icon-translate
symbol-placement
text-allow-overlap
: also allows other symbols to be drawn on top (i.e. the behavior of text-ignore-placement
) text-anchor
text-color
text-field
text-font
: defaults to Noto text-halo-color
text-halo-width
text-justify
: "auto"
in conjunction with a variable anchor will result in centered text text-keep-upright
text-line-height
text-offset
text-opacity
text-optional
text-padding
text-radial-offset
text-rotate
text-rotation-alignment
text-size
text-transform
text-translate
text-variable-anchor
visibility
circle-color
circle-opacity
circle-radius
circle-stroke-color
circle-stroke-opacity
circle-stroke-width
circle-translate
visibility
fill-extrusion-base
fill-extrusion-color
fill-extrusion-height
fill-extrusion-opacity
fill-extrusion-pattern
fill-extrusion-translate
fill-extrusion-vertical-scale
visibility
path | the path to a style file. Can be a URL or a file path to a JSON file. |
Builder & luciad::MbTilesFeatureLayer::Builder::title | ( | std::string | title | ) |
Sets the title to use for the layer.
If not set, the title from the ModelMetadata is used.
title | the title for the layer. |
Builder & luciad::MbTilesFeatureLayer::Builder::visible | ( | bool | visible | ) |
Sets whether the layer should be visible initially.
Default is true
.
visible | the visibility. |