laptop and a wrench

Bug

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

ArcGIS Maps SDK for JavaScript
Bug ID Number BUG-000162151
SubmittedOctober 17, 2023
Last ModifiedDecember 6, 2024
Applies toArcGIS Maps SDK for JavaScript
Version found4.27
Operating SystemWindows OS
Operating System Version10.0 64 Bit
StatusAs Designed

Additional Information

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.

Workaround

  • 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.

Steps to Reproduce

Bug ID: BUG-000162151

Software:

  • ArcGIS Maps SDK for JavaScript

Get notified when the status of a bug changes

Download the Esri Support App

Discover more on this topic

Get help from ArcGIS experts

Contact technical support

Download the Esri Support App

Go to download options