<?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: zoom to extent which crosses 180 in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448021#M41393</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;John,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Try using esri.geometry.normalizeCentralMeridian) to normalize the geometry before setting the extent. Here's a blurb from the help that explains what normailzeCentralMeridian does:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Normalizes geometries that intersect the central meridian or fall outside the world extent so they stay within the current coordinate system. Only supported for Web Mercator and geographic coordinates. (As of v2.2)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hello All,&lt;BR /&gt;&lt;BR /&gt;I'm using the web mercator projection and wrapAround180 option to provide seamless panning across the antimeridian.&amp;nbsp; I would like to set the extent of the map to an area which in geographic coordinates would cross the antimeridian, e.g.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;var bbox = new esri.geometry.Extent(175.0,15.0,-175.0,25.0, new esri.SpatialReference({ wkid:4326 }));&lt;BR /&gt;map.setExtent(esri.geometry.geographicToWebMercator(bbox),true);&lt;BR /&gt;&lt;BR /&gt;However this does not work, centering instead on central Africa and setting the zoom level to the maximum.&lt;BR /&gt;&lt;BR /&gt;Can someone please suggest the appropriate way to do this?&lt;BR /&gt;&lt;BR /&gt;Thanks!&lt;BR /&gt;&lt;BR /&gt;--john&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 20 Jun 2011 15:13:39 GMT</pubDate>
    <dc:creator>KellyHutchins</dc:creator>
    <dc:date>2011-06-20T15:13:39Z</dc:date>
    <item>
      <title>zoom to extent which crosses 180</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448019#M41391</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello All,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm using the web mercator projection and wrapAround180 option to provide seamless panning across the antimeridian.&amp;nbsp; I would like to set the extent of the map to an area which in geographic coordinates would cross the antimeridian, e.g.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;var bbox = new esri.geometry.Extent(175.0,15.0,-175.0,25.0, new esri.SpatialReference({ wkid:4326 }));&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;map.setExtent(esri.geometry.geographicToWebMercator(bbox),true);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;However this does not work, centering instead on central Africa and setting the zoom level to the maximum.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Can someone please suggest the appropriate way to do this?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;--john&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 18 Jun 2011 20:58:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448019#M41391</guid>
      <dc:creator>JohnCartwright</dc:creator>
      <dc:date>2011-06-18T20:58:35Z</dc:date>
    </item>
    <item>
      <title>Re: zoom to extent which crosses 180</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448020#M41392</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Try using an object with explicitly property declarions.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var bbox = new esri.geometry.Extent(175.0,15.0,-175.0,25.0, new esri.SpatialReference({ wkid:4326 }));&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
var bbox = new esri.geometry.Extent({
 "xmin": 175.0,
 "ymin": 15.0,
 "xmax": -175.0,
 "ymax": 25.0,
 "spatialReference": {
&amp;nbsp; "wkid": 4326
 }
});
&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;If that does not work, considering using map.centerAndZoom() instead of map.setExtent() to set your location.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 20:01:26 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448020#M41392</guid>
      <dc:creator>BrettLord-Castillo</dc:creator>
      <dc:date>2021-12-11T20:01:26Z</dc:date>
    </item>
    <item>
      <title>Re: zoom to extent which crosses 180</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448021#M41393</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;John,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Try using esri.geometry.normalizeCentralMeridian) to normalize the geometry before setting the extent. Here's a blurb from the help that explains what normailzeCentralMeridian does:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Normalizes geometries that intersect the central meridian or fall outside the world extent so they stay within the current coordinate system. Only supported for Web Mercator and geographic coordinates. (As of v2.2)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hello All,&lt;BR /&gt;&lt;BR /&gt;I'm using the web mercator projection and wrapAround180 option to provide seamless panning across the antimeridian.&amp;nbsp; I would like to set the extent of the map to an area which in geographic coordinates would cross the antimeridian, e.g.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;var bbox = new esri.geometry.Extent(175.0,15.0,-175.0,25.0, new esri.SpatialReference({ wkid:4326 }));&lt;BR /&gt;map.setExtent(esri.geometry.geographicToWebMercator(bbox),true);&lt;BR /&gt;&lt;BR /&gt;However this does not work, centering instead on central Africa and setting the zoom level to the maximum.&lt;BR /&gt;&lt;BR /&gt;Can someone please suggest the appropriate way to do this?&lt;BR /&gt;&lt;BR /&gt;Thanks!&lt;BR /&gt;&lt;BR /&gt;--john&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jun 2011 15:13:39 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448021#M41393</guid>
      <dc:creator>KellyHutchins</dc:creator>
      <dc:date>2011-06-20T15:13:39Z</dc:date>
    </item>
    <item>
      <title>Re: zoom to extent which crosses 180</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448022#M41394</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;John,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Please try the case with xmax greater than 180.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;var bbox = new esri.geometry.Extent({"xmin": 175.0, "ymin": 15.0, "xmax": 185.0, "ymax": 25.0, "spatialReference": {"wkid": 4326}});&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 Jun 2011 17:30:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448022#M41394</guid>
      <dc:creator>JianHuang</dc:creator>
      <dc:date>2011-06-22T17:30:52Z</dc:date>
    </item>
    <item>
      <title>Re: zoom to extent which crosses 180</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448023#M41395</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks to all for the suggestions.&amp;nbsp; Unfortunately, none of them seemed to work for me, but perhaps I misunderstood.&amp;nbsp; I tried normalizing the geometry both before and after the conversion from geographic to web mercator.&amp;nbsp; Normalizing the geographic geometry produces a 2-ring polygon as you'd expect but then projecting it and passing to centerAndZoom does work correctly either.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Abandoning centerAndZoom in favor as Brett suggested works but the center point is incorrectly calculated by getCenter in this case.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;--john&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
//fake coords to avoid discontinuity - doesn't seem to help
//&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var bbox = new esri.geometry.Extent({xmin:175.0,ymin:-5.0,xmax:185.0,ymax:5.0, spatialReference:{ wkid:4326 }});
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var bbox = new esri.geometry.Extent({xmin:175.0,ymin:-5.0,xmax:-175.0,ymax:5.0, spatialReference:{ wkid:4326 }});
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var merc = esri.geometry.geographicToWebMercator(bbox);

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; esri.geometry.normalizeCentralMeridian([merc], 'http://maps.ngdc.noaa.gov/rest/services/Geometry/GeometryServer',
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function(geometries){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.centerAndZoom(geometries[0],true);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function() {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console.log("error normalizing");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
var bbox = new esri.geometry.Extent({xmin:175.0,ymin:-5.0,xmax:-175.0,ymax:5.0, spatialReference:{ wkid:4326 }});
esri.geometry.normalizeCentralMeridian([bbox], 'http://maps.ngdc.noaa.gov/rest/services/Geometry/GeometryServer',
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function(geometries){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var merc = esri.geometry.geographicToWebMercator(geometries[0]);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.centerAndZoom(merc,true);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function() {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console.log("error normalizing");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 20:01:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/zoom-to-extent-which-crosses-180/m-p/448023#M41395</guid>
      <dc:creator>JohnCartwright</dc:creator>
      <dc:date>2021-12-11T20:01:29Z</dc:date>
    </item>
  </channel>
</rss>

