mvt_layer: MVT Layer

mvt_layerR Documentation

MVT Layer

Description

MVT Layer

Usage

add_mvt_layer(
  rdeck,
  ...,
  id = uuid::UUIDgenerate(),
  name = "MVTLayer",
  group_name = NULL,
  data = NULL,
  visible = TRUE,
  pickable = FALSE,
  opacity = 1,
  wrap_longitude = FALSE,
  position_format = "XY",
  color_format = "RGBA",
  auto_highlight = FALSE,
  highlight_color = "#00008080",
  get_tile_data = NULL,
  extent = NULL,
  tile_size = 512,
  max_zoom = NULL,
  min_zoom = 0,
  max_cache_size = NULL,
  max_cache_byte_size = NULL,
  refinement_strategy = "best-available",
  z_range = NULL,
  max_requests = 6,
  zoom_offset = 0,
  filled = TRUE,
  stroked = TRUE,
  line_width_max_pixels = 9007199254740991,
  line_width_min_pixels = 0,
  line_width_scale = 1,
  line_width_units = "meters",
  point_radius_max_pixels = 9007199254740991,
  point_radius_min_pixels = 0,
  point_radius_scale = 1,
  point_radius_units = "meters",
  point_antialiasing = TRUE,
  point_billboard = FALSE,
  get_fill_color = "#000000ff",
  get_line_color = "#000000ff",
  get_line_width = 1,
  get_point_radius = 1,
  icon_atlas = NULL,
  icon_mapping = list(),
  icon_size_max_pixels = 9007199254740991,
  icon_size_min_pixels = 0,
  icon_size_scale = 1,
  icon_size_units = "pixels",
  icon_alpha_cutoff = 0.05,
  icon_billboard = TRUE,
  get_icon = icon,
  get_icon_angle = 0,
  get_icon_color = "#000000ff",
  get_icon_pixel_offset = c(0, 0),
  get_icon_size = 1,
  text_size_max_pixels = 9007199254740991,
  text_size_min_pixels = 0,
  text_size_scale = 1,
  text_size_units = "pixels",
  text_background = FALSE,
  text_background_padding = c(0, 0, 0, 0),
  text_font_family = "Roboto, Helvetica, Arial, san-serif",
  text_font_weight = "normal",
  text_line_height = 1,
  text_max_width = -1,
  text_outline_color = "#000000ff",
  text_outline_width = 0,
  text_word_break = "break-word",
  text_billboard = TRUE,
  text_font_settings = list(),
  get_text = text,
  get_text_angle = 0,
  get_text_color = "#000000ff",
  get_text_pixel_offset = c(0, 0),
  get_text_size = 32,
  get_text_anchor = "middle",
  get_text_alignment_baseline = "center",
  get_text_background_color = "#ffffffff",
  get_text_border_color = "#000000ff",
  get_text_border_width = 0,
  line_joint_rounded = FALSE,
  line_cap_rounded = FALSE,
  line_miter_limit = 4,
  line_billboard = FALSE,
  extruded = FALSE,
  wireframe = FALSE,
  elevation_scale = 1,
  material = TRUE,
  get_elevation = 1000,
  point_type = "circle",
  unique_id_property = "",
  highlighted_feature_id = NULL,
  binary = TRUE,
  blending_mode = "normal",
  visibility_toggle = TRUE,
  tooltip = NULL
)

