Skip to contents

Map Initialization, Camera & Providers

Initialize a GPU map and control camera position, bounds, basemap providers, API keys, terrain, and projection.

glmap()
Create a High-Performance GPU Map Widget (glmap)
set_view()
Set Map Camera View (Center, Zoom, Pitch, Bearing)
fit_bounds()
Fit Map Camera to a Bounding Box [xmin, ymin, xmax, ymax] (fit_bounds)
fly_to()
Smoothly Animate Camera to Target Location (flyTo)
fly_to_bounds()
Smoothly Animate Camera to Bounding Box (fly_to_bounds)
set_max_bounds()
Restrict Map Panning to Maximum Bounding Box (set_max_bounds)
set_basemap()
Change the Map Basemap Style (set_basemap)
add_provider_tiles()
Add or Switch Basemap Provider Tiles (add_provider_tiles)
gl_providers
Basemap Tile Providers Catalog (gl_providers)
gl_list_providers()
List All Built-in Basemap Tile Providers in glmap
gl_set_api_key() gl_get_api_key()
Set or Retrieve a Provider API Key (gl_set_api_key / gl_get_api_key)
set_terrain()
Enable 3D Terrain Elevation on the Map
set_projection()
Set Map Projection ("mercator" or "globe")
add_control()
Configure Map UI Controls
add_legend()
Add a Custom Map Legend
gl_save_html()
Save a glmap Map to a Standalone HTML File (gl_save_html)

GPU Vector, Raster & Out-of-Core Layers

Add high-density point clouds, geodesic circles, rectangles, lines, earcut-triangulated polygons, Float32 rasters, hexbins, heatmaps, WMS, PMTiles, and DuckDB layers.

add_sf()
Automatically Add an sf, sfc, or data.frame Layer to a glmap Map
add_points()
Add a GPU Instanced Point Layer (Handles 1M+ Points at 60 FPS)
add_circles()
Add a Geodesic Circle Layer (add_circles)
add_rectangles()
Add a Bounding-Box Rectangle Layer (add_rectangles)
add_lines()
Add a GPU LineString / MultiLineString Layer
add_polygons()
Add a Pre-Triangulated GPU Polygon / MultiPolygon Layer
add_raster()
Add a GPU Fragment-Shader Raster Layer for terra::SpatRaster
add_hexbin()
Add a C++ Accelerated Hexagonal Binning Layer for 1M+ Points
add_heatmap()
Add a GPU Additive Kernel Density Heatmap Layer
add_labels()
Add a GPU Text / Symbol Label Layer (add_labels)
add_popups()
Add Standalone HTML Popups (add_popups)
add_wms_tiles()
Add an OGC Web Map Service (WMS) Raster Tile Layer (add_wms_tiles)
add_pmtiles() add_mvt()
Add a Cloud-Native PMTiles or Mapbox Vector Tile (MVT) Layer
add_geojson()
Add a Raw GeoJSON URL or Object Layer
add_duckdb()
Add a Live Out-of-Core DuckDB / Parquet Layer (add_duckdb)

Shiny Proxy, Group Controls & Live GPU Updates

Update layers, groups, visibility, opacity, filters, and GPU raster shaders in 0ms without re-rendering.

glmapOutput()
Shiny UI Output for glmap
renderGlmap()
Shiny Server Render Function for glmap
glmap_proxy()
Create a Shiny Proxy for a glmap Map Widget
show_group() hide_group() clear_group()
Show, Hide, or Clear Layers by Group Name (show_group, hide_group, clear_group)
clear_layer()
Clear a Single Layer by ID
clear_layers()
Clear All Data Layers from a Map
set_layer_visibility()
Toggle Layer Visibility
set_layer_opacity()
Update Layer Opacity Dynamically
set_raster_style()
Live-Update a GPU Raster Layer's Colormap, Contrast Range, or Hillshading (0ms GPU Update)
set_filter()
Filter Visible Features by Index on the GPU

Plugins, Custom Shaders & Binary Engine

Extend glmap with custom JS plugins, GLSL shaders, C++17 binary packers, and spatial indices.

register_plugin()
Register a Reusable glmap Extension Plugin
use_plugin()
Attach a Registered or Inline Plugin to a glmap Map
list_plugins()
List Available glmap Plugins
add_webgl_shader_layer()
Add a Custom WebGL2 Shader Layer to a glmap Map
add_deck_layer()
Add a Custom Deck.gl / External Layer Specification
gl_pack_sf_binary()
Pack an sf, sfc, or data.frame object into a GLMP binary buffer (gl_pack_sf_binary)
gl_pack_raster_binary()
Pack a terra SpatRaster or matrix into a GLMR Float32 binary buffer (gl_pack_raster_binary)
gl_spatial_index()
Build an in-memory C++ spatial index for fast viewport queries (gl_spatial_index)
gl_query_index()
Query a spatial index for features intersecting a bounding box (gl_query_index)
gl_duckdb_index()
Create a DuckDB Out-of-Core Spatial Query Index (gl_duckdb_index)
gl_serve_start()
Start the local zero-copy binary & tile server (gl_serve_start)
gl_serve_stop()
Stop the local zero-copy binary server (gl_serve_stop)
gl_server_status()
Query status of the local binary server and registered buffers (gl_server_status)
gl_benchmark_data()
Generate Synthetic Geospatial Benchmark Datasets (gl_benchmark_data)
gl_popup_table()
Generate Compact HTML Table Popups (gl_popup_table)
gl_bbox_to_wkt()
Convert a glmap Selection or Bounds Event into a WKT Polygon (gl_bbox_to_wkt)