方法概述
名称 | 返回类型 | 描述 | 对象 | |
---|---|---|---|---|
Promise<(Polygon|Polygon[])> | 更多信息 在输入几何图形周围的指定距离处创建平面(或欧氏)缓冲区面。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 按包络计算目标几何图形的裁剪几何图形。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示一个几何图形是否包含另一个几何图形。 | 更多信息 | geometryEngineAsync | |
Promise<(Geometry|Geometry[])> | 更多信息 计算一个或多个几何形状的凸面船体。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示一个几何图形是否与另一个几何图形相交。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry[]> | 更多信息 将输入折线或多边形与切割折线相交的位置拆分输入折线或多边形。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 通过在现有顶点之间绘制点来致密化几何图形。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 创建两个几何图形的差异。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示一个几何图形是否与另一个几何图形不相交(不以任何方式相交)。 | 更多信息 | geometryEngineAsync | |
Promise<Number> | 更多信息 计算两个几何图形之间的最短平面距离。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示两个几何图形是否相等。 | 更多信息 | geometryEngineAsync | |
Promise<SpatialReferenceInfo> | 更多信息 返回一个对象,其中包含有关输入空间参考的其他信息。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 在水平轴上翻转几何图形。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 在垂直轴上翻转几何图形。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 对游标中的几何图形执行概化操作。 | 更多信息 | geometryEngineAsync | |
Promise<Number> | 更多信息 计算输入几何图形的面积。 | 更多信息 | geometryEngineAsync | |
Promise<(Polygon|Polygon[])> | 更多信息 在输入几何图形周围的指定距离处创建流地缓冲区面。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 返回输入几何图形的测地线致密化版本。 | 更多信息 | geometryEngineAsync | |
Promise<Number> | 更多信息 计算输入几何图形的长度。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 从两个几何之间的交点创建新几何。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示一个几何图形是否与另一个几何图形相交。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示给定的几何图形在拓扑上是否简单。 | 更多信息 | geometryEngineAsync | |
Promise<NearestPointResult> | 更多信息 查找最接近指定点的几何图形的坐标。 | 更多信息 | geometryEngineAsync | |
Promise<NearestPointResult> | 更多信息 在距离指定点最近的几何图形上查找顶点。 | 更多信息 | geometryEngineAsync | |
Promise<NearestPointResult> | 更多信息 查找距指定点的给定距离内的所有顶点,从最近点到最远点排序,并将它们作为对象数组返回。 | 更多信息 | geometryEngineAsync | |
Promise<(Geometry|Geometry[])> | 更多信息 偏移操作创建的几何图形是距输入折线或面的恒定平面距离。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示一个几何图形是否与另一个几何图形重叠。 | 更多信息 | geometryEngineAsync | |
Promise<Number> | 更多信息 计算输入几何图形的面积。 | 更多信息 | geometryEngineAsync | |
Promise<Number> | 更多信息 计算输入几何图形的长度。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示给定的 DE-9IM 关系是否适用于两个几何。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 将几何图形逆时针旋转指定的度数。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 对几何执行简化操作,这将更改给定的几何图形,使其定义相对于其几何类型在拓扑上合法。 | 更多信息 | geometryEngineAsync | |
Promise<(Geometry|Geometry[])> | 更多信息 创建两个几何图形的对称差。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示一个几何图形是否与另一个几何图形接触。 | 更多信息 | geometryEngineAsync | |
Promise<Geometry> | 更多信息 所有输入必须具有相同类型的几何,并且共享一个空间参考。 | 更多信息 | geometryEngineAsync | |
Promise<Boolean> | 更多信息 指示一个几何图形是否在另一个几何图形中。 | 更多信息 | geometryEngineAsync |
方法详情
-
在输入几何图形周围的指定距离处创建平面(或欧氏)缓冲区面。
GeometryEngine 有两种用于缓冲客户端几何图形的方法:buffer 和 geodesicBuffer。谨慎决定使用哪种方法。作为一般规则,使用测地线缓冲区的前提是几何空间参考为 WGS84(wkid:4326) 或 Web 墨卡托。仅在尝试使用除 Web 墨卡托以外的投影坐标系缓冲几何时才使用缓冲区(此方法)。如果您需要使用 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可选默认值:false确定输出几何图形是否应并集为单个多边形。
返回:类型 说明 Promise<(Polygon|Polygon[])> 解析后,响应是生成的缓冲区。如果将几何图形数组用作输入,则结果将为数组。如果将单个几何图形输入到函数中,则该多边形将是单个面。 示例:const pointBuffer = await geometryEngineAsync.buffer(point, 1000, "feet");
-
按包络计算目标几何图形的裁剪几何图形。
参数:geometry Geometry要修剪的几何图形。
envelope Extent用于剪辑的信封。
返回:类型 说明 Promise<Geometry> 解析后,响应是剪裁的几何图形。 - 另请参阅:
示例:// returns a new geometry of a polygon clipped by the views extent const clippedGeometry = await geometryEngineAsync.clip(boundaryPolygon, view.extent);
-
指示一个几何图形是否包含另一个几何图形。
参数:containerGeometry Geometry测试几何与其他几何的“包含”关系。将此几何体视为
insideGeometry
的潜在“容器”。insideGeometry Geometry测试与
containerGeometry
的“内部”关系的几何。返回:类型 说明 Promise<Boolean> 如果 containerGeometry
包含insideGeometry
,则响应为true
。示例:// returns true or false for one geometry containing another const isContained = await geometryEngineAsync.contains(extent, boundaryPolygon);
-
计算一个或多个几何形状的凸面船体。凸面船体是包围一组几何体或顶点的最小凸面。输入可以是单个几何图形(如折线)或任何几何图形类型的数组。船体通常是多边形,但在退化情况下也可以是折线或点。
参数:用于计算凸面船体的输入几何图形。如果指定了数组,则输入数组可以包含各种几何类型。提供数组时,输出也将是数组。
merge Boolean可选默认值:false指示是否将输出合并到单个几何图形(通常是多边形)中。
返回:类型 说明 Promise<(Geometry|Geometry[])> 解析为输入几何的凸包。这通常是一个多边形,但也可以是一条折线(如果输入是一组点或多段线形成一条直线)或一个点(在退化的情况下)。 示例:// returns the convex hull of a multipoint as a single polygon const hull = await geometryEngineAsync.convexHull(multipoint);
// returns the convex hull of an array of points as a single polygon const [ hull ] = await geometryEngineAsync.convexHull([ pointA, pointB, pointC ], true);
// returns the convex hull for each input line geometry as three polygons const hulls = await geometryEngineAsync.convexHull([ lineA, lineB, lineC ]);
// returns the convex hull for all input line geometries as a single polygon const [ hull ] = await geometryEngineAsync.convexHull([ lineA, lineB, lineC ], true);
// returns the convex hull for all input geometries as a single polygon const [ hull ] = await geometryEngineAsync.convexHull([ point, line, polygon ], true);
-
指示一个几何图形是否与另一个几何图形相交。
参数:geometry1 Geometry要交叉的几何图形。
geometry2 Geometry正在交叉的几何图形。
返回:类型 说明 Promise<Boolean> 如果geometry1 与geometry2 交叉,则返回 true
。- 另请参阅:
示例:// returns true or false if a line crosses a polygon const isCrossed = await geometryEngineAsync.crosses(boundaryPolygon, polyline);
-
将输入折线或多边形与切割折线相交的位置拆分输入折线或多边形。对于折线,所有左侧切割都在第一个几何图形中组合在一起。右切割和重合切割在第二个几何图形中分组,每个未定义的切割以及任何未切割的部分都作为单独的多段线输出。对于多边形,所有左侧切割都在第一个多边形中,所有右侧切割都在第二个多边形中,并且每个未定义的切割以及切割后的任何剩余部分都作为单独的多边形输出。如果没有返回切割,则数组将为空。只有在产生了左切或右切并且在切割后有剩余部分,或者切割被限定在刀具的左右两侧时,才会产生未定义的切割。
参数:geometry Geometry要切割的几何图形。
cutter Polyline用于切割几何图形的折线。
返回:类型 说明 Promise<Geometry[]> 解析后,响应是通过使用刀具切割输入几何创建的几何数组。 - 另请参阅:
示例:// returns array of cut geometries const geometries = await geometryEngineAsync.cut(boundaryPolygon, polyline);
-
通过在现有顶点之间绘制点来致密化几何图形。
参数:geometry Geometry要致密化的几何图形。
maxSegmentLength Number允许的最大段长度。必须是正值。
maxSegmentLengthUnit LinearUnits可选maxSegmentLength 的度量单位。默认为输入几何的单位。
返回:类型 说明 Promise<Geometry> 解析后,响应是致密化的几何图形。 示例:// Returns a densified geometry const geometry = await geometryEngineAsync.densify(boundaryPolygon, 25);
-
创建两个几何图形的差异。结果几何是 inputGeometry 不在减法器中的部分。减法器的维度必须等于或大于 inputGeometry 的维度。
参数:要从中减去的输入几何。
subtractor Geometry从 inputGeometry 中减去的几何图形。
返回:类型 说明 Promise<Geometry> 解析后,响应是 inputGeometry 的几何减去减法器几何。 示例:// Creates a new geometry based on the // difference of the two const geometry = await geometryEngineAsync.difference(boundaryPolygon, buffers);
-
指示一个几何图形是否与另一个几何图形不相交(不以任何方式相交)。
参数:geometry1 Geometry测试与其他几何的“不相交”关系的基础几何。
geometry2 Geometry测试与其他几何的“不相交”关系的比较几何。
返回:类型 说明 Promise<Boolean> 如果 geometry1
和geometry2
不相交(不以任何方式相交),则响应为true
。示例:// returns true if a geometry is not contained in another. // operates the opposite of contains const isDisjointed = await geometryEngineAsync.disjoint(polygon, boundaryPolygon);
-
计算两个几何图形之间的最短平面距离。距离以
distanceUnit
指定的线性单位报告,如果distanceUnit
为空,则以输入几何的 spatialReference 单位报告。要计算两点之间的测地线距离,首先使用两个兴趣点作为单条路径的起点和终点构造一条折线 。然后使用折线作为 geodesicLength() 方法的输入。
参数:geometry1 Geometry第一个输入几何。
geometry2 Geometry第二个输入几何。
distanceUnit LinearUnits可选返回值的计量单位。默认为输入几何图形的单位。
返回:类型 说明 Promise<Number> 解析时,响应是两个输入几何之间的距离。 示例:// returns numeric distance between two points const totalDistance = await geometryEngineAsync.distance(point1, point2, "feet");
-
指示两个几何图形是否相等。
参数:geometry1 Geometry第一个输入几何。
geometry2 Geometry第二个输入几何。
返回:类型 说明 Promise<Boolean> 解析后,如果两个输入几何图形相等,则返回 true
。- 另请参阅:
示例:// returns true if two given geometries are equal const isEqual = await geometryEngineAsync.equals(line1, line2);
-
extendedSpatialReferenceInfo(spatialReference){Promise<SpatialReferenceInfo>}
-
返回一个对象,其中包含有关输入空间参考的其他信息。
参数:spatialReference SpatialReference输入空间参考。
返回:类型 说明 Promise<SpatialReferenceInfo> 解析为 SpatialReferenceInfo 对象。
-
在水平轴上翻转几何图形。可以选择围绕一个点翻转。
参数:geometry Geometry要翻转的输入几何。
flipOrigin Point可选指向翻转几何图形。默认为几何体的质心。
返回:类型 说明 Promise<Geometry> 解析后,响应是翻转的几何图形。 示例:// Returns a geometry flipped horizontally const geometry = await geometryEngineAsync.flipHorizontal(boundaryPolygon);
-
在垂直轴上翻转几何图形。可以选择围绕一个点翻转。
参数:geometry Geometry要翻转的输入几何。
flipOrigin Point可选指向翻转几何图形。默认为几何体的质心。
返回:类型 说明 Promise<Geometry> 解析后,响应是翻转的几何图形。 示例:// Returns a geometry flipped vertically const geometry = await geometryEngineAsync.flipVertical(boundaryPolygon);
-
对游标中的几何图形执行概化操作。点和多点几何保持不变。包络线转换为多边形,然后进行概化。
参数:geometry Geometry要概化的输入几何图形。
maxDeviation Number从广义几何到原始几何允许的最大偏差。
removeDegenerateParts Boolean可选当为
true
时,几何的退化部分将从输出中删除(可能不适合绘制)。maxDeviationUnit LinearUnits可选最大偏差的测量单位。默认为输入几何的单位。
返回:类型 说明 Promise<Geometry> 解析后,响应是广义几何。 示例:// Returns a generalized geometry const geometry = await geometryEngineAsync.generalize(boundaryPolygon, 2.5, true, "miles");
-
计算输入几何图形的面积。与 planarArea() 不同,geodesicArea 在执行此计算时会考虑地球的曲率。因此,当使用空间参考为 WGS84(wkid:4326) 或 Web 墨卡托,最佳实践是使用 geodesicArea() 计算面积。如果输入几何具有 Web 墨卡托以外的投影坐标系,请改用 planarArea()。
此方法仅适用于 WGS84 (wkid: 4326) 和 Web 墨卡托 空间参考。
参数:geometry Polygon输入多边形。
unit ArealUnits可选返回值的计量单位。默认为输入几何图形的单位。
返回:类型 说明 Promise<Number> 解析后,响应是输入几何的区域。 示例:// Returns the numeric geodesic area of the given polygon const area = await geometryEngineAsync.geodesicArea(boundaryPolygon, "square-miles");
-
在输入几何图形周围的指定距离处创建流地缓冲区面。在计算距离时,此方法会考虑地球的曲率,从而在处理非常大的几何图形和/或在全球范围内空间变化的几何图形时提供高度准确的结果,其中一个投影坐标系无法准确绘制坐标和测量距离 对于所有几何形状。
此方法仅适用于 WGS84 (wkid: 4326) 和 Web 墨卡托 空间参考。通常,如果您的输入几何图形被分配了这两个空间参考之一,您应该始终使用 geodesicBuffer() 来获得这些几何图形的最准确结果。如果需要缓冲分配了Web Mercator 以外的投影坐标系,请改用 buffer()。如果输入几何具有 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可选默认值:false确定输出几何是否应合并为单个多边形。
返回:类型 说明 Promise<(Polygon|Polygon[])> 解析后,响应是生成的缓冲区。如果将几何图形数组用作输入,则结果将为数组。如果将单个几何图形输入到函数中,则该多边形将是单个面。 示例:const pointButter = await geometryEngineAsync.geodesicBuffer(point, 1000, "kilometers");
-
返回输入几何图形的测地线致密化版本。使用此函数沿大圆绘制几何线条。
参数:要致密化的折线或多边形。
maxSegmentLength Number允许的最大分段长度(如果未提供
maxSegmentLengthUnit
,则以米为单位)。这必须是正值。maxSegmentLengthUnit LinearUnits可选maxSegmentLength
的度量单位。如果未提供,单位将默认为meters
。返回:类型 说明 Promise<Geometry> 解析为致密几何。 示例:// lineGeom is a line geometry const densifiedGeom = await geometryEngineAsync.geodesicDensify(lineGeom, 10000);
-
计算输入几何图形的长度。与 planarLength() 相反,测地线长度()在执行此计算时会考虑地球的曲率。因此,当使用空间参考为 WGS84(wkid:4326) 或 Web 墨卡托,最佳实践是使用 geodesicLength() 计算长度。如果输入几何具有 Web 墨卡托以外的投影坐标系,请改用 planarLength()。
此方法仅适用于 WGS84 (wkid: 4326) 和 Web 墨卡托 空间参考。
参数:geometry Geometry输入几何。
unit LinearUnits可选返回值的计量单位。默认为输入几何的单位。
返回:类型 说明 Promise<Number> 解析后,响应是输入几何的长度。 示例:// Returns the numeric geodesic length of the given line const length = await geometryEngineAsync.geodesicLength(riverGeometry, "miles");
-
从两个几何之间的交点创建新几何。如果输入几何具有不同的维度(即点 = 0;折线 = 1;多边形 = 2),则结果的维度将等于输入的最低维度下表描述了几何类型的各种组合的预期输出。请注意,
geometry1
和geometry2
在此操作中可以互换,并且如果翻转将返回相同的结果。几何 1 类型 几何 2 类型 结果几何类型 Polygon Polygon Polygon Polygon Polyline Polyline Polygon Point Point Polyline Polyline Polyline Polyline Point Point Point Point Point 请注意,两条相交的折线不会返回“点”几何图形。相反,此函数将返回两个几何图形之间相等的折线路径。
参数:输入几何或几何数组。
geometry2 Geometry要与几何相交的几何图形1。
返回:类型 说明 Promise<Geometry> 解析后,响应是输入几何的交点。 示例:// Creates a new geometry from the intersection of the two geometries const intersecting = await geometryEngineAsync.intersect(boundaryPolygon, buffers);
-
指示一个几何图形是否与另一个几何图形相交。
参数:geometry1 Geometry针对相交关系测试的几何图形与其他几何图形的关系。
geometry2 Geometry相交的几何图形。
返回:类型 说明 Promise<Boolean> 如果输入几何图形彼此相交,则响应为 true
。示例:// returns true if two given geometries intersect each other const isIntersecting = await geometryEngineAsync.intersects(boundaryPolygon, cityPolygon);
-
指示给定的几何图形在拓扑上是否简单。在简化的几何中,不会出现多边形环或折线路径重叠,也不会发生自相交。
参数:geometry Geometry输入几何。
返回:类型 说明 Promise<Boolean> 解析后,如果几何是拓扑简单,则响应为 true
。示例:// returns true if given geometry is simple const simple = await geometryEngineAsync.isSimple(polyline);
-
nearestCoordinate(geometry, inputPoint){Promise<NearestPointResult>}
-
查找最接近指定点的几何图形的坐标。
参数:geometry Geometry要考虑的几何图形。
inputPoint Point用于在几何中搜索最近坐标的点。
返回:类型 说明 Promise<NearestPointResult> 解析为 NearestPointResult 的一个实例,其中包含与 inputPoint
最近的坐标。
-
nearestVertex(geometry, inputPoint){Promise<NearestPointResult>}
-
在距离指定点最近的几何图形上查找顶点。
参数:geometry Geometry要考虑的几何图形。
inputPoint Point用于在几何中搜索最近折点的点。
返回:类型 说明 Promise<NearestPointResult> 解析为 NearestPointResult 的一个实例,其中包含离 inputPoint
最近的顶点。示例:// Finds the nearest vertex of the polygon to the input point const { coordinate, distance } = await geometryEngineAsync.nearestVertex(boundaryPolygon, point);
-
nearestVertices(geometry, inputPoint, searchRadius, maxVertexCountToReturn){Promise<NearestPointResult>}
-
查找距指定点的给定距离内的所有顶点,从最近点到最远点排序,并将它们作为对象数组返回。
参数:geometry Geometry要考虑的几何图形。
inputPoint Point要从中测量的点。
searchRadius Number从输入点开始搜索的距离(以视图空间参考的单位计算)。
maxVertexCountToReturn Number要返回的最大顶点数。
返回:类型 说明 Promise<NearestPointResult> 解析为 NearestPointResult 的数组,其中包含距 inputPoint
最近的顶点。示例:// Returns an array of the nearest vertices const nearest = await geometryEngineAsync.nearestVertices(boundaryPolygon, point, 500, 2);
-
偏移操作创建的几何图形是距输入折线或面的恒定平面距离。它类似于缓冲,但会产生片面结果。
参数:要偏移的几何图形。
offsetDistance Number要从输入几何图形偏移的平面距离。如果 offsetDistance > 0,则偏移几何体构造到定向输入几何的右侧,如果 offsetDistance = 0,则几何图形中没有变化,否则它将构造到左侧。对于简单多边形,外环的方向是顺时针的,对于内环,它是逆时针的。因此,简单多边形的“右侧”始终是其内部。
offsetUnit LinearUnits可选偏移距离的测量单位。默认为输入几何图形的单位。
joinType String可选联接类型。
可能值:"round"|"bevel"|"miter"|"square"
bevelRatio Number可选joinType = 'miter'
时适用; bevelRatio 乘以偏移距离,结果确定斜接偏移交叉点在斜切之前可以定位多远。flattenError Number可选joinType = 'round'
时适用; flattenError 确定结果段与真实圆弧相比的最大距离。该算法不会为每个轮连接生成超过大约 180 个顶点。返回:类型 说明 Promise<(Geometry|Geometry[])> 解析时,响应是偏移几何或几何。如果将几何图形数组用作输入,则结果将为数组。如果将单个几何输入到函数中,它将是单个几何。 - 另请参阅:
示例:// Creates a new geometry offset from the provided geometry const offset = await geometryEngineAsync.offset(boundaryPolygon, 500, "meters", "round");
-
指示一个几何图形是否与另一个几何图形重叠。
参数:geometry1 Geometry测试与其他几何的“重叠”关系的基础几何。
geometry2 Geometry测试几何与其他几何的“重叠”关系的比较几何。
返回:类型 说明 Promise<Boolean> 解析后,如果两个几何图形重叠,则响应为 true
。示例:// returns true if one geometry overlaps another, // but is not contained or disjointed const isOverlapping = await geometryEngineAsync.overlaps(polygon, boundaryPolygon);
-
计算输入几何图形的面积。与 geodesicArea() 不同,planeArea() 使用投影坐标执行此计算,并且不考虑地球的曲率。当使用空间参考为 WGS84(wkid:4326) 或 Web 墨卡托,最佳实践是使用 geodesicArea() 计算面积。如果输入几何具有 Web Mercator 以外的投影坐标系,请改用 planeArea()。
参数:geometry Polygon输入多边形。
unit ArealUnits可选返回值的计量单位。默认为输入几何图形的单位。
返回:类型 说明 Promise<Number> 解析后,响应是输入几何的区域。 示例:// Returns the numeric area of the given polygon const area = await geometryEngineAsync.planarArea(boundaryPolygon, "square-miles");
-
计算输入几何图形的长度。与 geodesicLength() 不同,planeLength() 使用投影坐标,并且在执行此计算时不考虑地球的曲率。当使用空间参考为 WGS84(wkid:4326) 或 Web 墨卡托,最佳实践是使用 geodesicLength() 计算长度。如果输入几何具有 Web Mercator 以外的投影坐标系,请改用 planeLength()。
参数:geometry Geometry输入几何。
unit LinearUnits可选返回值的计量单位。默认为输入几何图形的单位。
返回:类型 说明 Promise<Number> 解析后,响应是输入几何的长度。 示例:// Returns the numeric length of the given line const length = await geometryEngineAsync.planarLength(riverGeometry, "miles");
-
指示给定的 DE-9IM 关系是否适用于两个几何。
参数:geometry1 Geometry关系的第一个几何。
geometry2 Geometry关系的第二个几何。
relation StringDimensionally Extended 9 Intersection Model (DE-9IM) 矩阵关系(编码为字符串),用于测试两个几何的关系。该字符串包含 DE-9IM 矩阵中表示的每个交叉点的测试结果。每个结果都是字符串的一个字符,可以表示为数字(返回的最大维度:
0
,1
,2
),布尔值 (T
或F
),或掩码字符(用于忽略结果:“*”)。例如,以下每个 DE-9IM 字符串代码都可用于测试多边形几何是否完全包含线几何:TTTFFTFFT
(布尔值)、“T******FF*”(忽略不相关的交叉点)或“102FF*FF*”(维度形式)。 每个返回相同的结果。有关 DE-9IM 模型以及如何构造字符串代码的详细信息,请参阅本文。返回:类型 说明 Promise<Boolean> 解析后,如果输入几何的关系成立,则响应为 true
。- 另请参阅:
示例:// returns true if the polygon geometry completely // contains the polyline based on the DE-9IM string const isRelated = await geometryEngineAsync.relate(polygon, polyline, "TTTFFTFFT");
-
将几何图形逆时针旋转指定的度数。旋转围绕质心或给定的旋转点。
参数:geometry Geometry要旋转的几何图形。
angle Number以度为单位的旋转角度。
rotationOrigin Point可选指向旋转几何图形。默认为几何体的质心。
返回:类型 说明 Promise<Geometry> 解析后,响应是旋转的几何图形。 - 另请参阅:
示例:// Returns a geometry rotated by 45 degrees const geometry = await geometryEngineAsync.rotate(boundaryPolygon, 45);
-
对几何执行简化操作,这将更改给定的几何图形,使其定义相对于其几何类型在拓扑上合法。在简化操作结束时,多边形环或折线路径不会重叠,也不会发生自相交。
参数:geometry Geometry要简化的几何图形。
返回:类型 说明 Promise<Geometry> 解析后,响应是简化的几何图形。 示例:// Topologically simplifies a geometry const simplified = await geometryEngineAsync.simplify(polyline); console.log(geometryEngine.isSimple(simplified)); // true
-
创建两个几何图形的对称差。对称差异包括在任一集合中的部分,但不包括在两个集合中。
参数:XOR 操作中的 Geometry 实例之一。
rightGeometry GeometryXOR 操作中的 Geometry 实例之一。
返回:类型 说明 Promise<(Geometry|Geometry[])> 解析后,响应是两个几何形状的对称差异。 示例:// Creates a new geometry based on the // symmetric difference of the two const geometry = await geometryEngineAsync.symmetricDifference(boundaryPolygon, buffers);
-
指示一个几何图形是否与另一个几何图形接触。
参数:geometry1 Geometry用于测试与其他几何的“接触”关系的几何。
geometry2 Geometry要触摸的几何图形。
返回:类型 说明 Promise<Boolean> 解析后,如果 geometry1
接触geometry2
,则响应为true
。- 另请参阅:
示例:// returns true if the line vertex touches the edge of the polygon const isTouching = await geometryEngineAsync.touches(polygon, line);
-
所有输入必须具有相同类型的几何,并且共享一个空间参考。
参数:要联合的几何数组。
返回:类型 说明 Promise<Geometry> 解决后,响应是几何图形的并集。 - 另请参阅:
示例:// pt1 and pt2 are point objects to union together const response = await geometryEngine.union([pt1, pt2]);
-
指示一个几何图形是否在另一个几何图形中。
参数:innerGeometry Geometry测试与其他几何的“内部”关系的基础几何。
outerGeometry Geometry为“包含”与其他几何的关系而测试的比较几何。
返回:类型 说明 Promise<Boolean> 解析后,如果 innerGeometry
在outerGeometry
内,则响应为true
。- 另请参阅:
示例:// returns true if a geometry is completely within another const isWithin = await geometryEngineAsync.within(polygon, boundaryPolygon);
类型定义
-
SpatialReferenceInfo
-
extendedSpatialReferenceInfo() 方法的返回对象。