update_mvt_layer(
  rdeck,
  ...,
  id,
  name = cur_value(),
  group_name = cur_value(),
  data = cur_value(),
  visible = cur_value(),
  pickable = cur_value(),
  opacity = cur_value(),
  wrap_longitude = cur_value(),
  position_format = cur_value(),
  color_format = cur_value(),
  auto_highlight = cur_value(),
  highlight_color = cur_value(),
  get_tile_data = cur_value(),
  extent = cur_value(),
  tile_size = cur_value(),
  max_zoom = cur_value(),
  min_zoom = cur_value(),
  max_cache_size = cur_value(),
  max_cache_byte_size = cur_value(),
  refinement_strategy = cur_value(),
  z_range = cur_value(),
  max_requests = cur_value(),
  zoom_offset = cur_value(),
  filled = cur_value(),
  stroked = cur_value(),
  line_width_max_pixels = cur_value(),
  line_width_min_pixels = cur_value(),
  line_width_scale = cur_value(),
  line_width_units = cur_value(),
  point_radius_max_pixels = cur_value(),
  point_radius_min_pixels = cur_value(),
  point_radius_scale = cur_value(),
  point_radius_units = cur_value(),
  point_antialiasing = cur_value(),
  point_billboard = cur_value(),
  get_fill_color = cur_value(),
  get_line_color = cur_value(),
  get_line_width = cur_value(),
  get_point_radius = cur_value(),
  icon_atlas = cur_value(),
  icon_mapping = cur_value(),
  icon_size_max_pixels = cur_value(),
  icon_size_min_pixels = cur_value(),
  icon_size_scale = cur_value(),
  icon_size_units = cur_value(),
  icon_alpha_cutoff = cur_value(),
  icon_billboard = cur_value(),
  get_icon = cur_value(),
  get_icon_angle = cur_value(),
  get_icon_color = cur_value(),
  get_icon_pixel_offset = cur_value(),
  get_icon_size = cur_value(),
  text_size_max_pixels = cur_value(),
  text_size_min_pixels = cur_value(),
  text_size_scale = cur_value(),
  text_size_units = cur_value(),
  text_background = cur_value(),
  text_background_padding = cur_value(),
  text_font_family = cur_value(),
  text_font_weight = cur_value(),
  text_line_height = cur_value(),
  text_max_width = cur_value(),
  text_outline_color = cur_value(),
  text_outline_width = cur_value(),
  text_word_break = cur_value(),
  text_billboard = cur_value(),
  text_font_settings = cur_value(),
  get_text = cur_value(),
  get_text_angle = cur_value(),
  get_text_color = cur_value(),
  get_text_pixel_offset = cur_value(),
  get_text_size = cur_value(),
  get_text_anchor = cur_value(),
  get_text_alignment_baseline = cur_value(),
  get_text_background_color = cur_value(),
  get_text_border_color = cur_value(),
  get_text_border_width = cur_value(),
  line_joint_rounded = cur_value(),
  line_cap_rounded = cur_value(),
  line_miter_limit = cur_value(),
  line_billboard = cur_value(),
  extruded = cur_value(),
  wireframe = cur_value(),
  elevation_scale = cur_value(),
  material = cur_value(),
  get_elevation = cur_value(),
  point_type = cur_value(),
  unique_id_property = cur_value(),
  highlighted_feature_id = cur_value(),
  binary = cur_value(),
  blending_mode = cur_value(),
  visibility_toggle = cur_value(),
  tooltip = cur_value()
)

Arguments

rdeck

<rdeck | rdeck_proxy> An rdeck map instance.

...

Additional parameters that will be forwarded to deck.gl javascript without validation nor processing. All dots must be named and will be camelCased when serialised. A warning is raised when dots are used, warning class rdeck_dots_nonempty.

id

<string> The layer's identifier must be unique for among all layers of the same type for a map. Defaults to uuid::UUIDgenerate(), but should be explicitly defined for updatable layers in a shiny application.

name

<string> Identifies the layer on tooltips and legends. It does not need to be unique, but should be brief. Defaults to the deck.gl class name for the layer.

group_name

<string> Defines the group that this layer belongs to. Currently only effective on the layer selector, if visibility_toggle = TRUE.

data

<character | tile_json> Defines the remote data for the layer. May take any of:

  • A tile_json() object

  • A string which is a valid URL to a tilejson

  • A character vector of tile url templates, each containing placeholders for tile coordinates: {z}/{x}/{y}

visible

<boolean> Determines whether the layer is visible or not; also determines whether any legend elements for the layer will be displayed.

pickable

<boolean> Determines if the layer responds to pointer / touch events.

opacity

<number> Determines the layer's opacity.

wrap_longitude

<boolean> Normalises geometry longitudes.

position_format

<"XY" | "XYZ"> Determines whether each coordinate has two (XY) or three (XYZ) elements.

color_format

<"RGB" | "RGBA"> Determines whether the alpha channel of the colours will be ignored by accessors, making all colours opaque.

auto_highlight

<boolean> When TRUE, the current object hovered by the cursor is highlighted by highlight_color.

highlight_color

<accessor | scale | color> When auto_highlight and pickable are enabled, highlight_color determines the colour of the currently highlighted object. If a single colour value is supplied, that colour will be used to highlight all objects in the layer. Per-object highlighting is achieved with a colour scale, or a tidy-eval column of colours.

get_tile_data

<JS> retrieves the data of each tile. See deck.gl getTileData.

extent

<c(min_x, min_y, max_x, max_y)> Tiles in this bounding box will be rendered at min_zoom, when zoomed out below min_zoom.

tile_size

<number> A power of 2 that is the pixel dimensions of the tile.

max_zoom

<number> Tiles above this zoom level are not shown. Defaults to NULL.

min_zoom

<number> Tiles below this zoom level are not shown. Defaults to 0.

max_cache_size

<number> Maximum number of tiles that can be cached. Defaults to 5x the number of tiles in current viewport.

max_cache_byte_size

<number> Maximum memory used for caching tiles.

