Module: ol/interaction/Draw

ol/interaction/Draw


Classes

DrawEvent
Draw

函数s

import {createBox} from 'ol/interaction/Draw';

创建一个geometry函数,将生成一个与坐标轴对齐的矩形多边形。 将此与绘制交互和type: 'Circle'一起使用,可返回矩形而不是圆形几何图形。

返回值:
绘制矩形多边形的函数。

createRegularPolygon(sides, angle){Geometry函数}

import {createRegularPolygon} from 'ol/interaction/Draw';

type: 'Circle'创建一个geometry函数,将生成具有用户指定边数和起始角度的正多边形, 而不是Circle几何图形。

Name Type Description
sides number | undefined

正多边形的边数。默认为 32。

angle number | undefined

第一个点的角度,以逆时针弧度表示。0 表示东。 默认为正多边形中心到当前指针位置的方向所定义的角度。

返回值:
绘制多边形的函数。

Type Definitions

Geometry函数()

接受坐标数组和可选的现有几何对象以及投影作为参数,并返回几何对象的函数。可选的现有几何对象是在不带第二个参数调用函数时返回的几何对象。

LineCoordType{module:interaction/tracing~LineCoordType}

Mode{'Point'} {'LineString'} {'Polygon'} {'Circle'}

绘制模式。将多部件几何类型与其单部件对应类型合并。

Options{Object}

属性:
Name Type Description
type Type

此实例绘制的几何图形的类型。

clickTolerance number
(defaults to 6)

将“up”事件视为“click”事件并实际向正在绘制的几何图形添加点/顶点的“down”和“up”之间的最大像素距离。默认值 6 是为了让绘制交互在鼠标和触摸设备上都能正确工作。

features Collection<要素> | undefined

已绘制要素的目标集合。

source VectorSource | undefined

绘制要素的目标数据源。

dragVertexDelay number
(defaults to 500)

pointerdown 后延迟的毫秒数,在此之前当前顶点可以被拖动到精确位置。

snapTolerance number
(defaults to 12)

吸附到绘制完成的像素距离。必须大于 0

stopClick boolean
(defaults to false)

在绘制期间阻止 click、singleclick 和 doubleclick 事件触发。

maxPoints number | undefined

在多边形环或线字符串完成之前可以绘制的点数。默认无限制。

minPoints number | undefined

多边形环或线字符串可以完成之前必须绘制的点数。多边形环默认为 3,线字符串默认为 2

finishCondition Condition | undefined

接受 MapBrowserEvent 并返回布尔值以指示是否可以完成绘制的函数。绘制 POINT 或 MULTI_POINT 几何对象时不使用。

style StyleLike | FlatStyleLike | undefined

草图要素的样式。绘制交互最多可以有三个草图要素,取决于模式。它始终包含一个具有 Point 几何图形的要素,对应于当前光标位置。如果模式为 LineStringPolygon,且至少有一个已绘制的点,它还将包含一个具有 LineString 几何图形的要素,对应于已绘制点和当前光标位置之间的线。如果模式为 Polygon,且至少有一个已绘制的点,它还将包含一个具有 Polygon 几何图形的要素,对应于已绘制点和当前光标位置之间的多边形(注意如果只绘制了一个点,此多边形只有两个点)。如果模式为 Circle,且已绘制一个点,它还将包含一个具有 Circle 几何图形的要素,其圆心为绘制的点,半径由绘制点和光标之间的距离决定。

geometry函数 Geometry函数 | undefined

当几何图形的坐标更新时调用的函数。

geometryName string | undefined

绘制交互创建的要素使用的几何名称。

condition Condition | undefined

接受 MapBrowserEvent 并返回布尔值以指示是否应处理该事件的函数。默认为 noModifierKeys,即单击添加顶点或停用手绘。

freehand boolean
(defaults to false)

对线条、多边形和圆形使用自由绘制模式。这使得交互始终在自由绘制模式下操作,并优先于任何 freehandCondition 选项。

freehandCondition Condition | undefined

激活线条和多边形自由绘制模式的条件。此函数接受 MapBrowserEvent 并返回布尔值以指示是否应处理该事件。默认为 shiftKeyOnly,即 Shift 键激活自由绘制。

trace boolean | Condition
(defaults to false)

追踪另一个几何图形的一部分。在自由绘制模式下被忽略。

traceSource VectorSource | undefined

要追踪的要素数据源。如果追踪处于活动状态且未提供 traceSource,将使用交互的 source。追踪要求交互配置了 traceSourcesource

wrapX boolean
(defaults to false)

在草图覆盖物上水平环绕世界。

geometryLayout GeometryLayout
(defaults to 'XY')

绘制交互创建的要素几何图形的布局。

PointCoordType{Coordinate}

绘制点时的坐标类型。

PolyCoordType{Array<Array<Coordinate>>}

绘制多边形时的坐标类型。

用于绘制坐标的类型。

TraceState{module:interaction/tracing~TraceState}

TraceTarget{module:interaction/tracing~TraceTarget}