# Class: SpaAnalysis

## SpaAnalysis()

#### new SpaAnalysis()

空间分析

Source:
  - SpaAnalysis.js, line 13

### Methods

#### (async, static) boundary(geom) → {Promise.<Geometry>}

提取几何的边界

##### Parameters:

Name | Type | Description
--- | --- | ---
`geom` | Geometry | 几何对象

Source:
  - SpaAnalysis.js, line 341

##### Returns:

提取的几何边界对象

Type
  Promise.<Geometry>

#### (async, static) buffer(geom, leftDis, rightDis, sRefSrc) → {Promise.<GeoPolygons>}

*

详细说明:
特别说明:
参数geom几何与左右缓冲半径的单位不一致的情况(sRefSrc必须赋值)，如：缓冲半径是米，geom几何单位不是米，源投影坐标系sRefSrc是geom几何数据的投影坐标系; 缓冲分析返回的结果坐标单位与参数geom几何单位一致
参数geom几何与左右缓冲半径的单位一致的情况(sRefSrc赋值null)
示例代码:
无

计算左右缓冲区(圆角边界)

##### Parameters:

Name | Type | Description
--- | --- | ---
`geom` | Geometry |
`leftDis` | double | 左半径
`rightDis` | double | 右半径
`sRefSrc` | SRefData | 数据的源投影坐标系

Source:
  - SpaAnalysis.js, line 117

##### Returns:

计算得出的缓冲区

Type
  Promise.<GeoPolygons>

#### (async, static) bufferWithEndCapStyle(geom, leftDis, rightDis, endCapStyle, sRefSrc) → {Promise.<GeoPolygons>}

计算左右缓冲区

详细说明:
特别说明:
参数geom几何与左右缓冲半径的单位不一致的情况(sRefSrc必须赋值)，如：缓冲半径是米，geom几何单位不是米，源投影坐标系sRefSrc是geom几何数据的空间参考系; 缓冲分析返回的结果坐标单位与参数geom几何单位一致
参数geom几何与左右缓冲半径的单位一致的情况(sRefSrc赋值null)
示例代码:
无

##### Parameters:

Name | Type | Description
--- | --- | ---
`geom` | Geometry |
`leftDis` | double | 左半径
`rightDis` | double | 右半径
`endCapStyle` | int | 缓冲区边界类型 0/1/2-圆角/垂直/平角
`sRefSrc` | SRefData | 数据的源投影坐标系

Source:
  - SpaAnalysis.js, line 83

##### Returns:

计算得出的缓冲区

Type
  Promise.<GeoPolygons>

#### (async, static) clip(geom, clipPoly) → {Promise.<Geometry>}

裁剪(内裁)

##### Parameters:

Name | Type | Description
--- | --- | ---
`geom` | Geometry | 被裁剪几何
`clipPoly` | GeoPolygon | 裁剪区

Source:
  - SpaAnalysis.js, line 160
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

计算得出的缓冲区

Type
  Promise.<Geometry>

#### (async, static) clipWithType(geom, clipPoly, flag) → {Promise.<Geometry>}

裁剪

##### Parameters:

Name | Type | Description
--- | --- | ---
`geom` | Geometry | 被裁剪几何
`clipPoly` | GeoPolygon | 裁剪区
`flag` | int | 裁剪类型 0/1-内裁/外裁

Source:
  - SpaAnalysis.js, line 139
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

计算得出的缓冲区

Type
  Promise.<Geometry>

#### (async, static) convexHull(geom) → {Promise.<GeoPolygon>}

计算几何对象的凸闭包

##### Parameters:

Name | Type | Description
--- | --- | ---
`geom` | Geometry | 几何对象

Source:
  - SpaAnalysis.js, line 178

##### Returns:

计算得出的凸闭包区

Type
  Promise.<GeoPolygon>

#### (async, static) createObj() → {Promise.<SpaAnalysis>}

构造一个新的 SpaAnalysis 对象。

Source:
  - SpaAnalysis.js, line 24

##### Returns:

Type
  Promise.<SpaAnalysis>

#### (async, static) difference(inputGeom, differenceGeom) → {Promise.<Geometry>}

计算两个几何对象的差集

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputGeom` | Geometry | 输入几何对象
`differenceGeom` | Geometry | 求差几何对象

Source:
  - SpaAnalysis.js, line 199
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

得出的两个几何对象的差集

Type
  Promise.<Geometry>

#### (async, static) getTolerance() → {Promise.<double>}

获取容差

Source:
  - SpaAnalysis.js, line 40

##### Returns:

容差

Type
  Promise.<double>

#### (async, static) intersection(inputGeom, intersectGeom) → {Promise.<Geometry>}

计算两个几何对象的交集

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputGeom` | Geometry | 输入几何对象
`intersectGeom` | Geometry | 求交几何对象

Source:
  - SpaAnalysis.js, line 220
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

得出的两个几何对象的交集

Type
  Promise.<Geometry>

#### (async, static) merge(inputGeom, mergeGeom) → {Promise.<Geometry>}

合并两个几何对象

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputGeom` | Geometry | 输入几何对象
`mergeGeom` | Geometry | 合并的几何对象

Source:
  - SpaAnalysis.js, line 281
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

返回合并后的几何对象

Type
  Promise.<Geometry>

#### (async, static) mergeGeoPolygons(GeoPolygonArry) → {Promise.<Geometry>}

合并两个几何对象

##### Parameters:

Name | Type | Description
--- | --- | ---
`GeoPolygonArry` | Array.<GeoPolygon> | 需要合并的几何对象

Source:
  - SpaAnalysis.js, line 261
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

返回合并后的几何对象

Type
  Promise.<Geometry>

#### (async, static) setTolerance(tolerance) → {Promise.<void>}

设置容差

##### Parameters:

Name | Type | Description
--- | --- | ---
`tolerance` | double | 容差

Source:
  - SpaAnalysis.js, line 55

##### Returns:

计算得出的缓冲区

Type
  Promise.<void>

#### (async, static) split(geom, line) → {Promise.<Geometry>}

指定线分割折线或多边形

##### Parameters:

Name | Type | Description
--- | --- | ---
`geom` | Geometry | 输入几何对象
`line` | GeoLine | 分割线

Source:
  - SpaAnalysis.js, line 323
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

返回分割后的结果。分割失败返回null，分割成功返回多线或多区。

Type
  Promise.<Geometry>

#### (async, static) symmetricDifference(inputGeom, intersectGeom) → {Promise.<Geometry>}

计算两个几何对象的对称差

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputGeom` | Geometry | 输入几何对象
`intersectGeom` | Geometry | 求对称差几何对象

Source:
  - SpaAnalysis.js, line 241
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

得出的两个几何对象的对称差

Type
  Promise.<Geometry>

#### (async, static) union(inputGeom, unionGeom) → {Promise.<Geometry>}

计算两个几何对象的并集

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputGeom` | Geometry | 输入几何对象
`unionGeom` | Geometry | 求并几何对象

Source:
  - SpaAnalysis.js, line 302
See:
  - 裁剪设置的容差默认值为0.0001, 对于经纬度数据，需要传入合适的容差值，对于经纬度数据建议先调用setTolerance()接口使用0.000000001作为容差值

##### Returns:

得出的两个几何对象的并集

Type
  Promise.<Geometry>