Drawing Library

DrawingManager 类

google.maps.drawing.DrawingManager class
extends MVCObject
library "drawing"

允许用户在地图上绘制标记、多边形、多段线、矩形和圆形。DrawingManager 的绘制模式定义了用户将创建的叠加层类型。向地图添加一个控件,以便用户切换绘制模式。

const {DrawingManager} = await google.maps.importLibrary("drawing");
DrawingManager
DrawingManager([options])
参数:
创建一个 DrawingManager,让用户可以在地图上绘制叠加层,并使用绘图控件在要绘制的叠加层类型之间切换。
getDrawingMode
getDrawingMode()
参数:无
返回值:OverlayType|null
返回 DrawingManager 的绘制模式。
getMap
getMap()
参数:无
返回值:Map|null
返回 DrawingManager 附加到的 Map,即创建的叠加层将放置到的 Map。
setDrawingMode
setDrawingMode(drawingMode)
参数:
返回值:无
更改 DrawingManager 的绘制模式,该模式定义了要添加到地图上的叠加层类型。接受的值包括 'marker'、'polygon'、'polyline'、'rectangle'、'circle' 或 null。null 绘图模式意味着用户可以正常与地图互动,点击不会绘制任何内容。
setMap
setMap(map)
参数:
  • map:Map optional
返回值:无
将 DrawingManager 对象附加到指定的 Map。
setOptions
setOptions(options)
参数:
返回值:无
设置 DrawingManager 的选项。
继承的方法: addListener、bindTo、get、notify、set、setValues、unbind、unbindAll
circlecomplete
function(circle)
参数:
  • circle:Circle optional 用户刚刚绘制的圆圈。
此事件会在用户完成圆形绘制时触发。
markercomplete
function(marker)
参数:
  • marker:Marker 用户刚刚绘制的标记。
此事件会在用户完成标记绘制时触发。
overlaycomplete
function(event)
参数:
当用户完成绘制任何类型的叠加层时,系统会触发此事件。
polygoncomplete
function(polygon)
参数:
  • polygon:Polygon 用户刚刚绘制的多边形。
此事件会在用户完成多边形绘制时触发。
polylinecomplete
function(polyline)
参数:
  • polyline:Polyline optional用户刚刚绘制的多段线。
此事件会在用户完成多段线绘制时触发。
rectanglecomplete
function(rectangle)
参数:
  • rectangle:Rectangle optional 用户刚刚绘制的矩形。
此事件会在用户完成矩形绘制时触发。

DrawingManagerOptions 接口

google.maps.drawing.DrawingManagerOptions 接口

绘图管理器的选项。

circleOptions
可选
类型:CircleOptions optional
要应用于使用此 DrawingManager 创建的任何新圈子的选项。center 和 radius 属性会被忽略,新圆圈的 map 属性始终设置为 DrawingManager 的地图。
drawingControl
可选
类型:boolean optional
默认值:true
绘图控件的启用/停用状态。
drawingControlOptions
可选
类型:DrawingControlOptions optional
绘图控件的显示选项。
drawingMode
可选
类型:OverlayType optional
DrawingManager 的绘制模式,用于定义要添加到地图上的叠加层类型。接受的值包括 'marker'、'polygon'、'polyline'、'rectangle'、'circle' 或 null。null 绘图模式意味着用户可以正常与地图互动,点击不会绘制任何内容。
map
可选
类型:Map optional
DrawingManager 附加到的 Map,即创建的叠加层将放置到的 Map。
markerOptions
可选
类型:MarkerOptions optional
要应用于使用此 DrawingManager 创建的任何新标记的选项。position 属性会被忽略,并且新标记的 map 属性始终设置为 DrawingManager 的地图。
polygonOptions
可选
类型:PolygonOptions optional
要应用于使用此 DrawingManager 创建的任何新多边形的选项。paths 属性会被忽略,并且新多边形的 map 属性始终设置为 DrawingManager 的地图。
polylineOptions
可选
类型:PolylineOptions optional
要应用于使用此 DrawingManager 创建的任何新多段线的选项。系统会忽略 path 属性,并且新多段线的 map 属性始终设置为 DrawingManager 的地图。
rectangleOptions
可选
类型:RectangleOptions optional
要应用于使用此 DrawingManager 创建的任何新矩形的选项。bounds 属性会被忽略,并且新矩形的 map 属性始终设置为 DrawingManager 的地图。

DrawingControlOptions 接口

google.maps.drawing.DrawingControlOptions 接口

用于呈现绘图控件的选项。

drawingModes
可选
类型:Array<OverlayType> optional
要在绘图控件中显示的绘图模式,按其显示顺序排列。手形图标(对应于 null 绘图模式)始终可用,无需在此数组中指定。
position
可选
类型:ControlPosition optional
位置 ID。用于指定控件在地图上的位置。

OverlayCompleteEvent 接口

google.maps.drawing.OverlayCompleteEvent 接口

DrawingManager 上的 overlaycomplete 事件的属性。

overlay
已完成的叠加层。
type
类型:OverlayType
已完成的叠加层的类型。

OverlayType 常量

google.maps.drawing.OverlayType 常量
库 "drawing"

DrawingManager 可能创建的叠加层类型。按值或使用常量名称指定这些值。例如 'polygon' 或 google.maps.drawing.OverlayType.POLYGON。

这些常量也可以用作字符串。在 TypeScript 中,字符串字面量由 OverlayTypeString 类型定义。

const {OverlayType} = await google.maps.importLibrary("drawing");
CIRCLE 指定 DrawingManager 会创建圆形,并且 overlaycomplete 事件中给定的叠加层是圆形。
MARKER 指定 DrawingManager 会创建标记,并且 overlaycomplete 事件中给定的叠加层是标记。
POLYGON 指定 DrawingManager 会创建多边形,并且 overlaycomplete 事件中给定的叠加层是多边形。
POLYLINE 指定 DrawingManager 会创建多段线,并且 overlaycomplete 事件中给定的叠加层是多段线。
RECTANGLE 指定 DrawingManager 会创建矩形,并且 overlaycomplete 事件中给定的叠加层是矩形。