<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Incorrect geographic transformation from EPSG:31255 to WebMercator in ArcGIS JS API in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1696803#M88362</link>
    <description>&lt;P&gt;&amp;gt;&amp;nbsp;Is ArcGIS JS missing the correct transformation grid for this CRS?&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/986747"&gt;@QuentinDLV&lt;/a&gt;&amp;nbsp;this is likely because the JS SDK projectOperator currently doesn't have any support for grid transforms, so you are only getting a best-effort result through equation-based geographic transformations. See the known limitations section in the doc, &lt;A href="https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/projectOperator/" target="_self"&gt;here&lt;/A&gt;. Have you tried testing with &lt;A href="https://developers.arcgis.com/javascript/latest/references/core/rest/geometryService/#project" target="_self"&gt;geometryService&lt;/A&gt;?&lt;/P&gt;</description>
    <pubDate>Thu, 16 Apr 2026 19:21:08 GMT</pubDate>
    <dc:creator>AndyGup</dc:creator>
    <dc:date>2026-04-16T19:21:08Z</dc:date>
    <item>
      <title>Incorrect geographic transformation from EPSG:31255 to WebMercator in ArcGIS JS API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1696459#M88360</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Using EsriMap JS v4.34&lt;BR /&gt;&lt;BR /&gt;I am projecting coordinates from EPSG:31255 (MGI / Austria GK West) to WebMercator (EPSG:3857).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Test coordinate:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;X: 48402&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Y: 335041&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Expected result (EPSG.io / PROJ / pyproj):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1556587.0410259578, 6132161.572467429&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;ArcGIS JS result (ProjectOperator&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;execute&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;without geographicTransformation):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1556143.0256220328, 6132152.124194294&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This results in a horizontal offset of ~440 meters.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Even when trying several GeographicTransformation WKIDs, none match the correct result.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is ArcGIS JS missing the correct transformation grid for this CRS?&lt;BR /&gt;&lt;BR /&gt;My JS code test :&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;require([&lt;BR /&gt;"esri/geometry/operators/projectOperator",&lt;BR /&gt;"esri/geometry/Polyline",&lt;BR /&gt;"esri/geometry/SpatialReference"&lt;BR /&gt;], function (ProjectOperator, Polyline, SpatialReference) {&lt;/P&gt;&lt;P&gt;(async () =&amp;gt; {&lt;/P&gt;&lt;P&gt;await ProjectOperator.load();&lt;/P&gt;&lt;P&gt;const sourceSR = new SpatialReference({ wkid: 31255 });&lt;BR /&gt;const targetSR = new SpatialReference({ wkid: 3857 });&lt;/P&gt;&lt;P&gt;let polyline = new Polyline({&lt;BR /&gt;paths: [[[48402, 335041]]],&lt;BR /&gt;spatialReference: sourceSR&lt;BR /&gt;});&lt;/P&gt;&lt;P&gt;let projected = ProjectOperator.execute(polyline, targetSR);&lt;/P&gt;&lt;P&gt;console.log(projected);&lt;/P&gt;&lt;P&gt;})();&lt;/P&gt;&lt;P&gt;});&lt;/P&gt;</description>
      <pubDate>Wed, 15 Apr 2026 16:16:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1696459#M88360</guid>
      <dc:creator>QuentinDLV</dc:creator>
      <dc:date>2026-04-15T16:16:14Z</dc:date>
    </item>
    <item>
      <title>Re: Incorrect geographic transformation from EPSG:31255 to WebMercator in ArcGIS JS API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1696803#M88362</link>
      <description>&lt;P&gt;&amp;gt;&amp;nbsp;Is ArcGIS JS missing the correct transformation grid for this CRS?&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/986747"&gt;@QuentinDLV&lt;/a&gt;&amp;nbsp;this is likely because the JS SDK projectOperator currently doesn't have any support for grid transforms, so you are only getting a best-effort result through equation-based geographic transformations. See the known limitations section in the doc, &lt;A href="https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/projectOperator/" target="_self"&gt;here&lt;/A&gt;. Have you tried testing with &lt;A href="https://developers.arcgis.com/javascript/latest/references/core/rest/geometryService/#project" target="_self"&gt;geometryService&lt;/A&gt;?&lt;/P&gt;</description>
      <pubDate>Thu, 16 Apr 2026 19:21:08 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1696803#M88362</guid>
      <dc:creator>AndyGup</dc:creator>
      <dc:date>2026-04-16T19:21:08Z</dc:date>
    </item>
    <item>
      <title>Re: Incorrect geographic transformation from EPSG:31255 to WebMercator in ArcGIS JS API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1697241#M88367</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Thanks for your reply!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I’m not fully convinced that this is a grid-related issue in this specific case.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1) EPSG:31255 (MGI / Austria GK Central) is not a very recent CRS, but the transformation to WGS84 / WebMercator does not strictly require grid-based transformations to achieve a correct result. A standard Helmert / equation-based transformation should already give a much closer result than what I observe.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;2) I tested the same coordinate using pyproj (default installation, without adding any external grid files), and I get the exact same result as EPSG.io:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Input (EPSG:31255):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;X: 48402&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Y: 335041&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pyproj / EPSG.io result (EPSG:3857):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1556587.0410259578, 6132161.572467429&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This suggests that an equation-based transformation is sufficient to reach the expected accuracy.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Given that:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- pyproj (no grids) = correct&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- EPSG.io = correct&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- ArcGIS JS = ~440m offset&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;it looks more like ArcGIS JS is selecting an incorrect geographic transformation for this CRS, rather than just lacking grid support.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I’ll try geometryService as you suggested, but I’m curious:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Is there a way to control or inspect which geographic transformation is actually being used internally by projectOperator?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again!&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 20 Apr 2026 14:42:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1697241#M88367</guid>
      <dc:creator>QuentinDLV</dc:creator>
      <dc:date>2026-04-20T14:42:02Z</dc:date>
    </item>
    <item>
      <title>Re: Incorrect geographic transformation from EPSG:31255 to WebMercator in ArcGIS JS API</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1697343#M88372</link>
      <description>&lt;P&gt;You're right, after double checking it's not a grid issue. It's also not a bug in the JS SDK. You will just need to set the areaOfInterestExtent in &lt;A href="https://next.gha.afd.arcgis.com/javascript/latest/references/core/geometry/operators/types/#ProjectOptions" target="_self"&gt;ProjectOptions&lt;/A&gt;*, or you can also set&amp;nbsp;geographicTransformation. Once you do that you should get a result that is much more accurate.&lt;BR /&gt;&lt;BR /&gt;My &lt;A href="https://codepen.io/andygup/pen/ZYpZmBr?editors=1000" target="_self"&gt;test app&lt;/A&gt; is showing a difference of 0.0035 meters between your expected result and the projectOperator, as well as geometryService.project():&lt;BR /&gt;&lt;BR /&gt;&lt;EM&gt;projectOperator result 31255 =&amp;gt; 3857 1556587.0407006142 6132161.568937744&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;projectOperator result distance to expected EPSG:3857 point (meters) 0.0035446469419314845&lt;/EM&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;    const targetSR = new SpatialReference({ "wkid": 3857 });
    const point = new Point({
      "x": 48402,
      "y": 335041,
      "spatialReference": { "wkid": 31255 }
    }); 

    // Austria
    const testExtent = new Extent({
      "xmin": -292428.21,
      "ymin": 140068.94,
      "xmax": 295094.41,
      "ymax": 438461.34,
      "spatialReference": { "wkid": 31255 }
    });

    let projected = projectOperator.execute(point, targetSR, {
      areaOfInterestExtent: testExtent, // be sure to set this
    });&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 20 Apr 2026 22:21:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/incorrect-geographic-transformation-from-epsg/m-p/1697343#M88372</guid>
      <dc:creator>AndyGup</dc:creator>
      <dc:date>2026-04-20T22:21:31Z</dc:date>
    </item>
  </channel>
</rss>

