当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS geometryEngineAsync.geodesicBuffer用法及代码示例


基本信息

以下是所在类或对象的基本信息。

AMD: require(["esri/geometry/geometryEngineAsync"], (geometryEngineAsync) => { /* code goes here */ });

ESM: import * as geometryEngineAsync from "@arcgis/core/geometry/geometryEngineAsync";

对象: esri/geometry/geometryEngineAsync

自从:用于 JavaScript 4.0 的 ArcGIS API

用法说明

geometryEngineAsync.geodesicBuffer函数(或属性)的定义如下:

geodesicBuffer (geometry, distance, unit, unionResults) {Promise<(Polygon|Polygon[])>}


在输入几何图形周围的指定距离处创建测地线缓冲区多边形。在计算距离时,此方法会考虑地球的曲率,从而在处理非常大的几何图形和/或在全局范围内空间变化的几何图形时提供高度准确的结果,其中一个投影坐标系无法准确绘制坐标和测量距离对于所有几何形状。

此方法仅适用于 WGS84 (wkid: 4326) 和 Web Mercator 空间参考。一般来说,如果您的输入几何图形分配了这两个空间参考之一,则应始终使用geodesicBuffer() 来获取这些几何图形的最准确结果。如果需要缓冲分配了projected coordinate system other than Web Mercator的点,请改用buffer()。如果输入几何图形的地理坐标系不是 WGS84 (wkid: 4326),请使用 geometryService.buffer()

参数:

类型说明
geometry Geometry|Geometry[]

缓冲区输入几何。 geometrydistance 参数必须指定为两个数组或两个非数组。永远不要将一个指定为数组,另一个指定为非数组。

distance Number|Number[]

用于缓冲的指定距离。 geometrydistance 参数必须指定为两个数组或两个非数组。永远不要将一个指定为数组,另一个指定为非数组。当使用几何数组作为输入时,几何数组的长度不必等于distance 数组的长度。例如,如果您传递一个包含四个几何图形的数组:[g1, g2, g3, g4] 和一个具有一个距离的数组:[d1],则所有四个几何图形都将由单个距离值缓冲。如果改为使用三个距离的数组:[d1, d2, d3]g1 将由 d1 缓冲、g2d2 缓冲,并且 g3g4 都将由 d3 缓冲。几何数组的值将与距离数组中的值一一匹配,直到达到距离数组的最终值,在这种情况下,该值将应用于剩余的几何图形。

可选的

距离的测量单位。默认为输入几何的单位。

unionResults Boolean
可选的
默认值:错误的

确定输出几何是否应合并为单个多边形。

返回:

类型 说明
Promise<(Polygon|Polygon[])> 解析后,响应是生成的缓冲区。如果将几何数组用作输入,则结果将是一个数组。如果将单个几何图形输入到函数中,它将是单个多边形。

例子:

const pointButter = await geometryEngineAsync.geodesicBuffer(point, 1000, "kilometers");

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 geometryEngineAsync.geodesicBuffer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。