-
Name Type Description typeType 此实例绘制的几何图形的类型。
clickTolerancenumber (defaults to 6) "down"和"up"之间的最大像素距离,用于将"up"事件视为"click"事件并 实际向正在绘制的几何图形添加点/顶点。默认值
6是为了使绘制交互 在鼠标和触摸设备上都能正常工作。featuresCollection<要素> | undefined 已绘制要素的目标集合。
sourceVectorSource | undefined 已绘制要素的目标数据源。
dragVertexDelaynumber (defaults to 500) 指针按下后延迟的毫秒数,之后当前顶点可拖动到精确位置。
snapTolerancenumber (defaults to 12) 吸附到绘制结束点的像素距离。必须大于
0。stopClickboolean (defaults to false) 在绘制过程中阻止 click、singleclick 和 doubleclick 事件触发。
maxPointsnumber | undefined 在多边形环或线段完成之前可以绘制的点数。默认没有限制。
minPointsnumber | undefined 在多边形环或线段完成之前必须绘制的点数。多边形环默认为
3, 线段默认为2。finishConditionCondition | undefined 一个函数,接受
MapBrowserEvent并返回一个布尔值, 指示是否可以完成绘制。绘制 POINT 或 MULTI_POINT 几何图形时不使用。styleStyleLike | FlatStyleLike | undefined 草图要素的样式。绘制交互最多可以有三个草图要素,具体取决于模式。 它始终包含一个具有
Point几何图形的要素,对应于当前光标位置。 如果模式是LineString或Polygon,且至少有一个已绘制的点,它还将包含一个具有LineString几何图形的要素,对应于已绘制点与当前光标位置之间的线。 如果模式是Polygon,且至少有一个已绘制的点,它还将包含一个具有Polygon几何图形的要素,对应于已绘制点与当前光标位置之间的多边形 (注意:如果只绘制了一个点,此多边形只有两个点)。 如果模式是Circle,且已绘制了一个点,它还将包含一个具有Circle几何图形的要素, 其圆心为已绘制的点,半径由已绘制点与光标之间的距离决定。geometry函数Geometry函数 | undefined 当几何图形的坐标更新时调用的函数。
geometryNamestring | undefined 绘制交互创建的要素所使用的几何图形名称。
conditionCondition | undefined 一个函数,接受
MapBrowserEvent并返回一个布尔值, 指示该事件是否应被处理。默认为noModifierKeys,即点击添加顶点 或停用手绘模式。freehandboolean (defaults to false) 对线、多边形和圆启用手绘模式。这将使交互始终在手绘模式下操作, 并优先于任何
freehandCondition选项。freehandConditionCondition | undefined 激活线和多边形手绘模式的条件。此函数接受
MapBrowserEvent并 返回一个布尔值,指示该事件是否应被处理。默认为shiftKeyOnly,即按住 Shift 键激活手绘模式。traceboolean | Condition (defaults to false) 追踪另一个几何图形的一部分。在手绘模式下被忽略。
traceSourceVectorSource | undefined 用于追踪的要素数据源。如果追踪处于活动状态且未提供
traceSource, 则使用交互的source。追踪要求交互配置了traceSource或source。wrapXboolean (defaults to false) 在草图覆盖物上水平环绕世界。
geometryLayoutGeometryLayout (defaults to 'XY') 绘制交互创建的要素几何图形的布局。
触发事件:
-
change(BaseEvent) - 通用更改事件。当修订计数器增加时触发。 -
change:active(ObjectEvent) -
drawabort(DrawEvent) - 要素绘制中止时触发 -
drawend(DrawEvent) - 要素绘制完成时触发 -
drawstart(DrawEvent) - 要素绘制开始时触发 -
error(BaseEvent) - 通用错误事件。 当发生错误时触发。 -
propertychange(ObjectEvent) - 当属性更改时触发。
-
Extends
Observable Properties
| Name | Type | Settable | ObjectEvent type | Description |
|---|---|---|---|---|
active |
boolean | yes | change:active |
如果交互处于激活状态则为 |
Methods
-
停止绘制,但不将草图要素添加到目标图层。
-
将坐标追加到当前正在绘制的几何图形末尾。这可用于绘制 LineString 或 Polygon。 坐标将被追加到当前 LineString 或当前 Polygon 的外环。如果没有正在绘制的几何图形,将创建一个新的。
Name Type Description coordinatesLineCoordType 要追加到坐标数组的线性坐标。
-
增加修订计数器并分发 'change' 事件。
-
分发事件并调用所有监听此类型事件的监听器。事件参数可以是一个字符串或一个 具有
type属性的对象。Name Type Description eventBaseEvent | string 事件对象。
返回值:
如果有人在事件对象上调用了 preventDefault 或任何监听器返回 false,则返回false。
-
通过从现有几何图形开始来启动绘制模式,该几何图形将接收新的附加点。 这仅适用于具有
LineString几何图形的要素,交互将通过向坐标数组末尾添加点来延伸线。 这将更改原始要素,而不是绘制副本。此函数将分发
drawstart事件。Name Type Description feature要素<LineString> 要延伸的要素。
-
停止绘制并将草图要素添加到目标图层。在插入要素之前 分发
DRAWEND事件。返回值:
已绘制的要素。
-
获取一个值。
Name Type Description keystring 键名。
返回值:
值。
-
返回交互当前是否激活。
返回值:
如果交互处于激活状态则为true,否则为false。
-
获取此交互是否处于手绘模式。
返回值:
是否手绘模式。
-
获取对象属性名列表。
返回值:
属性名列表。
-
获取与此交互关联的地图。
返回值:
地图。
-
获取此交互渲染草图要素的覆盖物图层。
返回值:
覆盖物图层。
-
返回当前参与交互的指针数量,例如使用两根手指时为
2。返回值:
指针数量。
-
获取包含所有属性名和值的对象。
返回值:
对象。
-
获取此对象的版本号。 每次对象被修改时,其版本号将递增。
返回值:
版本号。
-
处理
地图浏览器事件,可能会实际绘制或完成绘制。Name Type Description eventMapBrowserEvent<PointerEvent> 地图浏览器事件。
返回值:
返回false以停止事件传播。
-
监听特定类型的事件。
Name Type Description typestring | Array.<string> 事件类型或事件类型数组。
listenerfunction 监听器函数。
返回值:
监听器的唯一键。如果第一个参数是事件类型数组,则返回键的数组。
-
仅监听一次特定类型的事件。
Name Type Description typestring | Array.<string> 事件类型或事件类型数组。
listenerfunction 监听器函数。
返回值:
监听器的唯一键。如果第一个参数是事件类型数组,则返回键的数组。
-
移除当前正在绘制的要素的最后一个点。绘制 POINT 或 MULTI_POINT 几何图形时不执行任何操作。
-
设置一个值。
Name Type Description keystring 键名。
value* 值。
silentboolean | undefined 更新但不触发事件。
-
激活或停用交互。
Name Type Description activeboolean 是否激活。
-
设置是否以手绘模式进行绘制。
Name Type Description freehandboolean 是否手绘模式。
-
设置一组键值对。 注意,这会更改任何现有属性并添加新属性(不会移除任何现有属性)。
Name Type Description valuesPartial.<NoInfer.<Properties>> 值。
silentboolean | undefined 更新但不触发事件。
-
取消监听特定类型的事件。
Name Type Description typestring | Array.<string> 事件类型或事件类型数组。
listenerfunction 监听器函数。
-
取消设置一个属性。
Name Type Description keystring 键名。
silentboolean | undefined 取消设置但不触发事件。