<?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: Removing LODS after the map has loaded in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14742#M1382</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks for the info.&amp;nbsp; I thought I'd be able to change them after they've been set since I can in flex, but I guess it's different with dojo and javascript.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 10 Oct 2012 23:15:15 GMT</pubDate>
    <dc:creator>JasonLevine</dc:creator>
    <dc:date>2012-10-10T23:15:15Z</dc:date>
    <item>
      <title>Removing LODS after the map has loaded</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14737#M1377</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Any Idea how to remove LODS from the map after the map is loaded?&amp;nbsp; In flex, it's as simple as altering the map's lods array: &lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;map.lods.push( new LOD(19,0.149291071,564.248588))&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;However, it doesn't appear to be as straightforward in JavaScript.&amp;nbsp; There are examples on how to set the LODS during map instantiation, but I'm trying to alter them &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;after&lt;/SPAN&gt;&lt;SPAN&gt; the map loads.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've tried:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;map.__tileInfo.lods.splice(0,14)&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This appears to successfully remove 14 LODS from the array, but results in very weird map behavior, and the zoom slider doesn't reset to show me that my LODS have been removed.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any help is appreciated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Oct 2012 17:42:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14737#M1377</guid>
      <dc:creator>JasonLevine</dc:creator>
      <dc:date>2012-10-10T17:42:16Z</dc:date>
    </item>
    <item>
      <title>Re: Removing LODS after the map has loaded</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14738#M1378</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Are you not able to use &lt;/SPAN&gt;&lt;A href="http://help.arcgis.com/en/webapi/javascript/arcgis/help/jsapi/map.htm#MapConst"&gt;map.lods&lt;/A&gt;&lt;SPAN&gt; to specify your levels of detail when the map is created?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Oct 2012 19:18:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14738#M1378</guid>
      <dc:creator>derekswingley1</dc:creator>
      <dc:date>2012-10-10T19:18:36Z</dc:date>
    </item>
    <item>
      <title>Re: Removing LODS after the map has loaded</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14739#M1379</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;No, map.lods doesn't seem to be working for me.&amp;nbsp; All I'm trying to do is remove some of the LODS after the map is loaded.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Jason&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Oct 2012 19:29:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14739#M1379</guid>
      <dc:creator>JasonLevine</dc:creator>
      <dc:date>2012-10-10T19:29:44Z</dc:date>
    </item>
    <item>
      <title>Re: Removing LODS after the map has loaded</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14740#M1380</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Basically, I'm loading the map at a specified initial extent and then get the map level that the map zooms to.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I then try to remove all of the LODS beyond that map level, so that the user cannot zoom out to a LOD beyond the map level that the map initially loads to.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;var mapLevel = map.getLevel();
var mapLODS = [];
dojo.forEach(map.__tileInfo.lods,function(LOD, index){
&amp;nbsp; if(index&amp;gt;=mapLevel){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var level = {"level": LOD.level,"resolution": LOD.resolution, "scale": LOD.scale}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mapLODS.push(level);
&amp;nbsp; }
});
map.lods = mapLODS;&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The map does not respond to this at all.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any suggestions?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 20:35:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14740#M1380</guid>
      <dc:creator>JasonLevine</dc:creator>
      <dc:date>2021-12-10T20:35:31Z</dc:date>
    </item>
    <item>
      <title>Re: Removing LODS after the map has loaded</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14741#M1381</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Once a map's levels are set they can't be changed.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Using options.lods for the map constructor isn't the most straightforward thing (and we'll hopefully change this soon) but it does work. Here's an example:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html&amp;gt;
