laptop and a wrench

漏洞

The in-memory layer polygon does not draw correctly when spanning over the date line (Prime Meridian).

ArcGIS Maps SDK for JavaScript
漏洞 ID 编号 BUG-000162151
已提交October 17, 2023
上次修改时间December 6, 2024
适用范围ArcGIS Maps SDK for JavaScript
找到的版本4.27
操作系统Windows OS
操作系统版本10.0 64 Bit
状态As Designed

附加信息

The issue is that the geometry is not normalized. A polygon that crosses the dateline must be defined with two rings, one for each side of the dateline, to be considered a normalized geometry. Each ring must start and end with the same vertex. The client-side FeatureLayer expects the geometries of graphics added via the source property to already be normalized. This maintains optimal performance in the case of large client-side layers. This can be done for GraphicsLayer because the cost of normalizing one or just a few feature(s) is relatively low. However, a layer created with many features can really slow down the startup of the layer. Create normal geometries for the rendering to work, or add features to the FeatureLayer with applyEdits, which normalizes all input geometries on behalf of the user.

解决办法

  • Create the layer with simple, normalized geometries. For example, if a geometry spans the dateline, it should be normalized to have two rings.
  • Use applyEdits which does the normalization for the user. For example, refer to the following link: https://codepen.io/ycabon/pen/zYedvOv?editors=0010.

重现步骤

漏洞 ID: BUG-000162151

软件:

  • ArcGIS Maps SDK for JavaScript

当漏洞状态发生变化时获得通知

下载 Esri 支持应用程序

发现关于本主题的更多内容

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项