Adds a Toolbar to draw shapes/points on the map.
Removes the draw toolbar
Usage
addDrawToolbar(
map,
targetLayerId = NULL,
targetGroup = NULL,
position = c("topleft", "topright", "bottomleft", "bottomright"),
polylineOptions = drawPolylineOptions(),
polygonOptions = drawPolygonOptions(),
circleOptions = drawCircleOptions(),
rectangleOptions = drawRectangleOptions(),
markerOptions = drawMarkerOptions(),
circleMarkerOptions = drawCircleMarkerOptions(),
editOptions = FALSE,
singleFeature = FALSE,
toolbar = NULL,
handlers = NULL,
edittoolbar = NULL,
edithandlers = NULL,
drag = TRUE
)
removeDrawToolbar(map, clearFeatures = FALSE)
Arguments
- map
The map widget.
- targetLayerId
An optional layerId of a GeoJSON/TopoJSON layer whose features need to be editable. Used for adding a GeoJSON/TopoJSON layer and then editing the features using the draw plugin.
- targetGroup
An optional group name of a Feature Group whose features need to be editable. Used for adding shapes(markers, lines, polygons) and then editing them using the draw plugin. You can either set layerId or group or none but not both.
- position
The position where the toolbar should appear.
- polylineOptions
See
drawPolylineOptions
(). Set to FALSE to disable polyline drawing.- polygonOptions
See
drawPolygonOptions
(). Set to FALSE to disable polygon drawing.- circleOptions
See
drawCircleOptions
(). Set to FALSE to disable circle drawing.- rectangleOptions
See
drawRectangleOptions
(). Set to FALSE to disable rectangle drawing.- markerOptions
See
drawMarkerOptions
(). Set to FALSE to disable marker drawing.- circleMarkerOptions
See
drawCircleMarkerOptions
(). Set to FALSE to disable circle marker drawing.- editOptions
By default editing is disable. To enable editing pass
editToolbarOptions
().- singleFeature
When set to TRUE, only one feature can be drawn at a time, the previous ones being removed.
- toolbar
See
toolbarOptions
. Set toNULL
to take Leaflets default values.- handlers
See
handlersOptions
. Set toNULL
to take Leaflets default values.- edittoolbar
See
edittoolbarOptions
. Set toNULL
to take Leaflets default values.- edithandlers
See
edithandlersOptions
. Set toNULL
to take Leaflets default values.- drag
When set to
TRUE
, the drawn features will be draggable during editing, utilizing theLeaflet.Draw.Drag
plugin. Otherwise, this library will not be included.- clearFeatures
whether to clear the map of drawn features.
Details
The drawn features emit events upon mouse interaction.
Event names follow the pattern: input$MAPID_LAYERCATEGORY_EVENTNAME
,
where LAYERCATEGORY
can be one of:
marker
shape
polyline
Similarly, for EVENTNAME
, valid values are:
click
mouseover
mouseout
See the provided example for usage:
browseURL(system.file("examples/shiny/draw-events/draw_mouse_events.R",
package = "leaflet.extras"))
Examples
leaflet() %>%
setView(0, 0, 2) %>%
addProviderTiles(providers$CartoDB.Positron) %>%
addDrawToolbar(
targetGroup = "draw",
editOptions = editToolbarOptions(
selectedPathOptions = selectedPathOptions()
)
) %>%
addLayersControl(
overlayGroups = c("draw"),
options = layersControlOptions(collapsed = FALSE)
) %>%
addStyleEditor()
## for more examples see
# browseURL(system.file("examples/draw.R",
# package = "leaflet.extras"))
# browseURL(system.file("examples/shiny/draw-events/app.R",
# package = "leaflet.extras"))
# browseURL(system.file("examples/shiny/draw-events/draw_mouse_events.R",
# package = "leaflet.extras"))