Skip to content

getCoverage 几何覆盖分析 ​

将覆盖源先合并去重,再计算它们对目标区域的覆盖面积、覆盖率和未覆盖部分。此能力是几何范围计算,不是无线信号传播或真实服务可达性模拟。

组件案例 ​

默认加载目标区域和两个覆盖圆,可通过两次单击继续加入覆盖圆;重新绘制恢复默认配置。

用法 ​

js
const analysis = new SpatialAnalysis({ unit: 'km', areaUnit: 'km2' })
const sources = [
  analysis.getBuffer([125.809, 44.147], 0.8).geometry,
  analysis.getBuffer([125.829, 44.154], 0.8).geometry,
]
const result = analysis.getCoverage(targetPolygon, sources)
console.log(result.coverageRatio * 100, result.coveredGeometry, result.uncoveredGeometry)

签名:getCoverage(target, coverageRegions, options?)。目标为一个面输入,覆盖源为面输入数组或 FeatureCollection;支持孔洞和 MultiPolygon。空覆盖源合法。

返回字段作用
unit全部面积的单位
targetArea目标总面积
coveredArea / uncoveredArea覆盖与未覆盖面积
coverageRatio覆盖率,范围 0~1
fullyCovered是否已无具有正面积的未覆盖部分
sourceCount覆盖源数量,含重复数据
center覆盖结果最大分块的标签锚点;无覆盖为 null
coveredGeometry / uncoveredGeometryPolygon / MultiPolygon;对应为空时为 null
coveredParts / uncoveredParts分块,每项含 area、center、geometry

覆盖源落在目标范围之外的部分不计入覆盖面积;源之间的重叠也不会重复计入。无源、相离、完全覆盖都会返回明确的空几何,而不是遗留旧的图层数据。

基于 Apache-2.0 许可发布