refinement_strategy

<"best-available" | "no-overlap" | "never"> How the tile layer refines visibility of tiles. Defaults to "best-available".

z_range

<c(min, max)> Array representing the range of heights in the tile.

max_requests

<number> Maximum number of concurrent HTTP requests across all specified tile provider domains. If a negative number is supplied no throttling occurs (HTTP/2 only).

zoom_offset

<int> The offset changes the zoom level at which the tiles are fetched.

filled

<boolean> If TRUE, draw the filled area of each point.

stroked

<boolean> If TRUE, draw an outline around each object.

line_width_max_pixels

<number> The maximum line width in pixels.

line_width_min_pixels

<number> The minimum line width in pixels.

line_width_scale

<number> The line width multiplier.

line_width_units

<"pixels" | "common" | "meters"> The units of line width.

point_radius_max_pixels

<number> The maximum radius in pixels.

point_radius_min_pixels

<number> The minimum radius in pixels.

point_radius_scale

<number> The radius multiplier for all points.

point_radius_units

<"pixels" | "common" | "meters"> The units of point radius.

point_antialiasing

<boolean> If TRUE, circles are rendered with smoothed edges.

point_billboard

<boolean> If TRUE, circles always face the camera; if FALSE circles face up (z).

get_fill_color

<accessor | scale | color> The fill colour of each object. Accepts a single colour value, a colour scale, or a tidy-eval column of colours.

get_line_color

<accessor | scale | color> The line colour of each object. Accepts a single colour value, a colour scale, or a tidy-eval column of colours.

get_line_width

<accessor | scale | number> The outline of the object in units specified by line_width_units. Accepts a single numeric value, a numeric scale, or a tidy-eval column of numbers.

get_point_radius

<accessor | scale | number> The radius of each point, in units specified by radius_units. Accepts a single numeric value, a numeric scale, or a tidy-eval column of numbers.

icon_atlas

<string|array> The image sprite containing raster icons. Must be either a string which is interpreted as a URL to an image, or an image bitmap.

icon_mapping

<string|list> The image sprite index. Must be either a string which is interpreted as a URL to a json document, or a named-list of icon descriptors. See https://github.com/visgl/deck.gl/blob/master/docs/api-reference/layers/icon-layer.md#iconmapping-objectstring-optional for icon descriptor fields.

icon_size_max_pixels

<number> The maximum icon size in pixels.

icon_size_min_pixels

<number> The minimum icon size in pixels.

icon_size_scale

<number> The icon size multiplier.

icon_size_units

<"pixels" | "common" | "meters"> The units of the icon size specified by get_icon_size.

icon_alpha_cutoff

<number> Discard icon pixels whose opacity is below this threshold. A discarded pixel would create a "hole" in the icon that is not considered part of the object.

icon_billboard

<boolean> If TRUE, the icon always faces the camera, otherwise it faces up (z).

get_icon

<accessor> The name of the icon for each feature. Icon name must be present in the icon_mapping.

get_icon_angle

<accessor | number> The rotating angle of each icon in degrees. Accepts a single numeric value, or a tidy-eval column of numbers.

get_icon_color

<accessor | scale | color> The colour of each icon. Accepts a single colour value, a colour scale, or a tidy-eval column of colours.

get_icon_pixel_offset

<accessor | number> The pixel offset for each icon. Accepts a single length-2 numeric vector, or a tidy-eval list column.

get_icon_size

<accessor | scale | number> The size of each icon, in units specified by size_units. Accepts a single numeric value, a numeric scale, or a tidy-eval column of numbers.

text_size_max_pixels

<number> The maximum text label size in pixels.

text_size_min_pixels

<number> The minimum text label size in pixels.

text_size_scale

<number> The text label size multiplier.

text_size_units

<"pixels" | "common" | "meters"> The units of the text label size, specified by get_text_size.

text_background

<boolean> Whether to render background for text labels.

text_background_padding

<numeric> The text background padding. Must be an array of 2 or 4 numbers.

text_font_family

<string> Specifies a prioritised list of one or more font family names. See font-family.

text_font_weight

<"normal" | "bold" | 100:900> The font weight. See font-weight

text_line_height

<number> A unitless number that will be multiplied with get_size to set the line height.

text_max_width

<number> Used together with text_word_break for wrapping text. Specifies the width limit to break the text into multiple lines.

text_outline_color

<color> The text outline colour. Requires text_font_settings$sdf = TRUE.

text_outline_width

<number> The text outline width, relative to font size. Requires text_font_settings$sdf = TRUE.

text_word_break

<"break-word" | "break-all"> Requires a valid text_max_width.

text_billboard

<boolean> If TRUE, the text label always faces the camera, otherwise it faces up (z).