&amp;nbsp; &amp;lt;head&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;title&amp;gt;Topographic Map&amp;lt;/title&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/dojo/dijit/themes/claro/claro.css"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/esri/css/esri.css"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;style&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; html, body { height: 100%; width: 100%; margin: 0; padding: 0; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #map { padding:0; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/style&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script&amp;gt;var dojoConfig = {parseOnLoad: true};&amp;lt;/script&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.2"&amp;gt;&amp;lt;/script&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.require("dijit.layout.BorderContainer");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.require("dijit.layout.ContentPane");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.require("esri.map");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var map;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function init() {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var bounds = new esri.geometry.Extent({"xmin":-8500293,"ymin":4590772,"xmax":-8299263,"ymax":4671642,"spatialReference":{"wkid":102100}});
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map = new esri.Map("map",{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; extent: bounds,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lods: [
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 6, "resolution" : 2445.98490512499, "scale" : 9244648.868618}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 7, "resolution" : 1222.99245256249, "scale" : 4622324.434309}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 8, "resolution" : 611.49622628138, "scale" : 2311162.217155}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 9, "resolution" : 305.748113140558, "scale" : 1155581.108577}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 10, "resolution" : 152.874056570411, "scale" : 577790.554289}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 11, "resolution" : 76.4370282850732, "scale" : 288895.277144}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 12, "resolution" : 38.2185141425366, "scale" : 144447.638572}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 13, "resolution" : 19.1092570712683, "scale" : 72223.819286}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 14, "resolution" : 9.55462853563415, "scale" : 36111.909643}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 15, "resolution" : 4.77731426794937, "scale" : 18055.954822}, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {"level" : 16, "resolution" : 2.38865713397468, "scale" : 9027.977411}
&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; var basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(basemap);

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.connect(map, "onLoad", function(theMap) { 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dojo.connect(dijit.byId("map"), "resize", map, map.resize);
&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; dojo.ready(init);
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/script&amp;gt;
&amp;nbsp; &amp;lt;/head&amp;gt;
&amp;nbsp; 
&amp;nbsp; &amp;lt;body class="claro"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div dojotype="dijit.layout.BorderContainer" design="headline" gutters="false" style="width: 100%; height: 100%; margin: 0;"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div id="map" dojotype="dijit.layout.ContentPane" region="center" style="border:1px solid #000;padding:0;"&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;
&amp;nbsp; &amp;lt;/body&amp;gt;

&amp;lt;/html&amp;gt;
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I pulled those levels from here:&amp;nbsp; &lt;/SPAN&gt;&lt;A href="http://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer?f=pjson" rel="nofollow noopener noreferrer" target="_blank"&gt;http://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer?f=pjson&lt;/A&gt;&lt;SPAN&gt; If you're not using a web mercator basemap, you can pull levels for your map from your services directory.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 20:35:33 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14741#M1381</guid>
      <dc:creator>derekswingley1</dc:creator>
      <dc:date>2021-12-10T20:35:33Z</dc:date>
    </item>
    <item>
      <title>Re: Removing LODS after the map has loaded</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14742#M1382</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks for the info.&amp;nbsp; I thought I'd be able to change them after they've been set since I can in flex, but I guess it's different with dojo and javascript.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Oct 2012 23:15:15 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14742#M1382</guid>
      <dc:creator>JasonLevine</dc:creator>
      <dc:date>2012-10-10T23:15:15Z</dc:date>
    </item>
    <item>
      <title>Re: Removing LODS after the map has loaded</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14743#M1383</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I see an answer has already been provided but I thought I'd share an easy way I use to restrict the number of scale levels displayed when using a tiled basemap.&amp;nbsp; In the end it's the same idea of removing LODs but in a slightly simpler way.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's the code ...&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
var basemapLayer = new esri.layers.ArcGISTiledMapServiceLayer("http://.....yourmapservice.....);
dojo.connect(basemapLayer, "onLoad", function() {
&amp;nbsp;&amp;nbsp;&amp;nbsp; map = new esri.Map("map", { lods : JSON.parse(JSON.stringify(basemapLayer.tileInfo.lods)).splice(4,12) });
&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(basemapLayer);
});
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It first loads the basemap tiled layer and then when the layer has been loaded I use the &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;basemapLayer.tileInfo.lods&lt;/SPAN&gt;&lt;SPAN&gt; returned for the layer and use an array splice to extract the lods for (in this case) zoom levels 4 to 15.&amp;nbsp; Once I've setup the map with those lods I can then add my basemap layer to the map.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I find this a lot easier than including the LOD descriptions in the page.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 20:35:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/removing-lods-after-the-map-has-loaded/m-p/14743#M1383</guid>
      <dc:creator>GaryJohnson</dc:creator>
      <dc:date>2021-12-10T20:35:36Z</dc:date>
    </item>
  </channel>
</rss>

