在输入几何图形周围的指定距离处创建平面(或欧几里德)缓冲区多边形。
GeometryEngine 有两种在客户端缓冲几何图形的方法:buffer 和 geodesicBuffer。决定使用哪种方法时要小心。作为一般规则,如果输入几何具有 WGS84 (wkid: 4326) 或 Web Mercator 的空间参考,请使用 geodesicBuffer。仅当尝试使用除 Web 墨卡托之外的 projected coordinate system 缓冲几何图形时,才使用缓冲区(此方法)。如果您需要使用 WGS84 (wkid: 4326) 以外的地理坐标系缓冲几何图形,请使用 geometryService.buffer() 。
参数:
类型 说明 缓冲区输入几何。
geometry
和distance
参数必须指定为两个数组或两个非数组。永远不要将一个指定为数组,另一个指定为非数组。用于缓冲的指定距离。
geometry
和distance
参数必须指定为两个数组或两个非数组。永远不要将一个指定为数组,另一个指定为非数组。当使用几何数组作为输入时,几何数组的长度不必等于distance
数组的长度。例如,如果您传递一个包含四个几何图形的数组:[g1, g2, g3, g4]
和一个具有一个距离的数组:[d1]
,则所有四个几何图形都将由单个距离值缓冲。如果改为使用三个距离的数组:[d1, d2, d3]
、g1
将由d1
缓冲、g2
由d2
缓冲,并且g3
和g4
都将由d3
缓冲。几何数组的值将与距离数组中的值一一匹配,直到达到距离数组的最终值,在这种情况下,该值将应用于剩余的几何图形。unit LinearUnits可选的 距离的测量单位。默认为输入几何的单位。
unionResults Boolean可选的 默认值:错误的确定是否应将输出几何合并为单个多边形。
返回:
类型 说明 Promise<(Polygon|Polygon[])> 解析后,响应是生成的缓冲区。如果将几何数组用作输入,则结果将是一个数组。如果将单个几何图形输入到函数中,它将是单个多边形。 例子:
const pointBuffer = await geometryEngineAsync.buffer(point, 1000, "feet");
基本信息
以下是所在类或对象的基本信息。
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.buffer
函数(或属性)的定义如下:
相关用法
- JavaScript ArcGIS geometryEngineAsync.overlaps用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.geodesicBuffer用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.intersects用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.symmetricDifference用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.distance用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.intersect用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.planarArea用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.crosses用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.flipHorizontal用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.rotate用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.generalize用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.difference用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.touches用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.disjoint用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.contains用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.nearestVertex用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.within用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.cut用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.union用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.isSimple用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.geodesicDensify用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.densify用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.equals用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.geodesicLength用法及代码示例
- JavaScript ArcGIS geometryEngineAsync.convexHull用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 geometryEngineAsync.buffer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。