#### # new SketchBaseDrawTool(options)

草图基础绘图工具类

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`options` | Object | 构造参数
`view` | MapView | SceneView | 地图视图对象
`layer` | GraphicsLayer | 草图图层管对象
`sketchStyle` | SketchStyle | 草图符号
`extendOptions` | Object | 草图编辑的扩展属性，可以通过该属性传入草图编辑额外需要的参数

### 成员变量

#### 成员变量概述

名称 | 类型 | 描述
--- | --- | ---
`arcType` | `Number` | `弧线类型`
`editOption` | `Object` | `草图选中编辑配置项`
`elevationInfo` | `SketchStyle` | `图形高程模式参数`
`extendOptions` | `Object` | `草图编辑的扩展属性，可以通过该属性传入草图编辑额外需要的参数`
`layer` | `GraphicsLayer` | `草图图层`
`sketchStage` | `SketchStage` | `草图绘图形集合`
`sketchStyle` | `SketchStyle` | `草图符号`
`type` | `String` | `草图工具类型名`
`undoRedoManager` | `String` | `草图撤销回退管理器`
`view` | `MapView | SceneView` | `地图视图`

#### 成员变量详情

类型: Number

#### # arcType

弧线类型

类型: Object

#### # editOption

草图选中编辑配置项

类型: SketchStyle

#### # elevationInfo

图形高程模式参数

类型: Object

#### # extendOptions

草图编辑的扩展属性，可以通过该属性传入草图编辑额外需要的参数

类型: GraphicsLayer

#### # layer

草图图层

类型: SketchStage

#### # sketchStage

草图绘图形集合

类型: SketchStyle

#### # sketchStyle

草图符号

类型: String

#### # type

草图工具类型名

类型: String

#### # undoRedoManager

草图撤销回退管理器

类型: MapView | SceneView

#### # view

地图视图

### 方法

#### 方法概述

名称 | 返回值类型 | 描述
--- | --- | ---
`addVertex` | `` | `当前草图图形中插入新的顶点`
`getDistanceByPixel` | `Number` | `根据像素单位获取距离`
`getMidScaleCoordinates` | `Number` | `获取图形通过四个中点缩放后的坐标`
`getPanCoordinates` | `Number` | `获取平移后的坐标`
`getScaleCoordinates` | `Number` | `获取图形通过四个顶点缩放后的坐标`
`removeDrawTool` | `` | `清除草图工具`
`removeVertex` | `` | `移除草图图形的某个顶点`
`setSketchStyle` | `` | `设置草图样式`
`setSnapAndReferGeometries` | `` | `设置捕获和线造区边界参考几何图形集合`
`start` | `` | `开始绘制草图`
`stop` | `` | `停止绘制草图`
`updateFeature` | `` | `更新feature`
`updateVertex` | `` | `更新当前草图图形的某个顶点`

#### 方法详情

#### # addVertex(point, index)

当前草图图形中插入新的顶点

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`point` | Point | 新增/插入顶点
`index` | Number | 新增/新增点的序号

#### # getDistanceByPixel(pixel)

根据像素单位获取距离

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`pixel` | Number | 编辑状态码

返回值

距离

类型: Number

#### # getMidScaleCoordinates(coordinates, direction, extent, startPoint, movePoint, oriCoordinates)

获取图形通过四个中点缩放后的坐标

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`coordinates` | Array | 坐标数组
`direction` | String | 方向
`extent` | Extent | 图形extent范围
`startPoint` | Point | 移动前的点
`movePoint` | Point | 移动后的点
`oriCoordinates` | Point | 图形原始坐标

返回值

缩放后的坐标

类型: Number

#### # getPanCoordinates(coordinates, deltaX, deltaY, pointType, extent)

获取平移后的坐标

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`coordinates` | Array | 坐标数组
`deltaX` | Number | x轴偏移量
`deltaY` | Number | y轴偏移量
`pointType` | Number | 点属性类型
`extent` | Number | 点所在范围

返回值

平移后的坐标

类型: Number

#### # getScaleCoordinates(coordinates, direction, extent, startPoint, movePoint, oriCoordinates)

获取图形通过四个顶点缩放后的坐标

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`coordinates` | Array | 坐标数组
`direction` | String | 方向
`extent` | Extent | 图形extent范围
`startPoint` | Point | 移动前的点
`movePoint` | Point | 移动后的点
`oriCoordinates` | Point | 图形原始坐标

返回值

缩放后的坐标

类型: Number

#### # removeDrawTool()

清除草图工具

#### # removeVertex(index)

移除草图图形的某个顶点

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`index` | Number | 需更新的顶点的序号

#### # setSketchStyle(sketchStyle)

设置草图样式

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`sketchStyle` | SketchStyle |

#### # setSnapAndReferGeometries(geometries)

设置捕获和线造区边界参考几何图形集合

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`geometries` | Array.<Geometry> | 可选，几何图形集合。

#### # start()

开始绘制草图

#### # stop()

停止绘制草图

#### # updateFeature(point, feature)

更新feature

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`point` | Point | 待更新的位置
`feature` | Feature | 被更新的feature

#### # updateVertex(point, index)

更新当前草图图形的某个顶点

#### 参数

名称 | 类型 | 描述
--- | --- | ---
`point` | Point | 新的顶点
`index` | Number | 需更新的顶点的序号