text_font_settings

<font_settings> Advanced options for fine tuning the appearance and performance of the generated font_atlas.

get_text

<accessor> The text value of each text label. Accepts a tidy-eval character column of labels.

get_text_angle

<accessor | number> The rotating angle of each text label in degrees. Accepts a single numeric value, or a tidy-eval column of numbers.

get_text_color

<accessor | scale | color> The colour of each text label. Accepts a single colour value, a colour scale, or a tidy-eval column of colours.

get_text_pixel_offset

<accessor | number> The pixel offset for each text label. Accepts a single length-2 numeric vector, or a tidy-eval list column.

get_text_size

<accessor | scale | number> The font size of each text label, in units specified by text_size_units. Accepts a single numeric value, a numeric scale, or a tidy-eval column of numbers.

get_text_anchor

<accessor | "start" | "middle" | "end"> The text label anchor. May be a single value, or a tidy-eval character column.

get_text_alignment_baseline

<accessor | "top" | "center" | "bottom"> The text label alignment baseline. May be a single value, or a tidy-eval character column.

get_text_background_color

<accessor | scale | color> The text background colour, if text_background = TRUE. Accepts a single colour value, a colour scale, or a tidy-eval column of colours.

get_text_border_color

<accessor | scale | color> The text background border colour, if text_background = TRUE. Accepts a single colour value, a colour scale, or a tidy-eval column of colours.

get_text_border_width

<accessor | scale | number> The text background border width, if text_background = TRUE. Accepts a single numeric value, a numeric scale, or a tidy-eval column of numbers.

line_joint_rounded

<boolean>

line_cap_rounded

<boolean> If TRUE, draw round caps; else draw square caps.

line_miter_limit

number

line_billboard

<boolean> If TRUE, extrude the path in screen space (width always faces) the camera; if FALSE, the width always faces up (z).

extruded

<boolean> If TRUE, extrude objects along the z-axis; if FALSE, all objects will be flat.

wireframe

<boolean> If TRUE and extruded == TRUE, draw a line wireframe of the object. The outline will have horizontal lines closing the top and bottom polygons and vertical lines for each vertex of the polygon.

elevation_scale

<number> The elevation multiplier.

material

<boolean>

get_elevation

<accessor | scale | number> The elevation to extrude each object in the z-axis. Height units are in metres. Accepts a single numeric value, a numeric scale, or a tidy-eval column of numbers.

point_type

<"circle"|"icon"|"text"|combination> Determines how to render point and multipoint features. May be one of:

  • "circle"

  • "icon"

  • "text"

Or a combination, separated by "+", e.g. "circle+text".

unique_id_property

<string> Used for highlighting features across tiles. Features on separate tiles are deemed to be the same feature by the supplied property name. If no value is supplied, the feature id will be used.

highlighted_feature_id

<number | string> When provided, a feature with ID corresponding to the supplied value with be highlighted with highlight_color.

binary

<boolean> Improves rendering performance by removing the tile serialisation and deserialisation between worker and main thread.

blending_mode

<"normal" | "additive" | "subtractive"> Sets the blending mode. Blending modes:

  • normal: Normal blending doesn't alter colours of overlapping objects.

  • additive: Additive blending adds colours of overlapping objects. Useful for highlighting dot density on dark maps.

  • subtractive: Subtractive blending darkens overlapping objects. Useful for highlighting dot density on light maps.

visibility_toggle

<boolean> Whether this layer will appear in the layer selector.

tooltip

<tooltip> Defines the columns (and their order) that will be displayed in the layer tooltip, if pickable == TRUE. Supports tidy-select if a data is a data.frame. Geometry columns are always removed.

See Also

https://github.com/visgl/deck.gl/blob/8.7-release/docs/api-reference/geo-layers/mvt-layer.md

Other geo-layers: great_circle_layer, h3_cluster_layer, h3_hexagon_layer, quadkey_layer, s2_layer, terrain_layer, tile_3d_layer, tile_layer, trips_layer

Other layers: arc_layer, bitmap_layer, column_layer, contour_layer, cpu_grid_layer, geojson_layer, gpu_grid_layer, great_circle_layer, grid_cell_layer, grid_layer, h3_cluster_layer, h3_hexagon_layer, heatmap_layer, hexagon_layer, icon_layer, line_layer, path_layer, point_cloud_layer, polygon_layer, quadkey_layer, s2_layer, scatterplot_layer, scenegraph_layer, screen_grid_layer, simple_mesh_layer, solid_polygon_layer, terrain_layer, text_layer, tile_3d_layer, tile_layer, trips_layer


anthonynorth/rdeck documentation built on Feb. 2, 2024, 1:12 p.m.